@formio/angular 7.5.0-rc.5 → 7.5.0-rc.7

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 (498) hide show
  1. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/05/48/d04de6c9dd6cc970174ec810b8763a7201a44f1f043eaa206a929f03661e08328175ec2130578946c68b6c428925092b68f3810c98e83ddefdd04a1e53ae +1 -0
  2. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/08/00/0ca5d9c568676e6c1348746956758607473297193298d3daf6942d5a10195175083e3a25b1d353ae539d6c8ec2f9799a59cdc6385066f4c45b63650faf4b +1 -0
  3. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/0c/7a/916bd866cb386cc87b9ea07c40edc23df9d726d1865e6699b42dedfbfb2a8364ced191aa62680a9297d7644cdfa64753b8975cc254c7c581f28bba0acd15 +1 -0
  4. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/0f/64/5529707a758edfd436e81d4f087fb08604b393418b3e62de8670320e45f6bce9f906d2049b04e253452ed3a9de294a77177d3edda706317d12a4e2e3f178 +1 -0
  5. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/0f/87/cc75b2e2048387a29af168ce6ef16af778b2493edb5c300be18c00aee265046b76757ef1529035538757e8d67939641c5e6e973f8b16f15454b6388ad458 +1 -0
  6. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/17/3d/a3d4360ab89b973ee847c01166ca61a5e706c444eeba448460e1ea210042c0475eff7b1625378c4adf0c650dbcbd29b1fbd2118462682e6d2d6a7f725070 +1 -0
  7. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/1d/78/8bb45acaf12d07da78505c3db11a6ddf4fcd67a02759a709602732d23c57539a455e48673c232ea7877cabaae9b5a5f36e5cc3f7d6678408d7e10755efba +1 -0
  8. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/23/e0/0cef272ca5d493a181999e846b505b18ae907e32510a9ce401d6bc6840178abc845a7bad97e9fb0d316610bb5a50eae99666cb0039456256d58b4036ce49 +1 -0
  9. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/2e/d1/fd1e76ed0e0ac117aa0f151a37dfa2ee1f0d20c16efd25eb2dda914a0f4851c8c9138c2ab2668875cccbe7d8dc1316fb876ed602997c3d88b38f3d69608e +1 -0
  10. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/31/99/f134b57b17c5d3103bdc44b1239f7f055f77f47908a3e4ca303d78f8c7aad4c761a484a0764aa88e5f1070f562c5d7162b1117e8042317f8c04dc66a2cbf +1 -0
  11. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/3d/64/86fe297363ae06dc259f28eb85b668db3c3d27ad69c47346c1e59a2d37b5c6f731012a3b9d01cc73ee884db76c073e99db6ee36fb6e1b5794bb0c484961e +1 -0
  12. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/42/9c/a4f0fde0c259e691af5cf126924ad62858e9ae786b06ffc5850e055468961a6b63ceb1a5cc354d0977edb106fb7bd5057b2baa2f0f12332b324fdef8a97e +1 -0
  13. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/43/05/c86feb68c6e6f17d2b1e7d4aadfbef2f8554b42c9e0b7516b22a7c34044b513c23987b00507d17cb8f89b9b762b5499483d4ec16708519940e00cee5863a +1 -0
  14. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/80/a9/22e1ed72240bfe87859c1bb6e137adf1fe7c9b964b292c7a673096cc8a2212faba3fe40e87bb0de133480e5431249a95a061993f951283f8938f44441d99 +1 -0
  15. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/88/b1/ab008f87cb691ee85bafcbfba0099140aedcb361b606ae9b5ff3daaaf49cb7887d30006d4410498b424b617308ad43973427a9c75dca8b601e937de82903 +1 -0
  16. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/90/dc/6f232859c1661d7bce8d938eb857811a2a242f1af32be5471f4a7afcc79112d8fe2f1cd10733eb6ab2f4b122128c9bcb59ef79f665e8bdc822fb619cf71d +1 -0
  17. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/9c/21/3b8af7b6ee09c29bf340610026191af56f9ba1cba1f5e4476424775d5e322f84d7e900c4d264d39804cebf3dcb5aaa5eb5e9d8fd143bc3a8aa76c3d5325e +1 -0
  18. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/9e/97/4bd03d23dac20b2f42285a12bfbe2e97b7748ee9c08fa5676ddee66a592163ba91b8fb54ebc6e8bffd3189c6da675d90fa49215f1680e7975c2cfe62761c +1 -0
  19. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/a1/c9/d53b052617ead62a7a7ed222aefa04fdf88179f1ff22757a51e02a461f14a960ddb4d4c58410193564bbc0b9b471fdf675e528650bfadffdf1f05a51fb1c +1 -0
  20. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/af/5c/97d9a08342685ee95844b54aed260370df0de7c2408ec7b14f7da3972c811ee5a4cae7be4f51de07dd039c8639ec4e9008733bcf0b6a438b29a83d7fabe3 +1 -0
  21. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/b0/46/27a4e3a91d820fa6a969339352dbc5bc7859f0d2746fdf36761e6e33fecbcb95df73a34b987fbbf7380301fd5e48f4c20d5a89f13d192267bbae54c264df +1 -0
  22. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/b9/43/d9b11991e00343f553202c8e7633fe94ee5517bcd0481dde31e5efd1fe93bf46d3670d468a21f152bcaaad9daf8d2e9d3ed38c67225065dc2a611106f0a0 +1 -0
  23. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/b9/6c/40f7b79417755e63c59cb241b5d8937ccb1e98935edaaaff140754d194464cadde591529dea2b658e6ed3683a2a1c6ab2f4b5af0b7442e205ed2a3202d12 +1 -0
  24. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/ba/5d/d939f6c0890924d0234b6253e4c7baab7e285c4e9e3b838d4f223f5365ce00c421e48383fc21ecdf847e1592936f5be80b0d20ea3db471bfe39e181c091a +1 -0
  25. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/c4/04/38e045ef1f5a08780250af79817fdce229ac2877ef258d020696429e97ee56400a38a10e754119a5040bd9a61a9e6c9bad2b67e1b2230cc7f6c08cee2012 +1 -0
  26. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/d8/60/f8b2e8223de247915d7167a52ab1db89c1aa95b1cc2ae546ae1a3ae861f168ca7f2eacd745a5aac3bf7dab1810bab18800713a96bc2cc0d9546a42584838 +1 -0
  27. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/d9/b2/b1726711a073649fd2f04130f98572fe77af95a6edd6b11cb813468c7f07a0423c5f618ab3420f2998c71967ba6464e8d77888371f74ad6e7cdbe30731e0 +1 -0
  28. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/e2/ab/084476c66de117be0fc8df1ac2ad3610491dece2f450a8d631bbae35ba9336b1fc1b1fee30bc5a224cf2e42ef97651a98787610cc9bb76a8795b01ddf844 +1 -0
  29. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/e9/ca/53ff813610ae5d57a25518e6546b659a092de2c929fd43130db59358947aa9aa5797289f7ca39fe550d2e41050a69cb26e6b5dd6ebbcae0207ab08474dc8 +1 -0
  30. package/.angular/cache/17.3.11/ng-packagr/content-v2/sha512/eb/88/6891253bdfd039f6cff6fba9605cdd56af0ac6b6ac89f75b9c50ef9d4efab72e99b7df88a963ec1d616e515bd8492b4a7d08ce1128f6b37348cba49b31d4 +1 -0
  31. package/.angular/cache/17.3.11/ng-packagr/index-v5/10/3e/bfb4a4f2af67449cde67fce4c2622d0e0b0882a10117aba630be789d00cb +2 -0
  32. package/.angular/cache/17.3.11/ng-packagr/index-v5/14/ba/05c03e8f139db178da4552cabab3e47e607743b3f8f591b2e88d1a670668 +2 -0
  33. package/.angular/cache/17.3.11/ng-packagr/index-v5/15/39/e3511d5e68c4dcc26982fb854c4f4ae6067ebe79a2fea69c3c3b74b8fb8e +2 -0
  34. package/.angular/cache/17.3.11/ng-packagr/index-v5/15/c8/41eb6ff0b4b294e4b0663dfae1cc402fd89f1871e37ff99308b8db1e312d +2 -0
  35. package/.angular/cache/17.3.11/ng-packagr/index-v5/22/7c/80262d5400fc47a73d4de35e8d2d1273ac92a2a0510a072834aa8700ea3a +2 -0
  36. package/.angular/cache/17.3.11/ng-packagr/index-v5/30/17/d10c504815c39561191351fac35a1899a5c8518773a8714413d7f4f2cfe7 +2 -0
  37. package/.angular/cache/17.3.11/ng-packagr/index-v5/40/b0/85f91e5998d97604bbd588622a3f7883c5090ba2aa5f2380d11a919fad49 +2 -0
  38. package/.angular/cache/17.3.11/ng-packagr/index-v5/47/6f/3ccf073a4a3e77309ec535e446b6ae48554dac2d6bdbb71d2e9a5da03e2a +2 -0
  39. package/.angular/cache/17.3.11/ng-packagr/index-v5/50/3f/7fa40d24c1a57e94a3440546ddec4ad5e9ea45401fa3c72e44b4d667897a +2 -0
  40. package/.angular/cache/17.3.11/ng-packagr/index-v5/53/60/94e0d21330be8f51888ff5800ee4f88d2dabaf62a05efb920402f3b0a8a9 +2 -0
  41. package/.angular/cache/17.3.11/ng-packagr/index-v5/58/f1/f5e623ce81fd5bbbd6b3f2e68c40525fc9254ea89c755af2fec60d83565b +2 -0
  42. package/.angular/cache/17.3.11/ng-packagr/index-v5/59/92/f6d91a3a1f120ebfb4d4f5dbb1b93db2cdc0ad3de1bbca13a11c5f579fc0 +2 -0
  43. package/.angular/cache/17.3.11/ng-packagr/index-v5/5d/67/2d0960a9d9b59393a51c97cab5782ba59cc8a0529c152d2698db3bf0331c +2 -0
  44. package/.angular/cache/17.3.11/ng-packagr/index-v5/5d/ba/20dc4ab0920555881535690446c05d09d79ad3ec8a1184f80f4f4eb6fb15 +2 -0
  45. package/.angular/cache/17.3.11/ng-packagr/index-v5/60/fc/06c32c2088791e55b2b2fa3bb7f9078a23508cec2ceb5d584aa5101e686e +2 -0
  46. package/.angular/cache/17.3.11/ng-packagr/index-v5/70/c6/3de3ab6d8cd97a9723b4bc8b0d6b747acd853be33f7502e57204ebe6543f +2 -0
  47. package/.angular/cache/17.3.11/ng-packagr/index-v5/72/2d/375128f89bae1a60ad985a33f4b153b583ac8c8fb947733a475cd43b37d8 +2 -0
  48. package/.angular/cache/17.3.11/ng-packagr/index-v5/7b/0b/eab56c95f2af77017e2a4ac90bf24eb33f368b47f2d30eb381fd5fb67eca +2 -0
  49. package/.angular/cache/17.3.11/ng-packagr/index-v5/8c/e2/44ef271b53872b9ce3939f6aa2529036add9fd99c43966917a2960f6e16d +2 -0
  50. package/.angular/cache/17.3.11/ng-packagr/index-v5/90/ae/4f675f5fa3ea045bea3beceb382a3c146396eec2b78e4c467881ca9201ea +2 -0
  51. package/.angular/cache/17.3.11/ng-packagr/index-v5/92/48/d893b8061214f8a744f666769b867db45d6de5ec76c9cd2e54acd94b3a53 +2 -0
  52. package/.angular/cache/17.3.11/ng-packagr/index-v5/9a/a4/a78c45687a5e227573c93d84612ebd91e426edce74f47ccf745ee902aa44 +2 -0
  53. package/.angular/cache/17.3.11/ng-packagr/index-v5/a9/a2/6e6efd315d7d9304881c9d52d710f88cc9576c8e810b3f9ae42f40675dd2 +2 -0
  54. package/.angular/cache/17.3.11/ng-packagr/index-v5/b6/f6/8e429f4c067378f16cc9f05894a168026d2e3e80ba7a193bdcaed4e80929 +2 -0
  55. package/.angular/cache/17.3.11/ng-packagr/index-v5/c0/15/2b2d30407871742bd4b6a71865b485a31f03a9ad8e7ef99b1b77433b7396 +2 -0
  56. package/.angular/cache/17.3.11/ng-packagr/index-v5/cd/15/f136da98aad326b92f6aa32a1a1b1ceeb60d5d679febb8abf5371274a724 +2 -0
  57. package/.angular/cache/17.3.11/ng-packagr/index-v5/d6/7b/3b70d34adcbad9dbf227866b3cb3f6d53ee064e6c188411cce949cf107b6 +2 -0
  58. package/.angular/cache/17.3.11/ng-packagr/index-v5/d7/1d/2fa87e8361aa205f0808ebc18932bcbe909ffc2d642e10744362ae8bdf98 +2 -0
  59. package/.angular/cache/17.3.11/ng-packagr/index-v5/e6/57/792d6a77a40d99eb3a0235f77f3bca76da031a7d43a24236205000b3e246 +2 -0
  60. package/.angular/cache/17.3.11/ng-packagr/index-v5/fc/48/ce2f43b95216107e0944aa38aeac10ad25105a2a7a7f1f347879611ad96e +2 -0
  61. package/.angular/cache/17.3.11/ng-packagr/tsbuildinfo/formio-angular-auth.tsbuildinfo +1 -0
  62. package/.angular/cache/17.3.11/ng-packagr/tsbuildinfo/formio-angular-embed.tsbuildinfo +1 -0
  63. package/.angular/cache/17.3.11/ng-packagr/tsbuildinfo/formio-angular-grid.tsbuildinfo +1 -0
  64. package/.angular/cache/17.3.11/ng-packagr/tsbuildinfo/formio-angular-manager.tsbuildinfo +1 -0
  65. package/.angular/cache/17.3.11/ng-packagr/tsbuildinfo/formio-angular-resource.tsbuildinfo +1 -0
  66. package/.angular/cache/17.3.11/ng-packagr/tsbuildinfo/formio-angular.tsbuildinfo +1 -0
  67. package/.dockerignore +5 -0
  68. package/.editorconfig +13 -0
  69. package/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
  70. package/.github/ISSUE_TEMPLATE/custom-components-support-request.md +15 -0
  71. package/.github/ISSUE_TEMPLATE/question.md +8 -0
  72. package/.github/pull_request_template.md +35 -0
  73. package/.github/workflows/ci.yml +231 -0
  74. package/.travis.yml +4 -0
  75. package/.yo-rc.json +7 -0
  76. package/CHANGELOG.md +1195 -0
  77. package/Dockerfile +20 -0
  78. package/LICENSE +21 -0
  79. package/README.md +204 -13
  80. package/angular.json +38 -0
  81. package/bs-config.json +11 -0
  82. package/dist/angular-formio/README.md +24 -0
  83. package/{esm2022 → dist/angular-formio/esm2022}/FormioBaseComponent.mjs +9 -9
  84. package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.component.mjs +3 -3
  85. package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.config.mjs +3 -3
  86. package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.module.mjs +4 -4
  87. package/dist/angular-formio/esm2022/auth/auth.service.mjs +199 -0
  88. package/{esm2022 → dist/angular-formio/esm2022}/auth/login/login.component.mjs +3 -3
  89. package/{esm2022 → dist/angular-formio/esm2022}/auth/register/register.component.mjs +3 -3
  90. package/{esm2022 → dist/angular-formio/esm2022}/auth/resetpass/resetpass.component.mjs +3 -3
  91. package/{esm2022 → dist/angular-formio/esm2022}/components/alerts/formio.alerts.component.mjs +3 -3
  92. package/{esm2022 → dist/angular-formio/esm2022}/components/alerts/parse-html-content.pipe.mjs +3 -3
  93. package/dist/angular-formio/esm2022/components/formbuilder/formbuilder.component.mjs +202 -0
  94. package/dist/angular-formio/esm2022/components/formio/formio.component.mjs +43 -0
  95. package/dist/angular-formio/esm2022/components/formioreport/formioreport.component.mjs +89 -0
  96. package/{esm2022 → dist/angular-formio/esm2022}/components/loader/formio.loader.component.mjs +3 -3
  97. package/{esm2022 → dist/angular-formio/esm2022}/custom-tags.service.mjs +3 -3
  98. package/{esm2022 → dist/angular-formio/esm2022}/formio.config.mjs +4 -4
  99. package/{esm2022 → dist/angular-formio/esm2022}/formio.module.mjs +4 -4
  100. package/dist/angular-formio/esm2022/formio.utils.mjs +23 -0
  101. package/{esm2022 → dist/angular-formio/esm2022}/grid/GridBodyComponent.mjs +3 -3
  102. package/{esm2022 → dist/angular-formio/esm2022}/grid/GridFooterComponent.mjs +3 -3
  103. package/{esm2022 → dist/angular-formio/esm2022}/grid/GridHeaderComponent.mjs +3 -3
  104. package/{esm2022 → dist/angular-formio/esm2022}/grid/form/FormGridBody.component.mjs +3 -3
  105. package/{esm2022 → dist/angular-formio/esm2022}/grid/form/FormGridFooter.component.mjs +5 -5
  106. package/{esm2022 → dist/angular-formio/esm2022}/grid/form/FormGridHeader.component.mjs +3 -3
  107. package/{esm2022 → dist/angular-formio/esm2022}/grid/form/time-since.pipe.mjs +3 -3
  108. package/{esm2022 → dist/angular-formio/esm2022}/grid/grid.component.mjs +3 -3
  109. package/{esm2022 → dist/angular-formio/esm2022}/grid/grid.module.mjs +4 -4
  110. package/{esm2022 → dist/angular-formio/esm2022}/grid/grid.service.mjs +3 -3
  111. package/{esm2022 → dist/angular-formio/esm2022}/grid/submission/SubmissionGridBody.component.mjs +3 -3
  112. package/{esm2022 → dist/angular-formio/esm2022}/grid/submission/SubmissionGridFooter.component.mjs +3 -3
  113. package/{esm2022 → dist/angular-formio/esm2022}/grid/submission/SubmissionGridHeader.component.mjs +3 -3
  114. package/{esm2022 → dist/angular-formio/esm2022}/manager/create/create.component.mjs +3 -3
  115. package/{esm2022 → dist/angular-formio/esm2022}/manager/delete/delete.component.mjs +3 -3
  116. package/{esm2022 → dist/angular-formio/esm2022}/manager/edit/edit.component.mjs +5 -4
  117. package/{esm2022 → dist/angular-formio/esm2022}/manager/form/form.component.mjs +3 -3
  118. package/{esm2022 → dist/angular-formio/esm2022}/manager/form-manager.config.mjs +3 -3
  119. package/{esm2022 → dist/angular-formio/esm2022}/manager/form-manager.module.mjs +4 -4
  120. package/{esm2022 → dist/angular-formio/esm2022}/manager/form-manager.service.mjs +3 -3
  121. package/{esm2022 → dist/angular-formio/esm2022}/manager/index/index.component.mjs +5 -7
  122. package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/delete/delete.component.mjs +3 -3
  123. package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/edit/edit.component.mjs +3 -3
  124. package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/index/index.component.mjs +3 -3
  125. package/dist/angular-formio/esm2022/manager/submission/submission/submission.component.mjs +29 -0
  126. package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/view/view.component.mjs +3 -3
  127. package/{esm2022 → dist/angular-formio/esm2022}/manager/view/view.component.mjs +3 -3
  128. package/{esm2022 → dist/angular-formio/esm2022}/resource/create/create.component.mjs +3 -3
  129. package/{esm2022 → dist/angular-formio/esm2022}/resource/delete/delete.component.mjs +3 -3
  130. package/{esm2022 → dist/angular-formio/esm2022}/resource/edit/edit.component.mjs +3 -3
  131. package/{esm2022 → dist/angular-formio/esm2022}/resource/index/index.component.mjs +3 -3
  132. package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.component.mjs +3 -3
  133. package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.config.mjs +3 -3
  134. package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.module.mjs +4 -4
  135. package/dist/angular-formio/esm2022/resource/resource.service.mjs +231 -0
  136. package/{esm2022 → dist/angular-formio/esm2022}/resource/resources.service.mjs +3 -3
  137. package/{esm2022 → dist/angular-formio/esm2022}/resource/view/view.component.mjs +3 -3
  138. package/{fesm2022 → dist/angular-formio/fesm2022}/formio-angular-auth.mjs +23 -23
  139. package/dist/angular-formio/fesm2022/formio-angular-auth.mjs.map +1 -0
  140. package/{fesm2022 → dist/angular-formio/fesm2022}/formio-angular-grid.mjs +41 -41
  141. package/dist/angular-formio/fesm2022/formio-angular-grid.mjs.map +1 -0
  142. package/{fesm2022 → dist/angular-formio/fesm2022}/formio-angular-manager.mjs +46 -47
  143. package/dist/angular-formio/fesm2022/formio-angular-manager.mjs.map +1 -0
  144. package/{fesm2022 → dist/angular-formio/fesm2022}/formio-angular-resource.mjs +35 -33
  145. package/dist/angular-formio/fesm2022/formio-angular-resource.mjs.map +1 -0
  146. package/dist/angular-formio/fesm2022/formio-angular.mjs +1188 -0
  147. package/dist/angular-formio/fesm2022/formio-angular.mjs.map +1 -0
  148. package/{formio.utils.d.ts.map → dist/angular-formio/formio.utils.d.ts.map} +1 -1
  149. package/{manager → dist/angular-formio/manager}/edit/edit.component.d.ts.map +1 -1
  150. package/{manager → dist/angular-formio/manager}/index/index.component.d.ts.map +1 -1
  151. package/{resource → dist/angular-formio/resource}/resource.service.d.ts.map +1 -1
  152. package/package.json +55 -63
  153. package/projects/angular-formio/README.md +24 -0
  154. package/projects/angular-formio/auth/ng-package.json +5 -0
  155. package/projects/angular-formio/auth/src/auth.component.html +11 -0
  156. package/projects/angular-formio/auth/src/auth.component.ts +5 -0
  157. package/projects/angular-formio/auth/src/auth.config.ts +72 -0
  158. package/projects/angular-formio/auth/src/auth.module.ts +33 -0
  159. package/projects/angular-formio/auth/src/auth.routes.ts +34 -0
  160. package/projects/angular-formio/auth/src/auth.service.ts +221 -0
  161. package/projects/angular-formio/auth/src/index.ts +8 -0
  162. package/projects/angular-formio/auth/src/login/login.component.html +1 -0
  163. package/projects/angular-formio/auth/src/login/login.component.ts +11 -0
  164. package/projects/angular-formio/auth/src/public_api.ts +5 -0
  165. package/projects/angular-formio/auth/src/register/register.component.html +1 -0
  166. package/projects/angular-formio/auth/src/register/register.component.ts +11 -0
  167. package/projects/angular-formio/auth/src/resetpass/resetpass.component.html +1 -0
  168. package/projects/angular-formio/auth/src/resetpass/resetpass.component.ts +8 -0
  169. package/projects/angular-formio/grid/ng-package.json +5 -0
  170. package/projects/angular-formio/grid/src/GridBodyComponent.ts +80 -0
  171. package/projects/angular-formio/grid/src/GridFooterComponent.ts +25 -0
  172. package/projects/angular-formio/grid/src/GridHeaderComponent.ts +25 -0
  173. package/projects/angular-formio/grid/src/form/FormGridBody.component.html +22 -0
  174. package/projects/angular-formio/grid/src/form/FormGridBody.component.scss +4 -0
  175. package/projects/angular-formio/grid/src/form/FormGridBody.component.ts +46 -0
  176. package/projects/angular-formio/grid/src/form/FormGridFooter.component.html +21 -0
  177. package/projects/angular-formio/grid/src/form/FormGridFooter.component.ts +23 -0
  178. package/projects/angular-formio/grid/src/form/FormGridHeader.component.html +18 -0
  179. package/projects/angular-formio/grid/src/form/FormGridHeader.component.ts +24 -0
  180. package/projects/angular-formio/grid/src/form/index.ts +8 -0
  181. package/projects/angular-formio/grid/src/form/time-since.pipe.ts +31 -0
  182. package/projects/angular-formio/grid/src/grid.component.html +18 -0
  183. package/projects/angular-formio/grid/src/grid.component.scss +9 -0
  184. package/projects/angular-formio/grid/src/grid.component.ts +242 -0
  185. package/projects/angular-formio/grid/src/grid.footer.scss +14 -0
  186. package/projects/angular-formio/grid/src/grid.module.ts +49 -0
  187. package/projects/angular-formio/grid/src/grid.service.ts +16 -0
  188. package/projects/angular-formio/grid/src/index.ts +12 -0
  189. package/projects/angular-formio/grid/src/public_api.ts +5 -0
  190. package/projects/angular-formio/grid/src/submission/SubmissionGridBody.component.html +7 -0
  191. package/projects/angular-formio/grid/src/submission/SubmissionGridBody.component.ts +39 -0
  192. package/projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.html +18 -0
  193. package/projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.ts +20 -0
  194. package/projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.html +11 -0
  195. package/projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.ts +73 -0
  196. package/projects/angular-formio/grid/src/submission/index.ts +8 -0
  197. package/projects/angular-formio/grid/src/types/grid-column.ts +7 -0
  198. package/projects/angular-formio/grid/src/types/grid-footer-positions.ts +5 -0
  199. package/projects/angular-formio/grid/src/types/grid-header.ts +14 -0
  200. package/projects/angular-formio/karma.conf.js +32 -0
  201. package/projects/angular-formio/manager/ng-package.json +5 -0
  202. package/projects/angular-formio/manager/src/create/create.component.ts +11 -0
  203. package/projects/angular-formio/manager/src/delete/delete.component.html +6 -0
  204. package/projects/angular-formio/manager/src/delete/delete.component.ts +37 -0
  205. package/projects/angular-formio/manager/src/edit/edit.component.html +19 -0
  206. package/projects/angular-formio/manager/src/edit/edit.component.ts +111 -0
  207. package/projects/angular-formio/manager/src/form/form.component.html +32 -0
  208. package/projects/angular-formio/manager/src/form/form.component.ts +73 -0
  209. package/projects/angular-formio/manager/src/form-manager.config.ts +31 -0
  210. package/projects/angular-formio/manager/src/form-manager.module.ts +54 -0
  211. package/projects/angular-formio/manager/src/form-manager.routes.ts +75 -0
  212. package/projects/angular-formio/manager/src/form-manager.service.ts +190 -0
  213. package/projects/angular-formio/manager/src/index/index.component.html +14 -0
  214. package/projects/angular-formio/manager/src/index/index.component.scss +22 -0
  215. package/projects/angular-formio/manager/src/index/index.component.ts +98 -0
  216. package/projects/angular-formio/manager/src/index.ts +16 -0
  217. package/projects/angular-formio/manager/src/public_api.ts +5 -0
  218. package/projects/angular-formio/manager/src/submission/delete/delete.component.html +6 -0
  219. package/projects/angular-formio/manager/src/submission/delete/delete.component.ts +26 -0
  220. package/projects/angular-formio/manager/src/submission/edit/edit.component.html +7 -0
  221. package/projects/angular-formio/manager/src/submission/edit/edit.component.ts +18 -0
  222. package/projects/angular-formio/manager/src/submission/index/index.component.html +1 -0
  223. package/projects/angular-formio/manager/src/submission/index/index.component.ts +18 -0
  224. package/projects/angular-formio/manager/src/submission/submission/submission.component.html +8 -0
  225. package/projects/angular-formio/manager/src/submission/submission/submission.component.ts +24 -0
  226. package/projects/angular-formio/manager/src/submission/view/view.component.html +7 -0
  227. package/projects/angular-formio/manager/src/submission/view/view.component.ts +9 -0
  228. package/projects/angular-formio/manager/src/view/view.component.html +11 -0
  229. package/projects/angular-formio/manager/src/view/view.component.ts +44 -0
  230. package/projects/angular-formio/ng-package.json +7 -0
  231. package/projects/angular-formio/package.json +37 -0
  232. package/projects/angular-formio/resource/ng-package.json +5 -0
  233. package/projects/angular-formio/resource/src/create/create.component.html +13 -0
  234. package/projects/angular-formio/resource/src/create/create.component.scss +3 -0
  235. package/projects/angular-formio/resource/src/create/create.component.ts +37 -0
  236. package/projects/angular-formio/resource/src/delete/delete.component.html +5 -0
  237. package/projects/angular-formio/resource/src/delete/delete.component.ts +24 -0
  238. package/projects/angular-formio/resource/src/edit/edit.component.html +7 -0
  239. package/projects/angular-formio/resource/src/edit/edit.component.ts +35 -0
  240. package/projects/angular-formio/resource/src/index/index.component.html +10 -0
  241. package/projects/angular-formio/resource/src/index/index.component.ts +64 -0
  242. package/projects/angular-formio/resource/src/index.js +24 -0
  243. package/projects/angular-formio/resource/src/index.ts +11 -0
  244. package/projects/angular-formio/resource/src/public_api.ts +5 -0
  245. package/projects/angular-formio/resource/src/resource.component.html +7 -0
  246. package/projects/angular-formio/resource/src/resource.component.ts +48 -0
  247. package/projects/angular-formio/resource/src/resource.config.ts +17 -0
  248. package/projects/angular-formio/resource/src/resource.module.ts +43 -0
  249. package/projects/angular-formio/resource/src/resource.routes.ts +43 -0
  250. package/projects/angular-formio/resource/src/resource.service.ts +260 -0
  251. package/projects/angular-formio/resource/src/resources.service.ts +24 -0
  252. package/projects/angular-formio/resource/src/view/view.component.html +6 -0
  253. package/projects/angular-formio/resource/src/view/view.component.ts +19 -0
  254. package/projects/angular-formio/src/FormioBaseComponent.ts +554 -0
  255. package/projects/angular-formio/src/components/alerts/formio.alerts.component.html +3 -0
  256. package/projects/angular-formio/src/components/alerts/formio.alerts.component.ts +19 -0
  257. package/projects/angular-formio/src/components/alerts/formio.alerts.ts +21 -0
  258. package/projects/angular-formio/src/components/alerts/parse-html-content.pipe.ts +15 -0
  259. package/projects/angular-formio/src/components/formbuilder/formbuilder.component.html +1 -0
  260. package/projects/angular-formio/src/components/formbuilder/formbuilder.component.ts +213 -0
  261. package/projects/angular-formio/src/components/formio/formio.component.html +8 -0
  262. package/projects/angular-formio/src/components/formio/formio.component.ts +33 -0
  263. package/projects/angular-formio/src/components/formioreport/formioreport.component.html +8 -0
  264. package/projects/angular-formio/src/components/formioreport/formioreport.component.ts +95 -0
  265. package/projects/angular-formio/src/components/loader/formio.loader.component.html +3 -0
  266. package/projects/angular-formio/src/components/loader/formio.loader.component.scss +26 -0
  267. package/projects/angular-formio/src/components/loader/formio.loader.component.ts +10 -0
  268. package/projects/angular-formio/src/core.ts +19 -0
  269. package/projects/angular-formio/src/custom-tags.service.ts +9 -0
  270. package/projects/angular-formio/src/formio-promise.service.ts +36 -0
  271. package/projects/angular-formio/src/formio.common.ts +90 -0
  272. package/projects/angular-formio/src/formio.config.ts +27 -0
  273. package/projects/angular-formio/src/formio.module.ts +38 -0
  274. package/projects/angular-formio/src/formio.service.ts +57 -0
  275. package/projects/angular-formio/src/formio.utils.ts +25 -0
  276. package/projects/angular-formio/src/index.ts +3 -0
  277. package/projects/angular-formio/src/public-api.ts +5 -0
  278. package/projects/angular-formio/src/test.ts +28 -0
  279. package/projects/angular-formio/src/types/alerts-position.ts +6 -0
  280. package/projects/angular-formio/src/types/formio-metadata.ts +10 -0
  281. package/projects/angular-formio/src/types/formio-submission.ts +20 -0
  282. package/projects/angular-formio/tsconfig.lib.json +27 -0
  283. package/projects/angular-formio/tsconfig.lib.prod.json +8 -0
  284. package/projects/angular-formio/tsconfig.spec.json +17 -0
  285. package/projects/angular-formio/tslint.json +17 -0
  286. package/tsconfig.json +40 -0
  287. package/tslint.json +140 -0
  288. package/embed/app.service.d.ts +0 -28
  289. package/embed/app.service.d.ts.map +0 -1
  290. package/embed/builder.component.d.ts +0 -13
  291. package/embed/builder.component.d.ts.map +0 -1
  292. package/embed/embed.module.d.ts +0 -10
  293. package/embed/embed.module.d.ts.map +0 -1
  294. package/embed/formio-angular-embed.d.ts.map +0 -1
  295. package/embed/formio.component.d.ts +0 -16
  296. package/embed/formio.component.d.ts.map +0 -1
  297. package/embed/index.d.ts +0 -7
  298. package/embed/index.d.ts.map +0 -1
  299. package/esm2022/auth/auth.service.mjs +0 -199
  300. package/esm2022/components/formbuilder/formbuilder.component.mjs +0 -202
  301. package/esm2022/components/formio/formio.component.mjs +0 -43
  302. package/esm2022/components/formioreport/formioreport.component.mjs +0 -89
  303. package/esm2022/embed/app.service.mjs +0 -58
  304. package/esm2022/embed/builder.component.mjs +0 -36
  305. package/esm2022/embed/embed.module.mjs +0 -35
  306. package/esm2022/embed/formio-angular-embed.mjs +0 -5
  307. package/esm2022/embed/formio.component.mjs +0 -50
  308. package/esm2022/embed/index.mjs +0 -7
  309. package/esm2022/formio.utils.mjs +0 -21
  310. package/esm2022/manager/submission/submission/submission.component.mjs +0 -29
  311. package/esm2022/resource/resource.service.mjs +0 -229
  312. package/fesm2022/formio-angular-auth.mjs.map +0 -1
  313. package/fesm2022/formio-angular-embed.mjs +0 -176
  314. package/fesm2022/formio-angular-embed.mjs.map +0 -1
  315. package/fesm2022/formio-angular-grid.mjs.map +0 -1
  316. package/fesm2022/formio-angular-manager.mjs.map +0 -1
  317. package/fesm2022/formio-angular-resource.mjs.map +0 -1
  318. package/fesm2022/formio-angular.mjs +0 -1186
  319. package/fesm2022/formio-angular.mjs.map +0 -1
  320. /package/{FormioBaseComponent.d.ts → dist/angular-formio/FormioBaseComponent.d.ts} +0 -0
  321. /package/{FormioBaseComponent.d.ts.map → dist/angular-formio/FormioBaseComponent.d.ts.map} +0 -0
  322. /package/{auth → dist/angular-formio/auth}/auth.component.d.ts +0 -0
  323. /package/{auth → dist/angular-formio/auth}/auth.component.d.ts.map +0 -0
  324. /package/{auth → dist/angular-formio/auth}/auth.config.d.ts +0 -0
  325. /package/{auth → dist/angular-formio/auth}/auth.config.d.ts.map +0 -0
  326. /package/{auth → dist/angular-formio/auth}/auth.module.d.ts +0 -0
  327. /package/{auth → dist/angular-formio/auth}/auth.module.d.ts.map +0 -0
  328. /package/{auth → dist/angular-formio/auth}/auth.routes.d.ts +0 -0
  329. /package/{auth → dist/angular-formio/auth}/auth.routes.d.ts.map +0 -0
  330. /package/{auth → dist/angular-formio/auth}/auth.service.d.ts +0 -0
  331. /package/{auth → dist/angular-formio/auth}/auth.service.d.ts.map +0 -0
  332. /package/{auth → dist/angular-formio/auth}/formio-angular-auth.d.ts.map +0 -0
  333. /package/{auth → dist/angular-formio/auth}/index.d.ts +0 -0
  334. /package/{auth → dist/angular-formio/auth}/index.d.ts.map +0 -0
  335. /package/{auth → dist/angular-formio/auth}/login/login.component.d.ts +0 -0
  336. /package/{auth → dist/angular-formio/auth}/login/login.component.d.ts.map +0 -0
  337. /package/{auth → dist/angular-formio/auth}/register/register.component.d.ts +0 -0
  338. /package/{auth → dist/angular-formio/auth}/register/register.component.d.ts.map +0 -0
  339. /package/{auth → dist/angular-formio/auth}/resetpass/resetpass.component.d.ts +0 -0
  340. /package/{auth → dist/angular-formio/auth}/resetpass/resetpass.component.d.ts.map +0 -0
  341. /package/{components → dist/angular-formio/components}/alerts/formio.alerts.component.d.ts +0 -0
  342. /package/{components → dist/angular-formio/components}/alerts/formio.alerts.component.d.ts.map +0 -0
  343. /package/{components → dist/angular-formio/components}/alerts/formio.alerts.d.ts +0 -0
  344. /package/{components → dist/angular-formio/components}/alerts/formio.alerts.d.ts.map +0 -0
  345. /package/{components → dist/angular-formio/components}/alerts/parse-html-content.pipe.d.ts +0 -0
  346. /package/{components → dist/angular-formio/components}/alerts/parse-html-content.pipe.d.ts.map +0 -0
  347. /package/{components → dist/angular-formio/components}/formbuilder/formbuilder.component.d.ts +0 -0
  348. /package/{components → dist/angular-formio/components}/formbuilder/formbuilder.component.d.ts.map +0 -0
  349. /package/{components → dist/angular-formio/components}/formio/formio.component.d.ts +0 -0
  350. /package/{components → dist/angular-formio/components}/formio/formio.component.d.ts.map +0 -0
  351. /package/{components → dist/angular-formio/components}/formioreport/formioreport.component.d.ts +0 -0
  352. /package/{components → dist/angular-formio/components}/formioreport/formioreport.component.d.ts.map +0 -0
  353. /package/{components → dist/angular-formio/components}/loader/formio.loader.component.d.ts +0 -0
  354. /package/{components → dist/angular-formio/components}/loader/formio.loader.component.d.ts.map +0 -0
  355. /package/{core.d.ts → dist/angular-formio/core.d.ts} +0 -0
  356. /package/{core.d.ts.map → dist/angular-formio/core.d.ts.map} +0 -0
  357. /package/{custom-tags.service.d.ts → dist/angular-formio/custom-tags.service.d.ts} +0 -0
  358. /package/{custom-tags.service.d.ts.map → dist/angular-formio/custom-tags.service.d.ts.map} +0 -0
  359. /package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.routes.mjs +0 -0
  360. /package/{esm2022 → dist/angular-formio/esm2022}/auth/formio-angular-auth.mjs +0 -0
  361. /package/{esm2022 → dist/angular-formio/esm2022}/auth/index.mjs +0 -0
  362. /package/{esm2022 → dist/angular-formio/esm2022}/components/alerts/formio.alerts.mjs +0 -0
  363. /package/{esm2022 → dist/angular-formio/esm2022}/core.mjs +0 -0
  364. /package/{esm2022 → dist/angular-formio/esm2022}/formio-angular.mjs +0 -0
  365. /package/{esm2022 → dist/angular-formio/esm2022}/formio-promise.service.mjs +0 -0
  366. /package/{esm2022 → dist/angular-formio/esm2022}/formio.common.mjs +0 -0
  367. /package/{esm2022 → dist/angular-formio/esm2022}/formio.service.mjs +0 -0
  368. /package/{esm2022 → dist/angular-formio/esm2022}/grid/form/index.mjs +0 -0
  369. /package/{esm2022 → dist/angular-formio/esm2022}/grid/formio-angular-grid.mjs +0 -0
  370. /package/{esm2022 → dist/angular-formio/esm2022}/grid/index.mjs +0 -0
  371. /package/{esm2022 → dist/angular-formio/esm2022}/grid/submission/index.mjs +0 -0
  372. /package/{esm2022 → dist/angular-formio/esm2022}/grid/types/grid-column.mjs +0 -0
  373. /package/{esm2022 → dist/angular-formio/esm2022}/grid/types/grid-footer-positions.mjs +0 -0
  374. /package/{esm2022 → dist/angular-formio/esm2022}/grid/types/grid-header.mjs +0 -0
  375. /package/{esm2022 → dist/angular-formio/esm2022}/index.mjs +0 -0
  376. /package/{esm2022 → dist/angular-formio/esm2022}/manager/form-manager.routes.mjs +0 -0
  377. /package/{esm2022 → dist/angular-formio/esm2022}/manager/formio-angular-manager.mjs +0 -0
  378. /package/{esm2022 → dist/angular-formio/esm2022}/manager/index.mjs +0 -0
  379. /package/{esm2022 → dist/angular-formio/esm2022}/resource/formio-angular-resource.mjs +0 -0
  380. /package/{esm2022 → dist/angular-formio/esm2022}/resource/index.mjs +0 -0
  381. /package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.routes.mjs +0 -0
  382. /package/{esm2022 → dist/angular-formio/esm2022}/types/alerts-position.mjs +0 -0
  383. /package/{esm2022 → dist/angular-formio/esm2022}/types/formio-metadata.mjs +0 -0
  384. /package/{esm2022 → dist/angular-formio/esm2022}/types/formio-submission.mjs +0 -0
  385. /package/{formio-angular.d.ts.map → dist/angular-formio/formio-angular.d.ts.map} +0 -0
  386. /package/{formio-promise.service.d.ts → dist/angular-formio/formio-promise.service.d.ts} +0 -0
  387. /package/{formio-promise.service.d.ts.map → dist/angular-formio/formio-promise.service.d.ts.map} +0 -0
  388. /package/{formio.common.d.ts → dist/angular-formio/formio.common.d.ts} +0 -0
  389. /package/{formio.common.d.ts.map → dist/angular-formio/formio.common.d.ts.map} +0 -0
  390. /package/{formio.config.d.ts → dist/angular-formio/formio.config.d.ts} +0 -0
  391. /package/{formio.config.d.ts.map → dist/angular-formio/formio.config.d.ts.map} +0 -0
  392. /package/{formio.module.d.ts → dist/angular-formio/formio.module.d.ts} +0 -0
  393. /package/{formio.module.d.ts.map → dist/angular-formio/formio.module.d.ts.map} +0 -0
  394. /package/{formio.service.d.ts → dist/angular-formio/formio.service.d.ts} +0 -0
  395. /package/{formio.service.d.ts.map → dist/angular-formio/formio.service.d.ts.map} +0 -0
  396. /package/{formio.utils.d.ts → dist/angular-formio/formio.utils.d.ts} +0 -0
  397. /package/{grid → dist/angular-formio/grid}/GridBodyComponent.d.ts +0 -0
  398. /package/{grid → dist/angular-formio/grid}/GridBodyComponent.d.ts.map +0 -0
  399. /package/{grid → dist/angular-formio/grid}/GridFooterComponent.d.ts +0 -0
  400. /package/{grid → dist/angular-formio/grid}/GridFooterComponent.d.ts.map +0 -0
  401. /package/{grid → dist/angular-formio/grid}/GridHeaderComponent.d.ts +0 -0
  402. /package/{grid → dist/angular-formio/grid}/GridHeaderComponent.d.ts.map +0 -0
  403. /package/{grid → dist/angular-formio/grid}/form/FormGridBody.component.d.ts +0 -0
  404. /package/{grid → dist/angular-formio/grid}/form/FormGridBody.component.d.ts.map +0 -0
  405. /package/{grid → dist/angular-formio/grid}/form/FormGridFooter.component.d.ts +0 -0
  406. /package/{grid → dist/angular-formio/grid}/form/FormGridFooter.component.d.ts.map +0 -0
  407. /package/{grid → dist/angular-formio/grid}/form/FormGridHeader.component.d.ts +0 -0
  408. /package/{grid → dist/angular-formio/grid}/form/FormGridHeader.component.d.ts.map +0 -0
  409. /package/{grid → dist/angular-formio/grid}/form/index.d.ts +0 -0
  410. /package/{grid → dist/angular-formio/grid}/form/index.d.ts.map +0 -0
  411. /package/{grid → dist/angular-formio/grid}/form/time-since.pipe.d.ts +0 -0
  412. /package/{grid → dist/angular-formio/grid}/form/time-since.pipe.d.ts.map +0 -0
  413. /package/{grid → dist/angular-formio/grid}/formio-angular-grid.d.ts.map +0 -0
  414. /package/{grid → dist/angular-formio/grid}/grid.component.d.ts +0 -0
  415. /package/{grid → dist/angular-formio/grid}/grid.component.d.ts.map +0 -0
  416. /package/{grid → dist/angular-formio/grid}/grid.module.d.ts +0 -0
  417. /package/{grid → dist/angular-formio/grid}/grid.module.d.ts.map +0 -0
  418. /package/{grid → dist/angular-formio/grid}/grid.service.d.ts +0 -0
  419. /package/{grid → dist/angular-formio/grid}/grid.service.d.ts.map +0 -0
  420. /package/{grid → dist/angular-formio/grid}/index.d.ts +0 -0
  421. /package/{grid → dist/angular-formio/grid}/index.d.ts.map +0 -0
  422. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridBody.component.d.ts +0 -0
  423. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridBody.component.d.ts.map +0 -0
  424. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridFooter.component.d.ts +0 -0
  425. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridFooter.component.d.ts.map +0 -0
  426. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridHeader.component.d.ts +0 -0
  427. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridHeader.component.d.ts.map +0 -0
  428. /package/{grid → dist/angular-formio/grid}/submission/index.d.ts +0 -0
  429. /package/{grid → dist/angular-formio/grid}/submission/index.d.ts.map +0 -0
  430. /package/{grid → dist/angular-formio/grid}/types/grid-column.d.ts +0 -0
  431. /package/{grid → dist/angular-formio/grid}/types/grid-column.d.ts.map +0 -0
  432. /package/{grid → dist/angular-formio/grid}/types/grid-footer-positions.d.ts +0 -0
  433. /package/{grid → dist/angular-formio/grid}/types/grid-footer-positions.d.ts.map +0 -0
  434. /package/{grid → dist/angular-formio/grid}/types/grid-header.d.ts +0 -0
  435. /package/{grid → dist/angular-formio/grid}/types/grid-header.d.ts.map +0 -0
  436. /package/{index.d.ts → dist/angular-formio/index.d.ts} +0 -0
  437. /package/{index.d.ts.map → dist/angular-formio/index.d.ts.map} +0 -0
  438. /package/{manager → dist/angular-formio/manager}/create/create.component.d.ts +0 -0
  439. /package/{manager → dist/angular-formio/manager}/create/create.component.d.ts.map +0 -0
  440. /package/{manager → dist/angular-formio/manager}/delete/delete.component.d.ts +0 -0
  441. /package/{manager → dist/angular-formio/manager}/delete/delete.component.d.ts.map +0 -0
  442. /package/{manager → dist/angular-formio/manager}/edit/edit.component.d.ts +0 -0
  443. /package/{manager → dist/angular-formio/manager}/form/form.component.d.ts +0 -0
  444. /package/{manager → dist/angular-formio/manager}/form/form.component.d.ts.map +0 -0
  445. /package/{manager → dist/angular-formio/manager}/form-manager.config.d.ts +0 -0
  446. /package/{manager → dist/angular-formio/manager}/form-manager.config.d.ts.map +0 -0
  447. /package/{manager → dist/angular-formio/manager}/form-manager.module.d.ts +0 -0
  448. /package/{manager → dist/angular-formio/manager}/form-manager.module.d.ts.map +0 -0
  449. /package/{manager → dist/angular-formio/manager}/form-manager.routes.d.ts +0 -0
  450. /package/{manager → dist/angular-formio/manager}/form-manager.routes.d.ts.map +0 -0
  451. /package/{manager → dist/angular-formio/manager}/form-manager.service.d.ts +0 -0
  452. /package/{manager → dist/angular-formio/manager}/form-manager.service.d.ts.map +0 -0
  453. /package/{manager → dist/angular-formio/manager}/formio-angular-manager.d.ts.map +0 -0
  454. /package/{manager → dist/angular-formio/manager}/index/index.component.d.ts +0 -0
  455. /package/{manager → dist/angular-formio/manager}/index.d.ts +0 -0
  456. /package/{manager → dist/angular-formio/manager}/index.d.ts.map +0 -0
  457. /package/{manager → dist/angular-formio/manager}/submission/delete/delete.component.d.ts +0 -0
  458. /package/{manager → dist/angular-formio/manager}/submission/delete/delete.component.d.ts.map +0 -0
  459. /package/{manager → dist/angular-formio/manager}/submission/edit/edit.component.d.ts +0 -0
  460. /package/{manager → dist/angular-formio/manager}/submission/edit/edit.component.d.ts.map +0 -0
  461. /package/{manager → dist/angular-formio/manager}/submission/index/index.component.d.ts +0 -0
  462. /package/{manager → dist/angular-formio/manager}/submission/index/index.component.d.ts.map +0 -0
  463. /package/{manager → dist/angular-formio/manager}/submission/submission/submission.component.d.ts +0 -0
  464. /package/{manager → dist/angular-formio/manager}/submission/submission/submission.component.d.ts.map +0 -0
  465. /package/{manager → dist/angular-formio/manager}/submission/view/view.component.d.ts +0 -0
  466. /package/{manager → dist/angular-formio/manager}/submission/view/view.component.d.ts.map +0 -0
  467. /package/{manager → dist/angular-formio/manager}/view/view.component.d.ts +0 -0
  468. /package/{manager → dist/angular-formio/manager}/view/view.component.d.ts.map +0 -0
  469. /package/{resource → dist/angular-formio/resource}/create/create.component.d.ts +0 -0
  470. /package/{resource → dist/angular-formio/resource}/create/create.component.d.ts.map +0 -0
  471. /package/{resource → dist/angular-formio/resource}/delete/delete.component.d.ts +0 -0
  472. /package/{resource → dist/angular-formio/resource}/delete/delete.component.d.ts.map +0 -0
  473. /package/{resource → dist/angular-formio/resource}/edit/edit.component.d.ts +0 -0
  474. /package/{resource → dist/angular-formio/resource}/edit/edit.component.d.ts.map +0 -0
  475. /package/{resource → dist/angular-formio/resource}/formio-angular-resource.d.ts.map +0 -0
  476. /package/{resource → dist/angular-formio/resource}/index/index.component.d.ts +0 -0
  477. /package/{resource → dist/angular-formio/resource}/index/index.component.d.ts.map +0 -0
  478. /package/{resource → dist/angular-formio/resource}/index.d.ts +0 -0
  479. /package/{resource → dist/angular-formio/resource}/index.d.ts.map +0 -0
  480. /package/{resource → dist/angular-formio/resource}/resource.component.d.ts +0 -0
  481. /package/{resource → dist/angular-formio/resource}/resource.component.d.ts.map +0 -0
  482. /package/{resource → dist/angular-formio/resource}/resource.config.d.ts +0 -0
  483. /package/{resource → dist/angular-formio/resource}/resource.config.d.ts.map +0 -0
  484. /package/{resource → dist/angular-formio/resource}/resource.module.d.ts +0 -0
  485. /package/{resource → dist/angular-formio/resource}/resource.module.d.ts.map +0 -0
  486. /package/{resource → dist/angular-formio/resource}/resource.routes.d.ts +0 -0
  487. /package/{resource → dist/angular-formio/resource}/resource.routes.d.ts.map +0 -0
  488. /package/{resource → dist/angular-formio/resource}/resource.service.d.ts +0 -0
  489. /package/{resource → dist/angular-formio/resource}/resources.service.d.ts +0 -0
  490. /package/{resource → dist/angular-formio/resource}/resources.service.d.ts.map +0 -0
  491. /package/{resource → dist/angular-formio/resource}/view/view.component.d.ts +0 -0
  492. /package/{resource → dist/angular-formio/resource}/view/view.component.d.ts.map +0 -0
  493. /package/{types → dist/angular-formio/types}/alerts-position.d.ts +0 -0
  494. /package/{types → dist/angular-formio/types}/alerts-position.d.ts.map +0 -0
  495. /package/{types → dist/angular-formio/types}/formio-metadata.d.ts +0 -0
  496. /package/{types → dist/angular-formio/types}/formio-metadata.d.ts.map +0 -0
  497. /package/{types → dist/angular-formio/types}/formio-submission.d.ts +0 -0
  498. /package/{types → dist/angular-formio/types}/formio-submission.d.ts.map +0 -0
