@acorex/modules 20.2.0-next.0 → 20.2.0-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/auth/index.d.ts +58 -4
- package/calendar-management/index.d.ts +47 -26
- package/conversation/README.md +1 -1
- package/conversation/index.d.ts +117 -71
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-y6rICHrT.mjs → acorex-modules-auth-acorex-modules-auth-BxqN76H7.mjs} +232 -84
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-BxqN76H7.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-Cpy0VN6n.mjs → acorex-modules-auth-app-chooser.component-5FbgqbVo.mjs} +6 -4
- package/fesm2022/acorex-modules-auth-app-chooser.component-5FbgqbVo.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-login.module-ZEX4NMuJ.mjs → acorex-modules-auth-login.module-CmMM4TpQ.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-login.module-ZEX4NMuJ.mjs.map → acorex-modules-auth-login.module-CmMM4TpQ.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-master.layout-D-lIn4Pl.mjs → acorex-modules-auth-master.layout-eX5-7AeO.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-master.layout-D-lIn4Pl.mjs.map → acorex-modules-auth-master.layout-eX5-7AeO.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-oauth-callback.component-C9s-5c7F.mjs +97 -0
- package/fesm2022/acorex-modules-auth-oauth-callback.component-C9s-5c7F.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-password.component-CafZfqKe.mjs → acorex-modules-auth-password.component-CDrYHh1x.mjs} +7 -7
- package/fesm2022/{acorex-modules-auth-password.component-CafZfqKe.mjs.map → acorex-modules-auth-password.component-CDrYHh1x.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-password.component-r_Lh8oGN.mjs +226 -0
- package/fesm2022/acorex-modules-auth-password.component-r_Lh8oGN.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-routes-D9-qfC3V.mjs → acorex-modules-auth-routes-CMdsDZud.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-D9-qfC3V.mjs.map → acorex-modules-auth-routes-CMdsDZud.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-tenant-chooser.component-B1aE-TOD.mjs → acorex-modules-auth-tenant-chooser.component-BdK5T-8X.mjs} +19 -10
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-BdK5T-8X.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-BglerlU-.mjs → acorex-modules-auth-two-factor-code.component-DSWd06bn.mjs} +6 -6
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-BglerlU-.mjs.map → acorex-modules-auth-two-factor-code.component-DSWd06bn.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-D3N2XyOH.mjs → acorex-modules-auth-two-factor.module-YV9pDOnB.mjs} +3 -3
- package/fesm2022/{acorex-modules-auth-two-factor.module-D3N2XyOH.mjs.map → acorex-modules-auth-two-factor.module-YV9pDOnB.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-user-sessions.component-KI9dYs78.mjs +135 -0
- package/fesm2022/acorex-modules-auth-user-sessions.component-KI9dYs78.mjs.map +1 -0
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-calendar-management.mjs +353 -315
- package/fesm2022/acorex-modules-calendar-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-common-acorex-modules-common-DQESb8jf.mjs → acorex-modules-common-acorex-modules-common-D06CT4CO.mjs} +6 -16
- package/fesm2022/acorex-modules-common-acorex-modules-common-D06CT4CO.mjs.map +1 -0
- package/fesm2022/{acorex-modules-common-search-popup.component-CpFvcrxw.mjs → acorex-modules-common-search-popup.component-DbTj01Wz.mjs} +2 -2
- package/fesm2022/{acorex-modules-common-search-popup.component-CpFvcrxw.mjs.map → acorex-modules-common-search-popup.component-DbTj01Wz.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-common-settings.provider-ha75F6g5.mjs → acorex-modules-common-settings.provider-DPVsF4c9.mjs} +2 -2
- package/fesm2022/{acorex-modules-common-settings.provider-ha75F6g5.mjs.map → acorex-modules-common-settings.provider-DPVsF4c9.mjs.map} +1 -1
- package/fesm2022/acorex-modules-common.mjs +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +282 -204
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/acorex-modules-dashboard-management.mjs +1 -1
- package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-data-management.mjs +3 -3
- package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-B4Jd-KGV.mjs → acorex-modules-document-management-acorex-modules-document-management-C7ot6PfT.mjs} +411 -51
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-C7ot6PfT.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-Bp4kKjC4.mjs → acorex-modules-document-management-attachment-widget.component-C6pop0RM.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-Bp4kKjC4.mjs.map → acorex-modules-document-management-attachment-widget.component-C6pop0RM.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-12aUAucS.mjs → acorex-modules-document-management-create-folder-dialog.component-ga7fuY4H.mjs} +4 -4
- package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-ga7fuY4H.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-details-view.component-bzA7fJZW.mjs → acorex-modules-document-management-details-view.component-CzTg3hha.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-details-view.component-bzA7fJZW.mjs.map → acorex-modules-document-management-details-view.component-CzTg3hha.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-DLJdJzp1.mjs → acorex-modules-document-management-drive-choose.component-BB5d32EI.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-DLJdJzp1.mjs.map → acorex-modules-document-management-drive-choose.component-BB5d32EI.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive.component-DrkSd6Rv.mjs → acorex-modules-document-management-drive.component-TzRLr7rb.mjs} +7 -7
- package/fesm2022/{acorex-modules-document-management-drive.component-DrkSd6Rv.mjs.map → acorex-modules-document-management-drive.component-TzRLr7rb.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DV8oWdDh.mjs → acorex-modules-document-management-large-icons-view.component-BeKFvgYU.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DV8oWdDh.mjs.map → acorex-modules-document-management-large-icons-view.component-BeKFvgYU.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-Bgr9s_zf.mjs → acorex-modules-document-management-large-tiles-view.component-CQyiGE99.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-Bgr9s_zf.mjs.map → acorex-modules-document-management-large-tiles-view.component-CQyiGE99.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-link-dialog.component-CSEIhT4P.mjs → acorex-modules-document-management-link-dialog.component-CPuOuvu-.mjs} +2 -2
- package/fesm2022/acorex-modules-document-management-link-dialog.component-CPuOuvu-.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-list-view.component-Dz6ymqrq.mjs → acorex-modules-document-management-list-view.component-CWGGArxw.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-list-view.component-Dz6ymqrq.mjs.map → acorex-modules-document-management-list-view.component-CWGGArxw.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-DYJN-4Pe.mjs → acorex-modules-document-management-meta-choose-popup.component-C7ounW6N.mjs} +8 -9
- package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-C7ounW6N.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-CN7HVQLu.mjs → acorex-modules-document-management-permission-definition.provider-s0P0M8p2.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-CN7HVQLu.mjs.map → acorex-modules-document-management-permission-definition.provider-s0P0M8p2.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-C_dsLLMb.mjs → acorex-modules-document-management-rename-node-dialog.component-MPkYZl2p.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-C_dsLLMb.mjs.map → acorex-modules-document-management-rename-node-dialog.component-MPkYZl2p.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-share-dialog.component-CBrf7hjZ.mjs → acorex-modules-document-management-share-dialog.component-CLF6b1Io.mjs} +2 -2
- package/fesm2022/acorex-modules-document-management-share-dialog.component-CLF6b1Io.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-D3WcHAOf.mjs → acorex-modules-document-management-share-email-dialog.component-B8zNvOUv.mjs} +2 -2
- package/fesm2022/acorex-modules-document-management-share-email-dialog.component-B8zNvOUv.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-wvFkjOqg.mjs → acorex-modules-document-management-small-icons-view.component-DRVLlW1e.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-wvFkjOqg.mjs.map → acorex-modules-document-management-small-icons-view.component-DRVLlW1e.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-C4ARGOZR.mjs → acorex-modules-document-management-small-tiles-view.component-C1E8RKYM.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-C4ARGOZR.mjs.map → acorex-modules-document-management-small-tiles-view.component-C1E8RKYM.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management.mjs +1 -1
- package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-B8ZVc-0b.mjs → acorex-modules-issue-management-acorex-modules-issue-management-ITP4K-tZ.mjs} +3 -3
- package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-B8ZVc-0b.mjs.map → acorex-modules-issue-management-acorex-modules-issue-management-ITP4K-tZ.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-issue-management-capture-screen.component-D1vapaJC.mjs → acorex-modules-issue-management-capture-screen.component-C1USFJeP.mjs} +2 -2
- package/fesm2022/{acorex-modules-issue-management-capture-screen.component-D1vapaJC.mjs.map → acorex-modules-issue-management-capture-screen.component-C1USFJeP.mjs.map} +1 -1
- package/fesm2022/acorex-modules-issue-management.mjs +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +109 -28
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-organization-management-add-item.component-DsDk5cyO.mjs → acorex-modules-organization-management-add-item.component-Dr-bwC4K.mjs} +2 -2
- package/fesm2022/acorex-modules-organization-management-add-item.component-Dr-bwC4K.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-management-branch.entity-CHp5WtIF.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-department.entity-BxCyXNtv.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-division.entity-DzQT2jpz.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-employee.entity-CSY_U9Bl.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-employment-type.entity-h9Hua7Xe.mjs.map +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart.page-DWQ-5NF_.mjs → acorex-modules-organization-management-org-chart.page-CXhtYrCS.mjs} +2 -2
- package/fesm2022/{acorex-modules-organization-management-org-chart.page-DWQ-5NF_.mjs.map → acorex-modules-organization-management-org-chart.page-CXhtYrCS.mjs.map} +1 -1
- package/fesm2022/acorex-modules-organization-management-position-category.entity-CIir9UMg.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-position.entity-BpkjUsoZ.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-responsibility-category.entity-tJFpEylO.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-responsibility.entity-DmKSoxpL.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-role-category.entity-CAljzQcH.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-skill-category.entity-iIbc-pjJ.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-skill.entity-DoAsCzm9.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-team.entity-DMCfAZsr.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management.mjs +2 -2
- package/fesm2022/acorex-modules-platform-management.mjs +43 -19
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-project-management.mjs +48 -38
- package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-report-management-report-create-root.component-DgouOz2M.mjs → acorex-modules-report-management-report-create-root.component-Cv88TDx7.mjs} +2 -2
- package/fesm2022/acorex-modules-report-management-report-create-root.component-Cv88TDx7.mjs.map +1 -0
- package/fesm2022/acorex-modules-report-management.mjs +1 -1
- package/fesm2022/acorex-modules-security-management.mjs +753 -217
- package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-workflow-management-acorex-modules-workflow-management-DnSdOSmj.mjs +213 -0
- package/fesm2022/acorex-modules-workflow-management-acorex-modules-workflow-management-DnSdOSmj.mjs.map +1 -0
- package/fesm2022/{acorex-modules-workflow-management-task-board.page-BoG_tFGn.mjs → acorex-modules-workflow-management-task-board.page-Bzu4j4VW.mjs} +21 -20
- package/fesm2022/acorex-modules-workflow-management-task-board.page-Bzu4j4VW.mjs.map +1 -0
- package/fesm2022/acorex-modules-workflow-management.mjs +1 -143
- package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
- package/notification-management/index.d.ts +69 -59
- package/package.json +9 -9
- package/security-management/index.d.ts +13 -4
- package/workflow-management/index.d.ts +11 -2
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-y6rICHrT.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-app-chooser.component-Cpy0VN6n.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-password.component-DLCb0_6e.mjs +0 -134
- package/fesm2022/acorex-modules-auth-password.component-DLCb0_6e.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-B1aE-TOD.mjs.map +0 -1
- package/fesm2022/acorex-modules-common-acorex-modules-common-DQESb8jf.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-B4Jd-KGV.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-create-folder-dialog.component-12aUAucS.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-link-dialog.component-CSEIhT4P.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-meta-choose-popup.component-DYJN-4Pe.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-share-dialog.component-CBrf7hjZ.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-share-email-dialog.component-D3WcHAOf.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-management-add-item.component-DsDk5cyO.mjs.map +0 -1
- package/fesm2022/acorex-modules-report-management-report-create-root.component-DgouOz2M.mjs.map +0 -1
- package/fesm2022/acorex-modules-workflow-management-task-board.page-BoG_tFGn.mjs.map +0 -1
|
@@ -8,7 +8,7 @@ import * as i1 from '@angular/common';
|
|
|
8
8
|
import { CommonModule } from '@angular/common';
|
|
9
9
|
import * as i0 from '@angular/core';
|
|
10
10
|
import { inject, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
|
|
11
|
-
import { A as AXMCaptureScreenService } from './acorex-modules-issue-management-acorex-modules-issue-management-
|
|
11
|
+
import { A as AXMCaptureScreenService } from './acorex-modules-issue-management-acorex-modules-issue-management-ITP4K-tZ.mjs';
|
|
12
12
|
import * as i5 from '@acorex/core/format';
|
|
13
13
|
import { AXFormatModule } from '@acorex/core/format';
|
|
14
14
|
|
|
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
|
|
|
25
25
|
}] });
|
|
26
26
|
|
|
27
27
|
export { AXMCaptureScreenComponent };
|
|
28
|
-
//# sourceMappingURL=acorex-modules-issue-management-capture-screen.component-
|
|
28
|
+
//# sourceMappingURL=acorex-modules-issue-management-capture-screen.component-C1USFJeP.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-modules-issue-management-capture-screen.component-D1vapaJC.mjs","sources":["../tmp-esm2022/issue-management/lib/components/capture-screen/components/capture-screen-component/capture-screen.component.js"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { AXMCaptureScreenService } from '../../services/capture-screen.service';\nimport { AXFormatModule } from '@acorex/core/format';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/decorators\";\nimport * as i4 from \"@acorex/components/loading\";\nimport * as i5 from \"@acorex/core/format\";\nexport class AXMCaptureScreenComponent {\n constructor() {\n this.vm = inject(AXMCaptureScreenService);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.3\", ngImport: i0, type: AXMCaptureScreenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.3\", type: AXMCaptureScreenComponent, isStandalone: true, selector: \"axm-capture-screen\", ngImport: i0, template: \"<div\\r\\n class=\\\"ax-transition-all ax-flex ax-items-center ax-gap-4 ax-w-fit ax-bg-surface ax-border ax-border-lighter ax-shadow-md ax-rounded-full ax-fixed ax-bottom-4 ax-right-4 ax-z-10\\\"\\r\\n>\\r\\n <section\\r\\n class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-4\\\"\\r\\n [ngClass]=\\\"{ 'screenshot-hidden': vm.captureMode() === 'video' }\\\"\\r\\n >\\r\\n <ax-button look=\\\"outline\\\" color=\\\"primary\\\" class=\\\"ax-lg ax-rounded-full\\\" (onClick)=\\\"vm.screenshotClick()\\\">\\r\\n @if (vm.loading()) {\\r\\n <ax-loading></ax-loading>\\r\\n } @else {\\r\\n <ax-prefix>\\r\\n <ax-icon class=\\\"fa-regular fa-camera\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n }\\r\\n </ax-button>\\r\\n <ax-button\\r\\n look=\\\"blank\\\"\\r\\n class=\\\"ax-lg ax-rounded-full\\\"\\r\\n [ngClass]=\\\"{ 'recordVideo-move': vm.captureMode() === 'video' }\\\"\\r\\n (onClick)=\\\"vm.changeCaptureMode()\\\"\\r\\n >\\r\\n <ax-prefix>\\r\\n <ax-icon class=\\\"fa-regular fa-video\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n </ax-button>\\r\\n </section>\\r\\n <section\\r\\n class=\\\"ax-hidden ax-items-center ax-justify-center ax-gap-8\\\"\\r\\n [ngClass]=\\\"{ '!ax-flex recordContainer-show': vm.captureMode() === 'video' }\\\"\\r\\n >\\r\\n <div class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-2\\\">\\r\\n <ax-button look=\\\"outline\\\" color=\\\"danger\\\" class=\\\"ax-lg ax-rounded-full\\\" (onClick)=\\\"vm.recordScreenClick()\\\">\\r\\n <ax-prefix class=\\\"ax-relative\\\">\\r\\n @if (vm.isRecording()) {\\r\\n <ax-icon\\r\\n class=\\\"fa-solid fa-circle ax-absolute ax-animate-twPing ax-animate-infinite ax-animate-duration-[1500ms] ax-text-danger-400 ax-opacity-75\\\"\\r\\n ></ax-icon>\\r\\n }\\r\\n <ax-icon class=\\\"fa-solid fa-circle\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n </ax-button>\\r\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\" (onClick)=\\\"vm.mutedClick()\\\">\\r\\n <ax-prefix\\r\\n ><ax-icon class=\\\"fa-solid {{ vm.muted() ? 'fa-microphone' : 'fa-microphone-slash' }}\\\"></ax-icon\\r\\n ></ax-prefix>\\r\\n </ax-button>\\r\\n </div>\\r\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\r\\n <p>\\r\\n {{ vm.timer().minute | format: 'number' : { zeroPadLength: 2 } | async }} :\\r\\n {{ vm.timer().second | format: 'number' : { zeroPadLength: 2 } | async }}\\r\\n </p>\\r\\n </div>\\r\\n </section>\\r\\n <ax-button look=\\\"blank\\\" class=\\\"ax-rounded-full\\\" (onClick)=\\\"vm.cancelClick()\\\">\\r\\n <ax-prefix><ax-icon class=\\\"fa-solid fa-xmark\\\"></ax-icon></ax-prefix>\\r\\n </ax-button>\\r\\n</div>\\r\\n\", styles: [\"@keyframes hideScreenshotContainer{0%{opacity:1;position:absolute}to{opacity:0;position:absolute;display:none}}@keyframes moveRecordButton{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(-100px) rotate(360deg);opacity:0}}@keyframes showRecordContainer{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.screenshot-hidden{animation:hideScreenshotContainer .2s forwards}.recordVideo-move{animation:moveRecordButton .5s forwards}.recordContainer-show{animation:showRecordContainer .5s forwards}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i2.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: AXDecoratorModule }, { kind: \"component\", type: i3.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i3.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: AXLoadingModule }, { kind: \"component\", type: i4.AXLoadingComponent, selector: \"ax-loading\", inputs: [\"visible\", \"type\", \"context\"], outputs: [\"visibleChange\"] }, { kind: \"ngmodule\", type: AXFormatModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i5.AXFormatPipe, name: \"format\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.3\", ngImport: i0, type: AXMCaptureScreenComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-capture-screen', imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXLoadingModule, AXFormatModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: \"<div\\r\\n class=\\\"ax-transition-all ax-flex ax-items-center ax-gap-4 ax-w-fit ax-bg-surface ax-border ax-border-lighter ax-shadow-md ax-rounded-full ax-fixed ax-bottom-4 ax-right-4 ax-z-10\\\"\\r\\n>\\r\\n <section\\r\\n class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-4\\\"\\r\\n [ngClass]=\\\"{ 'screenshot-hidden': vm.captureMode() === 'video' }\\\"\\r\\n >\\r\\n <ax-button look=\\\"outline\\\" color=\\\"primary\\\" class=\\\"ax-lg ax-rounded-full\\\" (onClick)=\\\"vm.screenshotClick()\\\">\\r\\n @if (vm.loading()) {\\r\\n <ax-loading></ax-loading>\\r\\n } @else {\\r\\n <ax-prefix>\\r\\n <ax-icon class=\\\"fa-regular fa-camera\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n }\\r\\n </ax-button>\\r\\n <ax-button\\r\\n look=\\\"blank\\\"\\r\\n class=\\\"ax-lg ax-rounded-full\\\"\\r\\n [ngClass]=\\\"{ 'recordVideo-move': vm.captureMode() === 'video' }\\\"\\r\\n (onClick)=\\\"vm.changeCaptureMode()\\\"\\r\\n >\\r\\n <ax-prefix>\\r\\n <ax-icon class=\\\"fa-regular fa-video\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n </ax-button>\\r\\n </section>\\r\\n <section\\r\\n class=\\\"ax-hidden ax-items-center ax-justify-center ax-gap-8\\\"\\r\\n [ngClass]=\\\"{ '!ax-flex recordContainer-show': vm.captureMode() === 'video' }\\\"\\r\\n >\\r\\n <div class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-2\\\">\\r\\n <ax-button look=\\\"outline\\\" color=\\\"danger\\\" class=\\\"ax-lg ax-rounded-full\\\" (onClick)=\\\"vm.recordScreenClick()\\\">\\r\\n <ax-prefix class=\\\"ax-relative\\\">\\r\\n @if (vm.isRecording()) {\\r\\n <ax-icon\\r\\n class=\\\"fa-solid fa-circle ax-absolute ax-animate-twPing ax-animate-infinite ax-animate-duration-[1500ms] ax-text-danger-400 ax-opacity-75\\\"\\r\\n ></ax-icon>\\r\\n }\\r\\n <ax-icon class=\\\"fa-solid fa-circle\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n </ax-button>\\r\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\" (onClick)=\\\"vm.mutedClick()\\\">\\r\\n <ax-prefix\\r\\n ><ax-icon class=\\\"fa-solid {{ vm.muted() ? 'fa-microphone' : 'fa-microphone-slash' }}\\\"></ax-icon\\r\\n ></ax-prefix>\\r\\n </ax-button>\\r\\n </div>\\r\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\r\\n <p>\\r\\n {{ vm.timer().minute | format: 'number' : { zeroPadLength: 2 } | async }} :\\r\\n {{ vm.timer().second | format: 'number' : { zeroPadLength: 2 } | async }}\\r\\n </p>\\r\\n </div>\\r\\n </section>\\r\\n <ax-button look=\\\"blank\\\" class=\\\"ax-rounded-full\\\" (onClick)=\\\"vm.cancelClick()\\\">\\r\\n <ax-prefix><ax-icon class=\\\"fa-solid fa-xmark\\\"></ax-icon></ax-prefix>\\r\\n </ax-button>\\r\\n</div>\\r\\n\", styles: [\"@keyframes hideScreenshotContainer{0%{opacity:1;position:absolute}to{opacity:0;position:absolute;display:none}}@keyframes moveRecordButton{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(-100px) rotate(360deg);opacity:0}}@keyframes showRecordContainer{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.screenshot-hidden{animation:hideScreenshotContainer .2s forwards}.recordVideo-move{animation:moveRecordButton .5s forwards}.recordContainer-show{animation:showRecordContainer .5s forwards}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwdHVyZS1zY3JlZW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2lzc3VlLW1hbmFnZW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2NhcHR1cmUtc2NyZWVuL2NvbXBvbmVudHMvY2FwdHVyZS1zY3JlZW4tY29tcG9uZW50L2NhcHR1cmUtc2NyZWVuLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9pc3N1ZS1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9jYXB0dXJlLXNjcmVlbi9jb21wb25lbnRzL2NhcHR1cmUtc2NyZWVuLWNvbXBvbmVudC9jYXB0dXJlLXNjcmVlbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFXckQsTUFBTSxPQUFPLHlCQUF5QjtJQVJ0QztRQVNZLE9BQUUsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztLQUNoRDs4R0FGWSx5QkFBeUI7a0dBQXpCLHlCQUF5Qiw4RUNqQnRDLHVqRkEyREEsMmtCRDlDWSxZQUFZLDRIQUFFLGNBQWMsNlhBQUUsaUJBQWlCLHNWQUFFLGVBQWUsOEtBQUUsY0FBYzs7MkZBSS9FLHlCQUF5QjtrQkFSckMsU0FBUzsrQkFDRSxvQkFBb0IsV0FHckIsQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxjQUFjLENBQUMsaUJBQzVFLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNQ2FwdHVyZVNjcmVlblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jYXB0dXJlLXNjcmVlbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFYRm9ybWF0TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhtLWNhcHR1cmUtc2NyZWVuJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcHR1cmUtc2NyZWVuLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2FwdHVyZS1zY3JlZW4uY29tcG9uZW50LnNjc3MnXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQVhCdXR0b25Nb2R1bGUsIEFYRGVjb3JhdG9yTW9kdWxlLCBBWExvYWRpbmdNb2R1bGUsIEFYRm9ybWF0TW9kdWxlXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEFYTUNhcHR1cmVTY3JlZW5Db21wb25lbnQge1xuICBwcm90ZWN0ZWQgdm0gPSBpbmplY3QoQVhNQ2FwdHVyZVNjcmVlblNlcnZpY2UpO1xufVxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiYXgtdHJhbnNpdGlvbi1hbGwgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTQgYXgtdy1maXQgYXgtYmctc3VyZmFjZSBheC1ib3JkZXIgYXgtYm9yZGVyLWxpZ2h0ZXIgYXgtc2hhZG93LW1kIGF4LXJvdW5kZWQtZnVsbCBheC1maXhlZCBheC1ib3R0b20tNCBheC1yaWdodC00IGF4LXotMTBcIlxyXG4+XHJcbiAgPHNlY3Rpb25cclxuICAgIGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXIgYXgtZ2FwLTRcIlxyXG4gICAgW25nQ2xhc3NdPVwieyAnc2NyZWVuc2hvdC1oaWRkZW4nOiB2bS5jYXB0dXJlTW9kZSgpID09PSAndmlkZW8nIH1cIlxyXG4gID5cclxuICAgIDxheC1idXR0b24gbG9vaz1cIm91dGxpbmVcIiBjb2xvcj1cInByaW1hcnlcIiBjbGFzcz1cImF4LWxnIGF4LXJvdW5kZWQtZnVsbFwiIChvbkNsaWNrKT1cInZtLnNjcmVlbnNob3RDbGljaygpXCI+XHJcbiAgICAgIEBpZiAodm0ubG9hZGluZygpKSB7XHJcbiAgICAgICAgPGF4LWxvYWRpbmc+PC9heC1sb2FkaW5nPlxyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8YXgtcHJlZml4PlxyXG4gICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJmYS1yZWd1bGFyIGZhLWNhbWVyYVwiPjwvYXgtaWNvbj5cclxuICAgICAgICA8L2F4LXByZWZpeD5cclxuICAgICAgfVxyXG4gICAgPC9heC1idXR0b24+XHJcbiAgICA8YXgtYnV0dG9uXHJcbiAgICAgIGxvb2s9XCJibGFua1wiXHJcbiAgICAgIGNsYXNzPVwiYXgtbGcgYXgtcm91bmRlZC1mdWxsXCJcclxuICAgICAgW25nQ2xhc3NdPVwieyAncmVjb3JkVmlkZW8tbW92ZSc6IHZtLmNhcHR1cmVNb2RlKCkgPT09ICd2aWRlbycgfVwiXHJcbiAgICAgIChvbkNsaWNrKT1cInZtLmNoYW5nZUNhcHR1cmVNb2RlKClcIlxyXG4gICAgPlxyXG4gICAgICA8YXgtcHJlZml4PlxyXG4gICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtcmVndWxhciBmYS12aWRlb1wiPjwvYXgtaWNvbj5cclxuICAgICAgPC9heC1wcmVmaXg+XHJcbiAgICA8L2F4LWJ1dHRvbj5cclxuICA8L3NlY3Rpb24+XHJcbiAgPHNlY3Rpb25cclxuICAgIGNsYXNzPVwiYXgtaGlkZGVuIGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlciBheC1nYXAtOFwiXHJcbiAgICBbbmdDbGFzc109XCJ7ICchYXgtZmxleCByZWNvcmRDb250YWluZXItc2hvdyc6IHZtLmNhcHR1cmVNb2RlKCkgPT09ICd2aWRlbycgfVwiXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LWdhcC0yXCI+XHJcbiAgICAgIDxheC1idXR0b24gbG9vaz1cIm91dGxpbmVcIiBjb2xvcj1cImRhbmdlclwiIGNsYXNzPVwiYXgtbGcgYXgtcm91bmRlZC1mdWxsXCIgKG9uQ2xpY2spPVwidm0ucmVjb3JkU2NyZWVuQ2xpY2soKVwiPlxyXG4gICAgICAgIDxheC1wcmVmaXggY2xhc3M9XCJheC1yZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgQGlmICh2bS5pc1JlY29yZGluZygpKSB7XHJcbiAgICAgICAgICAgIDxheC1pY29uXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmYS1zb2xpZCBmYS1jaXJjbGUgYXgtYWJzb2x1dGUgYXgtYW5pbWF0ZS10d1BpbmcgYXgtYW5pbWF0ZS1pbmZpbml0ZSBheC1hbmltYXRlLWR1cmF0aW9uLVsxNTAwbXNdIGF4LXRleHQtZGFuZ2VyLTQwMCBheC1vcGFjaXR5LTc1XCJcclxuICAgICAgICAgICAgPjwvYXgtaWNvbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtc29saWQgZmEtY2lyY2xlXCI+PC9heC1pY29uPlxyXG4gICAgICAgIDwvYXgtcHJlZml4PlxyXG4gICAgICA8L2F4LWJ1dHRvbj5cclxuICAgICAgPGF4LWJ1dHRvbiBsb29rPVwiYmxhbmtcIiBjbGFzcz1cImF4LXNtXCIgKG9uQ2xpY2spPVwidm0ubXV0ZWRDbGljaygpXCI+XHJcbiAgICAgICAgPGF4LXByZWZpeFxyXG4gICAgICAgICAgPjxheC1pY29uIGNsYXNzPVwiZmEtc29saWQge3sgdm0ubXV0ZWQoKSA/ICdmYS1taWNyb3Bob25lJyA6ICdmYS1taWNyb3Bob25lLXNsYXNoJyB9fVwiPjwvYXgtaWNvblxyXG4gICAgICAgID48L2F4LXByZWZpeD5cclxuICAgICAgPC9heC1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxyXG4gICAgICA8cD5cclxuICAgICAgICB7eyB2bS50aW1lcigpLm1pbnV0ZSB8IGZvcm1hdDogJ251bWJlcicgOiB7IHplcm9QYWRMZW5ndGg6IDIgfSB8IGFzeW5jIH19IDpcclxuICAgICAgICB7eyB2bS50aW1lcigpLnNlY29uZCB8IGZvcm1hdDogJ251bWJlcicgOiB7IHplcm9QYWRMZW5ndGg6IDIgfSB8IGFzeW5jIH19XHJcbiAgICAgIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gIDwvc2VjdGlvbj5cclxuICA8YXgtYnV0dG9uIGxvb2s9XCJibGFua1wiIGNsYXNzPVwiYXgtcm91bmRlZC1mdWxsXCIgKG9uQ2xpY2spPVwidm0uY2FuY2VsQ2xpY2soKVwiPlxyXG4gICAgPGF4LXByZWZpeD48YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLXhtYXJrXCI+PC9heC1pY29uPjwvYXgtcHJlZml4PlxyXG4gIDwvYXgtYnV0dG9uPlxyXG48L2Rpdj5cclxuIl19"],"names":["i2","i3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-modules-issue-management-capture-screen.component-C1USFJeP.mjs","sources":["../tmp-esm2022/issue-management/lib/components/capture-screen/components/capture-screen-component/capture-screen.component.js"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { AXMCaptureScreenService } from '../../services/capture-screen.service';\nimport { AXFormatModule } from '@acorex/core/format';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/decorators\";\nimport * as i4 from \"@acorex/components/loading\";\nimport * as i5 from \"@acorex/core/format\";\nexport class AXMCaptureScreenComponent {\n constructor() {\n this.vm = inject(AXMCaptureScreenService);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.3\", ngImport: i0, type: AXMCaptureScreenComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.3\", type: AXMCaptureScreenComponent, isStandalone: true, selector: \"axm-capture-screen\", ngImport: i0, template: \"<div\\r\\n class=\\\"ax-transition-all ax-flex ax-items-center ax-gap-4 ax-w-fit ax-bg-surface ax-border ax-border-lighter ax-shadow-md ax-rounded-full ax-fixed ax-bottom-4 ax-right-4 ax-z-10\\\"\\r\\n>\\r\\n <section\\r\\n class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-4\\\"\\r\\n [ngClass]=\\\"{ 'screenshot-hidden': vm.captureMode() === 'video' }\\\"\\r\\n >\\r\\n <ax-button look=\\\"outline\\\" color=\\\"primary\\\" class=\\\"ax-lg ax-rounded-full\\\" (onClick)=\\\"vm.screenshotClick()\\\">\\r\\n @if (vm.loading()) {\\r\\n <ax-loading></ax-loading>\\r\\n } @else {\\r\\n <ax-prefix>\\r\\n <ax-icon class=\\\"fa-regular fa-camera\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n }\\r\\n </ax-button>\\r\\n <ax-button\\r\\n look=\\\"blank\\\"\\r\\n class=\\\"ax-lg ax-rounded-full\\\"\\r\\n [ngClass]=\\\"{ 'recordVideo-move': vm.captureMode() === 'video' }\\\"\\r\\n (onClick)=\\\"vm.changeCaptureMode()\\\"\\r\\n >\\r\\n <ax-prefix>\\r\\n <ax-icon class=\\\"fa-regular fa-video\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n </ax-button>\\r\\n </section>\\r\\n <section\\r\\n class=\\\"ax-hidden ax-items-center ax-justify-center ax-gap-8\\\"\\r\\n [ngClass]=\\\"{ '!ax-flex recordContainer-show': vm.captureMode() === 'video' }\\\"\\r\\n >\\r\\n <div class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-2\\\">\\r\\n <ax-button look=\\\"outline\\\" color=\\\"danger\\\" class=\\\"ax-lg ax-rounded-full\\\" (onClick)=\\\"vm.recordScreenClick()\\\">\\r\\n <ax-prefix class=\\\"ax-relative\\\">\\r\\n @if (vm.isRecording()) {\\r\\n <ax-icon\\r\\n class=\\\"fa-solid fa-circle ax-absolute ax-animate-twPing ax-animate-infinite ax-animate-duration-[1500ms] ax-text-danger-400 ax-opacity-75\\\"\\r\\n ></ax-icon>\\r\\n }\\r\\n <ax-icon class=\\\"fa-solid fa-circle\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n </ax-button>\\r\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\" (onClick)=\\\"vm.mutedClick()\\\">\\r\\n <ax-prefix\\r\\n ><ax-icon class=\\\"fa-solid {{ vm.muted() ? 'fa-microphone' : 'fa-microphone-slash' }}\\\"></ax-icon\\r\\n ></ax-prefix>\\r\\n </ax-button>\\r\\n </div>\\r\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\r\\n <p>\\r\\n {{ vm.timer().minute | format: 'number' : { zeroPadLength: 2 } | async }} :\\r\\n {{ vm.timer().second | format: 'number' : { zeroPadLength: 2 } | async }}\\r\\n </p>\\r\\n </div>\\r\\n </section>\\r\\n <ax-button look=\\\"blank\\\" class=\\\"ax-rounded-full\\\" (onClick)=\\\"vm.cancelClick()\\\">\\r\\n <ax-prefix><ax-icon class=\\\"fa-solid fa-xmark\\\"></ax-icon></ax-prefix>\\r\\n </ax-button>\\r\\n</div>\\r\\n\", styles: [\"@keyframes hideScreenshotContainer{0%{opacity:1;position:absolute}to{opacity:0;position:absolute;display:none}}@keyframes moveRecordButton{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(-100px) rotate(360deg);opacity:0}}@keyframes showRecordContainer{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.screenshot-hidden{animation:hideScreenshotContainer .2s forwards}.recordVideo-move{animation:moveRecordButton .5s forwards}.recordContainer-show{animation:showRecordContainer .5s forwards}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i2.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: AXDecoratorModule }, { kind: \"component\", type: i3.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i3.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: AXLoadingModule }, { kind: \"component\", type: i4.AXLoadingComponent, selector: \"ax-loading\", inputs: [\"visible\", \"type\", \"context\"], outputs: [\"visibleChange\"] }, { kind: \"ngmodule\", type: AXFormatModule }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i5.AXFormatPipe, name: \"format\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.3\", ngImport: i0, type: AXMCaptureScreenComponent, decorators: [{\n type: Component,\n args: [{ selector: 'axm-capture-screen', imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXLoadingModule, AXFormatModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: \"<div\\r\\n class=\\\"ax-transition-all ax-flex ax-items-center ax-gap-4 ax-w-fit ax-bg-surface ax-border ax-border-lighter ax-shadow-md ax-rounded-full ax-fixed ax-bottom-4 ax-right-4 ax-z-10\\\"\\r\\n>\\r\\n <section\\r\\n class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-4\\\"\\r\\n [ngClass]=\\\"{ 'screenshot-hidden': vm.captureMode() === 'video' }\\\"\\r\\n >\\r\\n <ax-button look=\\\"outline\\\" color=\\\"primary\\\" class=\\\"ax-lg ax-rounded-full\\\" (onClick)=\\\"vm.screenshotClick()\\\">\\r\\n @if (vm.loading()) {\\r\\n <ax-loading></ax-loading>\\r\\n } @else {\\r\\n <ax-prefix>\\r\\n <ax-icon class=\\\"fa-regular fa-camera\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n }\\r\\n </ax-button>\\r\\n <ax-button\\r\\n look=\\\"blank\\\"\\r\\n class=\\\"ax-lg ax-rounded-full\\\"\\r\\n [ngClass]=\\\"{ 'recordVideo-move': vm.captureMode() === 'video' }\\\"\\r\\n (onClick)=\\\"vm.changeCaptureMode()\\\"\\r\\n >\\r\\n <ax-prefix>\\r\\n <ax-icon class=\\\"fa-regular fa-video\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n </ax-button>\\r\\n </section>\\r\\n <section\\r\\n class=\\\"ax-hidden ax-items-center ax-justify-center ax-gap-8\\\"\\r\\n [ngClass]=\\\"{ '!ax-flex recordContainer-show': vm.captureMode() === 'video' }\\\"\\r\\n >\\r\\n <div class=\\\"ax-flex ax-items-center ax-justify-center ax-gap-2\\\">\\r\\n <ax-button look=\\\"outline\\\" color=\\\"danger\\\" class=\\\"ax-lg ax-rounded-full\\\" (onClick)=\\\"vm.recordScreenClick()\\\">\\r\\n <ax-prefix class=\\\"ax-relative\\\">\\r\\n @if (vm.isRecording()) {\\r\\n <ax-icon\\r\\n class=\\\"fa-solid fa-circle ax-absolute ax-animate-twPing ax-animate-infinite ax-animate-duration-[1500ms] ax-text-danger-400 ax-opacity-75\\\"\\r\\n ></ax-icon>\\r\\n }\\r\\n <ax-icon class=\\\"fa-solid fa-circle\\\"></ax-icon>\\r\\n </ax-prefix>\\r\\n </ax-button>\\r\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\" (onClick)=\\\"vm.mutedClick()\\\">\\r\\n <ax-prefix\\r\\n ><ax-icon class=\\\"fa-solid {{ vm.muted() ? 'fa-microphone' : 'fa-microphone-slash' }}\\\"></ax-icon\\r\\n ></ax-prefix>\\r\\n </ax-button>\\r\\n </div>\\r\\n <div class=\\\"ax-flex ax-items-center ax-gap-2\\\">\\r\\n <p>\\r\\n {{ vm.timer().minute | format: 'number' : { zeroPadLength: 2 } | async }} :\\r\\n {{ vm.timer().second | format: 'number' : { zeroPadLength: 2 } | async }}\\r\\n </p>\\r\\n </div>\\r\\n </section>\\r\\n <ax-button look=\\\"blank\\\" class=\\\"ax-rounded-full\\\" (onClick)=\\\"vm.cancelClick()\\\">\\r\\n <ax-prefix><ax-icon class=\\\"fa-solid fa-xmark\\\"></ax-icon></ax-prefix>\\r\\n </ax-button>\\r\\n</div>\\r\\n\", styles: [\"@keyframes hideScreenshotContainer{0%{opacity:1;position:absolute}to{opacity:0;position:absolute;display:none}}@keyframes moveRecordButton{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(-100px) rotate(360deg);opacity:0}}@keyframes showRecordContainer{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.screenshot-hidden{animation:hideScreenshotContainer .2s forwards}.recordVideo-move{animation:moveRecordButton .5s forwards}.recordContainer-show{animation:showRecordContainer .5s forwards}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwdHVyZS1zY3JlZW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9tb2R1bGVzL2lzc3VlLW1hbmFnZW1lbnQvc3JjL2xpYi9jb21wb25lbnRzL2NhcHR1cmUtc2NyZWVuL2NvbXBvbmVudHMvY2FwdHVyZS1zY3JlZW4tY29tcG9uZW50L2NhcHR1cmUtc2NyZWVuLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9pc3N1ZS1tYW5hZ2VtZW50L3NyYy9saWIvY29tcG9uZW50cy9jYXB0dXJlLXNjcmVlbi9jb21wb25lbnRzL2NhcHR1cmUtc2NyZWVuLWNvbXBvbmVudC9jYXB0dXJlLXNjcmVlbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFXckQsTUFBTSxPQUFPLHlCQUF5QjtJQVJ0QztRQVNZLE9BQUUsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztLQUNoRDs4R0FGWSx5QkFBeUI7a0dBQXpCLHlCQUF5Qiw4RUNqQnRDLHVqRkEyREEsMmtCRDlDWSxZQUFZLDRIQUFFLGNBQWMsNlhBQUUsaUJBQWlCLHNWQUFFLGVBQWUsOEtBQUUsY0FBYzs7MkZBSS9FLHlCQUF5QjtrQkFSckMsU0FBUzsrQkFDRSxvQkFBb0IsV0FHckIsQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxjQUFjLENBQUMsaUJBQzVFLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhNQ2FwdHVyZVNjcmVlblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jYXB0dXJlLXNjcmVlbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFYRm9ybWF0TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXhtLWNhcHR1cmUtc2NyZWVuJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcHR1cmUtc2NyZWVuLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2FwdHVyZS1zY3JlZW4uY29tcG9uZW50LnNjc3MnXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQVhCdXR0b25Nb2R1bGUsIEFYRGVjb3JhdG9yTW9kdWxlLCBBWExvYWRpbmdNb2R1bGUsIEFYRm9ybWF0TW9kdWxlXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEFYTUNhcHR1cmVTY3JlZW5Db21wb25lbnQge1xuICBwcm90ZWN0ZWQgdm0gPSBpbmplY3QoQVhNQ2FwdHVyZVNjcmVlblNlcnZpY2UpO1xufVxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiYXgtdHJhbnNpdGlvbi1hbGwgYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtZ2FwLTQgYXgtdy1maXQgYXgtYmctc3VyZmFjZSBheC1ib3JkZXIgYXgtYm9yZGVyLWxpZ2h0ZXIgYXgtc2hhZG93LW1kIGF4LXJvdW5kZWQtZnVsbCBheC1maXhlZCBheC1ib3R0b20tNCBheC1yaWdodC00IGF4LXotMTBcIlxyXG4+XHJcbiAgPHNlY3Rpb25cclxuICAgIGNsYXNzPVwiYXgtZmxleCBheC1pdGVtcy1jZW50ZXIgYXgtanVzdGlmeS1jZW50ZXIgYXgtZ2FwLTRcIlxyXG4gICAgW25nQ2xhc3NdPVwieyAnc2NyZWVuc2hvdC1oaWRkZW4nOiB2bS5jYXB0dXJlTW9kZSgpID09PSAndmlkZW8nIH1cIlxyXG4gID5cclxuICAgIDxheC1idXR0b24gbG9vaz1cIm91dGxpbmVcIiBjb2xvcj1cInByaW1hcnlcIiBjbGFzcz1cImF4LWxnIGF4LXJvdW5kZWQtZnVsbFwiIChvbkNsaWNrKT1cInZtLnNjcmVlbnNob3RDbGljaygpXCI+XHJcbiAgICAgIEBpZiAodm0ubG9hZGluZygpKSB7XHJcbiAgICAgICAgPGF4LWxvYWRpbmc+PC9heC1sb2FkaW5nPlxyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICA8YXgtcHJlZml4PlxyXG4gICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJmYS1yZWd1bGFyIGZhLWNhbWVyYVwiPjwvYXgtaWNvbj5cclxuICAgICAgICA8L2F4LXByZWZpeD5cclxuICAgICAgfVxyXG4gICAgPC9heC1idXR0b24+XHJcbiAgICA8YXgtYnV0dG9uXHJcbiAgICAgIGxvb2s9XCJibGFua1wiXHJcbiAgICAgIGNsYXNzPVwiYXgtbGcgYXgtcm91bmRlZC1mdWxsXCJcclxuICAgICAgW25nQ2xhc3NdPVwieyAncmVjb3JkVmlkZW8tbW92ZSc6IHZtLmNhcHR1cmVNb2RlKCkgPT09ICd2aWRlbycgfVwiXHJcbiAgICAgIChvbkNsaWNrKT1cInZtLmNoYW5nZUNhcHR1cmVNb2RlKClcIlxyXG4gICAgPlxyXG4gICAgICA8YXgtcHJlZml4PlxyXG4gICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtcmVndWxhciBmYS12aWRlb1wiPjwvYXgtaWNvbj5cclxuICAgICAgPC9heC1wcmVmaXg+XHJcbiAgICA8L2F4LWJ1dHRvbj5cclxuICA8L3NlY3Rpb24+XHJcbiAgPHNlY3Rpb25cclxuICAgIGNsYXNzPVwiYXgtaGlkZGVuIGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWNlbnRlciBheC1nYXAtOFwiXHJcbiAgICBbbmdDbGFzc109XCJ7ICchYXgtZmxleCByZWNvcmRDb250YWluZXItc2hvdyc6IHZtLmNhcHR1cmVNb2RlKCkgPT09ICd2aWRlbycgfVwiXHJcbiAgPlxyXG4gICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtaXRlbXMtY2VudGVyIGF4LWp1c3RpZnktY2VudGVyIGF4LWdhcC0yXCI+XHJcbiAgICAgIDxheC1idXR0b24gbG9vaz1cIm91dGxpbmVcIiBjb2xvcj1cImRhbmdlclwiIGNsYXNzPVwiYXgtbGcgYXgtcm91bmRlZC1mdWxsXCIgKG9uQ2xpY2spPVwidm0ucmVjb3JkU2NyZWVuQ2xpY2soKVwiPlxyXG4gICAgICAgIDxheC1wcmVmaXggY2xhc3M9XCJheC1yZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgQGlmICh2bS5pc1JlY29yZGluZygpKSB7XHJcbiAgICAgICAgICAgIDxheC1pY29uXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmYS1zb2xpZCBmYS1jaXJjbGUgYXgtYWJzb2x1dGUgYXgtYW5pbWF0ZS10d1BpbmcgYXgtYW5pbWF0ZS1pbmZpbml0ZSBheC1hbmltYXRlLWR1cmF0aW9uLVsxNTAwbXNdIGF4LXRleHQtZGFuZ2VyLTQwMCBheC1vcGFjaXR5LTc1XCJcclxuICAgICAgICAgICAgPjwvYXgtaWNvbj5cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIDxheC1pY29uIGNsYXNzPVwiZmEtc29saWQgZmEtY2lyY2xlXCI+PC9heC1pY29uPlxyXG4gICAgICAgIDwvYXgtcHJlZml4PlxyXG4gICAgICA8L2F4LWJ1dHRvbj5cclxuICAgICAgPGF4LWJ1dHRvbiBsb29rPVwiYmxhbmtcIiBjbGFzcz1cImF4LXNtXCIgKG9uQ2xpY2spPVwidm0ubXV0ZWRDbGljaygpXCI+XHJcbiAgICAgICAgPGF4LXByZWZpeFxyXG4gICAgICAgICAgPjxheC1pY29uIGNsYXNzPVwiZmEtc29saWQge3sgdm0ubXV0ZWQoKSA/ICdmYS1taWNyb3Bob25lJyA6ICdmYS1taWNyb3Bob25lLXNsYXNoJyB9fVwiPjwvYXgtaWNvblxyXG4gICAgICAgID48L2F4LXByZWZpeD5cclxuICAgICAgPC9heC1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1nYXAtMlwiPlxyXG4gICAgICA8cD5cclxuICAgICAgICB7eyB2bS50aW1lcigpLm1pbnV0ZSB8IGZvcm1hdDogJ251bWJlcicgOiB7IHplcm9QYWRMZW5ndGg6IDIgfSB8IGFzeW5jIH19IDpcclxuICAgICAgICB7eyB2bS50aW1lcigpLnNlY29uZCB8IGZvcm1hdDogJ251bWJlcicgOiB7IHplcm9QYWRMZW5ndGg6IDIgfSB8IGFzeW5jIH19XHJcbiAgICAgIDwvcD5cclxuICAgIDwvZGl2PlxyXG4gIDwvc2VjdGlvbj5cclxuICA8YXgtYnV0dG9uIGxvb2s9XCJibGFua1wiIGNsYXNzPVwiYXgtcm91bmRlZC1mdWxsXCIgKG9uQ2xpY2spPVwidm0uY2FuY2VsQ2xpY2soKVwiPlxyXG4gICAgPGF4LXByZWZpeD48YXgtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLXhtYXJrXCI+PC9heC1pY29uPjwvYXgtcHJlZml4PlxyXG4gIDwvYXgtYnV0dG9uPlxyXG48L2Rpdj5cclxuIl19"],"names":["i2","i3"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { g as AXMEntityProvider, j as AXMIssueManagementModule, a as AXMIssueTypeService, b as AXMIssueTypeServiceImpl, h as AXMLogCaptureService, k as AXMMenuProvider, c as AXMMyReportedIssuesService, d as AXMMyReportedIssuesServiceImpl, l as AXMPermissionsKeys, e as AXMReportedIssuesService, f as AXMReportedIssuesServiceImpl, n as AXMSettingProvider, R as RootConfig, i as issueTypeEntityFactory, m as myReportedIssuesEntityFactory, r as reportedIssuesEntityFactory } from './acorex-modules-issue-management-acorex-modules-issue-management-
|
|
1
|
+
export { g as AXMEntityProvider, j as AXMIssueManagementModule, a as AXMIssueTypeService, b as AXMIssueTypeServiceImpl, h as AXMLogCaptureService, k as AXMMenuProvider, c as AXMMyReportedIssuesService, d as AXMMyReportedIssuesServiceImpl, l as AXMPermissionsKeys, e as AXMReportedIssuesService, f as AXMReportedIssuesServiceImpl, n as AXMSettingProvider, R as RootConfig, i as issueTypeEntityFactory, m as myReportedIssuesEntityFactory, r as reportedIssuesEntityFactory } from './acorex-modules-issue-management-acorex-modules-issue-management-ITP4K-tZ.mjs';
|
|
2
2
|
//# sourceMappingURL=acorex-modules-issue-management.mjs.map
|
|
@@ -4,7 +4,7 @@ import * as i2$1 from '@acorex/platform/layout/builder';
|
|
|
4
4
|
import { AXPWidgetsCatalog, AXPValueWidgetComponent, cloneProperty, AXPWidgetGroupEnum, AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
|
|
5
5
|
import { AXMEntityCrudServiceImpl, AXPEntityService, AXP_ENTITY_DEFINITION_LOADER, AXPEntityStorageService, AXPEntityDataProviderImpl } from '@acorex/platform/layout/entity';
|
|
6
6
|
import * as i0 from '@angular/core';
|
|
7
|
-
import { Injectable, NgModule, inject, signal, computed, effect, input, output, ChangeDetectionStrategy, Component, Injector, ChangeDetectorRef } from '@angular/core';
|
|
7
|
+
import { Injectable, NgModule, inject, signal, computed, effect, input, output, ChangeDetectionStrategy, Component, Injector, ChangeDetectorRef, InjectionToken } from '@angular/core';
|
|
8
8
|
import { AXPSessionService } from '@acorex/platform/auth';
|
|
9
9
|
import { firstValueFrom } from 'rxjs';
|
|
10
10
|
import * as i4 from '@acorex/components/badge';
|
|
@@ -1561,9 +1561,18 @@ class AXMNotificationConnectorService {
|
|
|
1561
1561
|
this.isLoading.set(true);
|
|
1562
1562
|
this.error.set(null);
|
|
1563
1563
|
const response = await this.notificationService.getList();
|
|
1564
|
-
|
|
1564
|
+
// Sort notifications by createAt date in descending order (newest first)
|
|
1565
|
+
const sortedItems = [...response.items].sort((a, b) => {
|
|
1566
|
+
const dateA = new Date(a.createAt).getTime();
|
|
1567
|
+
const dateB = new Date(b.createAt).getTime();
|
|
1568
|
+
return dateB - dateA;
|
|
1569
|
+
});
|
|
1570
|
+
this.notifications.set(sortedItems);
|
|
1565
1571
|
this.totalCount.set(response.total);
|
|
1566
|
-
return
|
|
1572
|
+
return {
|
|
1573
|
+
...response,
|
|
1574
|
+
items: sortedItems,
|
|
1575
|
+
};
|
|
1567
1576
|
}
|
|
1568
1577
|
catch (err) {
|
|
1569
1578
|
this.error.set(err instanceof Error ? err.message : 'Failed to fetch notifications');
|
|
@@ -1627,28 +1636,25 @@ class AXMNotificationConnectorService {
|
|
|
1627
1636
|
* Create a new notification
|
|
1628
1637
|
*/
|
|
1629
1638
|
async create(payload, options) {
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1639
|
-
...options,
|
|
1640
|
-
});
|
|
1641
|
-
}
|
|
1642
|
-
await this.notificationService.create(payload);
|
|
1643
|
-
// Refresh list after creating a notification
|
|
1644
|
-
await this.getList();
|
|
1645
|
-
}
|
|
1646
|
-
catch (err) {
|
|
1647
|
-
this.error.set(err instanceof Error ? err.message : 'Failed to create notification');
|
|
1648
|
-
}
|
|
1649
|
-
finally {
|
|
1650
|
-
this.isLoading.set(false);
|
|
1639
|
+
this.isLoading.set(true);
|
|
1640
|
+
this.error.set(null);
|
|
1641
|
+
//send os notification
|
|
1642
|
+
const isPermissionGranted = await this.osNotificationService.requestPermission();
|
|
1643
|
+
if (payload && isPermissionGranted) {
|
|
1644
|
+
this.osNotificationService.show(payload.title || 'Notification', {
|
|
1645
|
+
body: payload.body || 'No body',
|
|
1646
|
+
...options,
|
|
1647
|
+
});
|
|
1651
1648
|
}
|
|
1649
|
+
const createdNotification = await this.notificationService.create(payload);
|
|
1650
|
+
// Refresh list after creating a notification
|
|
1651
|
+
this.notifications.update((notifications) => {
|
|
1652
|
+
const newNotifications = [createdNotification, ...notifications];
|
|
1653
|
+
return newNotifications.sort((a, b) => new Date(b.createAt).getTime() - new Date(a.createAt).getTime());
|
|
1654
|
+
});
|
|
1655
|
+
this.totalCount.update((count) => count + 1);
|
|
1656
|
+
await this.getList();
|
|
1657
|
+
this.isLoading.set(false);
|
|
1652
1658
|
}
|
|
1653
1659
|
// Methods from AXMEntityCrudServiceImpl
|
|
1654
1660
|
/**
|
|
@@ -1770,7 +1776,7 @@ class AXMAdminNotificationItemComponent {
|
|
|
1770
1776
|
this.onPressNotificationItem.emit(id);
|
|
1771
1777
|
}
|
|
1772
1778
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMAdminNotificationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1773
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXMAdminNotificationItemComponent, isStandalone: true, selector: "axp-master-notification-item", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onPressNotificationItem: "onPressNotificationItem" }, ngImport: i0, template: "<div\n class=\"notification-item\"\n [id]=\"data().id\"\n (click)=\"pressNotificationItem(data().id)\"\n [class]=\"[data().template.prority, data().readAt ? 'read' : 'unread']\"\n>\n <div class=\"notification-avatar\">\n <axp-user-avatar [size]=\"48\" [userId]=\"data().
|
|
1779
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: AXMAdminNotificationItemComponent, isStandalone: true, selector: "axp-master-notification-item", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onPressNotificationItem: "onPressNotificationItem" }, ngImport: i0, template: "<div\n class=\"notification-item\"\n [id]=\"data().id\"\n (click)=\"pressNotificationItem(data().id)\"\n [class]=\"[data().template.prority, data().readAt ? 'read' : 'unread']\"\n>\n <div class=\"notification-avatar\">\n <axp-user-avatar [size]=\"48\" [userId]=\"data().sender.id\"></axp-user-avatar>\n @if (!data().readAt) {\n <!-- <div class=\"unread-badge\"></div> -->\n }\n </div>\n\n <div class=\"notification-content\">\n <div class=\"notification-header\">\n <div class=\"notification-title\">{{ data().sender.username || data().title }}</div>\n <div class=\"notification-meta\">\n @if (!data().template.isPinned) {\n <div class=\"pin-notification\" (click)=\"$event.stopPropagation()\">\n <ax-icon>\n <i class=\"fa-solid fa-thumbtack\"></i>\n </ax-icon>\n </div>\n }\n <div class=\"notification-time\">{{ differentTime() | format: 'timeleft' | async }}</div>\n </div>\n </div>\n\n <div class=\"notification-body\">{{ data().body }}</div>\n </div>\n</div>\n", styles: [".notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:.125rem;padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.notification-item.read{background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface))}.notification-item.unread{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.notification-item:hover{background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}.notification-item.Notice:before,.notification-item.Danger:before,.notification-item.Warning:before{content:\"\";position:absolute;top:.5rem;bottom:.5rem;inset-inline-start:0px;width:.125rem;border-radius:9999px}.notification-item.Notice:before{background:rgb(var(--ax-sys-color-success-500))}.notification-item.Danger:before{background:rgb(var(--ax-sys-color-danger-500))}.notification-item.Warning:before{background:rgb(var(--ax-sys-color-warning-500))}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-meta{display:flex;align-items:center;gap:.5rem}.notification-item .notification-content .notification-header .notification-meta .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification{border-radius:9999px;padding:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification i{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXPUserAvatarComponent, selector: "axp-user-avatar", inputs: ["size", "userId"] }, { kind: "ngmodule", type: AXImageModule }, { kind: "ngmodule", type: AXBadgeModule }, { kind: "ngmodule", type: AXFormatModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.AXFormatPipe, name: "format" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1774
1780
|
}
|
|
1775
1781
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXMAdminNotificationItemComponent, decorators: [{
|
|
1776
1782
|
type: Component,
|
|
@@ -1782,7 +1788,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
|
|
|
1782
1788
|
AXImageModule,
|
|
1783
1789
|
AXBadgeModule,
|
|
1784
1790
|
AXFormatModule,
|
|
1785
|
-
], template: "<div\n class=\"notification-item\"\n [id]=\"data().id\"\n (click)=\"pressNotificationItem(data().id)\"\n [class]=\"[data().template.prority, data().readAt ? 'read' : 'unread']\"\n>\n <div class=\"notification-avatar\">\n <axp-user-avatar [size]=\"48\" [userId]=\"data().
|
|
1791
|
+
], template: "<div\n class=\"notification-item\"\n [id]=\"data().id\"\n (click)=\"pressNotificationItem(data().id)\"\n [class]=\"[data().template.prority, data().readAt ? 'read' : 'unread']\"\n>\n <div class=\"notification-avatar\">\n <axp-user-avatar [size]=\"48\" [userId]=\"data().sender.id\"></axp-user-avatar>\n @if (!data().readAt) {\n <!-- <div class=\"unread-badge\"></div> -->\n }\n </div>\n\n <div class=\"notification-content\">\n <div class=\"notification-header\">\n <div class=\"notification-title\">{{ data().sender.username || data().title }}</div>\n <div class=\"notification-meta\">\n @if (!data().template.isPinned) {\n <div class=\"pin-notification\" (click)=\"$event.stopPropagation()\">\n <ax-icon>\n <i class=\"fa-solid fa-thumbtack\"></i>\n </ax-icon>\n </div>\n }\n <div class=\"notification-time\">{{ differentTime() | format: 'timeleft' | async }}</div>\n </div>\n </div>\n\n <div class=\"notification-body\">{{ data().body }}</div>\n </div>\n</div>\n", styles: [".notification-item{position:relative;margin-top:2px;margin-bottom:2px;display:flex;cursor:pointer;gap:1rem;border-radius:.125rem;padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;animation-duration:.2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.notification-item.read{background-color:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-color:rgb(var(--ax-sys-color-border-lightest-surface))}.notification-item.unread{background-color:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-color:rgb(var(--ax-sys-color-border-lighter-surface))}.notification-item:hover{background-color:rgb(var(--ax-sys-color-light-surface));color:rgb(var(--ax-sys-color-on-light-surface));border-color:rgb(var(--ax-sys-color-border-light-surface))}.notification-item.Notice:before,.notification-item.Danger:before,.notification-item.Warning:before{content:\"\";position:absolute;top:.5rem;bottom:.5rem;inset-inline-start:0px;width:.125rem;border-radius:9999px}.notification-item.Notice:before{background:rgb(var(--ax-sys-color-success-500))}.notification-item.Danger:before{background:rgb(var(--ax-sys-color-danger-500))}.notification-item.Warning:before{background:rgb(var(--ax-sys-color-warning-500))}.notification-item .notification-avatar{position:relative}.notification-item .notification-avatar .unread-badge{position:absolute;bottom:.25rem;inset-inline-end:.25rem;width:10px;height:10px;background:rgb(var(--ax-sys-color-primary-500));border:2px solid rgb(var(--ax-sys-color-surface));border-radius:50%}.notification-item .notification-content{min-width:0px;flex:1 1 0%}.notification-item .notification-content .notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.notification-item .notification-content .notification-header .notification-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1.5rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.notification-item .notification-content .notification-header .notification-meta{display:flex;align-items:center;gap:.5rem}.notification-item .notification-content .notification-header .notification-meta .notification-time{white-space:nowrap;font-size:.75rem;line-height:1rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .notification-content .notification-body{margin-top:.25rem;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification{border-radius:9999px;padding:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;color:rgb(var(--ax-sys-color-on-surface-variant))}.notification-item .pin-notification i{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}\n"] }]
|
|
1786
1792
|
}] });
|
|
1787
1793
|
|
|
1788
1794
|
class AXMAdminNotificationPanelComponent {
|
|
@@ -1904,7 +1910,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
|
|
|
1904
1910
|
AXBadgeModule,
|
|
1905
1911
|
AXPopoverModule,
|
|
1906
1912
|
AXMAdminNotificationItemComponent,
|
|
1907
|
-
AXFormatModule
|
|
1913
|
+
AXFormatModule,
|
|
1908
1914
|
], template: "<div class=\"ax-p-4 ax-flex ax-justify-between ax-items-center\">\n <span class=\"ax-text-xl\">Notifications</span>\n <ax-button color=\"default\" look=\"blank\">\n <ax-icon>\n <i class=\"fa-regular fa-gear fa-lg\"></i>\n </ax-icon>\n </ax-button>\n</div>\n<ax-tabs [content]=\"cons\" look=\"with-line\" location=\"bottom\">\n @for (tab of tabItems(); track tab.text) {\n <ax-tab-item [text]=\"tab.text\" [active]=\"activeTab() === tab.text\" (activeChange)=\"changeActiveTab(tab.text)\">\n <ax-suffix>\n @if (tab.count) {\n <ax-badge [color]=\"activeTab() === tab.text ? 'primary' : 'ghost'\" [text]=\"tab.count.toString()\"></ax-badge>\n }\n </ax-suffix>\n <ax-content>\n <div class=\"ax-max-h-[50vh] ax-max-w-[30rem] ax-overflow-y-auto\">\n @for (notif of getNotificationItems(tab.text); track notif.id) {\n <axp-master-notification-item\n [data]=\"notif\"\n (onPressNotificationItem)=\"markAsRead($event)\"\n ></axp-master-notification-item>\n }\n </div>\n <div class=\"ax-flex ax-gap-4 ax-justify-between ax-p-4 ax-border-t ax-border-default\">\n <ax-button\n [disabled]=\"NewNotification() === 0\"\n [color]=\"'default'\"\n text=\"Mark all as read\"\n (onClick)=\"markAllAsRead()\"\n ></ax-button>\n <ax-button color=\"primary\" text=\"View all notifications\" (onClick)=\"viewAllNotifications()\"></ax-button>\n </div>\n </ax-content>\n </ax-tab-item>\n }\n</ax-tabs>\n\n<ng-template [axTabContent] #cons=\"axTabContent\"></ng-template>\n" }]
|
|
1909
1915
|
}] });
|
|
1910
1916
|
|
|
@@ -3067,9 +3073,84 @@ async function notificationLogEntityFactory(injector) {
|
|
|
3067
3073
|
return entityDef;
|
|
3068
3074
|
}
|
|
3069
3075
|
|
|
3076
|
+
class AXPNotificationDefinitionProvider {
|
|
3077
|
+
}
|
|
3078
|
+
const DEFAULT_NOTIFICATION_DEFINITION = [
|
|
3079
|
+
{
|
|
3080
|
+
name: 'File',
|
|
3081
|
+
title: 'Email',
|
|
3082
|
+
icon: 'fa-solid fa-envelope',
|
|
3083
|
+
async execute(command, item) {
|
|
3084
|
+
console.log('Execute for email', item);
|
|
3085
|
+
// In a real implementation, you would perform an action
|
|
3086
|
+
return Promise.resolve();
|
|
3087
|
+
},
|
|
3088
|
+
},
|
|
3089
|
+
{
|
|
3090
|
+
name: 'Chat',
|
|
3091
|
+
title: 'SMS',
|
|
3092
|
+
icon: 'fa-solid fa-comment-sms',
|
|
3093
|
+
async execute(command, item) {
|
|
3094
|
+
console.log('Execute for sms', item);
|
|
3095
|
+
// In a real implementation, you would perform an action
|
|
3096
|
+
return Promise.resolve();
|
|
3097
|
+
},
|
|
3098
|
+
},
|
|
3099
|
+
{
|
|
3100
|
+
name: 'Comment',
|
|
3101
|
+
title: 'Comment',
|
|
3102
|
+
icon: 'fa-solid fa-comment',
|
|
3103
|
+
async execute(command, item) {
|
|
3104
|
+
console.log('Execute for comment', item);
|
|
3105
|
+
// In a real implementation, you would perform an action
|
|
3106
|
+
return Promise.resolve();
|
|
3107
|
+
},
|
|
3108
|
+
},
|
|
3109
|
+
{
|
|
3110
|
+
name: 'Log',
|
|
3111
|
+
title: 'Log',
|
|
3112
|
+
icon: 'fa-solid fa-file-lines',
|
|
3113
|
+
async execute(command, item) {
|
|
3114
|
+
console.log('Execute for log', item);
|
|
3115
|
+
// In a real implementation, you would perform an action
|
|
3116
|
+
return Promise.resolve();
|
|
3117
|
+
},
|
|
3118
|
+
},
|
|
3119
|
+
];
|
|
3120
|
+
class AXPNotificationDefinitionProviderDefault extends AXPNotificationDefinitionProvider {
|
|
3121
|
+
async provide() {
|
|
3122
|
+
return DEFAULT_NOTIFICATION_DEFINITION;
|
|
3123
|
+
}
|
|
3124
|
+
}
|
|
3125
|
+
const AXP_NOTIFICATION_DEFINITION_PROVIDER = new InjectionToken('AXP_NOTIFICATION_DEFINITION_PROVIDER');
|
|
3126
|
+
class AXPNotificationDefinitionService {
|
|
3127
|
+
constructor() {
|
|
3128
|
+
this.providers = inject(AXP_NOTIFICATION_DEFINITION_PROVIDER, { optional: true });
|
|
3129
|
+
}
|
|
3130
|
+
getProviders() {
|
|
3131
|
+
return this.providers ?? [];
|
|
3132
|
+
}
|
|
3133
|
+
resolve(name) {
|
|
3134
|
+
return this.providers?.find((p) => p.name === name) ?? new AXPNotificationDefinitionProviderDefault();
|
|
3135
|
+
}
|
|
3136
|
+
execute(command, item) {
|
|
3137
|
+
const provider = this.providers?.find((p) => p.name === item.type);
|
|
3138
|
+
if (!provider) {
|
|
3139
|
+
throw new Error('Notification provider not found');
|
|
3140
|
+
}
|
|
3141
|
+
provider.execute(command, item);
|
|
3142
|
+
}
|
|
3143
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPNotificationDefinitionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3144
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPNotificationDefinitionService, providedIn: 'root' }); }
|
|
3145
|
+
}
|
|
3146
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: AXPNotificationDefinitionService, decorators: [{
|
|
3147
|
+
type: Injectable,
|
|
3148
|
+
args: [{ providedIn: 'root' }]
|
|
3149
|
+
}] });
|
|
3150
|
+
|
|
3070
3151
|
/**
|
|
3071
3152
|
* Generated bundle index. Do not edit.
|
|
3072
3153
|
*/
|
|
3073
3154
|
|
|
3074
|
-
export { AXMNotificationConnectorService, AXMNotificationEntityService, AXMNotificationEntityServiceImpl, AXMNotificationManagementChannelEntityService, AXMNotificationManagementChannelEntityServiceImpl, AXMNotificationManagementModule, AXMNotificationManagementTemplateEntityModule, AXMNotificationManagementTemplateEntityService, AXMNotificationManagementTemplateEntityServiceImpl, AXMNotificationManagmentModuleMenuProvider, AXMOsNotificationService, AXMSettingProvider, AXPMyNotificationDashboardWidget, AXPNotificationWidgetViewComponent, RootConfig, myNotificationEntityFactory, notificationChannelEntityFactory, notificationEntityFactory, notificationLogEntityFactory, notificationTemplateEntityFactory };
|
|
3155
|
+
export { AXMNotificationConnectorService, AXMNotificationEntityService, AXMNotificationEntityServiceImpl, AXMNotificationManagementChannelEntityService, AXMNotificationManagementChannelEntityServiceImpl, AXMNotificationManagementModule, AXMNotificationManagementTemplateEntityModule, AXMNotificationManagementTemplateEntityService, AXMNotificationManagementTemplateEntityServiceImpl, AXMNotificationManagmentModuleMenuProvider, AXMOsNotificationService, AXMSettingProvider, AXPMyNotificationDashboardWidget, AXPNotificationDefinitionProvider, AXPNotificationDefinitionProviderDefault, AXPNotificationDefinitionService, AXPNotificationWidgetViewComponent, AXP_NOTIFICATION_DEFINITION_PROVIDER, RootConfig, myNotificationEntityFactory, notificationChannelEntityFactory, notificationEntityFactory, notificationLogEntityFactory, notificationTemplateEntityFactory };
|
|
3075
3156
|
//# sourceMappingURL=acorex-modules-notification-management.mjs.map
|