@acorex/modules 19.3.0-next.4 → 19.3.0

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 (241) hide show
  1. package/auth/lib/pages/account/app-chooser/app-chooser-slot.component.d.ts +1 -1
  2. package/auth/lib/pages/login/password/password.component.d.ts +1 -0
  3. package/common/index.d.ts +0 -1
  4. package/common/lib/common.module.d.ts +1 -2
  5. package/common/lib/const.d.ts +1 -14
  6. package/dashboard-management/README.md +3 -0
  7. package/dashboard-management/index.d.ts +2 -0
  8. package/dashboard-management/lib/const.d.ts +19 -0
  9. package/dashboard-management/lib/dashboard-management.module.d.ts +7 -0
  10. package/dashboard-management/lib/entity.provider.d.ts +10 -0
  11. package/{common → dashboard-management}/lib/features/home-dashboard/dashboard-home/home-dashboard.d.ts +0 -6
  12. package/dashboard-management/lib/menu.provider.d.ts +5 -0
  13. package/document-management/lib/features/widgets/document-attachment/document-attachment-widget-edit.component.d.ts +3 -1
  14. package/fesm2022/{acorex-modules-auth-acorex-modules-auth-DWcYgyZA.mjs → acorex-modules-auth-acorex-modules-auth-B1HTJdsE.mjs} +22 -27
  15. package/fesm2022/acorex-modules-auth-acorex-modules-auth-B1HTJdsE.mjs.map +1 -0
  16. package/fesm2022/acorex-modules-auth-app-chooser.component-Ct-vco0y.mjs +64 -0
  17. package/fesm2022/acorex-modules-auth-app-chooser.component-Ct-vco0y.mjs.map +1 -0
  18. package/fesm2022/{acorex-modules-auth-login.module-BgTtZuTg.mjs → acorex-modules-auth-login.module-TtdNj0aL.mjs} +4 -4
  19. package/fesm2022/{acorex-modules-auth-login.module-BgTtZuTg.mjs.map → acorex-modules-auth-login.module-TtdNj0aL.mjs.map} +1 -1
  20. package/fesm2022/acorex-modules-auth-master.layout-CtVrY1hn.mjs +23 -0
  21. package/fesm2022/acorex-modules-auth-master.layout-CtVrY1hn.mjs.map +1 -0
  22. package/fesm2022/{acorex-modules-auth-password.component-U16w7Rq4.mjs → acorex-modules-auth-password.component-BXm2NAaN.mjs} +2 -2
  23. package/fesm2022/{acorex-modules-auth-password.component-U16w7Rq4.mjs.map → acorex-modules-auth-password.component-BXm2NAaN.mjs.map} +1 -1
  24. package/fesm2022/{acorex-modules-auth-password.component-_ceO6nyb.mjs → acorex-modules-auth-password.component-Dmj9zZSI.mjs} +5 -3
  25. package/fesm2022/acorex-modules-auth-password.component-Dmj9zZSI.mjs.map +1 -0
  26. package/fesm2022/{acorex-modules-auth-routes-CSGjcpD8.mjs → acorex-modules-auth-routes-DkgsKi3a.mjs} +2 -2
  27. package/fesm2022/{acorex-modules-auth-routes-CSGjcpD8.mjs.map → acorex-modules-auth-routes-DkgsKi3a.mjs.map} +1 -1
  28. package/fesm2022/acorex-modules-auth-tenant-chooser.component-D9C6LCjn.mjs +97 -0
  29. package/fesm2022/acorex-modules-auth-tenant-chooser.component-D9C6LCjn.mjs.map +1 -0
  30. package/fesm2022/{acorex-modules-auth-two-factor.module-B9UV3Nxb.mjs → acorex-modules-auth-two-factor.module-DDOSqjYs.mjs} +2 -2
  31. package/fesm2022/{acorex-modules-auth-two-factor.module-B9UV3Nxb.mjs.map → acorex-modules-auth-two-factor.module-DDOSqjYs.mjs.map} +1 -1
  32. package/fesm2022/{acorex-modules-auth-user-sessions.component-Dx0zd4Nj.mjs → acorex-modules-auth-user-sessions.component-B3i44VC5.mjs} +2 -2
  33. package/fesm2022/{acorex-modules-auth-user-sessions.component-Dx0zd4Nj.mjs.map → acorex-modules-auth-user-sessions.component-B3i44VC5.mjs.map} +1 -1
  34. package/fesm2022/acorex-modules-auth.mjs +1 -1
  35. package/fesm2022/acorex-modules-common.mjs +11 -481
  36. package/fesm2022/acorex-modules-common.mjs.map +1 -1
  37. package/fesm2022/acorex-modules-conversation.mjs +3 -3
  38. package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
  39. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-DuvWGfl1.mjs +568 -0
  40. package/fesm2022/acorex-modules-dashboard-management-acorex-modules-dashboard-management-DuvWGfl1.mjs.map +1 -0
  41. package/fesm2022/{acorex-modules-common-dashboard-shortcut-widget-view.component-C9RGRmuR.mjs → acorex-modules-dashboard-management-dashboard-shortcut-widget-view.component-C9RGRmuR.mjs} +1 -1
  42. package/fesm2022/acorex-modules-dashboard-management-dashboard-shortcut-widget-view.component-C9RGRmuR.mjs.map +1 -0
  43. package/fesm2022/{acorex-modules-common-index-Dt3vRkkx.mjs → acorex-modules-dashboard-management-index-Br6L5KMu.mjs} +17 -4
  44. package/fesm2022/acorex-modules-dashboard-management-index-Br6L5KMu.mjs.map +1 -0
  45. package/fesm2022/acorex-modules-dashboard-management.mjs +2 -0
  46. package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -0
  47. package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-CdZ56kDQ.mjs → acorex-modules-document-management-acorex-modules-document-management-vYaqbxKs.mjs} +39 -25
  48. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-vYaqbxKs.mjs.map +1 -0
  49. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-CetsgMOJ.mjs → acorex-modules-document-management-create-folder-dialog.component-Bc_IX3gT.mjs} +2 -2
  50. package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-CetsgMOJ.mjs.map → acorex-modules-document-management-create-folder-dialog.component-Bc_IX3gT.mjs.map} +1 -1
  51. package/fesm2022/{acorex-modules-document-management-details-view.component-CeOqGjR9.mjs → acorex-modules-document-management-details-view.component-_9f5TQJi.mjs} +2 -2
  52. package/fesm2022/{acorex-modules-document-management-details-view.component-CeOqGjR9.mjs.map → acorex-modules-document-management-details-view.component-_9f5TQJi.mjs.map} +1 -1
  53. package/fesm2022/{acorex-modules-document-management-drive-choose.component-DmKUj3Jr.mjs → acorex-modules-document-management-drive-choose.component-CFOb0_MF.mjs} +2 -2
  54. package/fesm2022/{acorex-modules-document-management-drive-choose.component-DmKUj3Jr.mjs.map → acorex-modules-document-management-drive-choose.component-CFOb0_MF.mjs.map} +1 -1
  55. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-7iqPb1Xn.mjs → acorex-modules-document-management-large-icons-view.component-D9es4CBl.mjs} +2 -2
  56. package/fesm2022/{acorex-modules-document-management-large-icons-view.component-7iqPb1Xn.mjs.map → acorex-modules-document-management-large-icons-view.component-D9es4CBl.mjs.map} +1 -1
  57. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-C9jalviV.mjs → acorex-modules-document-management-large-tiles-view.component-Q1Sjg47F.mjs} +2 -2
  58. package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-C9jalviV.mjs.map → acorex-modules-document-management-large-tiles-view.component-Q1Sjg47F.mjs.map} +1 -1
  59. package/fesm2022/{acorex-modules-document-management-list-view.component-Bdb0uAm0.mjs → acorex-modules-document-management-list-view.component-BUu5vrul.mjs} +2 -2
  60. package/fesm2022/{acorex-modules-document-management-list-view.component-Bdb0uAm0.mjs.map → acorex-modules-document-management-list-view.component-BUu5vrul.mjs.map} +1 -1
  61. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-Do61g5Sb.mjs → acorex-modules-document-management-rename-node-dialog.component-BMRmdslE.mjs} +2 -2
  62. package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-Do61g5Sb.mjs.map → acorex-modules-document-management-rename-node-dialog.component-BMRmdslE.mjs.map} +1 -1
  63. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BSPp5gmT.mjs → acorex-modules-document-management-small-icons-view.component-ChSS7z9z.mjs} +2 -2
  64. package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BSPp5gmT.mjs.map → acorex-modules-document-management-small-icons-view.component-ChSS7z9z.mjs.map} +1 -1
  65. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-77-_bfSe.mjs → acorex-modules-document-management-small-tiles-view.component-Ci33qbBY.mjs} +2 -2
  66. package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-77-_bfSe.mjs.map → acorex-modules-document-management-small-tiles-view.component-Ci33qbBY.mjs.map} +1 -1
  67. package/fesm2022/acorex-modules-document-management.mjs +1 -1
  68. package/fesm2022/acorex-modules-issue-management-acorex-modules-issue-management-DhuDuKkz.mjs +2486 -0
  69. package/fesm2022/acorex-modules-issue-management-acorex-modules-issue-management-DhuDuKkz.mjs.map +1 -0
  70. package/fesm2022/{acorex-modules-platform-management-capture-screen.component-DN1Jnp7_.mjs → acorex-modules-issue-management-capture-screen.component-XFV3kuzQ.mjs} +6 -6
  71. package/fesm2022/acorex-modules-issue-management-capture-screen.component-XFV3kuzQ.mjs.map +1 -0
  72. package/fesm2022/acorex-modules-issue-management.mjs +2 -0
  73. package/fesm2022/acorex-modules-issue-management.mjs.map +1 -0
  74. package/fesm2022/acorex-modules-log-management.mjs +128 -77
  75. package/fesm2022/acorex-modules-log-management.mjs.map +1 -1
  76. package/fesm2022/acorex-modules-notification-management.mjs +4 -4
  77. package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
  78. package/fesm2022/{acorex-modules-organization-management-branch.entity-fs_iKM4S.mjs → acorex-modules-organization-management-branch.entity-Bsgj4Pow.mjs} +4 -2
  79. package/fesm2022/acorex-modules-organization-management-branch.entity-Bsgj4Pow.mjs.map +1 -0
  80. package/fesm2022/{acorex-modules-organization-management-department.entity-DI9QpZ1d.mjs → acorex-modules-organization-management-department.entity-BMojk26d.mjs} +4 -2
  81. package/fesm2022/acorex-modules-organization-management-department.entity-BMojk26d.mjs.map +1 -0
  82. package/fesm2022/{acorex-modules-organization-management-division.entity-4Gxc1dGd.mjs → acorex-modules-organization-management-division.entity-BnWpX4US.mjs} +4 -2
  83. package/fesm2022/acorex-modules-organization-management-division.entity-BnWpX4US.mjs.map +1 -0
  84. package/fesm2022/{acorex-modules-organization-management-employee.entity-DSvtxcC3.mjs → acorex-modules-organization-management-employee.entity-DBuCVYZP.mjs} +2 -2
  85. package/fesm2022/acorex-modules-organization-management-employee.entity-DBuCVYZP.mjs.map +1 -0
  86. package/fesm2022/{acorex-modules-organization-management-team.entity-DZqK-yLT.mjs → acorex-modules-organization-management-team.entity-mYPhrc2l.mjs} +8 -3
  87. package/fesm2022/acorex-modules-organization-management-team.entity-mYPhrc2l.mjs.map +1 -0
  88. package/fesm2022/acorex-modules-organization-management.mjs +6 -6
  89. package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
  90. package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-pKyqsPS6.mjs → acorex-modules-platform-management-acorex-modules-platform-management-DHA8LTwL.mjs} +423 -2319
  91. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-DHA8LTwL.mjs.map +1 -0
  92. package/fesm2022/{acorex-modules-platform-management-list-version.component-SLcO7Tof.mjs → acorex-modules-platform-management-list-version.component-DgDjbODD.mjs} +6 -6
  93. package/fesm2022/{acorex-modules-platform-management-list-version.component-SLcO7Tof.mjs.map → acorex-modules-platform-management-list-version.component-DgDjbODD.mjs.map} +1 -1
  94. package/fesm2022/acorex-modules-platform-management-settings.provider-W71pfOmi.mjs +463 -0
  95. package/fesm2022/acorex-modules-platform-management-settings.provider-W71pfOmi.mjs.map +1 -0
  96. package/fesm2022/acorex-modules-platform-management.mjs +1 -1
  97. package/fesm2022/acorex-modules-project-management.mjs +6259 -0
  98. package/fesm2022/acorex-modules-project-management.mjs.map +1 -0
  99. package/fesm2022/acorex-modules-security-management.mjs +54 -24
  100. package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
  101. package/issue-management/README.md +3 -0
  102. package/issue-management/index.d.ts +6 -0
  103. package/{platform-management/lib/features/support → issue-management/lib/components}/capture-screen/components/capture-screen-component/capture-screen.component.d.ts +5 -5
  104. package/{platform-management/lib/features/support → issue-management/lib/components}/capture-screen/services/capture-screen.service.d.ts +3 -3
  105. package/issue-management/lib/const.d.ts +37 -0
  106. package/issue-management/lib/entities/index.d.ts +3 -0
  107. package/{platform-management → issue-management}/lib/entities/issue-type/issue-type.service.d.ts +2 -2
  108. package/{platform-management → issue-management}/lib/entities/issue-type/issue-type.types.d.ts +1 -1
  109. package/{platform-management → issue-management}/lib/entities/my-reported-issues/my-reported-issues.service.d.ts +2 -2
  110. package/issue-management/lib/entities/my-reported-issues/my-reported-issues.types.d.ts +5 -0
  111. package/{platform-management → issue-management}/lib/entities/reported-issues/reported-issues.service.d.ts +2 -2
  112. package/{platform-management → issue-management}/lib/entities/reported-issues/reported-issues.types.d.ts +2 -3
  113. package/issue-management/lib/entity.provider.d.ts +10 -0
  114. package/{platform-management/lib/features/support → issue-management/lib/features}/report-issue/components/report-new-issue/report-new-issue.component.d.ts +16 -5
  115. package/{platform-management/lib/features/support → issue-management/lib/features}/report-issue/report-issue.types.d.ts +6 -1
  116. package/{platform-management/lib/features/support → issue-management/lib/features}/report-issue/services/report-new-issue.viewmodel.d.ts +6 -4
  117. package/issue-management/lib/issue-management.module.d.ts +7 -0
  118. package/issue-management/lib/menu.provider.d.ts +5 -0
  119. package/issue-management/lib/setting.provider.d.ts +4 -0
  120. package/package.json +13 -1
  121. package/platform-management/index.d.ts +1 -2
  122. package/platform-management/lib/const.d.ts +1 -19
  123. package/platform-management/lib/entities/glossary/glossary.entity.d.ts +3 -0
  124. package/platform-management/lib/entities/glossary/glossary.service.d.ts +10 -0
  125. package/platform-management/lib/entities/glossary/glossary.types.d.ts +4 -0
  126. package/platform-management/lib/entities/glossary/index.d.ts +3 -0
  127. package/platform-management/lib/entities/index.d.ts +1 -3
  128. package/platform-management/lib/features/common/common.module.d.ts +1 -1
  129. package/platform-management/lib/features/common/index.d.ts +0 -1
  130. package/platform-management/lib/features/common/regional/language-slot/language-slot.component.d.ts +7 -3
  131. package/platform-management/lib/features/common/regional/regional-store.service.d.ts +5 -1
  132. package/platform-management/lib/features/common/regional/settings.keys.d.ts +8 -3
  133. package/platform-management/lib/features/common/regional/settings.provider.d.ts +1 -0
  134. package/project-management/README.md +3 -0
  135. package/project-management/index.d.ts +7 -0
  136. package/project-management/lib/const.d.ts +85 -0
  137. package/project-management/lib/entities/client/client.entity.d.ts +3 -0
  138. package/project-management/lib/entities/client/client.service.d.ts +10 -0
  139. package/project-management/lib/entities/client/client.types.d.ts +7 -0
  140. package/project-management/lib/entities/client/index.d.ts +3 -0
  141. package/project-management/lib/entities/index.d.ts +12 -0
  142. package/project-management/lib/entities/project/index.d.ts +3 -0
  143. package/project-management/lib/entities/project/project.entity.d.ts +3 -0
  144. package/project-management/lib/entities/project/project.service.d.ts +10 -0
  145. package/project-management/lib/entities/project/project.types.d.ts +11 -0
  146. package/project-management/lib/entities/project-memeber/index.d.ts +3 -0
  147. package/project-management/lib/entities/project-memeber/project-memeber.entity.d.ts +3 -0
  148. package/project-management/lib/entities/project-memeber/project-memeber.service.d.ts +10 -0
  149. package/project-management/lib/entities/project-memeber/project-memeber.types.d.ts +7 -0
  150. package/project-management/lib/entities/project-role-member/index.d.ts +3 -0
  151. package/project-management/lib/entities/project-role-member/project-role-member.entity.d.ts +3 -0
  152. package/project-management/lib/entities/project-role-member/project-role-member.service.d.ts +10 -0
  153. package/{platform-management/lib/entities/my-reported-issues/my-reported-issues.types.d.ts → project-management/lib/entities/project-role-member/project-role-member.types.d.ts} +2 -2
  154. package/project-management/lib/entities/project-type/index.d.ts +3 -0
  155. package/project-management/lib/entities/project-type/project-type.entity.d.ts +3 -0
  156. package/project-management/lib/entities/project-type/project-type.service.d.ts +10 -0
  157. package/project-management/lib/entities/project-type/project-type.types.d.ts +4 -0
  158. package/project-management/lib/entities/sprint/index.d.ts +3 -0
  159. package/project-management/lib/entities/sprint/sprint.entity.d.ts +3 -0
  160. package/project-management/lib/entities/sprint/sprint.service.d.ts +10 -0
  161. package/project-management/lib/entities/sprint/sprint.types.d.ts +8 -0
  162. package/project-management/lib/entities/sprint-task/index.d.ts +3 -0
  163. package/project-management/lib/entities/sprint-task/sprint-task.entity.d.ts +3 -0
  164. package/project-management/lib/entities/sprint-task/sprint-task.service.d.ts +10 -0
  165. package/project-management/lib/entities/sprint-task/sprint-task.types.d.ts +5 -0
  166. package/project-management/lib/entities/task/index.d.ts +3 -0
  167. package/project-management/lib/entities/task/task.entity.d.ts +3 -0
  168. package/project-management/lib/entities/task/task.service.d.ts +10 -0
  169. package/project-management/lib/entities/task/task.types.d.ts +19 -0
  170. package/project-management/lib/entities/task-history/index.d.ts +3 -0
  171. package/project-management/lib/entities/task-history/task-history.entity.d.ts +3 -0
  172. package/project-management/lib/entities/task-history/task-history.service.d.ts +10 -0
  173. package/project-management/lib/entities/task-history/task-history.types.d.ts +8 -0
  174. package/project-management/lib/entities/task-type/index.d.ts +3 -0
  175. package/project-management/lib/entities/task-type/task-type.entity.d.ts +3 -0
  176. package/project-management/lib/entities/task-type/task-type.service.d.ts +10 -0
  177. package/project-management/lib/entities/task-type/task-type.types.d.ts +6 -0
  178. package/project-management/lib/entities/time-sheet/index.d.ts +3 -0
  179. package/project-management/lib/entities/time-sheet/time-sheet.entity.d.ts +3 -0
  180. package/project-management/lib/entities/time-sheet/time-sheet.service.d.ts +10 -0
  181. package/project-management/lib/entities/time-sheet/time-sheet.types.d.ts +8 -0
  182. package/project-management/lib/entities/work-site/index.d.ts +3 -0
  183. package/project-management/lib/entities/work-site/work-site.entity.d.ts +3 -0
  184. package/project-management/lib/entities/work-site/work-site.service.d.ts +10 -0
  185. package/project-management/lib/entities/work-site/work-site.types.d.ts +8 -0
  186. package/project-management/lib/entity.provider.d.ts +10 -0
  187. package/project-management/lib/menu.provider.d.ts +5 -0
  188. package/project-management/lib/project-management.module.d.ts +6 -0
  189. package/project-management/lib/search-command.provider.d.ts +4 -0
  190. package/project-management/lib/setting.provider.d.ts +4 -0
  191. package/fesm2022/acorex-modules-auth-acorex-modules-auth-DWcYgyZA.mjs.map +0 -1
  192. package/fesm2022/acorex-modules-auth-app-chooser.component-rr25Ry55.mjs +0 -64
  193. package/fesm2022/acorex-modules-auth-app-chooser.component-rr25Ry55.mjs.map +0 -1
  194. package/fesm2022/acorex-modules-auth-master.layout-he9vVKsC.mjs +0 -23
  195. package/fesm2022/acorex-modules-auth-master.layout-he9vVKsC.mjs.map +0 -1
  196. package/fesm2022/acorex-modules-auth-password.component-_ceO6nyb.mjs.map +0 -1
  197. package/fesm2022/acorex-modules-auth-tenant-chooser.component-B5VHdItj.mjs +0 -97
  198. package/fesm2022/acorex-modules-auth-tenant-chooser.component-B5VHdItj.mjs.map +0 -1
  199. package/fesm2022/acorex-modules-common-dashboard-shortcut-widget-view.component-C9RGRmuR.mjs.map +0 -1
  200. package/fesm2022/acorex-modules-common-index-Dt3vRkkx.mjs.map +0 -1
  201. package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-CdZ56kDQ.mjs.map +0 -1
  202. package/fesm2022/acorex-modules-organization-management-branch.entity-fs_iKM4S.mjs.map +0 -1
  203. package/fesm2022/acorex-modules-organization-management-department.entity-DI9QpZ1d.mjs.map +0 -1
  204. package/fesm2022/acorex-modules-organization-management-division.entity-4Gxc1dGd.mjs.map +0 -1
  205. package/fesm2022/acorex-modules-organization-management-employee.entity-DSvtxcC3.mjs.map +0 -1
  206. package/fesm2022/acorex-modules-organization-management-team.entity-DZqK-yLT.mjs.map +0 -1
  207. package/fesm2022/acorex-modules-platform-management-acorex-modules-platform-management-pKyqsPS6.mjs.map +0 -1
  208. package/fesm2022/acorex-modules-platform-management-capture-screen.component-DN1Jnp7_.mjs.map +0 -1
  209. package/fesm2022/acorex-modules-platform-management-settings.provider-CsrDpQQi.mjs +0 -351
  210. package/fesm2022/acorex-modules-platform-management-settings.provider-CsrDpQQi.mjs.map +0 -1
  211. package/platform-management/lib/features/common/entity.provider.d.ts +0 -9
  212. package/platform-management/lib/features/index.d.ts +0 -1
  213. package/platform-management/lib/features/support/index.d.ts +0 -2
  214. /package/{common → dashboard-management}/lib/entities/dashboard/dashboard.entity.d.ts +0 -0
  215. /package/{common → dashboard-management}/lib/entities/dashboard/dashboard.service.d.ts +0 -0
  216. /package/{common → dashboard-management}/lib/entities/dashboard/dashboard.types.d.ts +0 -0
  217. /package/{common → dashboard-management}/lib/entities/dashboard/index.d.ts +0 -0
  218. /package/{common → dashboard-management}/lib/entities/index.d.ts +0 -0
  219. /package/{common → dashboard-management}/lib/features/home-dashboard/dashboard-home/home-dashboard.store.d.ts +0 -0
  220. /package/{common → dashboard-management}/lib/features/home-dashboard/dashboard-home/home-dashboard.type.d.ts +0 -0
  221. /package/{common → dashboard-management}/lib/features/home-dashboard/dashboard-home/index.d.ts +0 -0
  222. /package/{common → dashboard-management}/lib/features/home-dashboard/dashboard-popups/add-dashboard-popup.d.ts +0 -0
  223. /package/{common → dashboard-management}/lib/features/home-dashboard/dashboard-popups/configuration-popup.d.ts +0 -0
  224. /package/{common → dashboard-management}/lib/features/home-dashboard/dashboard-popups/dashboard-popup.service.d.ts +0 -0
  225. /package/{common → dashboard-management}/lib/features/home-dashboard/home-dashboard.module.d.ts +0 -0
  226. /package/{common → dashboard-management}/lib/features/home-dashboard/setrting.keys.d.ts +0 -0
  227. /package/{common → dashboard-management}/lib/features/home-dashboard/widget-wrapper/dashboard-widget-wrapper.d.ts +0 -0
  228. /package/{common → dashboard-management}/lib/features/home-dashboard/widgets/dashboard-shortcut/dashboard-shortcut-widget-view.component.d.ts +0 -0
  229. /package/{common → dashboard-management}/lib/features/home-dashboard/widgets/dashboard-shortcut/dashboard-shortcut-widget.config.d.ts +0 -0
  230. /package/{platform-management/lib/features/support → issue-management/lib/components}/capture-screen/capture-screen.types.d.ts +0 -0
  231. /package/{platform-management/lib/features/support → issue-management/lib/components}/capture-screen/index.d.ts +0 -0
  232. /package/{platform-management → issue-management}/lib/entities/issue-type/index.d.ts +0 -0
  233. /package/{platform-management → issue-management}/lib/entities/issue-type/issue-type.entity.d.ts +0 -0
  234. /package/{platform-management → issue-management}/lib/entities/my-reported-issues/index.d.ts +0 -0
  235. /package/{platform-management → issue-management}/lib/entities/my-reported-issues/my-reported-issues.entity.d.ts +0 -0
  236. /package/{platform-management → issue-management}/lib/entities/reported-issues/index.d.ts +0 -0
  237. /package/{platform-management → issue-management}/lib/entities/reported-issues/reported-issues.entity.d.ts +0 -0
  238. /package/{platform-management/lib/features/support → issue-management/lib/features}/report-issue/components/index.d.ts +0 -0
  239. /package/{platform-management/lib/features/support → issue-management/lib/features}/report-issue/index.d.ts +0 -0
  240. /package/{platform-management/lib/features/support → issue-management/lib/features}/report-issue/workflows/index.d.ts +0 -0
  241. /package/{platform-management/lib/features/support → issue-management/lib/features}/report-issue/workflows/show-report-issue.workflow.d.ts +0 -0