@@ -0,0 +1 @@
1
+ {"hash":"34c32d41722f21496b726fc5b3f4960fd075cdc0","fesm2022":[{"exports":["FormGridBodyComponent","FormGridFooterComponent","FormGridHeaderComponent","FormioGrid","FormioGridComponent","GridBodyComponent","GridFooterComponent","GridHeaderComponent","GridService","SubmissionGridBodyComponent","SubmissionGridFooterComponent","SubmissionGridHeaderComponent"],"facadeModuleId":"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/formio-angular-grid.mjs","isDynamicEntry":false,"isEntry":true,"isImplicitEntry":false,"moduleIds":["/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/types/grid-footer-positions.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/GridHeaderComponent.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/types/grid-header.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/FormGridHeader.component.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/grid.service.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/GridBodyComponent.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/time-since.pipe.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/FormGridBody.component.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/GridFooterComponent.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/FormGridFooter.component.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/index.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/submission/SubmissionGridHeader.component.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/submission/SubmissionGridBody.component.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/submission/SubmissionGridFooter.component.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/submission/index.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/grid.component.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/grid.module.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/index.mjs","/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/formio-angular-grid.mjs"],"name":"formio-angular-grid","type":"chunk","dynamicImports":[],"fileName":"formio-angular-grid.mjs","implicitlyLoadedBefore":[],"importedBindings":{"@angular/core":["EventEmitter","*","TemplateRef","Component","Input","Output","ViewChild","Injectable","Pipe","ViewChildren","ViewEncapsulation","ViewContainerRef","NgModule"],"@angular/common":["*","CommonModule"],"@angular/forms":["*","FormsModule"],"@angular/router":["*","RouterModule"],"@formio/angular":["FormioPromiseService","*","FormioModule","FormioAlerts"],"lodash":["each","clone","get"],"@formio/js":["Components","Utils","FormioCore"],"bootstrap":["Tooltip"],"ngx-bootstrap/pagination":["*","PaginationModule"]},"imports":["@angular/core","@angular/common","@angular/forms","@angular/router","@formio/angular","lodash","@formio/js","bootstrap","ngx-bootstrap/pagination"],"modules":{"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/types/grid-footer-positions.mjs":{"code":"var GridFooterPositions;\n(function (GridFooterPositions) {\n GridFooterPositions[GridFooterPositions[\"bottom\"] = 0] = \"bottom\";\n GridFooterPositions[GridFooterPositions[\"top\"] = 1] = \"top\";\n GridFooterPositions[GridFooterPositions[\"both\"] = 2] = \"both\";\n})(GridFooterPositions || (GridFooterPositions = {}));","originalLength":910,"removedExports":[],"renderedExports":["GridFooterPositions"],"renderedLength":316},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/GridHeaderComponent.mjs":{"code":"class GridHeaderComponent {\n actionAllowed;\n sort;\n template;\n headers;\n constructor() {\n this.headers = [];\n this.sort = new EventEmitter();\n }\n get numHeaders() {\n return this.headers.length;\n }\n load(formio, query, columns) {\n return Promise.resolve([]);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridHeaderComponent, decorators: [{\n type: Component,\n args: [{\n template: ''\n }]\n }], ctorParameters: () => [], propDecorators: { actionAllowed: [{\n type: Input\n }], sort: [{\n type: Output\n }], template: [{\n type: ViewChild,\n args: [TemplateRef, { static: true }]\n }] } });","originalLength":3702,"removedExports":[],"renderedExports":["GridHeaderComponent"],"renderedLength":1391},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/types/grid-header.mjs":{"code":"var SortType;\n(function (SortType) {\n SortType[\"ASC\"] = \"asc\";\n SortType[\"DESC\"] = \"desc\";\n})(SortType || (SortType = {}));","originalLength":987,"removedExports":[],"renderedExports":["SortType"],"renderedLength":129},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/FormGridHeader.component.mjs":{"code":"class FormGridHeaderComponent extends GridHeaderComponent {\n header;\n load(formio) {\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 get numHeaders() {\n return 2;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridHeaderComponent, decorators: [{\n type: Component,\n 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\" }]\n }] });","originalLength":5465,"removedExports":[],"renderedExports":["FormGridHeaderComponent"],"renderedLength":2405},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/grid.service.mjs":{"code":"class GridService {\n rows;\n constructor() { }\n setRows(rows) {\n this.rows = rows;\n }\n getFormsPerPage() {\n return this.rows?.length;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridService, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });","originalLength":1783,"removedExports":[],"renderedExports":["GridService"],"renderedLength":652},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/GridBodyComponent.mjs":{"code":"class GridBodyComponent {\n service;\n header;\n actionAllowed;\n rowSelect;\n rowAction;\n template;\n rows;\n loading;\n firstItem = 0;\n lastItem = 0;\n skip = 0;\n limit = 0;\n total = 0;\n constructor(service) {\n this.service = service;\n this.rowSelect = new EventEmitter();\n this.rowAction = new EventEmitter();\n this.loading = true;\n }\n load(formio, query) {\n return formio.loadForm(query);\n }\n onRowSelect(event, row) {\n event.preventDefault();\n this.rowSelect.emit(row);\n }\n onRowAction(event, row, action) {\n event.preventDefault();\n this.rowAction.emit({ row, action });\n }\n /**\n * Set the rows for this Grid body.\n *\n * @param query\n * @param items\n * @return any\n */\n setRows(query, items) {\n this.rows = [];\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 return this.rows;\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) => {\n this.rows.push(clone(item));\n });\n this.service.setRows(this.rows);\n return this.rows;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridBodyComponent, deps: [{ token: GridService }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridBodyComponent, decorators: [{\n type: Component,\n args: [{\n template: ''\n }]\n }], ctorParameters: () => [{ type: GridService }], propDecorators: { header: [{\n type: Input\n }], actionAllowed: [{\n type: Input\n }], rowSelect: [{\n type: Output\n }], rowAction: [{\n type: Output\n }], template: [{\n type: ViewChild,\n args: [TemplateRef, { static: true }]\n }] } });","originalLength":9387,"removedExports":[],"renderedExports":["GridBodyComponent"],"renderedLength":2930},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/time-since.pipe.mjs":{"code":"class TimeSince {\n transform(date) {\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 static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: TimeSince, deps: [], target: i0.ɵɵFactoryTarget.Pipe });\n static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"14.0.0\", version: \"17.3.12\", ngImport: i0, type: TimeSince, name: \"timeSince\" });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: TimeSince, decorators: [{\n type: Pipe,\n args: [{\n name: 'timeSince'\n }]\n }] });","originalLength":5104,"removedExports":[],"renderedExports":["TimeSince"],"renderedLength":1479},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/FormGridBody.component.mjs":{"code":"class FormGridBodyComponent extends GridBodyComponent {\n createBtns;\n viewBtns;\n editBtns;\n permissionsBtns;\n deleteBtns;\n tooltips = [];\n load(formio, query) {\n query = query || {};\n return formio.loadForms({ params: query })\n .then((forms) => this.setRows(query, forms))\n .then(() => this.attachTooltips());\n }\n attachTooltips() {\n this.createBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Create' }));\n });\n this.editBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Edit' }));\n });\n this.viewBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'View' }));\n });\n this.permissionsBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Permissions' }));\n });\n this.deleteBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Delete' }));\n });\n }\n ngOnDestroy() {\n this.tooltips.forEach((tootip) => tootip.dispose());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\" }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridBodyComponent, decorators: [{\n type: Component,\n 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\"] }]\n }], propDecorators: { createBtns: [{\n type: ViewChildren,\n args: ['create']\n }], viewBtns: [{\n type: ViewChildren,\n args: ['view']\n }], editBtns: [{\n type: ViewChildren,\n args: ['edit']\n }], permissionsBtns: [{\n type: ViewChildren,\n args: ['permissions']\n }], deleteBtns: [{\n type: ViewChildren,\n args: ['delete']\n }] } });","originalLength":14386,"removedExports":[],"renderedExports":["FormGridBodyComponent"],"renderedLength":6541},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/GridFooterComponent.mjs":{"code":"class GridFooterComponent {\n header;\n body;\n createText;\n size;\n actionAllowed;\n pageChanged;\n createItem;\n template;\n footerPositions = GridFooterPositions;\n constructor() {\n this.pageChanged = new EventEmitter();\n this.createItem = new EventEmitter();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridFooterComponent, decorators: [{\n type: Component,\n args: [{\n template: ''\n }]\n }], ctorParameters: () => [], propDecorators: { header: [{\n type: Input\n }], body: [{\n type: Input\n }], createText: [{\n type: Input\n }], size: [{\n type: Input\n }], actionAllowed: [{\n type: Input\n }], pageChanged: [{\n type: Output\n }], createItem: [{\n type: Output\n }], template: [{\n type: ViewChild,\n args: [TemplateRef, { static: true }]\n }] } });","originalLength":4439,"removedExports":[],"renderedExports":["GridFooterComponent"],"renderedLength":1775},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/FormGridFooter.component.mjs":{"code":"class FormGridFooterComponent extends GridFooterComponent {\n constructor() {\n super();\n }\n ngOnInit() {\n if (!this.createText) {\n this.createText = 'Create Form';\n }\n if (!this.size) {\n this.size = 7;\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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=\\\"pull-right 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridFooterComponent, decorators: [{\n type: Component,\n 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=\\\"pull-right 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\"] }]\n }], ctorParameters: () => [] });","originalLength":9033,"removedExports":[],"renderedExports":["FormGridFooterComponent"],"renderedLength":5105},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/form/index.mjs":{"code":"var FormComponents = {\n header: FormGridHeaderComponent,\n body: FormGridBodyComponent,\n footer: FormGridFooterComponent\n};","originalLength":1354,"removedExports":[],"renderedExports":["default"],"renderedLength":131},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/submission/SubmissionGridHeader.component.mjs":{"code":"class SubmissionGridHeaderComponent extends GridHeaderComponent {\n // Map structure where the key is the path and the value is the component\n formComponents;\n load(formio, query, columns) {\n query = query || {};\n return formio.loadForm({ params: query }).then((form) => {\n this.headers = [];\n this.formComponents = new Map();\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 return this.headers;\n });\n }\n setHeader(header) {\n this.headers.push(header);\n }\n getHeaderForColumn(column, component, sort) {\n return {\n label: column.label,\n key: column.path,\n sort: sort,\n component: component ? Components.create(component, null, null) : undefined,\n renderCell: column ? column.renderCell : undefined\n };\n }\n getHeaderForComponent(component, path, sort) {\n return {\n label: component.label,\n key: path,\n sort: sort,\n component: component ? Components.create(component, null, null) : undefined,\n };\n }\n // Set headers from components in case if columns are not provided\n setComponentsHeaders(components, sort) {\n components.forEach((component, path) => {\n if (component.input &&\n (!component.hasOwnProperty('tableView') || component.tableView)) {\n this.setHeader(this.getHeaderForComponent(component, path, sort));\n }\n });\n }\n // Map components\n setComponents(components) {\n Utils.eachComponent(components, (component, newPath) => {\n this.formComponents.set(`data.${newPath}`, component);\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridHeaderComponent, decorators: [{\n type: Component,\n 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\" }]\n }] });","originalLength":11369,"removedExports":[],"renderedExports":["SubmissionGridHeaderComponent"],"renderedLength":3686},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/submission/SubmissionGridBody.component.mjs":{"code":"class SubmissionGridBodyComponent extends GridBodyComponent {\n load(formio, query) {\n query = query || {};\n return formio.loadSubmissions({ params: query })\n .then((submissions) => this.setRows(query, submissions));\n }\n /**\n * Render the cell data.\n *\n * @param submission\n * @param header\n * @return any\n */\n view(submission, header) {\n const cellValue = get(submission, header.key);\n if (header.renderCell) {\n return header.renderCell(cellValue, header.component);\n }\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 }\n else {\n return cellValue.toString();\n }\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridBodyComponent, decorators: [{\n type: Component,\n 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\" }]\n }] });","originalLength":6144,"removedExports":[],"renderedExports":["SubmissionGridBodyComponent"],"renderedLength":2131},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/submission/SubmissionGridFooter.component.mjs":{"code":"class SubmissionGridFooterComponent extends GridFooterComponent {\n constructor() {\n super();\n }\n ngOnInit() {\n if (!this.size) {\n this.size = 7;\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridFooterComponent, decorators: [{\n type: Component,\n 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\"] }]\n }], ctorParameters: () => [] });","originalLength":8074,"removedExports":[],"renderedExports":["SubmissionGridFooterComponent"],"renderedLength":4602},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/submission/index.mjs":{"code":"var SubmissionComponents = {\n header: SubmissionGridHeaderComponent,\n body: SubmissionGridBodyComponent,\n footer: SubmissionGridFooterComponent\n};","originalLength":1488,"removedExports":[],"renderedExports":["default"],"renderedLength":155},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/grid.component.mjs":{"code":"class FormioGridComponent {\n alerts;\n resolver;\n ref;\n footerPosition = GridFooterPositions.bottom;\n src;\n items;\n onForm;\n query;\n refresh;\n columns;\n gridType;\n size;\n components;\n formio;\n label;\n createText;\n isActionAllowed;\n select;\n rowSelect;\n rowAction;\n createItem;\n error;\n headerElement;\n bodyElement;\n footerElement;\n page = 0;\n isLoading = false;\n initialized = false;\n header;\n body;\n footer;\n footerPositions = GridFooterPositions;\n constructor(alerts, resolver, ref) {\n this.alerts = alerts;\n this.resolver = resolver;\n this.ref = ref;\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 createComponent(property, component) {\n const factory = this.resolver.resolveComponentFactory(component);\n const componentRef = property.createComponent(factory);\n return componentRef.instance;\n }\n loadGrid(src) {\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 if (src) {\n this.src = src;\n this.formio = new FormioPromiseService(this.src, { formOnly: true });\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 ngOnInit() {\n // Create our components.\n const comps = this.components || ((this.gridType === 'form') ? FormComponents : SubmissionComponents);\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 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 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 ngOnChanges(changes) {\n if (this.initialized) {\n if ((changes.src && changes.src.currentValue) ||\n (changes.formio && changes.formio.currentValue)) {\n this.loadGrid(changes.src.currentValue);\n }\n if (changes.items && changes.items.currentValue) {\n this.refreshGrid();\n }\n }\n if (this.footer &&\n (changes.createText && changes.createText.currentValue)) {\n this.footer.createText = changes.createText.currentValue;\n }\n }\n ngAfterViewInit() {\n this.alerts.setAlerts([]);\n this.query = this.query || {};\n if (this.refresh) {\n this.refresh.subscribe((query) => this.refreshGrid(query));\n }\n this.loadGrid(this.src);\n this.initialized = true;\n this.ref.detectChanges();\n }\n actionAllowed(action) {\n if (this.isActionAllowed) {\n return this.isActionAllowed(action);\n }\n else {\n return true;\n }\n }\n onError(error) {\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 refreshGrid(query) {\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 FormioCore.cache = {};\n let loader = null;\n if (this.items) {\n loader = Promise.resolve(this.body.setRows(this.query, this.items));\n }\n else {\n loader = this.body.load(this.formio, this.query);\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 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 sortColumn(header) {\n // Reset all other column sorts.\n each(this.header.headers, (col) => {\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 pageChanged(page) {\n this.setPage(page.page - 1);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGridComponent, deps: [{ token: i1$1.FormioAlerts }, { token: i0.ComponentFactoryResolver }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGridComponent, decorators: [{\n type: Component,\n 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\"] }]\n }], ctorParameters: () => [{ type: i1$1.FormioAlerts }, { type: i0.ComponentFactoryResolver }, { type: i0.ChangeDetectorRef }], propDecorators: { footerPosition: [{\n type: Input\n }], src: [{\n type: Input\n }], items: [{\n type: Input\n }], onForm: [{\n type: Input\n }], query: [{\n type: Input\n }], refresh: [{\n type: Input\n }], columns: [{\n type: Input\n }], gridType: [{\n type: Input\n }], size: [{\n type: Input\n }], components: [{\n type: Input\n }], formio: [{\n type: Input\n }], label: [{\n type: Input\n }], createText: [{\n type: Input\n }], isActionAllowed: [{\n type: Input\n }], select: [{\n type: Output\n }], rowSelect: [{\n type: Output\n }], rowAction: [{\n type: Output\n }], createItem: [{\n type: Output\n }], error: [{\n type: Output\n }], headerElement: [{\n type: ViewChild,\n args: ['headerTemplate', { read: ViewContainerRef, static: true }]\n }], bodyElement: [{\n type: ViewChild,\n args: ['bodyTemplate', { read: ViewContainerRef, static: true }]\n }], footerElement: [{\n type: ViewChild,\n args: ['footerTemplate', { read: ViewContainerRef, static: true }]\n }] } });","originalLength":35800,"removedExports":[],"renderedExports":["FormioGridComponent"],"renderedLength":12301},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/grid.module.mjs":{"code":"class FormioGrid {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGrid, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\n static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGrid, declarations: [FormioGridComponent,\n FormGridHeaderComponent,\n FormGridBodyComponent,\n FormGridFooterComponent,\n SubmissionGridHeaderComponent,\n SubmissionGridBodyComponent,\n SubmissionGridFooterComponent,\n GridHeaderComponent,\n GridBodyComponent,\n GridFooterComponent,\n TimeSince], imports: [CommonModule,\n FormsModule,\n FormioModule,\n RouterModule, i3.PaginationModule], exports: [FormioGridComponent] });\n static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGrid, providers: [\n FormioAlerts,\n GridService\n ], imports: [CommonModule,\n FormsModule,\n FormioModule,\n RouterModule,\n PaginationModule.forRoot()] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGrid, decorators: [{\n type: NgModule,\n args: [{\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 }]\n }] });","originalLength":8619,"removedExports":[],"renderedExports":["FormioGrid"],"renderedLength":2454},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/index.mjs":{"code":"","originalLength":2907,"removedExports":[],"renderedExports":[],"renderedLength":0},"/Users/brendanjbond/Projects/@formio/angular/dist/angular-formio/esm2022/grid/formio-angular-grid.mjs":{"code":"/**\n * Generated bundle index. Do not edit.\n */","originalLength":523,"removedExports":[],"renderedExports":[],"renderedLength":47}},"referencedFiles":[],"code":"import * as i0 from '@angular/core';\nimport { EventEmitter, TemplateRef, Component, Input, Output, ViewChild, Injectable, Pipe, ViewChildren, ViewEncapsulation, ViewContainerRef, NgModule } from '@angular/core';\nimport * as i1 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i2$1 from '@angular/forms';\nimport { FormsModule } from '@angular/forms';\nimport * as i2 from '@angular/router';\nimport { RouterModule } from '@angular/router';\nimport * as i1$1 from '@formio/angular';\nimport { FormioPromiseService, FormioModule, FormioAlerts } from '@formio/angular';\nimport { each, clone, get } from 'lodash';\nimport { Components, Utils, FormioCore } from '@formio/js';\nimport { Tooltip } from 'bootstrap';\nimport * as i3 from 'ngx-bootstrap/pagination';\nimport { PaginationModule } from 'ngx-bootstrap/pagination';\n\nvar GridFooterPositions;\n(function (GridFooterPositions) {\n GridFooterPositions[GridFooterPositions[\"bottom\"] = 0] = \"bottom\";\n GridFooterPositions[GridFooterPositions[\"top\"] = 1] = \"top\";\n GridFooterPositions[GridFooterPositions[\"both\"] = 2] = \"both\";\n})(GridFooterPositions || (GridFooterPositions = {}));\n\nclass GridHeaderComponent {\n actionAllowed;\n sort;\n template;\n headers;\n constructor() {\n this.headers = [];\n this.sort = new EventEmitter();\n }\n get numHeaders() {\n return this.headers.length;\n }\n load(formio, query, columns) {\n return Promise.resolve([]);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridHeaderComponent, decorators: [{\n type: Component,\n args: [{\n template: ''\n }]\n }], ctorParameters: () => [], propDecorators: { actionAllowed: [{\n type: Input\n }], sort: [{\n type: Output\n }], template: [{\n type: ViewChild,\n args: [TemplateRef, { static: true }]\n }] } });\n\nvar SortType;\n(function (SortType) {\n SortType[\"ASC\"] = \"asc\";\n SortType[\"DESC\"] = \"desc\";\n})(SortType || (SortType = {}));\n\nclass FormGridHeaderComponent extends GridHeaderComponent {\n header;\n load(formio) {\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 get numHeaders() {\n return 2;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridHeaderComponent, decorators: [{\n type: Component,\n 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\" }]\n }] });\n\nclass GridService {\n rows;\n constructor() { }\n setRows(rows) {\n this.rows = rows;\n }\n getFormsPerPage() {\n return this.rows?.length;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridService });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridService, decorators: [{\n type: Injectable\n }], ctorParameters: () => [] });\n\nclass GridBodyComponent {\n service;\n header;\n actionAllowed;\n rowSelect;\n rowAction;\n template;\n rows;\n loading;\n firstItem = 0;\n lastItem = 0;\n skip = 0;\n limit = 0;\n total = 0;\n constructor(service) {\n this.service = service;\n this.rowSelect = new EventEmitter();\n this.rowAction = new EventEmitter();\n this.loading = true;\n }\n load(formio, query) {\n return formio.loadForm(query);\n }\n onRowSelect(event, row) {\n event.preventDefault();\n this.rowSelect.emit(row);\n }\n onRowAction(event, row, action) {\n event.preventDefault();\n this.rowAction.emit({ row, action });\n }\n /**\n * Set the rows for this Grid body.\n *\n * @param query\n * @param items\n * @return any\n */\n setRows(query, items) {\n this.rows = [];\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 return this.rows;\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) => {\n this.rows.push(clone(item));\n });\n this.service.setRows(this.rows);\n return this.rows;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridBodyComponent, deps: [{ token: GridService }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridBodyComponent, decorators: [{\n type: Component,\n args: [{\n template: ''\n }]\n }], ctorParameters: () => [{ type: GridService }], propDecorators: { header: [{\n type: Input\n }], actionAllowed: [{\n type: Input\n }], rowSelect: [{\n type: Output\n }], rowAction: [{\n type: Output\n }], template: [{\n type: ViewChild,\n args: [TemplateRef, { static: true }]\n }] } });\n\nclass TimeSince {\n transform(date) {\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 static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: TimeSince, deps: [], target: i0.ɵɵFactoryTarget.Pipe });\n static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"14.0.0\", version: \"17.3.12\", ngImport: i0, type: TimeSince, name: \"timeSince\" });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: TimeSince, decorators: [{\n type: Pipe,\n args: [{\n name: 'timeSince'\n }]\n }] });\n\nclass FormGridBodyComponent extends GridBodyComponent {\n createBtns;\n viewBtns;\n editBtns;\n permissionsBtns;\n deleteBtns;\n tooltips = [];\n load(formio, query) {\n query = query || {};\n return formio.loadForms({ params: query })\n .then((forms) => this.setRows(query, forms))\n .then(() => this.attachTooltips());\n }\n attachTooltips() {\n this.createBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Create' }));\n });\n this.editBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Edit' }));\n });\n this.viewBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'View' }));\n });\n this.permissionsBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Permissions' }));\n });\n this.deleteBtns.forEach((el) => {\n this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Delete' }));\n });\n }\n ngOnDestroy() {\n this.tooltips.forEach((tootip) => tootip.dispose());\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\" }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridBodyComponent, decorators: [{\n type: Component,\n 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\"] }]\n }], propDecorators: { createBtns: [{\n type: ViewChildren,\n args: ['create']\n }], viewBtns: [{\n type: ViewChildren,\n args: ['view']\n }], editBtns: [{\n type: ViewChildren,\n args: ['edit']\n }], permissionsBtns: [{\n type: ViewChildren,\n args: ['permissions']\n }], deleteBtns: [{\n type: ViewChildren,\n args: ['delete']\n }] } });\n\nclass GridFooterComponent {\n header;\n body;\n createText;\n size;\n actionAllowed;\n pageChanged;\n createItem;\n template;\n footerPositions = GridFooterPositions;\n constructor() {\n this.pageChanged = new EventEmitter();\n this.createItem = new EventEmitter();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: GridFooterComponent, decorators: [{\n type: Component,\n args: [{\n template: ''\n }]\n }], ctorParameters: () => [], propDecorators: { header: [{\n type: Input\n }], body: [{\n type: Input\n }], createText: [{\n type: Input\n }], size: [{\n type: Input\n }], actionAllowed: [{\n type: Input\n }], pageChanged: [{\n type: Output\n }], createItem: [{\n type: Output\n }], template: [{\n type: ViewChild,\n args: [TemplateRef, { static: true }]\n }] } });\n\nclass FormGridFooterComponent extends GridFooterComponent {\n constructor() {\n super();\n }\n ngOnInit() {\n if (!this.createText) {\n this.createText = 'Create Form';\n }\n if (!this.size) {\n this.size = 7;\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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=\\\"pull-right 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormGridFooterComponent, decorators: [{\n type: Component,\n 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=\\\"pull-right 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\"] }]\n }], ctorParameters: () => [] });\n\nvar FormComponents = {\n header: FormGridHeaderComponent,\n body: FormGridBodyComponent,\n footer: FormGridFooterComponent\n};\n\nclass SubmissionGridHeaderComponent extends GridHeaderComponent {\n // Map structure where the key is the path and the value is the component\n formComponents;\n load(formio, query, columns) {\n query = query || {};\n return formio.loadForm({ params: query }).then((form) => {\n this.headers = [];\n this.formComponents = new Map();\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 return this.headers;\n });\n }\n setHeader(header) {\n this.headers.push(header);\n }\n getHeaderForColumn(column, component, sort) {\n return {\n label: column.label,\n key: column.path,\n sort: sort,\n component: component ? Components.create(component, null, null) : undefined,\n renderCell: column ? column.renderCell : undefined\n };\n }\n getHeaderForComponent(component, path, sort) {\n return {\n label: component.label,\n key: path,\n sort: sort,\n component: component ? Components.create(component, null, null) : undefined,\n };\n }\n // Set headers from components in case if columns are not provided\n setComponentsHeaders(components, sort) {\n components.forEach((component, path) => {\n if (component.input &&\n (!component.hasOwnProperty('tableView') || component.tableView)) {\n this.setHeader(this.getHeaderForComponent(component, path, sort));\n }\n });\n }\n // Map components\n setComponents(components) {\n Utils.eachComponent(components, (component, newPath) => {\n this.formComponents.set(`data.${newPath}`, component);\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridHeaderComponent, decorators: [{\n type: Component,\n 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\" }]\n }] });\n\nclass SubmissionGridBodyComponent extends GridBodyComponent {\n load(formio, query) {\n query = query || {};\n return formio.loadSubmissions({ params: query })\n .then((submissions) => this.setRows(query, submissions));\n }\n /**\n * Render the cell data.\n *\n * @param submission\n * @param header\n * @return any\n */\n view(submission, header) {\n const cellValue = get(submission, header.key);\n if (header.renderCell) {\n return header.renderCell(cellValue, header.component);\n }\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 }\n else {\n return cellValue.toString();\n }\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridBodyComponent, decorators: [{\n type: Component,\n 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\" }]\n }] });\n\nclass SubmissionGridFooterComponent extends GridFooterComponent {\n constructor() {\n super();\n }\n ngOnInit() {\n if (!this.size) {\n this.size = 7;\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: SubmissionGridFooterComponent, decorators: [{\n type: Component,\n 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\"] }]\n }], ctorParameters: () => [] });\n\nvar SubmissionComponents = {\n header: SubmissionGridHeaderComponent,\n body: SubmissionGridBodyComponent,\n footer: SubmissionGridFooterComponent\n};\n\nclass FormioGridComponent {\n alerts;\n resolver;\n ref;\n footerPosition = GridFooterPositions.bottom;\n src;\n items;\n onForm;\n query;\n refresh;\n columns;\n gridType;\n size;\n components;\n formio;\n label;\n createText;\n isActionAllowed;\n select;\n rowSelect;\n rowAction;\n createItem;\n error;\n headerElement;\n bodyElement;\n footerElement;\n page = 0;\n isLoading = false;\n initialized = false;\n header;\n body;\n footer;\n footerPositions = GridFooterPositions;\n constructor(alerts, resolver, ref) {\n this.alerts = alerts;\n this.resolver = resolver;\n this.ref = ref;\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 createComponent(property, component) {\n const factory = this.resolver.resolveComponentFactory(component);\n const componentRef = property.createComponent(factory);\n return componentRef.instance;\n }\n loadGrid(src) {\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 if (src) {\n this.src = src;\n this.formio = new FormioPromiseService(this.src, { formOnly: true });\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 ngOnInit() {\n // Create our components.\n const comps = this.components || ((this.gridType === 'form') ? FormComponents : SubmissionComponents);\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 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 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 ngOnChanges(changes) {\n if (this.initialized) {\n if ((changes.src && changes.src.currentValue) ||\n (changes.formio && changes.formio.currentValue)) {\n this.loadGrid(changes.src.currentValue);\n }\n if (changes.items && changes.items.currentValue) {\n this.refreshGrid();\n }\n }\n if (this.footer &&\n (changes.createText && changes.createText.currentValue)) {\n this.footer.createText = changes.createText.currentValue;\n }\n }\n ngAfterViewInit() {\n this.alerts.setAlerts([]);\n this.query = this.query || {};\n if (this.refresh) {\n this.refresh.subscribe((query) => this.refreshGrid(query));\n }\n this.loadGrid(this.src);\n this.initialized = true;\n this.ref.detectChanges();\n }\n actionAllowed(action) {\n if (this.isActionAllowed) {\n return this.isActionAllowed(action);\n }\n else {\n return true;\n }\n }\n onError(error) {\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 refreshGrid(query) {\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 FormioCore.cache = {};\n let loader = null;\n if (this.items) {\n loader = Promise.resolve(this.body.setRows(this.query, this.items));\n }\n else {\n loader = this.body.load(this.formio, this.query);\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 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 sortColumn(header) {\n // Reset all other column sorts.\n each(this.header.headers, (col) => {\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 pageChanged(page) {\n this.setPage(page.page - 1);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGridComponent, deps: [{ token: i1$1.FormioAlerts }, { token: i0.ComponentFactoryResolver }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"17.3.12\", 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\"] }] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGridComponent, decorators: [{\n type: Component,\n 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\"] }]\n }], ctorParameters: () => [{ type: i1$1.FormioAlerts }, { type: i0.ComponentFactoryResolver }, { type: i0.ChangeDetectorRef }], propDecorators: { footerPosition: [{\n type: Input\n }], src: [{\n type: Input\n }], items: [{\n type: Input\n }], onForm: [{\n type: Input\n }], query: [{\n type: Input\n }], refresh: [{\n type: Input\n }], columns: [{\n type: Input\n }], gridType: [{\n type: Input\n }], size: [{\n type: Input\n }], components: [{\n type: Input\n }], formio: [{\n type: Input\n }], label: [{\n type: Input\n }], createText: [{\n type: Input\n }], isActionAllowed: [{\n type: Input\n }], select: [{\n type: Output\n }], rowSelect: [{\n type: Output\n }], rowAction: [{\n type: Output\n }], createItem: [{\n type: Output\n }], error: [{\n type: Output\n }], headerElement: [{\n type: ViewChild,\n args: ['headerTemplate', { read: ViewContainerRef, static: true }]\n }], bodyElement: [{\n type: ViewChild,\n args: ['bodyTemplate', { read: ViewContainerRef, static: true }]\n }], footerElement: [{\n type: ViewChild,\n args: ['footerTemplate', { read: ViewContainerRef, static: true }]\n }] } });\n\nclass FormioGrid {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGrid, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\n static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGrid, declarations: [FormioGridComponent,\n FormGridHeaderComponent,\n FormGridBodyComponent,\n FormGridFooterComponent,\n SubmissionGridHeaderComponent,\n SubmissionGridBodyComponent,\n SubmissionGridFooterComponent,\n GridHeaderComponent,\n GridBodyComponent,\n GridFooterComponent,\n TimeSince], imports: [CommonModule,\n FormsModule,\n FormioModule,\n RouterModule, i3.PaginationModule], exports: [FormioGridComponent] });\n static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGrid, providers: [\n FormioAlerts,\n GridService\n ], imports: [CommonModule,\n FormsModule,\n FormioModule,\n RouterModule,\n PaginationModule.forRoot()] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.3.12\", ngImport: i0, type: FormioGrid, decorators: [{\n type: NgModule,\n args: [{\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 }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { FormGridBodyComponent, FormGridFooterComponent, FormGridHeaderComponent, FormioGrid, FormioGridComponent, GridBodyComponent, GridFooterComponent, GridHeaderComponent, GridService, SubmissionGridBodyComponent, SubmissionGridFooterComponent, SubmissionGridHeaderComponent };\n//# sourceMappingURL=formio-angular-grid.mjs.map\n","map":null,"preliminaryFileName":"formio-angular-grid.mjs","sourcemapFileName":"formio-angular-grid.mjs.map"},{"fileName":"formio-angular-grid.mjs.map","names":[],"needsCodeReference":false,"originalFileName":null,"originalFileNames":[],"source":"{\"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=\\\"pull-right 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} from '@formio/js';\\nimport {ExtendedComponentSchema} from '@formio/deprecated-types';\\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) 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) 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 {FormioCore as Formio} from '@formio/js';\\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\",\"Formio\",\"i1\"],\"mappings\":\"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\"}","type":"asset"}]}