@@ -0,0 +1,2486 @@
1
+ import { createAllQueryView, AXPEntityCommandScope, AXPEntityQueryType, AXPDataGenerator, AXPRefreshEvent, AXPFileStorageService, AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER } from '@acorex/platform/common';
2
+ import * as i11 from '@acorex/platform/layout/builder';
3
+ import { AXPWidgetsCatalog, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
4
+ import { AXMEntityCrudServiceImpl, AXPEntityService, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';
5
+ import * as i0 from '@angular/core';
6
+ import { Injectable, inject, Injector, ApplicationRef, ViewContainerRef, computed, ViewChild, Component, NgModule } from '@angular/core';
7
+ import * as i1$1 from '@acorex/platform/workflow';
8
+ import { AXPWorkflowEventService, AXPWorkflowAction, AXPWorkflowModule } from '@acorex/platform/workflow';
9
+ import * as i10 from '@acorex/components/button';
10
+ import { AXButtonModule } from '@acorex/components/button';
11
+ import { AXDataSource } from '@acorex/components/common';
12
+ import * as i3$1 from '@acorex/components/decorators';
13
+ import { AXDecoratorModule } from '@acorex/components/decorators';
14
+ import * as i4 from '@acorex/components/form';
15
+ import { AXFormModule, AXFormComponent } from '@acorex/components/form';
16
+ import * as i5 from '@acorex/components/label';
17
+ import { AXLabelModule } from '@acorex/components/label';
18
+ import { AXMediaViewerModule } from '@acorex/components/media-viewer';
19
+ import { AXBasePageComponent } from '@acorex/components/page';
20
+ import * as i7 from '@acorex/components/select-box';
21
+ import { AXSelectBoxModule } from '@acorex/components/select-box';
22
+ import * as i8 from '@acorex/components/text-area';
23
+ import { AXTextAreaModule } from '@acorex/components/text-area';
24
+ import * as i6 from '@acorex/components/text-box';
25
+ import { AXTextBoxModule } from '@acorex/components/text-box';
26
+ import * as i3 from '@acorex/core/translation';
27
+ import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
28
+ import { AXMDocumentService } from '@acorex/modules/document-management';
29
+ import { AXPSessionService } from '@acorex/platform/auth';
30
+ import * as i1 from '@angular/common';
31
+ import { CommonModule } from '@angular/common';
32
+ import * as i2 from '@angular/forms';
33
+ import { FormsModule } from '@angular/forms';
34
+ import { AXPopupService } from '@acorex/components/popup';
35
+ import { signalStore, withState, withMethods, patchState, withComputed } from '@ngrx/signals';
36
+ import { AXToastService } from '@acorex/components/toast';
37
+ import html2canvas from 'html2canvas';
38
+ import { Subject, take } from 'rxjs';
39
+
40
+ const config = {
41
+ i18n: 'issue-management',
42
+ };
43
+ const RootConfig = {
44
+ config,
45
+ module: {
46
+ route: 'issue-management',
47
+ name: 'IssueManagement',
48
+ title: `t('issueManagement', {scope:"${config.i18n}"})`,
49
+ icon: 'fa-light fa-file-invoice',
50
+ },
51
+ entities: {
52
+ issueType: {
53
+ name: 'IssueType',
54
+ title: `t("issue-type.individual-title", { scope: "${config.i18n}" })`,
55
+ titlePlural: `t("issue-type.plural-title", { scope: "${config.i18n}" })`,
56
+ icon: 'fa-light fa-list',
57
+ },
58
+ reportedIssues: {
59
+ name: 'ReportedIssues',
60
+ title: `t("reported-issues.individual-title", { scope: "${config.i18n}" })`,
61
+ titlePlural: `t("reported-issues.plural-title", { scope: "${config.i18n}" })`,
62
+ icon: 'fa-light fa-bug',
63
+ },
64
+ myReportedIssues: {
65
+ name: 'MyReportedIssues',
66
+ title: `t("my-reported-issues.individual-title", { scope: "${config.i18n}" })`,
67
+ titlePlural: `t("my-reported-issues.plural-title", { scope: "${config.i18n}" })`,
68
+ icon: 'fa-light fa-message-exclamation',
69
+ },
70
+ reportNewIssue: {
71
+ name: 'ReportNewIssue',
72
+ title: `t("report-new-issue.individual-title", { scope: "${config.i18n}" })`,
73
+ titlePlural: `t("report-new-issue.plural-title", { scope: "${config.i18n}" })`,
74
+ icon: 'fa-light fa-clipboard-list-check',
75
+ },
76
+ },
77
+ };
78
+
79
+ class AXMIssueTypeService extends AXMEntityCrudServiceImpl {
80
+ }
81
+ class AXMIssueTypeServiceImpl extends AXMIssueTypeService {
82
+ constructor() {
83
+ super(`${RootConfig.module.name}.${RootConfig.entities.issueType.name}`);
84
+ }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMIssueTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
86
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMIssueTypeServiceImpl }); }
87
+ }
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMIssueTypeServiceImpl, decorators: [{
89
+ type: Injectable
90
+ }], ctorParameters: () => [] });
91
+
92
+ async function issueTypeEntityFactory(injector) {
93
+ const dataService = injector.get(AXMIssueTypeService);
94
+ const i18n = RootConfig.config.i18n;
95
+ const entityName = 'issue-type';
96
+ const entityDef = {
97
+ module: RootConfig.module.name,
98
+ name: RootConfig.entities.issueType.name,
99
+ source: '',
100
+ title: RootConfig.entities.issueType.title,
101
+ formats: {
102
+ individual: RootConfig.entities.issueType.title,
103
+ plural: RootConfig.entities.issueType.titlePlural,
104
+ searchResult: {
105
+ title: '{{ title }}',
106
+ description: '{{ description }}',
107
+ },
108
+ },
109
+ relatedEntities: [],
110
+ groups: [
111
+ {
112
+ id: 'main',
113
+ title: `t("${entityName}.main-section", { scope: "${i18n}" })`,
114
+ },
115
+ ],
116
+ properties: [
117
+ {
118
+ name: 'id',
119
+ title: 'ID',
120
+ groupId: 'main',
121
+ schema: {
122
+ dataType: 'string',
123
+ hidden: true,
124
+ nullable: false,
125
+ readonly: true,
126
+ unique: {
127
+ enabled: true,
128
+ },
129
+ },
130
+ },
131
+ {
132
+ name: 'title',
133
+ title: `t("${entityName}.title", { scope: "${i18n}" })`,
134
+ groupId: 'main',
135
+ options: {
136
+ sort: {
137
+ enabled: true,
138
+ },
139
+ filter: {
140
+ advance: {
141
+ enabled: true,
142
+ },
143
+ inline: {
144
+ enabled: true,
145
+ },
146
+ },
147
+ },
148
+ schema: {
149
+ dataType: 'string',
150
+ interface: {
151
+ type: AXPWidgetsCatalog.text,
152
+ },
153
+ },
154
+ validations: [
155
+ {
156
+ rule: 'required',
157
+ },
158
+ ],
159
+ },
160
+ {
161
+ name: 'description',
162
+ title: `t("${entityName}.description", { scope: "${i18n}" })`,
163
+ groupId: 'main',
164
+ options: {
165
+ sort: {
166
+ enabled: false,
167
+ },
168
+ filter: {
169
+ advance: {
170
+ enabled: true,
171
+ },
172
+ inline: {
173
+ enabled: false,
174
+ },
175
+ },
176
+ },
177
+ schema: {
178
+ dataType: 'string',
179
+ interface: {
180
+ type: AXPWidgetsCatalog.largeText,
181
+ options: {
182
+ rows: 3,
183
+ },
184
+ },
185
+ },
186
+ validations: [
187
+ {
188
+ rule: 'required',
189
+ },
190
+ ],
191
+ },
192
+ ],
193
+ columns: [{ name: 'title' }, { name: 'description' }],
194
+ commands: {
195
+ create: {
196
+ execute: async (data) => {
197
+ const res = await dataService.insertOne(data);
198
+ return { id: res };
199
+ },
200
+ },
201
+ delete: {
202
+ execute: async (id) => {
203
+ return await dataService.deleteOne(id);
204
+ },
205
+ },
206
+ update: {
207
+ execute: async (data) => {
208
+ return await dataService.updateOne(data.id, data);
209
+ },
210
+ },
211
+ },
212
+ queries: {
213
+ byKey: {
214
+ execute: async (id) => {
215
+ return await dataService.getOne(id);
216
+ },
217
+ type: AXPEntityQueryType.Single,
218
+ },
219
+ list: {
220
+ execute: async (e) => {
221
+ return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });
222
+ },
223
+ type: AXPEntityQueryType.List,
224
+ },
225
+ },
226
+ interfaces: {
227
+ master: {
228
+ create: {
229
+ sections: [
230
+ {
231
+ id: 'main',
232
+ },
233
+ ],
234
+ properties: [
235
+ {
236
+ name: 'title',
237
+ layout: {
238
+ positions: {
239
+ lg: {
240
+ colSpan: 12,
241
+ order: 1,
242
+ },
243
+ },
244
+ },
245
+ },
246
+ {
247
+ name: 'description',
248
+ layout: {
249
+ positions: {
250
+ lg: {
251
+ colSpan: 12,
252
+ order: 2,
253
+ },
254
+ },
255
+ },
256
+ },
257
+ ],
258
+ },
259
+ update: {
260
+ sections: [
261
+ {
262
+ id: 'main',
263
+ },
264
+ ],
265
+ properties: [
266
+ {
267
+ name: 'title',
268
+ layout: {
269
+ positions: {
270
+ lg: {
271
+ colSpan: 12,
272
+ order: 1,
273
+ },
274
+ },
275
+ },
276
+ },
277
+ {
278
+ name: 'description',
279
+ layout: {
280
+ positions: {
281
+ lg: {
282
+ colSpan: 12,
283
+ order: 2,
284
+ },
285
+ },
286
+ },
287
+ },
288
+ ],
289
+ },
290
+ single: {
291
+ title: '{{title}}',
292
+ sections: [
293
+ {
294
+ id: 'main',
295
+ },
296
+ ],
297
+ properties: [
298
+ {
299
+ name: 'title',
300
+ layout: {
301
+ positions: {
302
+ lg: {
303
+ colSpan: 12,
304
+ order: 1,
305
+ },
306
+ },
307
+ },
308
+ },
309
+ {
310
+ name: 'description',
311
+ layout: {
312
+ positions: {
313
+ lg: {
314
+ colSpan: 12,
315
+ order: 2,
316
+ },
317
+ },
318
+ },
319
+ },
320
+ ],
321
+ actions: [],
322
+ },
323
+ list: {
324
+ actions: [
325
+ {
326
+ title: `t("create", { scope: "common" })`,
327
+ command: 'create-entity',
328
+ priority: 'primary',
329
+ type: 'create',
330
+ scope: AXPEntityCommandScope.TypeLevel,
331
+ },
332
+ {
333
+ title: 't("deleteItems", { scope: "common" })',
334
+ command: 'delete-entity',
335
+ priority: 'primary',
336
+ type: 'delete',
337
+ scope: AXPEntityCommandScope.Selected,
338
+ },
339
+ {
340
+ title: 't("detail", { scope: "common" })',
341
+ command: 'open-entity',
342
+ priority: 'secondary',
343
+ type: 'view',
344
+ scope: AXPEntityCommandScope.Individual,
345
+ },
346
+ {
347
+ title: 't("delete", { scope: "common" })',
348
+ command: 'delete-entity',
349
+ priority: 'secondary',
350
+ type: 'delete',
351
+ scope: AXPEntityCommandScope.Individual,
352
+ },
353
+ ],
354
+ views: [
355
+ createAllQueryView({
356
+ sorts: [{ name: 'title', dir: 'asc' }],
357
+ }),
358
+ ],
359
+ },
360
+ },
361
+ },
362
+ };
363
+ return entityDef;
364
+ }
365
+
366
+ class AXMReportedIssuesService extends AXMEntityCrudServiceImpl {
367
+ }
368
+ class AXMReportedIssuesServiceImpl extends AXMReportedIssuesService {
369
+ constructor() {
370
+ super(`${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`);
371
+ }
372
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMReportedIssuesServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
373
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMReportedIssuesServiceImpl }); }
374
+ }
375
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMReportedIssuesServiceImpl, decorators: [{
376
+ type: Injectable
377
+ }], ctorParameters: () => [] });
378
+
379
+ async function reportedIssuesEntityFactory(injector) {
380
+ const dataService = injector.get(AXMReportedIssuesService);
381
+ const i18n = RootConfig.config.i18n;
382
+ const entityName = 'reported-issues';
383
+ const entityDef = {
384
+ module: RootConfig.module.name,
385
+ name: RootConfig.entities.reportedIssues.name,
386
+ source: '',
387
+ title: `t("${entityName}.individual-title", { scope: "${i18n}" })`,
388
+ formats: {
389
+ individual: `t("${entityName}.individual-title", { scope: "${i18n}" })`,
390
+ plural: `t("${entityName}.plural-title", { scope: "${i18n}" })`,
391
+ searchResult: {
392
+ title: '{{ title }}',
393
+ description: RootConfig.module.title,
394
+ },
395
+ },
396
+ relatedEntities: [],
397
+ groups: [
398
+ {
399
+ id: 'main',
400
+ title: `t("${entityName}.main-section", { scope: "${i18n}" })`,
401
+ },
402
+ {
403
+ id: 'details',
404
+ title: `t("${entityName}.details-section", { scope: "${i18n}" })`,
405
+ },
406
+ {
407
+ id: 'system',
408
+ title: `t("${entityName}.system-section", { scope: "${i18n}" })`,
409
+ },
410
+ ],
411
+ properties: [
412
+ {
413
+ name: 'id',
414
+ title: 'ID',
415
+ schema: {
416
+ dataType: 'uuid',
417
+ hidden: true,
418
+ nullable: false,
419
+ readonly: true,
420
+ unique: {
421
+ enabled: true,
422
+ },
423
+ },
424
+ },
425
+ {
426
+ name: 'user',
427
+ title: `t("${entityName}.user", { scope: "${i18n}" })`,
428
+ groupId: 'main',
429
+ options: {
430
+ sort: {
431
+ enabled: true,
432
+ },
433
+ filter: {
434
+ advance: {
435
+ enabled: true,
436
+ },
437
+ inline: {
438
+ enabled: true,
439
+ },
440
+ },
441
+ },
442
+ schema: {
443
+ dataType: 'object',
444
+ interface: {
445
+ type: AXPWidgetsCatalog.lookup,
446
+ options: {
447
+ entityName: 'users',
448
+ // textField: 'fullName',
449
+ },
450
+ },
451
+ },
452
+ validations: [
453
+ {
454
+ rule: 'required',
455
+ },
456
+ ],
457
+ },
458
+ {
459
+ name: 'issueType',
460
+ title: `t("${entityName}.issue-type", { scope: "${i18n}" })`,
461
+ groupId: 'main',
462
+ options: {
463
+ sort: {
464
+ enabled: true,
465
+ },
466
+ filter: {
467
+ advance: {
468
+ enabled: true,
469
+ },
470
+ inline: {
471
+ enabled: true,
472
+ },
473
+ },
474
+ },
475
+ schema: {
476
+ dataType: 'string',
477
+ interface: {
478
+ type: AXPWidgetsCatalog.lookup,
479
+ options: {
480
+ entityName: 'issueType',
481
+ // displayField: 'title',
482
+ // valueField: 'id',
483
+ },
484
+ },
485
+ },
486
+ validations: [
487
+ {
488
+ rule: 'required',
489
+ },
490
+ ],
491
+ },
492
+ {
493
+ name: 'priority',
494
+ title: `t("${entityName}.priority", { scope: "${i18n}" })`,
495
+ groupId: 'main',
496
+ options: {
497
+ sort: {
498
+ enabled: true,
499
+ },
500
+ filter: {
501
+ advance: {
502
+ enabled: true,
503
+ },
504
+ inline: {
505
+ enabled: true,
506
+ },
507
+ },
508
+ },
509
+ schema: {
510
+ dataType: 'string',
511
+ interface: {
512
+ type: AXPWidgetsCatalog.select,
513
+ options: {
514
+ items: [
515
+ { title: 'Low', id: 1 },
516
+ { title: 'Medium', id: 2 },
517
+ { title: 'High', id: 3 },
518
+ { title: 'Critical', id: 4 },
519
+ ],
520
+ },
521
+ },
522
+ },
523
+ validations: [
524
+ {
525
+ rule: 'required',
526
+ },
527
+ ],
528
+ },
529
+ {
530
+ name: 'status',
531
+ title: `t("${entityName}.status", { scope: "${i18n}" })`,
532
+ groupId: 'main',
533
+ options: {
534
+ sort: {
535
+ enabled: true,
536
+ },
537
+ filter: {
538
+ advance: {
539
+ enabled: true,
540
+ },
541
+ inline: {
542
+ enabled: true,
543
+ },
544
+ },
545
+ },
546
+ schema: {
547
+ dataType: 'string',
548
+ interface: {
549
+ type: AXPWidgetsCatalog.select,
550
+ options: {
551
+ items: [
552
+ { value: 'new', title: 'New' },
553
+ { value: 'in-progress', title: 'In Progress' },
554
+ { value: 'pending', title: 'Pending' },
555
+ { value: 'resolved', title: 'Resolved' },
556
+ { value: 'closed', title: 'Closed' },
557
+ ],
558
+ },
559
+ },
560
+ },
561
+ validations: [
562
+ {
563
+ rule: 'required',
564
+ },
565
+ ],
566
+ },
567
+ {
568
+ name: 'title',
569
+ title: `t("${entityName}.title", { scope: "${i18n}" })`,
570
+ groupId: 'main',
571
+ options: {
572
+ sort: {
573
+ enabled: true,
574
+ },
575
+ filter: {
576
+ advance: {
577
+ enabled: true,
578
+ },
579
+ inline: {
580
+ enabled: true,
581
+ },
582
+ },
583
+ },
584
+ schema: {
585
+ dataType: 'string',
586
+ interface: {
587
+ type: AXPWidgetsCatalog.text,
588
+ },
589
+ },
590
+ validations: [
591
+ {
592
+ rule: 'required',
593
+ },
594
+ ],
595
+ },
596
+ {
597
+ name: 'description',
598
+ title: `t("${entityName}.description", { scope: "${i18n}" })`,
599
+ groupId: 'details',
600
+ options: {
601
+ sort: {
602
+ enabled: false,
603
+ },
604
+ filter: {
605
+ advance: {
606
+ enabled: true,
607
+ },
608
+ inline: {
609
+ enabled: false,
610
+ },
611
+ },
612
+ },
613
+ schema: {
614
+ dataType: 'string',
615
+ interface: {
616
+ type: AXPWidgetsCatalog.largeText,
617
+ options: {
618
+ rows: 4,
619
+ },
620
+ },
621
+ },
622
+ validations: [
623
+ {
624
+ rule: 'required',
625
+ },
626
+ ],
627
+ },
628
+ {
629
+ name: 'attachments',
630
+ title: `t("${entityName}.attachments", { scope: "${i18n}" })`,
631
+ groupId: 'details',
632
+ options: {
633
+ sort: {
634
+ enabled: false,
635
+ },
636
+ filter: {
637
+ advance: {
638
+ enabled: false,
639
+ },
640
+ inline: {
641
+ enabled: false,
642
+ },
643
+ },
644
+ },
645
+ schema: {
646
+ dataType: 'array',
647
+ interface: {
648
+ type: AXPWidgetsCatalog.documentAttachment,
649
+ options: {
650
+ multiple: true,
651
+ entity: `${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`,
652
+ record: '{{context.eval("id")}}',
653
+ accept: '*/*',
654
+ },
655
+ },
656
+ },
657
+ },
658
+ {
659
+ name: 'systemInfo',
660
+ title: `t("${entityName}.system-info", { scope: "${i18n}" })`,
661
+ groupId: 'system',
662
+ options: {
663
+ sort: {
664
+ enabled: false,
665
+ },
666
+ filter: {
667
+ advance: {
668
+ enabled: false,
669
+ },
670
+ inline: {
671
+ enabled: false,
672
+ },
673
+ },
674
+ },
675
+ schema: {
676
+ dataType: 'object',
677
+ interface: {
678
+ type: AXPWidgetsCatalog.metaData,
679
+ options: {
680
+ fields: [
681
+ { name: 'browser', title: 'Browser' },
682
+ { name: 'os', title: 'Operating System' },
683
+ { name: 'appVersion', title: 'App Version' },
684
+ { name: 'deviceType', title: 'Device Type' },
685
+ { name: 'screenResolution', title: 'Screen Resolution' },
686
+ ],
687
+ },
688
+ },
689
+ },
690
+ },
691
+ {
692
+ name: 'errorLogs',
693
+ title: `t("${entityName}.error-logs", { scope: "${i18n}" })`,
694
+ groupId: 'system',
695
+ options: {
696
+ sort: {
697
+ enabled: false,
698
+ },
699
+ filter: {
700
+ advance: {
701
+ enabled: false,
702
+ },
703
+ inline: {
704
+ enabled: false,
705
+ },
706
+ },
707
+ },
708
+ schema: {
709
+ dataType: 'string',
710
+ interface: {
711
+ type: AXPWidgetsCatalog.largeText,
712
+ options: {
713
+ rows: 8,
714
+ readonly: true,
715
+ },
716
+ },
717
+ },
718
+ },
719
+ {
720
+ name: 'createdAt',
721
+ title: `t("${entityName}.created-at", { scope: "${i18n}" })`,
722
+ groupId: 'system',
723
+ options: {
724
+ sort: {
725
+ enabled: true,
726
+ },
727
+ filter: {
728
+ advance: {
729
+ enabled: true,
730
+ },
731
+ inline: {
732
+ enabled: false,
733
+ },
734
+ },
735
+ },
736
+ schema: {
737
+ dataType: 'date',
738
+ interface: {
739
+ type: AXPWidgetsCatalog.dateTime,
740
+ options: {
741
+ readonly: true,
742
+ },
743
+ },
744
+ },
745
+ },
746
+ ],
747
+ columns: [
748
+ { name: 'user' },
749
+ { name: 'issueType' },
750
+ { name: 'priority' },
751
+ { name: 'status' },
752
+ { name: 'title' },
753
+ { name: 'description' },
754
+ { name: 'createdAt' },
755
+ ],
756
+ // commands: {
757
+ // create: {
758
+ // execute: async (data: any) => {
759
+ // data.createdAt = new Date();
760
+ // data.status = 'new';
761
+ // const res = await dataService.insertOne(data);
762
+ // return { id: res };
763
+ // },
764
+ // },--
765
+ // delete: {
766
+ // execute: async (id: any) => {
767
+ // return await dataService.deleteOne(id);
768
+ // },
769
+ // },
770
+ // update: {
771
+ // execute: async (data: any) => {
772
+ // return await dataService.updateOne(data.id, data);
773
+ // },
774
+ // },
775
+ // },
776
+ queries: {
777
+ byKey: {
778
+ execute: async (id) => {
779
+ return await dataService.getOne(id);
780
+ },
781
+ type: AXPEntityQueryType.Single,
782
+ },
783
+ list: {
784
+ execute: async (e) => {
785
+ return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });
786
+ },
787
+ type: AXPEntityQueryType.List,
788
+ },
789
+ },
790
+ interfaces: {
791
+ master: {
792
+ // create: {
793
+ // sections: [
794
+ // {
795
+ // id: 'main',
796
+ // },
797
+ // {
798
+ // id: 'details',
799
+ // },
800
+ // {
801
+ // id: 'system',
802
+ // },
803
+ // ],
804
+ // properties: [
805
+ // {
806
+ // name: 'user',
807
+ // layout: {
808
+ // positions: {
809
+ // lg: {
810
+ // colSpan: 6,
811
+ // order: 1,
812
+ // },
813
+ // },
814
+ // },
815
+ // },
816
+ // {
817
+ // name: 'issueType',
818
+ // layout: {
819
+ // positions: {
820
+ // lg: {
821
+ // colSpan: 6,
822
+ // order: 2,
823
+ // },
824
+ // },
825
+ // },
826
+ // },
827
+ // {
828
+ // name: 'priority',
829
+ // layout: {
830
+ // positions: {
831
+ // lg: {
832
+ // colSpan: 6,
833
+ // order: 3,
834
+ // },
835
+ // },
836
+ // },
837
+ // },
838
+ // {
839
+ // name: 'status',
840
+ // layout: {
841
+ // positions: {
842
+ // lg: {
843
+ // colSpan: 6,
844
+ // order: 4,
845
+ // },
846
+ // },
847
+ // },
848
+ // },
849
+ // {
850
+ // name: 'title',
851
+ // layout: {
852
+ // positions: {
853
+ // lg: {
854
+ // colSpan: 12,
855
+ // order: 5,
856
+ // },
857
+ // },
858
+ // },
859
+ // },
860
+ // {
861
+ // name: 'description',
862
+ // layout: {
863
+ // positions: {
864
+ // lg: {
865
+ // colSpan: 12,
866
+ // order: 6,
867
+ // },
868
+ // },
869
+ // },
870
+ // },
871
+ // {
872
+ // name: 'attachments',
873
+ // layout: {
874
+ // positions: {
875
+ // lg: {
876
+ // colSpan: 12,
877
+ // order: 7,
878
+ // },
879
+ // },
880
+ // },
881
+ // },
882
+ // {
883
+ // name: 'systemInfo',
884
+ // layout: {
885
+ // positions: {
886
+ // lg: {
887
+ // colSpan: 12,
888
+ // order: 8,
889
+ // },
890
+ // },
891
+ // },
892
+ // },
893
+ // {
894
+ // name: 'errorLogs',
895
+ // layout: {
896
+ // positions: {
897
+ // lg: {
898
+ // colSpan: 12,
899
+ // order: 9,
900
+ // },
901
+ // },
902
+ // },
903
+ // },
904
+ // ],
905
+ // },
906
+ // update: {
907
+ // sections: [
908
+ // {
909
+ // id: 'main',
910
+ // },
911
+ // {
912
+ // id: 'details',
913
+ // },
914
+ // {
915
+ // id: 'system',
916
+ // },
917
+ // ],
918
+ // properties: [
919
+ // {
920
+ // name: 'user',
921
+ // layout: {
922
+ // positions: {
923
+ // lg: {
924
+ // colSpan: 6,
925
+ // order: 1,
926
+ // },
927
+ // },
928
+ // },
929
+ // },
930
+ // {
931
+ // name: 'issueType',
932
+ // layout: {
933
+ // positions: {
934
+ // lg: {
935
+ // colSpan: 6,
936
+ // order: 2,
937
+ // },
938
+ // },
939
+ // },
940
+ // },
941
+ // {
942
+ // name: 'priority',
943
+ // layout: {
944
+ // positions: {
945
+ // lg: {
946
+ // colSpan: 6,
947
+ // order: 3,
948
+ // },
949
+ // },
950
+ // },
951
+ // },
952
+ // {
953
+ // name: 'status',
954
+ // layout: {
955
+ // positions: {
956
+ // lg: {
957
+ // colSpan: 6,
958
+ // order: 4,
959
+ // },
960
+ // },
961
+ // },
962
+ // },
963
+ // {
964
+ // name: 'title',
965
+ // layout: {
966
+ // positions: {
967
+ // lg: {
968
+ // colSpan: 12,
969
+ // order: 5,
970
+ // },
971
+ // },
972
+ // },
973
+ // },
974
+ // {
975
+ // name: 'description',
976
+ // layout: {
977
+ // positions: {
978
+ // lg: {
979
+ // colSpan: 12,
980
+ // order: 6,
981
+ // },
982
+ // },
983
+ // },
984
+ // },
985
+ // {
986
+ // name: 'attachments',
987
+ // layout: {
988
+ // positions: {
989
+ // lg: {
990
+ // colSpan: 12,
991
+ // order: 7,
992
+ // },
993
+ // },
994
+ // },
995
+ // },
996
+ // {
997
+ // name: 'systemInfo',
998
+ // layout: {
999
+ // positions: {
1000
+ // lg: {
1001
+ // colSpan: 12,
1002
+ // order: 8,
1003
+ // },
1004
+ // },
1005
+ // },
1006
+ // },
1007
+ // {
1008
+ // name: 'errorLogs',
1009
+ // layout: {
1010
+ // positions: {
1011
+ // lg: {
1012
+ // colSpan: 12,
1013
+ // order: 9,
1014
+ // },
1015
+ // },
1016
+ // },
1017
+ // },
1018
+ // {
1019
+ // name: 'createdAt',
1020
+ // layout: {
1021
+ // positions: {
1022
+ // lg: {
1023
+ // colSpan: 6,
1024
+ // order: 11,
1025
+ // },
1026
+ // },
1027
+ // },
1028
+ // },
1029
+ // ],
1030
+ // },
1031
+ single: {
1032
+ title: '{{title}}',
1033
+ sections: [
1034
+ {
1035
+ id: 'main',
1036
+ },
1037
+ {
1038
+ id: 'details',
1039
+ },
1040
+ {
1041
+ id: 'system',
1042
+ },
1043
+ ],
1044
+ properties: [
1045
+ {
1046
+ name: 'user',
1047
+ layout: {
1048
+ positions: {
1049
+ lg: {
1050
+ colSpan: 6,
1051
+ order: 1,
1052
+ },
1053
+ },
1054
+ },
1055
+ },
1056
+ {
1057
+ name: 'issueType',
1058
+ layout: {
1059
+ positions: {
1060
+ lg: {
1061
+ colSpan: 6,
1062
+ order: 2,
1063
+ },
1064
+ },
1065
+ },
1066
+ },
1067
+ {
1068
+ name: 'priority',
1069
+ layout: {
1070
+ positions: {
1071
+ lg: {
1072
+ colSpan: 6,
1073
+ order: 3,
1074
+ },
1075
+ },
1076
+ },
1077
+ },
1078
+ {
1079
+ name: 'status',
1080
+ layout: {
1081
+ positions: {
1082
+ lg: {
1083
+ colSpan: 6,
1084
+ order: 4,
1085
+ },
1086
+ },
1087
+ },
1088
+ },
1089
+ {
1090
+ name: 'title',
1091
+ layout: {
1092
+ positions: {
1093
+ lg: {
1094
+ colSpan: 12,
1095
+ order: 5,
1096
+ },
1097
+ },
1098
+ },
1099
+ },
1100
+ {
1101
+ name: 'description',
1102
+ layout: {
1103
+ positions: {
1104
+ lg: {
1105
+ colSpan: 12,
1106
+ order: 6,
1107
+ },
1108
+ },
1109
+ },
1110
+ },
1111
+ {
1112
+ name: 'attachments',
1113
+ layout: {
1114
+ positions: {
1115
+ lg: {
1116
+ colSpan: 12,
1117
+ order: 7,
1118
+ },
1119
+ },
1120
+ },
1121
+ },
1122
+ {
1123
+ name: 'systemInfo',
1124
+ layout: {
1125
+ positions: {
1126
+ lg: {
1127
+ colSpan: 12,
1128
+ order: 8,
1129
+ },
1130
+ },
1131
+ },
1132
+ },
1133
+ {
1134
+ name: 'errorLogs',
1135
+ layout: {
1136
+ positions: {
1137
+ lg: {
1138
+ colSpan: 12,
1139
+ order: 9,
1140
+ },
1141
+ },
1142
+ },
1143
+ },
1144
+ {
1145
+ name: 'createdAt',
1146
+ layout: {
1147
+ positions: {
1148
+ lg: {
1149
+ colSpan: 6,
1150
+ order: 11,
1151
+ },
1152
+ },
1153
+ },
1154
+ },
1155
+ ],
1156
+ actions: [],
1157
+ },
1158
+ list: {
1159
+ actions: [
1160
+ // {
1161
+ // title: `t("create", { scope: "common" })`,
1162
+ // command: 'create-entity',
1163
+ // priority: 'primary',
1164
+ // type: 'create',
1165
+ // scope: AXPEntityCommandScope.TypeLevel,
1166
+ // },
1167
+ // {
1168
+ // title: 't("deleteItems", { scope: "common" })',
1169
+ // command: 'delete-entity',
1170
+ // priority: 'primary',
1171
+ // type: 'delete',
1172
+ // scope: AXPEntityCommandScope.Selected,
1173
+ // },
1174
+ {
1175
+ title: 't("detail", { scope: "common" })',
1176
+ command: 'open-entity',
1177
+ priority: 'secondary',
1178
+ type: 'view',
1179
+ scope: AXPEntityCommandScope.Individual,
1180
+ },
1181
+ // {
1182
+ // title: 't("delete", { scope: "common" })',
1183
+ // command: 'delete-entity',
1184
+ // priority: 'secondary',
1185
+ // type: 'delete',
1186
+ // scope: AXPEntityCommandScope.Individual,
1187
+ // },
1188
+ ],
1189
+ views: [
1190
+ createAllQueryView({
1191
+ sorts: [{ name: 'createdAt', dir: 'desc' }],
1192
+ }),
1193
+ ],
1194
+ },
1195
+ },
1196
+ },
1197
+ };
1198
+ return entityDef;
1199
+ }
1200
+
1201
+ class AXMMyReportedIssuesService extends AXMEntityCrudServiceImpl {
1202
+ }
1203
+ class AXMMyReportedIssuesServiceImpl extends AXMMyReportedIssuesService {
1204
+ constructor() {
1205
+ super(`${RootConfig.module.name}.${RootConfig.entities.myReportedIssues.name}`);
1206
+ }
1207
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMMyReportedIssuesServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1208
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMMyReportedIssuesServiceImpl }); }
1209
+ }
1210
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMMyReportedIssuesServiceImpl, decorators: [{
1211
+ type: Injectable
1212
+ }], ctorParameters: () => [] });
1213
+
1214
+ async function myReportedIssuesEntityFactory(injector) {
1215
+ const dataService = injector.get(AXMMyReportedIssuesService);
1216
+ const reportedIssueDataService = injector.get(AXMReportedIssuesService);
1217
+ const i18n = RootConfig.config.i18n;
1218
+ const entityName = 'my-reported-issues';
1219
+ const entityDef = {
1220
+ module: RootConfig.module.name,
1221
+ name: RootConfig.entities.myReportedIssues.name,
1222
+ source: '',
1223
+ title: `t("${entityName}.individual-title", { scope: "${i18n}" })`,
1224
+ formats: {
1225
+ individual: `t("${entityName}.individual-title", { scope: "${i18n}" })`,
1226
+ plural: `t("${entityName}.plural-title", { scope: "${i18n}" })`,
1227
+ searchResult: {
1228
+ title: '{{ title }}',
1229
+ description: RootConfig.module.title,
1230
+ },
1231
+ },
1232
+ relatedEntities: [],
1233
+ groups: [
1234
+ {
1235
+ id: 'section',
1236
+ title: `t("${entityName}.section-title", { scope: "${i18n}" })`,
1237
+ },
1238
+ ],
1239
+ properties: [
1240
+ {
1241
+ name: 'id',
1242
+ title: 'ID',
1243
+ schema: {
1244
+ dataType: 'uuid',
1245
+ hidden: true,
1246
+ nullable: false,
1247
+ readonly: true,
1248
+ unique: {
1249
+ enabled: true,
1250
+ },
1251
+ },
1252
+ },
1253
+ {
1254
+ name: 'issueType',
1255
+ title: `t("${entityName}.issue-type", { scope:"${i18n}" })`,
1256
+ groupId: 'section',
1257
+ options: {
1258
+ sort: {
1259
+ enabled: true,
1260
+ },
1261
+ filter: {
1262
+ advance: {
1263
+ enabled: true,
1264
+ },
1265
+ inline: {
1266
+ enabled: true,
1267
+ },
1268
+ },
1269
+ },
1270
+ schema: {
1271
+ dataType: 'string',
1272
+ interface: {
1273
+ type: AXPWidgetsCatalog.lookup,
1274
+ options: {
1275
+ entityName: 'issueType',
1276
+ },
1277
+ },
1278
+ },
1279
+ validations: [
1280
+ {
1281
+ rule: 'required',
1282
+ },
1283
+ ],
1284
+ },
1285
+ {
1286
+ name: 'priority',
1287
+ title: `t("${entityName}.priority", { scope: "${i18n}" })`,
1288
+ groupId: 'section',
1289
+ options: {
1290
+ sort: {
1291
+ enabled: true,
1292
+ },
1293
+ filter: {
1294
+ advance: {
1295
+ enabled: true,
1296
+ },
1297
+ inline: {
1298
+ enabled: true,
1299
+ },
1300
+ },
1301
+ },
1302
+ schema: {
1303
+ dataType: 'string',
1304
+ interface: {
1305
+ type: AXPWidgetsCatalog.select,
1306
+ options: {
1307
+ items: [
1308
+ { value: 'high', title: 'High' },
1309
+ { value: 'medium', title: 'Medium' },
1310
+ { value: 'low', title: 'Low' },
1311
+ ],
1312
+ },
1313
+ },
1314
+ },
1315
+ validations: [
1316
+ {
1317
+ rule: 'required',
1318
+ },
1319
+ ],
1320
+ },
1321
+ {
1322
+ name: 'title',
1323
+ title: `t("${entityName}.title", { scope: "${i18n}" })`,
1324
+ groupId: 'section',
1325
+ options: {
1326
+ sort: {
1327
+ enabled: true,
1328
+ },
1329
+ filter: {
1330
+ advance: {
1331
+ enabled: true,
1332
+ },
1333
+ inline: {
1334
+ enabled: true,
1335
+ },
1336
+ },
1337
+ },
1338
+ schema: {
1339
+ dataType: 'string',
1340
+ interface: {
1341
+ type: AXPWidgetsCatalog.text,
1342
+ },
1343
+ },
1344
+ validations: [
1345
+ {
1346
+ rule: 'required',
1347
+ },
1348
+ ],
1349
+ },
1350
+ {
1351
+ name: 'description',
1352
+ title: `t("${entityName}.description", { scope: "${i18n}" })`,
1353
+ groupId: 'section',
1354
+ options: {
1355
+ sort: {
1356
+ enabled: false,
1357
+ },
1358
+ filter: {
1359
+ advance: {
1360
+ enabled: true,
1361
+ },
1362
+ inline: {
1363
+ enabled: false,
1364
+ },
1365
+ },
1366
+ },
1367
+ schema: {
1368
+ dataType: 'string',
1369
+ interface: {
1370
+ type: AXPWidgetsCatalog.largeText,
1371
+ options: {
1372
+ rows: 4,
1373
+ },
1374
+ },
1375
+ },
1376
+ validations: [
1377
+ {
1378
+ rule: 'required',
1379
+ },
1380
+ ],
1381
+ },
1382
+ {
1383
+ name: 'attachments',
1384
+ title: `t("${entityName}.attachments", { scope: "${i18n}" })`,
1385
+ groupId: 'section',
1386
+ options: {
1387
+ sort: {
1388
+ enabled: false,
1389
+ },
1390
+ filter: {
1391
+ advance: {
1392
+ enabled: false,
1393
+ },
1394
+ inline: {
1395
+ enabled: false,
1396
+ },
1397
+ },
1398
+ },
1399
+ schema: {
1400
+ dataType: 'array',
1401
+ interface: {
1402
+ type: AXPWidgetsCatalog.documentAttachment,
1403
+ options: {
1404
+ multiple: true,
1405
+ accept: '*/*',
1406
+ },
1407
+ },
1408
+ },
1409
+ },
1410
+ {
1411
+ name: 'createdAt',
1412
+ title: `t("${entityName}.created-at", { scope: "${i18n}" })`,
1413
+ groupId: 'section',
1414
+ options: {
1415
+ sort: {
1416
+ enabled: true,
1417
+ },
1418
+ filter: {
1419
+ advance: {
1420
+ enabled: true,
1421
+ },
1422
+ inline: {
1423
+ enabled: false,
1424
+ },
1425
+ },
1426
+ },
1427
+ schema: {
1428
+ dataType: 'date',
1429
+ interface: {
1430
+ type: AXPWidgetsCatalog.dateTime,
1431
+ options: {
1432
+ readonly: true,
1433
+ },
1434
+ },
1435
+ },
1436
+ },
1437
+ ],
1438
+ columns: [
1439
+ { name: 'issueType' },
1440
+ { name: 'priority' },
1441
+ { name: 'title' },
1442
+ { name: 'description' },
1443
+ { name: 'createdAt' },
1444
+ ],
1445
+ commands: {
1446
+ create: {
1447
+ execute: async (data) => {
1448
+ data.createdAt = new Date();
1449
+ const res = await dataService.insertOne(data);
1450
+ return { id: res };
1451
+ },
1452
+ },
1453
+ delete: {
1454
+ execute: async (id) => {
1455
+ return await dataService.deleteOne(id);
1456
+ },
1457
+ },
1458
+ update: {
1459
+ execute: async (data) => {
1460
+ return await dataService.updateOne(data.id, data);
1461
+ },
1462
+ },
1463
+ },
1464
+ queries: {
1465
+ byKey: {
1466
+ execute: async (id) => {
1467
+ return await dataService.getOne(id);
1468
+ },
1469
+ type: AXPEntityQueryType.Single,
1470
+ },
1471
+ list: {
1472
+ execute: async (e) => {
1473
+ return await reportedIssueDataService.query({ skip: e.skip, take: e.take, filter: e.filter });
1474
+ },
1475
+ type: AXPEntityQueryType.List,
1476
+ },
1477
+ },
1478
+ interfaces: {
1479
+ master: {
1480
+ create: {
1481
+ sections: [
1482
+ {
1483
+ id: 'section',
1484
+ },
1485
+ ],
1486
+ properties: [
1487
+ {
1488
+ name: 'issue-type',
1489
+ layout: {
1490
+ positions: {
1491
+ lg: {
1492
+ colSpan: 6,
1493
+ order: 1,
1494
+ },
1495
+ },
1496
+ },
1497
+ },
1498
+ {
1499
+ name: 'priority',
1500
+ layout: {
1501
+ positions: {
1502
+ lg: {
1503
+ colSpan: 6,
1504
+ order: 2,
1505
+ },
1506
+ },
1507
+ },
1508
+ },
1509
+ {
1510
+ name: 'title',
1511
+ layout: {
1512
+ positions: {
1513
+ lg: {
1514
+ colSpan: 12,
1515
+ order: 3,
1516
+ },
1517
+ },
1518
+ },
1519
+ },
1520
+ {
1521
+ name: 'description',
1522
+ layout: {
1523
+ positions: {
1524
+ lg: {
1525
+ colSpan: 12,
1526
+ order: 4,
1527
+ },
1528
+ },
1529
+ },
1530
+ },
1531
+ {
1532
+ name: 'attachments',
1533
+ layout: {
1534
+ positions: {
1535
+ lg: {
1536
+ colSpan: 12,
1537
+ order: 5,
1538
+ },
1539
+ },
1540
+ },
1541
+ },
1542
+ ],
1543
+ },
1544
+ update: {
1545
+ sections: [
1546
+ {
1547
+ id: 'section',
1548
+ },
1549
+ ],
1550
+ properties: [
1551
+ {
1552
+ name: 'issue-type',
1553
+ layout: {
1554
+ positions: {
1555
+ lg: {
1556
+ colSpan: 6,
1557
+ order: 1,
1558
+ },
1559
+ },
1560
+ },
1561
+ },
1562
+ {
1563
+ name: 'priority',
1564
+ layout: {
1565
+ positions: {
1566
+ lg: {
1567
+ colSpan: 6,
1568
+ order: 2,
1569
+ },
1570
+ },
1571
+ },
1572
+ },
1573
+ {
1574
+ name: 'title',
1575
+ layout: {
1576
+ positions: {
1577
+ lg: {
1578
+ colSpan: 12,
1579
+ order: 3,
1580
+ },
1581
+ },
1582
+ },
1583
+ },
1584
+ {
1585
+ name: 'description',
1586
+ layout: {
1587
+ positions: {
1588
+ lg: {
1589
+ colSpan: 12,
1590
+ order: 4,
1591
+ },
1592
+ },
1593
+ },
1594
+ },
1595
+ {
1596
+ name: 'attachments',
1597
+ layout: {
1598
+ positions: {
1599
+ lg: {
1600
+ colSpan: 12,
1601
+ order: 5,
1602
+ },
1603
+ },
1604
+ },
1605
+ },
1606
+ {
1607
+ name: 'created-at',
1608
+ layout: {
1609
+ positions: {
1610
+ lg: {
1611
+ colSpan: 6,
1612
+ order: 6,
1613
+ },
1614
+ },
1615
+ },
1616
+ },
1617
+ ],
1618
+ },
1619
+ single: {
1620
+ title: '{{title}}',
1621
+ sections: [
1622
+ {
1623
+ id: 'section',
1624
+ },
1625
+ ],
1626
+ properties: [
1627
+ {
1628
+ name: 'issue-type',
1629
+ layout: {
1630
+ positions: {
1631
+ lg: {
1632
+ colSpan: 6,
1633
+ order: 1,
1634
+ },
1635
+ },
1636
+ },
1637
+ },
1638
+ {
1639
+ name: 'priority',
1640
+ layout: {
1641
+ positions: {
1642
+ lg: {
1643
+ colSpan: 6,
1644
+ order: 2,
1645
+ },
1646
+ },
1647
+ },
1648
+ },
1649
+ {
1650
+ name: 'title',
1651
+ layout: {
1652
+ positions: {
1653
+ lg: {
1654
+ colSpan: 12,
1655
+ order: 3,
1656
+ },
1657
+ },
1658
+ },
1659
+ },
1660
+ {
1661
+ name: 'description',
1662
+ layout: {
1663
+ positions: {
1664
+ lg: {
1665
+ colSpan: 12,
1666
+ order: 4,
1667
+ },
1668
+ },
1669
+ },
1670
+ },
1671
+ {
1672
+ name: 'attachments',
1673
+ layout: {
1674
+ positions: {
1675
+ lg: {
1676
+ colSpan: 12,
1677
+ order: 5,
1678
+ },
1679
+ },
1680
+ },
1681
+ },
1682
+ {
1683
+ name: 'created-at',
1684
+ layout: {
1685
+ positions: {
1686
+ lg: {
1687
+ colSpan: 6,
1688
+ order: 6,
1689
+ },
1690
+ },
1691
+ },
1692
+ },
1693
+ ],
1694
+ actions: [],
1695
+ },
1696
+ list: {
1697
+ actions: [
1698
+ {
1699
+ title: `t("create", { scope: "common" })`,
1700
+ command: 'show-report-issue',
1701
+ priority: 'primary',
1702
+ type: 'create',
1703
+ scope: AXPEntityCommandScope.TypeLevel,
1704
+ },
1705
+ {
1706
+ title: 't("deleteItems", { scope: "common" })',
1707
+ command: 'delete-entity',
1708
+ priority: 'primary',
1709
+ type: 'delete',
1710
+ scope: AXPEntityCommandScope.Selected,
1711
+ },
1712
+ {
1713
+ title: 't("detail", { scope: "common" })',
1714
+ command: 'open-entity',
1715
+ priority: 'secondary',
1716
+ type: 'view',
1717
+ scope: AXPEntityCommandScope.Individual,
1718
+ },
1719
+ {
1720
+ title: 't("delete", { scope: "common" })',
1721
+ command: 'delete-entity',
1722
+ priority: 'secondary',
1723
+ type: 'delete',
1724
+ scope: AXPEntityCommandScope.Individual,
1725
+ },
1726
+ ],
1727
+ views: [
1728
+ createAllQueryView({
1729
+ sorts: [{ name: 'name', dir: 'asc' }],
1730
+ }),
1731
+ ],
1732
+ },
1733
+ },
1734
+ },
1735
+ };
1736
+ return entityDef;
1737
+ }
1738
+
1739
+ var index = /*#__PURE__*/Object.freeze({
1740
+ __proto__: null,
1741
+ AXMIssueTypeService: AXMIssueTypeService,
1742
+ AXMIssueTypeServiceImpl: AXMIssueTypeServiceImpl,
1743
+ AXMMyReportedIssuesService: AXMMyReportedIssuesService,
1744
+ AXMMyReportedIssuesServiceImpl: AXMMyReportedIssuesServiceImpl,
1745
+ AXMReportedIssuesService: AXMReportedIssuesService,
1746
+ AXMReportedIssuesServiceImpl: AXMReportedIssuesServiceImpl,
1747
+ issueTypeEntityFactory: issueTypeEntityFactory,
1748
+ myReportedIssuesEntityFactory: myReportedIssuesEntityFactory,
1749
+ reportedIssuesEntityFactory: reportedIssuesEntityFactory
1750
+ });
1751
+
1752
+ class AXMEntityProvider {
1753
+ constructor() {
1754
+ this.injector = inject(Injector);
1755
+ }
1756
+ preload() {
1757
+ const module = RootConfig.module.name;
1758
+ return Array.from(Object.values(RootConfig.entities)).map((entity) => ({
1759
+ module: module,
1760
+ entity: entity.name,
1761
+ }));
1762
+ }
1763
+ async get(moduleName, entityName) {
1764
+ if (moduleName == RootConfig.module.name) {
1765
+ return new Promise(async (resolve) => {
1766
+ switch (entityName) {
1767
+ case RootConfig.entities.issueType.name: {
1768
+ const entity = (await Promise.resolve().then(function () { return index; })).issueTypeEntityFactory;
1769
+ resolve(entity(this.injector));
1770
+ break;
1771
+ }
1772
+ case RootConfig.entities.reportedIssues.name: {
1773
+ const entity = (await Promise.resolve().then(function () { return index; })).reportedIssuesEntityFactory;
1774
+ resolve(entity(this.injector));
1775
+ break;
1776
+ }
1777
+ case RootConfig.entities.myReportedIssues.name: {
1778
+ const entity = (await Promise.resolve().then(function () { return index; })).myReportedIssuesEntityFactory;
1779
+ resolve(entity(this.injector));
1780
+ break;
1781
+ }
1782
+ }
1783
+ });
1784
+ }
1785
+ return null;
1786
+ }
1787
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1788
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMEntityProvider }); }
1789
+ }
1790
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMEntityProvider, decorators: [{
1791
+ type: Injectable
1792
+ }] });
1793
+
1794
+ const AXMCaptureScreenService = signalStore({ providedIn: 'root' }, withState(() => {
1795
+ const state = {
1796
+ loading: false,
1797
+ captureMode: 'screenshot',
1798
+ screenshotBlob: '',
1799
+ videoBlob: '',
1800
+ muted: false,
1801
+ isRecording: false,
1802
+ timer: {
1803
+ second: 0,
1804
+ minute: 0,
1805
+ },
1806
+ onFinish: undefined,
1807
+ };
1808
+ return state;
1809
+ }), withMethods((store) => {
1810
+ let interval;
1811
+ let videoStream;
1812
+ let audioStream;
1813
+ let mediaRecorder;
1814
+ let recordedChunks = [];
1815
+ let componentRef;
1816
+ const toastService = inject(AXToastService);
1817
+ const translationService = inject(AXTranslationService);
1818
+ const application = inject(ApplicationRef);
1819
+ const stopRecorderSubject = new Subject();
1820
+ const recordStream = async () => {
1821
+ mediaRecorder = await new MediaRecorder(videoStream, {
1822
+ mimeType: 'video/mp4',
1823
+ });
1824
+ patchState(store, { isRecording: true });
1825
+ mediaRecorder.start();
1826
+ startTimer();
1827
+ mediaRecorder.ondataavailable = (e) => {
1828
+ recordedChunks.push(e.data);
1829
+ };
1830
+ mediaRecorder.onstop = () => {
1831
+ stopRecorder();
1832
+ };
1833
+ videoStream.getVideoTracks()[0].onended = () => {
1834
+ stopRecorder();
1835
+ };
1836
+ };
1837
+ const finishRecording = async (result) => {
1838
+ if (store.onFinish() && result) {
1839
+ store.onFinish()?.(result);
1840
+ }
1841
+ resetState();
1842
+ componentRef.destroy();
1843
+ };
1844
+ const stopRecorder = async () => {
1845
+ stopRecorderSubject.pipe(take(1)).subscribe(async () => {
1846
+ try {
1847
+ if (mediaRecorder && videoStream?.active) {
1848
+ await mediaRecorder.stop();
1849
+ if (audioStream) {
1850
+ audioStream.getTracks().forEach((track) => track.stop());
1851
+ }
1852
+ videoStream.getVideoTracks().forEach((track) => track.stop());
1853
+ clearInterval(interval);
1854
+ patchState(store, { isRecording: false, timer: { second: 0, minute: 0 } });
1855
+ setTimeout(() => {
1856
+ createVideoBlob();
1857
+ });
1858
+ }
1859
+ }
1860
+ catch (error) {
1861
+ console.error('Error stopping recorder:', error);
1862
+ finishRecording(null);
1863
+ }
1864
+ });
1865
+ stopRecorderSubject.next();
1866
+ };
1867
+ const createVideoBlob = () => {
1868
+ try {
1869
+ if (recordedChunks.length > 0) {
1870
+ const blob = new Blob(recordedChunks, {
1871
+ type: recordedChunks[0].type,
1872
+ });
1873
+ finishRecording({ blob, type: 'video' });
1874
+ }
1875
+ }
1876
+ catch (error) {
1877
+ console.error('Error creating video blob:', error);
1878
+ finishRecording(null);
1879
+ }
1880
+ };
1881
+ const startTimer = () => {
1882
+ interval = setInterval(() => {
1883
+ if (store.timer().minute === 5) {
1884
+ stopRecorder();
1885
+ setTimeout(async () => {
1886
+ toastService.show({
1887
+ color: 'warning',
1888
+ content: await translationService.translateAsync('issue.recording-time-limit', {
1889
+ scope: 'issue-management',
1890
+ }),
1891
+ timeOut: 5000,
1892
+ });
1893
+ }, 100);
1894
+ }
1895
+ else if (store.timer().second === 59) {
1896
+ patchState(store, { timer: { minute: ++store.timer().minute, second: 0 } });
1897
+ }
1898
+ else {
1899
+ patchState(store, { timer: { minute: store.timer().minute, second: ++store.timer().second } });
1900
+ }
1901
+ }, 1000);
1902
+ };
1903
+ const resetState = () => {
1904
+ patchState(store, {
1905
+ loading: false,
1906
+ captureMode: 'screenshot',
1907
+ screenshotBlob: '',
1908
+ videoBlob: '',
1909
+ muted: false,
1910
+ isRecording: false,
1911
+ timer: {
1912
+ second: 0,
1913
+ minute: 0,
1914
+ },
1915
+ onFinish: undefined,
1916
+ });
1917
+ };
1918
+ return {
1919
+ init: async (onFinish) => {
1920
+ try {
1921
+ const { AXMCaptureScreenComponent } = await import('./acorex-modules-issue-management-capture-screen.component-XFV3kuzQ.mjs');
1922
+ const viewContainerRef = application.components[0].injector.get(ViewContainerRef);
1923
+ componentRef = viewContainerRef.createComponent(AXMCaptureScreenComponent);
1924
+ document.body.appendChild(componentRef.location.nativeElement);
1925
+ patchState(store, { onFinish });
1926
+ }
1927
+ catch (error) {
1928
+ console.error('Error initializing capture screen:', error);
1929
+ onFinish?.({ blob: new Blob(), type: 'image' });
1930
+ }
1931
+ },
1932
+ cancelClick() {
1933
+ if (store.isRecording()) {
1934
+ stopRecorder();
1935
+ return;
1936
+ }
1937
+ this.changeCaptureMode();
1938
+ finishRecording(null);
1939
+ },
1940
+ changeCaptureMode() {
1941
+ patchState(store, {
1942
+ captureMode: store.captureMode() === 'screenshot' ? 'video' : 'screenshot',
1943
+ });
1944
+ },
1945
+ async mutedClick() {
1946
+ const enabled = store.muted();
1947
+ if (audioStream) {
1948
+ audioStream.getTracks().forEach((track) => (track.enabled = enabled));
1949
+ }
1950
+ patchState(store, { muted: !enabled });
1951
+ },
1952
+ screenshotClick() {
1953
+ patchState(store, { loading: true });
1954
+ const captureElement = document.getElementsByTagName('body')[0];
1955
+ html2canvas(captureElement)
1956
+ .then(async (canvas) => {
1957
+ try {
1958
+ const blob = await new Promise((resolve, reject) => {
1959
+ canvas.toBlob((blob) => (blob ? resolve(blob) : reject(new Error('Failed to create blob'))), 'image/png');
1960
+ });
1961
+ finishRecording({ blob, type: 'image' });
1962
+ }
1963
+ catch (error) {
1964
+ console.error('Error creating screenshot:', error);
1965
+ finishRecording(null);
1966
+ }
1967
+ })
1968
+ .catch((error) => {
1969
+ console.error('Error capturing screenshot:', error);
1970
+ finishRecording(null);
1971
+ })
1972
+ .finally(() => {
1973
+ patchState(store, { loading: false });
1974
+ });
1975
+ },
1976
+ async recordScreenClick() {
1977
+ if (!store.isRecording() && !videoStream?.active) {
1978
+ try {
1979
+ videoStream = await navigator.mediaDevices.getDisplayMedia({
1980
+ video: { displaySurface: 'monitor' },
1981
+ audio: true,
1982
+ });
1983
+ await this.getMicrophonePermission();
1984
+ await recordStream();
1985
+ }
1986
+ catch (error) {
1987
+ console.error('Error starting screen recording:', error);
1988
+ toastService.show({
1989
+ color: 'warning',
1990
+ content: await translationService.translateAsync('issue.capture-screen-error', {
1991
+ scope: 'issue-management',
1992
+ }),
1993
+ timeOut: 5000,
1994
+ });
1995
+ finishRecording(null);
1996
+ }
1997
+ }
1998
+ else if (mediaRecorder) {
1999
+ stopRecorder();
2000
+ }
2001
+ },
2002
+ async getMicrophonePermission() {
2003
+ try {
2004
+ audioStream = await navigator.mediaDevices.getUserMedia({
2005
+ audio: {
2006
+ echoCancellation: true,
2007
+ noiseSuppression: true,
2008
+ sampleRate: 44100,
2009
+ autoGainControl: true,
2010
+ },
2011
+ });
2012
+ if (audioStream && videoStream) {
2013
+ videoStream.addTrack(audioStream.getTracks()[0]);
2014
+ audioStream.getTracks()[0].enabled = !store.muted();
2015
+ }
2016
+ }
2017
+ catch (error) {
2018
+ console.error('Error getting microphone permission:', error);
2019
+ toastService.show({
2020
+ color: 'warning',
2021
+ content: await translationService.translateAsync('issue.get-microphone-error', {
2022
+ scope: 'issue-management',
2023
+ }),
2024
+ timeOut: 5000,
2025
+ });
2026
+ audioStream = null;
2027
+ }
2028
+ },
2029
+ };
2030
+ }));
2031
+
2032
+ const AXMReportNewIssueViewModel = signalStore({ providedIn: 'root' }, withState(() => {
2033
+ const state = {
2034
+ id: AXPDataGenerator.uuid(),
2035
+ data: {
2036
+ title: '',
2037
+ description: '',
2038
+ issueType: {},
2039
+ priority: {},
2040
+ },
2041
+ status: 'new',
2042
+ media: [],
2043
+ };
2044
+ return state;
2045
+ }), withComputed(({ status }) => ({
2046
+ isRecording: computed(() => status() === 'recording'),
2047
+ })), withMethods((store, popupService = inject(AXPopupService), captureScreenService = inject(AXMCaptureScreenService), eventService = inject(AXPWorkflowEventService), fileStorageService = inject(AXPFileStorageService), documentService = inject(AXMDocumentService)) => {
2048
+ const createMediaItem = (name, mediaUrl, type, documentId, fileId) => ({
2049
+ id: (store.media().length + 1).toString(),
2050
+ name: name,
2051
+ type,
2052
+ thumbnail: mediaUrl,
2053
+ url: mediaUrl,
2054
+ documentId,
2055
+ fileId,
2056
+ });
2057
+ return {
2058
+ async startCapturing() {
2059
+ patchState(store, { status: 'recording' });
2060
+ return captureScreenService.init(async (data) => {
2061
+ try {
2062
+ let documentId = '';
2063
+ let file;
2064
+ if (typeof data === 'object' && 'blob' in data) {
2065
+ const mediaUrl = await URL.createObjectURL(data.blob);
2066
+ const fileName = `${new Date().toISOString()}.${data.type === 'image' ? 'png' : 'mp4'}`;
2067
+ file = new File([data.blob], fileName);
2068
+ const fileStorage = await fileStorageService.save({
2069
+ category: 'issue-document',
2070
+ file: file,
2071
+ name: fileName,
2072
+ refId: '',
2073
+ refType: `${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`,
2074
+ });
2075
+ documentId = await documentService.insertOne({
2076
+ refRecordId: store.id(),
2077
+ refEntity: `${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`,
2078
+ fileId: fileStorage.fileId,
2079
+ name: fileStorage.name,
2080
+ title: fileStorage.name,
2081
+ size: file.size,
2082
+ parentId: `${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`,
2083
+ });
2084
+ const newMedia = createMediaItem(fileStorage.name, mediaUrl, data.type, documentId, fileStorage.fileId);
2085
+ patchState(store, {
2086
+ media: [...store.media(), newMedia],
2087
+ status: 'recorded',
2088
+ });
2089
+ }
2090
+ this.showPopup(documentId);
2091
+ return file;
2092
+ }
2093
+ catch (error) {
2094
+ console.error('Error capturing media:', error);
2095
+ return undefined;
2096
+ }
2097
+ });
2098
+ },
2099
+ async showPopup(documentId) {
2100
+ try {
2101
+ const scope = RootConfig.config.i18n;
2102
+ const { AXMReportNewIssueComponent } = await Promise.resolve().then(function () { return reportNewIssue_component; });
2103
+ const config = {
2104
+ title: `t('report-new-issue.individual-title',{scope: "${scope}"})`,
2105
+ };
2106
+ const result = await popupService.open(AXMReportNewIssueComponent, config);
2107
+ if (result.data?.insertResult) {
2108
+ eventService.dispatch(AXPRefreshEvent({ entity: 'reported-issues' }));
2109
+ patchState(store, { status: 'new' });
2110
+ }
2111
+ }
2112
+ catch (error) {
2113
+ console.error('Error showing popup:', error);
2114
+ patchState(store, { status: 'new' });
2115
+ }
2116
+ },
2117
+ deleteCapturedItem(index) {
2118
+ patchState(store, { media: store.media().filter((_, i) => i !== index) });
2119
+ },
2120
+ resetState() {
2121
+ patchState(store, {
2122
+ id: AXPDataGenerator.uuid(),
2123
+ data: {
2124
+ title: '',
2125
+ description: '',
2126
+ issueType: {},
2127
+ priority: {},
2128
+ },
2129
+ status: 'new',
2130
+ media: [],
2131
+ });
2132
+ },
2133
+ };
2134
+ }));
2135
+
2136
+ class AXMReportNewIssueComponent extends AXBasePageComponent {
2137
+ constructor() {
2138
+ super();
2139
+ this.vm = inject(AXMReportNewIssueViewModel);
2140
+ this.sessionService = inject(AXPSessionService);
2141
+ this.issueTypeService = inject(AXMIssueTypeService);
2142
+ this.reportedIssuesService = inject(AXMReportedIssuesService);
2143
+ this.fileStorageService = inject(AXPFileStorageService);
2144
+ this.documentService = inject(AXMDocumentService);
2145
+ this.issueTypeDataSource = new AXDataSource({
2146
+ load: async (_) => {
2147
+ const issueTypeList = await this.issueTypeService.query();
2148
+ return issueTypeList;
2149
+ },
2150
+ pageSize: 20,
2151
+ });
2152
+ this.priorityList = [
2153
+ {
2154
+ title: 'Low',
2155
+ id: 1,
2156
+ },
2157
+ {
2158
+ title: 'Medium',
2159
+ id: 2,
2160
+ },
2161
+ {
2162
+ title: 'High',
2163
+ id: 3,
2164
+ },
2165
+ {
2166
+ title: 'Critical',
2167
+ id: 4,
2168
+ },
2169
+ ];
2170
+ this.attachNode = {
2171
+ type: AXPWidgetsCatalog.documentAttachment,
2172
+ name: 'attach',
2173
+ path: 'attach',
2174
+ // defaultValue: this.vm.media().map((el) => el.documentId),
2175
+ options: {
2176
+ multiple: true,
2177
+ entity: `${RootConfig.module.name}.${RootConfig.entities.reportedIssues.name}`,
2178
+ record: this.vm.id(),
2179
+ actions: [
2180
+ {
2181
+ name: 'attach',
2182
+ icon: 'fa-light fa-video',
2183
+ title: `t('report-new-issue.start-capture-screen', { scope: 'issue-management' })`,
2184
+ callback: async () => {
2185
+ this.vm.startCapturing();
2186
+ this.close();
2187
+ },
2188
+ },
2189
+ ],
2190
+ },
2191
+ };
2192
+ this.context = {};
2193
+ }
2194
+ async handleSubmitClick() {
2195
+ const formResult = await this.form.validate();
2196
+ if (formResult.result) {
2197
+ const params = {
2198
+ id: this.vm.id(),
2199
+ attachments: this.addToFileStorage(),
2200
+ // attachments: this.vm.media(),
2201
+ createdAt: new Date(),
2202
+ description: this.vm.data().description,
2203
+ errorLogs: [],
2204
+ issueType: this.vm.data().issueType,
2205
+ priority: this.vm.data().priority,
2206
+ status: 'new',
2207
+ systemInfo: navigator.userAgent,
2208
+ title: this.vm.data().title,
2209
+ user: this.sessionService.user,
2210
+ };
2211
+ debugger;
2212
+ const reportedIssue = await this.reportedIssuesService.insertOne(params);
2213
+ await this.vm.media().forEach(async (x) => {
2214
+ await this.documentService.updateOne(x.documentId, {
2215
+ refRecordId: reportedIssue,
2216
+ });
2217
+ });
2218
+ if (reportedIssue.length) {
2219
+ this.vm.resetState();
2220
+ this.close({ insertResult: true });
2221
+ }
2222
+ }
2223
+ }
2224
+ async convertURLToFile(url, fileName) {
2225
+ const response = await fetch(url);
2226
+ const blob = await response.blob();
2227
+ const file = new File([blob], fileName);
2228
+ return file;
2229
+ }
2230
+ addToFileStorage() {
2231
+ let fileIDs = [];
2232
+ // this.vm.media().forEach(async (el) => {
2233
+ // const file = await this.convertURLToFile(el.url, el.name as string);
2234
+ // fileIDs.push(
2235
+ // (await this.fileStorageService.save({ category: 'issue-document', file: file, refId: '', refType: '' })).fileId
2236
+ // );
2237
+ // });
2238
+ return fileIDs;
2239
+ }
2240
+ async handleStartRecordingClick() {
2241
+ await this.vm.startCapturing();
2242
+ this.close();
2243
+ }
2244
+ async onDeleteMediaClick(index) {
2245
+ this.vm.deleteCapturedItem(index);
2246
+ }
2247
+ async onCancelClick() {
2248
+ this.vm.resetState();
2249
+ this.close();
2250
+ }
2251
+ handleIssueTypeChange(event) {
2252
+ this.vm.data().issueType = event.component.selectedItems[0];
2253
+ }
2254
+ handlePriorityChange(event) {
2255
+ this.vm.data().priority = event.component.selectedItems[0];
2256
+ }
2257
+ ngOnDestroy() {
2258
+ if (this.vm.status() !== 'recording') {
2259
+ this.vm.resetState();
2260
+ }
2261
+ }
2262
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMReportNewIssueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2263
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: AXMReportNewIssueComponent, isStandalone: true, selector: "axm-report-new-issue", viewQueries: [{ propertyName: "form", first: true, predicate: AXFormComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div *translate=\"let t\" class=\"ax-p-6\">\n <ax-form #form>\n <div class=\"ax-grid ax-gap-2\">\n <ax-form-field>\n <ax-label>{{ t('report-new-issue.title', { scope: 'issue-management' }) | async }}</ax-label>\n <ax-text-box [(ngModel)]=\"vm.data().title\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t('report-new-issue.issue-type', { scope: 'issue-management' }) | async }}</ax-label>\n <ax-select-box\n valueField=\"id\"\n textField=\"title\"\n [dataSource]=\"issueTypeDataSource\"\n [value]=\"vm.data().issueType\"\n (onValueChanged)=\"handleIssueTypeChange($event)\"\n ></ax-select-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t('report-new-issue.priority', { scope: 'issue-management' }) | async }}</ax-label>\n <ax-select-box\n valueField=\"id\"\n textField=\"title\"\n [dataSource]=\"priorityList\"\n [value]=\"vm.data().priority\"\n (onValueChanged)=\"handlePriorityChange($event)\"\n ></ax-select-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t('report-new-issue.description', { scope: 'issue-management' }) | async }}</ax-label>\n <ax-text-area [(ngModel)]=\"vm.data().description\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-area>\n </ax-form-field>\n <ax-form-field>\n <axp-widgets-container class=\"ax-flex ax-flex-col ax-gap-2 ax-p-4\" [context]=\"context\">\n <ng-container axp-widget-renderer [node]=\"attachNode\" [mode]=\"'edit'\"> </ng-container>\n </axp-widgets-container>\n </ax-form-field>\n </div>\n </ax-form>\n <!-- @if(vm.media().length > 0){\n <div class=\"ax-py-4\">\n <ax-content>\n <ax-media-viewer-container #mediaViewer [dataArray]=\"vm.media()\" class=\"ax-block\">\n <ax-header>\n <ax-file-info></ax-file-info>\n <ax-suffix>\n <ax-button class=\"ax-sm\" color=\"danger\" (onClick)=\"onDeleteMediaClick(mediaViewer.getActiveIndex())\">\n <ax-icon class=\"ax-icon ax-icon-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-header>\n <ax-prefix>\n <ax-button (click)=\"mediaViewer.next()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-right\"> </ax-icon>\n </ax-button>\n </ax-prefix>\n <ax-suffix>\n <ax-button (click)=\"mediaViewer.prev()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-left\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-media-viewer-container>\n </ax-content>\n </div>\n } -->\n <!-- <div>\n <ax-label>{{ t('report-new-issue.attach', { scope: 'issue-management' }) | async }}</ax-label>\n <div\n class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-border ax-border-dashed ax-border-secondary-500 ax-rounded-lg ax-p-6\"\n >\n <div class=\"ax-rounded-full ax-bg-surface ax-px-4 ax-py-3\">\n <ax-icon class=\"fa-solid fa-paperclip ax-text-on-surface ax-text-xl\"></ax-icon>\n </div>\n <p class=\"ax-text-lg ax-text-on-surface\">\n {{ t('report-new-issue.attach-box-description', { scope: 'issue-management' }) | async }}\n </p>\n <ax-button\n class=\"ax-w-fit ax-mt-6\"\n [text]=\"t('report-new-issue.start-capture-screen', { scope: 'issue-management' }) | async\"\n color=\"secondary\"\n (onClick)=\"handleStartRecordingClick()\"\n ></ax-button>\n </div>\n </div> -->\n</div>\n<ax-footer>\n <ax-suffix>\n <ax-button\n look=\"solid\"\n color=\"default\"\n [text]=\"'cancel' | translate | async\"\n (onClick)=\"onCancelClick()\"\n ></ax-button>\n <ax-button\n look=\"solid\"\n color=\"primary\"\n [text]=\"'save' | translate | async\"\n (onClick)=\"handleSubmitClick()\"\n ></ax-button>\n </ax-suffix>\n</ax-footer>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type:
2264
+ //
2265
+ AXTranslationModule }, { kind: "pipe", type: i3.AXTranslatorPipe, name: "translate" }, { kind: "directive", type: i3.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i4.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i4.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "look", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i4.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i5.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i6.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXSelectBoxModule }, { kind: "component", type: i7.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "ngmodule", type: AXTextAreaModule }, { kind: "component", type: i8.AXTextAreaComponent, selector: "ax-text-area", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "placeholder", "maxLength", "look", "rows", "allowResize", "showCounter", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i10.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXMediaViewerModule }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "component", type: i11.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "functions"], outputs: ["onContextChanged"] }, { kind: "directive", type: i11.AXPWidgetRendererDirective, selector: "[axp-widget-renderer]", inputs: ["parentNode", "index", "mode", "node"], outputs: ["onOptionsChanged", "onValueChanged"], exportAs: ["widgetRenderer"] }] }); }
2266
+ }
2267
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMReportNewIssueComponent, decorators: [{
2268
+ type: Component,
2269
+ args: [{ selector: 'axm-report-new-issue', imports: [
2270
+ CommonModule,
2271
+ FormsModule,
2272
+ //
2273
+ AXTranslationModule,
2274
+ AXFormModule,
2275
+ AXLabelModule,
2276
+ AXTextBoxModule,
2277
+ AXSelectBoxModule,
2278
+ AXTextAreaModule,
2279
+ AXDecoratorModule,
2280
+ AXButtonModule,
2281
+ AXMediaViewerModule,
2282
+ AXPLayoutBuilderModule,
2283
+ ], template: "<div *translate=\"let t\" class=\"ax-p-6\">\n <ax-form #form>\n <div class=\"ax-grid ax-gap-2\">\n <ax-form-field>\n <ax-label>{{ t('report-new-issue.title', { scope: 'issue-management' }) | async }}</ax-label>\n <ax-text-box [(ngModel)]=\"vm.data().title\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t('report-new-issue.issue-type', { scope: 'issue-management' }) | async }}</ax-label>\n <ax-select-box\n valueField=\"id\"\n textField=\"title\"\n [dataSource]=\"issueTypeDataSource\"\n [value]=\"vm.data().issueType\"\n (onValueChanged)=\"handleIssueTypeChange($event)\"\n ></ax-select-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t('report-new-issue.priority', { scope: 'issue-management' }) | async }}</ax-label>\n <ax-select-box\n valueField=\"id\"\n textField=\"title\"\n [dataSource]=\"priorityList\"\n [value]=\"vm.data().priority\"\n (onValueChanged)=\"handlePriorityChange($event)\"\n ></ax-select-box>\n </ax-form-field>\n <ax-form-field>\n <ax-label>{{ t('report-new-issue.description', { scope: 'issue-management' }) | async }}</ax-label>\n <ax-text-area [(ngModel)]=\"vm.data().description\">\n <ax-validation-rule rule=\"required\"></ax-validation-rule>\n </ax-text-area>\n </ax-form-field>\n <ax-form-field>\n <axp-widgets-container class=\"ax-flex ax-flex-col ax-gap-2 ax-p-4\" [context]=\"context\">\n <ng-container axp-widget-renderer [node]=\"attachNode\" [mode]=\"'edit'\"> </ng-container>\n </axp-widgets-container>\n </ax-form-field>\n </div>\n </ax-form>\n <!-- @if(vm.media().length > 0){\n <div class=\"ax-py-4\">\n <ax-content>\n <ax-media-viewer-container #mediaViewer [dataArray]=\"vm.media()\" class=\"ax-block\">\n <ax-header>\n <ax-file-info></ax-file-info>\n <ax-suffix>\n <ax-button class=\"ax-sm\" color=\"danger\" (onClick)=\"onDeleteMediaClick(mediaViewer.getActiveIndex())\">\n <ax-icon class=\"ax-icon ax-icon-trash\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-header>\n <ax-prefix>\n <ax-button (click)=\"mediaViewer.next()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-right\"> </ax-icon>\n </ax-button>\n </ax-prefix>\n <ax-suffix>\n <ax-button (click)=\"mediaViewer.prev()\">\n <ax-icon class=\"ax-icon ax-icon-chevron-left\"> </ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-media-viewer-container>\n </ax-content>\n </div>\n } -->\n <!-- <div>\n <ax-label>{{ t('report-new-issue.attach', { scope: 'issue-management' }) | async }}</ax-label>\n <div\n class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-border ax-border-dashed ax-border-secondary-500 ax-rounded-lg ax-p-6\"\n >\n <div class=\"ax-rounded-full ax-bg-surface ax-px-4 ax-py-3\">\n <ax-icon class=\"fa-solid fa-paperclip ax-text-on-surface ax-text-xl\"></ax-icon>\n </div>\n <p class=\"ax-text-lg ax-text-on-surface\">\n {{ t('report-new-issue.attach-box-description', { scope: 'issue-management' }) | async }}\n </p>\n <ax-button\n class=\"ax-w-fit ax-mt-6\"\n [text]=\"t('report-new-issue.start-capture-screen', { scope: 'issue-management' }) | async\"\n color=\"secondary\"\n (onClick)=\"handleStartRecordingClick()\"\n ></ax-button>\n </div>\n </div> -->\n</div>\n<ax-footer>\n <ax-suffix>\n <ax-button\n look=\"solid\"\n color=\"default\"\n [text]=\"'cancel' | translate | async\"\n (onClick)=\"onCancelClick()\"\n ></ax-button>\n <ax-button\n look=\"solid\"\n color=\"primary\"\n [text]=\"'save' | translate | async\"\n (onClick)=\"handleSubmitClick()\"\n ></ax-button>\n </ax-suffix>\n</ax-footer>\n" }]
2284
+ }], ctorParameters: () => [], propDecorators: { form: [{
2285
+ type: ViewChild,
2286
+ args: [AXFormComponent]
2287
+ }] } });
2288
+
2289
+ var reportNewIssue_component = /*#__PURE__*/Object.freeze({
2290
+ __proto__: null,
2291
+ AXMReportNewIssueComponent: AXMReportNewIssueComponent
2292
+ });
2293
+
2294
+ class AXMShowReportNewIssuePopupeAction extends AXPWorkflowAction {
2295
+ constructor() {
2296
+ super(...arguments);
2297
+ this.popupService = inject(AXPopupService);
2298
+ this.vm = inject(AXMReportNewIssueViewModel);
2299
+ }
2300
+ async execute() {
2301
+ await this.vm.showPopup();
2302
+ }
2303
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMShowReportNewIssuePopupeAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2304
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMShowReportNewIssuePopupeAction }); }
2305
+ }
2306
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMShowReportNewIssuePopupeAction, decorators: [{
2307
+ type: Injectable
2308
+ }] });
2309
+ const AXMShowReportNewIssueWorkflow = {
2310
+ startStepId: 'show-popup',
2311
+ steps: {
2312
+ 'show-popup': {
2313
+ action: 'AXMShowReportNewIssuePopupeAction',
2314
+ },
2315
+ },
2316
+ };
2317
+
2318
+ class AXMMenuProvider {
2319
+ constructor() {
2320
+ this.entityService = inject(AXPEntityService);
2321
+ }
2322
+ async provide(context) {
2323
+ const scope = RootConfig.config.i18n;
2324
+ const module = RootConfig.module;
2325
+ context.addItems([
2326
+ {
2327
+ name: 'app-issue',
2328
+ priority: 9001,
2329
+ text: `t('issue-management', {scope:"${scope}"})`,
2330
+ icon: module.icon,
2331
+ children: [
2332
+ {
2333
+ name: 'my-reported-issues',
2334
+ text: RootConfig.entities.myReportedIssues.title,
2335
+ icon: RootConfig.entities.myReportedIssues.icon,
2336
+ path: this.entityService.createPath(RootConfig.module.name, RootConfig.entities.myReportedIssues.name),
2337
+ priority: 1000,
2338
+ },
2339
+ {
2340
+ name: 'app-report-issue',
2341
+ text: RootConfig.entities.reportNewIssue.title,
2342
+ icon: RootConfig.entities.reportNewIssue.icon,
2343
+ command: {
2344
+ name: 'show-report-issue',
2345
+ },
2346
+ priority: 1001,
2347
+ },
2348
+ {
2349
+ priority: 9008,
2350
+ text: RootConfig.entities.reportedIssues.title,
2351
+ path: this.entityService.createPath(RootConfig.module.name, RootConfig.entities.reportedIssues.name),
2352
+ icon: RootConfig.entities.reportedIssues.icon,
2353
+ },
2354
+ {
2355
+ priority: 9009,
2356
+ text: RootConfig.entities.issueType.title,
2357
+ path: this.entityService.createPath(RootConfig.module.name, RootConfig.entities.issueType.name),
2358
+ icon: RootConfig.entities.issueType.icon,
2359
+ },
2360
+ ],
2361
+ },
2362
+ ]);
2363
+ }
2364
+ }
2365
+
2366
+ class AXMSettingProvider {
2367
+ async provide(context) {
2368
+ // context
2369
+ // // Add Form Template Group
2370
+ // .addGroup('form-template', 'Form Template', 'Settings related to form templates.', RootConfig.module.icon)
2371
+ // // Start Interface Section
2372
+ // .addSection('interface', 'UI Interface', 'Customize the user interface for forms.')
2373
+ // .addSetting({
2374
+ // key: 'history-panel',
2375
+ // title: 'Show History Panel',
2376
+ // scope: 'U',
2377
+ // isInherited: true,
2378
+ // defaultValue: false,
2379
+ // widget: {
2380
+ // type: AXPWidgetsCatalog.toggle,
2381
+ // },
2382
+ // description: 'Enable or disable the history panel for forms.',
2383
+ // validationRules: [
2384
+ // {
2385
+ // rule: 'required',
2386
+ // },
2387
+ // ],
2388
+ // })
2389
+ // .endSection()
2390
+ // .endGroup();
2391
+ }
2392
+ }
2393
+
2394
+ class AXMIssueManagementModule {
2395
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMIssueManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2396
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.3", ngImport: i0, type: AXMIssueManagementModule, imports: [i1$1.AXPWorkflowModule] }); }
2397
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMIssueManagementModule, providers: [
2398
+ {
2399
+ provide: AXMIssueTypeService,
2400
+ useClass: AXMIssueTypeServiceImpl,
2401
+ },
2402
+ {
2403
+ provide: AXMReportedIssuesService,
2404
+ useClass: AXMReportedIssuesServiceImpl,
2405
+ },
2406
+ {
2407
+ provide: AXMMyReportedIssuesService,
2408
+ useClass: AXMMyReportedIssuesServiceImpl,
2409
+ },
2410
+ {
2411
+ provide: AXP_MENU_PROVIDER,
2412
+ useClass: AXMMenuProvider,
2413
+ multi: true,
2414
+ },
2415
+ {
2416
+ provide: AXP_ENTITY_DEFINITION_LOADER,
2417
+ useClass: AXMEntityProvider,
2418
+ multi: true,
2419
+ },
2420
+ {
2421
+ provide: AXP_SETTING_DEFINITION_PROVIDER,
2422
+ useClass: AXMSettingProvider,
2423
+ multi: true,
2424
+ },
2425
+ ], imports: [AXPWorkflowModule.forChild({
2426
+ actions: {
2427
+ AXMShowReportNewIssuePopupeAction: AXMShowReportNewIssuePopupeAction,
2428
+ },
2429
+ workflows: {
2430
+ 'show-report-issue': AXMShowReportNewIssueWorkflow,
2431
+ },
2432
+ })] }); }
2433
+ }
2434
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXMIssueManagementModule, decorators: [{
2435
+ type: NgModule,
2436
+ args: [{
2437
+ imports: [
2438
+ AXPWorkflowModule.forChild({
2439
+ actions: {
2440
+ AXMShowReportNewIssuePopupeAction: AXMShowReportNewIssuePopupeAction,
2441
+ },
2442
+ workflows: {
2443
+ 'show-report-issue': AXMShowReportNewIssueWorkflow,
2444
+ },
2445
+ }),
2446
+ ],
2447
+ exports: [],
2448
+ declarations: [],
2449
+ providers: [
2450
+ {
2451
+ provide: AXMIssueTypeService,
2452
+ useClass: AXMIssueTypeServiceImpl,
2453
+ },
2454
+ {
2455
+ provide: AXMReportedIssuesService,
2456
+ useClass: AXMReportedIssuesServiceImpl,
2457
+ },
2458
+ {
2459
+ provide: AXMMyReportedIssuesService,
2460
+ useClass: AXMMyReportedIssuesServiceImpl,
2461
+ },
2462
+ {
2463
+ provide: AXP_MENU_PROVIDER,
2464
+ useClass: AXMMenuProvider,
2465
+ multi: true,
2466
+ },
2467
+ {
2468
+ provide: AXP_ENTITY_DEFINITION_LOADER,
2469
+ useClass: AXMEntityProvider,
2470
+ multi: true,
2471
+ },
2472
+ {
2473
+ provide: AXP_SETTING_DEFINITION_PROVIDER,
2474
+ useClass: AXMSettingProvider,
2475
+ multi: true,
2476
+ },
2477
+ ],
2478
+ }]
2479
+ }] });
2480
+
2481
+ /**
2482
+ * Generated bundle index. Do not edit.
2483
+ */
2484
+
2485
+ export { AXMCaptureScreenService as A, RootConfig as R, AXMIssueTypeService as a, AXMIssueTypeServiceImpl as b, AXMMyReportedIssuesService as c, AXMMyReportedIssuesServiceImpl as d, AXMReportedIssuesService as e, AXMReportedIssuesServiceImpl as f, AXMEntityProvider as g, AXMIssueManagementModule as h, issueTypeEntityFactory as i, AXMMenuProvider as j, AXMSettingProvider as k, myReportedIssuesEntityFactory as m, reportedIssuesEntityFactory as r };
2486
+ //# sourceMappingURL=acorex-modules-issue-management-acorex-modules-issue-management-DhuDuKkz.mjs.map