@acorex/modules 20.0.8 → 20.0.9
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/fesm2022/{acorex-modules-application-management-module-designer.component-BErRgx0w.mjs → acorex-modules-application-management-module-designer.component-BvuZJdwg.mjs} +7 -7
- package/fesm2022/{acorex-modules-application-management-module-designer.component-BErRgx0w.mjs.map → acorex-modules-application-management-module-designer.component-BvuZJdwg.mjs.map} +1 -1
- package/fesm2022/acorex-modules-application-management.mjs +41 -41
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-X866H4oy.mjs → acorex-modules-auth-acorex-modules-auth-BXc_ogZY.mjs} +43 -43
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-X866H4oy.mjs.map → acorex-modules-auth-acorex-modules-auth-BXc_ogZY.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-app-chooser.component-DqKTfLA2.mjs → acorex-modules-auth-app-chooser.component-BS8kyO4q.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-app-chooser.component-DqKTfLA2.mjs.map → acorex-modules-auth-app-chooser.component-BS8kyO4q.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-blank.layout-D2qSgxTy.mjs → acorex-modules-auth-blank.layout-BwVSMaFI.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-blank.layout-D2qSgxTy.mjs.map → acorex-modules-auth-blank.layout-BwVSMaFI.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-login.module-CWOYzn0L.mjs → acorex-modules-auth-login.module-DGE_lE3s.mjs} +8 -8
- package/fesm2022/{acorex-modules-auth-login.module-CWOYzn0L.mjs.map → acorex-modules-auth-login.module-DGE_lE3s.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-master.layout-384T0lIg.mjs → acorex-modules-auth-master.layout-BsgOcazS.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-master.layout-384T0lIg.mjs.map → acorex-modules-auth-master.layout-BsgOcazS.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-BW_ooTQG.mjs → acorex-modules-auth-password.component-BjpLB-GX.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-password.component-BW_ooTQG.mjs.map → acorex-modules-auth-password.component-BjpLB-GX.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-JG95JpLz.mjs → acorex-modules-auth-password.component-DwQwyJv_.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-password.component-JG95JpLz.mjs.map → acorex-modules-auth-password.component-DwQwyJv_.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-routes-DqKtHu-i.mjs → acorex-modules-auth-routes-j9Ujy-xB.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-DqKtHu-i.mjs.map → acorex-modules-auth-routes-j9Ujy-xB.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-settings.provider-CM-T8nbI.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-tenant-chooser.component-C0jxaqqg.mjs → acorex-modules-auth-tenant-chooser.component-3-FFY4tI.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-tenant-chooser.component-C0jxaqqg.mjs.map → acorex-modules-auth-tenant-chooser.component-3-FFY4tI.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-D7KOomHD.mjs → acorex-modules-auth-two-factor-code.component-UUmdX7IM.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-D7KOomHD.mjs.map → acorex-modules-auth-two-factor-code.component-UUmdX7IM.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-C88pXqao.mjs → acorex-modules-auth-two-factor.module-EN4l_a4V.mjs} +7 -7
- package/fesm2022/{acorex-modules-auth-two-factor.module-C88pXqao.mjs.map → acorex-modules-auth-two-factor.module-EN4l_a4V.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-user-sessions.component-loloVwv0.mjs → acorex-modules-auth-user-sessions.component-D9D-vWic.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-user-sessions.component-loloVwv0.mjs.map → acorex-modules-auth-user-sessions.component-D9D-vWic.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/{acorex-modules-common-search-popup.component-CCKiQx0U.mjs → acorex-modules-common-search-popup.component-CNh7TFpe.mjs} +4 -4
- package/fesm2022/{acorex-modules-common-search-popup.component-CCKiQx0U.mjs.map → acorex-modules-common-search-popup.component-CNh7TFpe.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-DJOcjquG.mjs → acorex-modules-common-timeline-version-history-popup.component-D48aDOVu.mjs} +4 -4
- package/fesm2022/{acorex-modules-common-timeline-version-history-popup.component-DJOcjquG.mjs.map → acorex-modules-common-timeline-version-history-popup.component-D48aDOVu.mjs.map} +1 -1
- package/fesm2022/acorex-modules-common.mjs +52 -49
- package/fesm2022/acorex-modules-common.mjs.map +1 -1
- package/fesm2022/acorex-modules-contact-management-address-type.entity-QMEODkhx.mjs.map +1 -1
- package/fesm2022/acorex-modules-contact-management-contact-address.entity-0f4Vaw_k.mjs.map +1 -1
- package/fesm2022/acorex-modules-contact-management-contact-method.entity-ChEz1jW0.mjs.map +1 -1
- package/fesm2022/acorex-modules-contact-management-contact-relationship.entity-DLfiEEfk.mjs.map +1 -1
- package/fesm2022/acorex-modules-contact-management-contact-source.entity-hopVxiIT.mjs.map +1 -1
- package/fesm2022/acorex-modules-contact-management.mjs +31 -31
- package/fesm2022/acorex-modules-contact-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-content-management.mjs +14 -13
- package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +55 -47
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/acorex-modules-dashboard-management.mjs +74 -74
- package/fesm2022/acorex-modules-dashboard-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-C4cvhxSV.mjs → acorex-modules-document-management-acorex-modules-document-management-CJYBHKUf.mjs} +111 -111
- package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-C4cvhxSV.mjs.map → acorex-modules-document-management-acorex-modules-document-management-CJYBHKUf.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-B5txg8z0.mjs → acorex-modules-document-management-attachment-widget.component-Cc-hsCCX.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-B5txg8z0.mjs.map → acorex-modules-document-management-attachment-widget.component-Cc-hsCCX.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-LfnTz49a.mjs → acorex-modules-document-management-create-folder-dialog.component-CMhwz1-0.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-LfnTz49a.mjs.map → acorex-modules-document-management-create-folder-dialog.component-CMhwz1-0.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-details-view.component-Co5F8eWp.mjs → acorex-modules-document-management-details-view.component-CqK0rCnR.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-details-view.component-Co5F8eWp.mjs.map → acorex-modules-document-management-details-view.component-CqK0rCnR.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-DFRdS7s1.mjs → acorex-modules-document-management-drive-choose.component-r8KKbY1d.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-DFRdS7s1.mjs.map → acorex-modules-document-management-drive-choose.component-r8KKbY1d.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive.component-jGs09Jrd.mjs → acorex-modules-document-management-drive.component-0wxNHSJr.mjs} +8 -8
- package/fesm2022/{acorex-modules-document-management-drive.component-jGs09Jrd.mjs.map → acorex-modules-document-management-drive.component-0wxNHSJr.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DD9_xgL4.mjs → acorex-modules-document-management-large-icons-view.component-z-EQb_uG.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DD9_xgL4.mjs.map → acorex-modules-document-management-large-icons-view.component-z-EQb_uG.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CNBUzaUz.mjs → acorex-modules-document-management-large-tiles-view.component-Ce9h5m2O.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-CNBUzaUz.mjs.map → acorex-modules-document-management-large-tiles-view.component-Ce9h5m2O.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-link-dialog.component-CXzR7mUW.mjs → acorex-modules-document-management-link-dialog.component-OTa8ttto.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-link-dialog.component-CXzR7mUW.mjs.map → acorex-modules-document-management-link-dialog.component-OTa8ttto.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-list-view.component-D4DbyB6W.mjs → acorex-modules-document-management-list-view.component-DZKdXqAA.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-list-view.component-D4DbyB6W.mjs.map → acorex-modules-document-management-list-view.component-DZKdXqAA.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-CmMvrfKW.mjs → acorex-modules-document-management-meta-choose-popup.component-DsSo15AL.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-meta-choose-popup.component-CmMvrfKW.mjs.map → acorex-modules-document-management-meta-choose-popup.component-DsSo15AL.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-DHQjyq8s.mjs → acorex-modules-document-management-meta-selector-widget-column.component-gunvY9et.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-column.component-DHQjyq8s.mjs.map → acorex-modules-document-management-meta-selector-widget-column.component-gunvY9et.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-Cc6n71wn.mjs → acorex-modules-document-management-meta-selector-widget-designer.component-B-fYrGs1.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-designer.component-Cc6n71wn.mjs.map → acorex-modules-document-management-meta-selector-widget-designer.component-B-fYrGs1.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-D88h9eR6.mjs → acorex-modules-document-management-meta-selector-widget-view.component-D4gu7liQ.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-meta-selector-widget-view.component-D88h9eR6.mjs.map → acorex-modules-document-management-meta-selector-widget-view.component-D4gu7liQ.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-DoOyhnwQ.mjs → acorex-modules-document-management-permission-definition.provider-C31fYGZT.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-DoOyhnwQ.mjs.map → acorex-modules-document-management-permission-definition.provider-C31fYGZT.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-JDZWsFXL.mjs → acorex-modules-document-management-rename-node-dialog.component-CMmT_vVe.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component-JDZWsFXL.mjs.map → acorex-modules-document-management-rename-node-dialog.component-CMmT_vVe.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-share-dialog.component-DTzXwqHw.mjs → acorex-modules-document-management-share-dialog.component-DiyR6CiE.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-share-dialog.component-DTzXwqHw.mjs.map → acorex-modules-document-management-share-dialog.component-DiyR6CiE.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-BaNzKKG4.mjs → acorex-modules-document-management-share-email-dialog.component-CKlG3YwB.mjs} +4 -4
- package/fesm2022/{acorex-modules-document-management-share-email-dialog.component-BaNzKKG4.mjs.map → acorex-modules-document-management-share-email-dialog.component-CKlG3YwB.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BNTmgtYr.mjs → acorex-modules-document-management-small-icons-view.component-DI7c4jHZ.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-BNTmgtYr.mjs.map → acorex-modules-document-management-small-icons-view.component-DI7c4jHZ.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-CbCBAKyR.mjs → acorex-modules-document-management-small-tiles-view.component-BYJfNu6O.mjs} +5 -5
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-CbCBAKyR.mjs.map → acorex-modules-document-management-small-tiles-view.component-BYJfNu6O.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management.mjs +1 -1
- package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-BsAsK1EG.mjs → acorex-modules-form-template-management-acorex-modules-form-template-management-EsaVgkdd.mjs} +56 -56
- package/fesm2022/{acorex-modules-form-template-management-acorex-modules-form-template-management-BsAsK1EG.mjs.map → acorex-modules-form-template-management-acorex-modules-form-template-management-EsaVgkdd.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-category.entity-B3iAtREq.mjs → acorex-modules-form-template-management-category.entity-CC0qe4pv.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-category.entity-B3iAtREq.mjs.map → acorex-modules-form-template-management-category.entity-CC0qe4pv.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-designer.page-B-TIUKl7.mjs → acorex-modules-form-template-management-designer.page-B14QVCAw.mjs} +4 -4
- package/fesm2022/{acorex-modules-form-template-management-designer.page-B-TIUKl7.mjs.map → acorex-modules-form-template-management-designer.page-B14QVCAw.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-CTG95UDp.mjs → acorex-modules-form-template-management-permission-definition.provider-BMd6DvoR.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-permission-definition.provider-CTG95UDp.mjs.map → acorex-modules-form-template-management-permission-definition.provider-BMd6DvoR.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-settings.provider-BmFufTUd.mjs → acorex-modules-form-template-management-settings.provider-BYS5t4c_.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-settings.provider-BmFufTUd.mjs.map → acorex-modules-form-template-management-settings.provider-BYS5t4c_.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-template-picker.component-CNwhdnGC.mjs → acorex-modules-form-template-management-template-picker.component-C0mLCsFT.mjs} +4 -4
- package/fesm2022/{acorex-modules-form-template-management-template-picker.component-CNwhdnGC.mjs.map → acorex-modules-form-template-management-template-picker.component-C0mLCsFT.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-BNIx16WW.mjs → acorex-modules-form-template-management-template-widget-edit.component-CffnsEo2.mjs} +5 -5
- package/fesm2022/{acorex-modules-form-template-management-template-widget-edit.component-BNIx16WW.mjs.map → acorex-modules-form-template-management-template-widget-edit.component-CffnsEo2.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-template.entity-BGsixiEI.mjs → acorex-modules-form-template-management-template.entity-DTx9CejD.mjs} +2 -2
- package/fesm2022/{acorex-modules-form-template-management-template.entity-BGsixiEI.mjs.map → acorex-modules-form-template-management-template.entity-DTx9CejD.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-CzjuUz4o.mjs → acorex-modules-form-template-management-viewer-popup.component-BwVSDsN3.mjs} +5 -5
- package/fesm2022/{acorex-modules-form-template-management-viewer-popup.component-CzjuUz4o.mjs.map → acorex-modules-form-template-management-viewer-popup.component-BwVSDsN3.mjs.map} +1 -1
- package/fesm2022/acorex-modules-form-template-management.mjs +1 -1
- package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-C2JoHgaa.mjs → acorex-modules-issue-management-acorex-modules-issue-management-BhascWnH.mjs} +712 -644
- package/fesm2022/acorex-modules-issue-management-acorex-modules-issue-management-BhascWnH.mjs.map +1 -0
- package/fesm2022/acorex-modules-issue-management-capture-screen.component-BIWYcqOI.mjs +28 -0
- package/fesm2022/acorex-modules-issue-management-capture-screen.component-BIWYcqOI.mjs.map +1 -0
- package/fesm2022/acorex-modules-issue-management.mjs +1 -1
- package/fesm2022/acorex-modules-log-management.mjs +10 -10
- package/fesm2022/acorex-modules-log-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +35 -35
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-organization-management-add-item.component-D99TugmE.mjs → acorex-modules-organization-management-add-item.component-Br70YGJS.mjs} +4 -4
- package/fesm2022/{acorex-modules-organization-management-add-item.component-D99TugmE.mjs.map → acorex-modules-organization-management-add-item.component-Br70YGJS.mjs.map} +1 -1
- package/fesm2022/acorex-modules-organization-management-branch.entity-Bsgj4Pow.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-chart.entity-UAn44WCP.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-company.entity-D1A1HSkC.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-department.entity-BMojk26d.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-division.entity-BnWpX4US.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-employee.entity-DBuCVYZP.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-employment-type.entity-CWYu9tIg.mjs.map +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-DTNqHbxt.mjs → acorex-modules-organization-management-org-chart-configuration.page-DHu4UuxD.mjs} +5 -5
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.page-DTNqHbxt.mjs.map → acorex-modules-organization-management-org-chart-configuration.page-DHu4UuxD.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-BSO0GrAW.mjs → acorex-modules-organization-management-org-chart-configuration.service-CcZMGyCz.mjs} +4 -4
- package/fesm2022/{acorex-modules-organization-management-org-chart-configuration.service-BSO0GrAW.mjs.map → acorex-modules-organization-management-org-chart-configuration.service-CcZMGyCz.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-organization-management-org-chart.page-ioMhEPnQ.mjs → acorex-modules-organization-management-org-chart.page-CSMTnTDi.mjs} +12 -12
- package/fesm2022/{acorex-modules-organization-management-org-chart.page-ioMhEPnQ.mjs.map → acorex-modules-organization-management-org-chart.page-CSMTnTDi.mjs.map} +1 -1
- package/fesm2022/acorex-modules-organization-management-position-category.entity-DrZ9Ott4.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-position.entity-CY4TugWR.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-responsibility-category.entity-CmafbyCZ.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-responsibility.entity-DmLeFogS.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-role-category.entity-Cyt1dAKR.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-role.entity-BDErzNv-.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-settings.provider-hlbUXugb.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-skill-category.entity-BPgGGVT3.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-skill.entity-D9XojzUV.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management-team.entity-mYPhrc2l.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-management.mjs +125 -122
- package/fesm2022/acorex-modules-organization-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-CFoPmixl.mjs → acorex-modules-platform-management-acorex-modules-platform-management-TWTBqgn6.mjs} +107 -104
- package/fesm2022/{acorex-modules-platform-management-acorex-modules-platform-management-CFoPmixl.mjs.map → acorex-modules-platform-management-acorex-modules-platform-management-TWTBqgn6.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-platform-management-list-version.component-D0-Ya-Yx.mjs → acorex-modules-platform-management-list-version.component-DQ3Gp9kl.mjs} +5 -5
- package/fesm2022/{acorex-modules-platform-management-list-version.component-D0-Ya-Yx.mjs.map → acorex-modules-platform-management-list-version.component-DQ3Gp9kl.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-platform-management-settings.provider--ARXqBUY.mjs → acorex-modules-platform-management-settings.provider-FXMK1_44.mjs} +2 -2
- package/fesm2022/{acorex-modules-platform-management-settings.provider--ARXqBUY.mjs.map → acorex-modules-platform-management-settings.provider-FXMK1_44.mjs.map} +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +1 -1
- package/fesm2022/acorex-modules-project-management.mjs +43 -43
- package/fesm2022/acorex-modules-project-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-report-management-report-create-root.component-LrE6TkIp.mjs → acorex-modules-report-management-report-create-root.component-CcNJIUk2.mjs} +4 -4
- package/fesm2022/{acorex-modules-report-management-report-create-root.component-LrE6TkIp.mjs.map → acorex-modules-report-management-report-create-root.component-CcNJIUk2.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-BntIoMfN.mjs → acorex-modules-report-management-report-runner-root-page.component-sI0yzJ4s.mjs} +7 -7
- package/fesm2022/{acorex-modules-report-management-report-runner-root-page.component-BntIoMfN.mjs.map → acorex-modules-report-management-report-runner-root-page.component-sI0yzJ4s.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-report-management-run.command-CoXvPC15.mjs → acorex-modules-report-management-run.command-DHPmdkSZ.mjs} +4 -4
- package/fesm2022/{acorex-modules-report-management-run.command-CoXvPC15.mjs.map → acorex-modules-report-management-run.command-DHPmdkSZ.mjs.map} +1 -1
- package/fesm2022/acorex-modules-report-management.mjs +17 -17
- package/fesm2022/acorex-modules-report-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-scheduler-job-management.mjs +14 -14
- package/fesm2022/acorex-modules-scheduler-job-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-security-management.mjs +63 -63
- package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-settings-management-setting-page.component-BKwKLUpD.mjs → acorex-modules-settings-management-setting-page.component-BbnEqXKu.mjs} +4 -4
- package/fesm2022/{acorex-modules-settings-management-setting-page.component-BKwKLUpD.mjs.map → acorex-modules-settings-management-setting-page.component-BbnEqXKu.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-settings-management-setting-view.component-Dco7MvZr.mjs → acorex-modules-settings-management-setting-view.component-DP8mxDK9.mjs} +4 -4
- package/fesm2022/{acorex-modules-settings-management-setting-view.component-Dco7MvZr.mjs.map → acorex-modules-settings-management-setting-view.component-DP8mxDK9.mjs.map} +1 -1
- package/fesm2022/acorex-modules-settings-management.mjs +6 -6
- package/fesm2022/acorex-modules-settings-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-text-template-management-settings.provider-fX0dhWUL.mjs.map +1 -1
- package/fesm2022/acorex-modules-text-template-management.mjs +24 -24
- package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-training-management.mjs +43 -43
- package/fesm2022/acorex-modules-training-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-workflow-management-task-board.page-ChW_Hwf2.mjs → acorex-modules-workflow-management-task-board.page-Dh9nI9dz.mjs} +19 -19
- package/fesm2022/{acorex-modules-workflow-management-task-board.page-ChW_Hwf2.mjs.map → acorex-modules-workflow-management-task-board.page-Dh9nI9dz.mjs.map} +1 -1
- package/fesm2022/acorex-modules-workflow-management.mjs +12 -12
- package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
- package/issue-management/index.d.ts +63 -5
- package/package.json +5 -5
- package/fesm2022/acorex-modules-issue-management-acorex-modules-issue-management-C2JoHgaa.mjs.map +0 -1
- package/fesm2022/acorex-modules-issue-management-capture-screen.component-DTtUkL78.mjs +0 -28
- package/fesm2022/acorex-modules-issue-management-capture-screen.component-DTtUkL78.mjs.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-modules-auth-user-sessions.component-loloVwv0.mjs","sources":["../tmp-esm2022/auth/lib/pages/account/user-sessions/user-sessions.component.js"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDataSource } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPSettingService } from '@acorex/platform/common';\nimport { AXPPlatformScope } from '@acorex/platform/core';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, computed, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXMUserDeviceSessionsService } from './user-sessions.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/decorators\";\nimport * as i2 from \"@angular/common\";\nimport * as i3 from \"@angular/forms\";\nimport * as i4 from \"@acorex/components/select-box\";\nexport class AXMUserSessionsComponent {\n constructor() {\n this.AXPTokenExpirationDurations = {\n oneWeek: 'oneWeek',\n oneMonth: 'oneMonth',\n threeMonths: 'threeMonths',\n sixMonths: 'sixMonths',\n };\n this.items = signal([]);\n this.activeSession = signal(undefined);\n this.expireTime = signal(null);\n this.expirationItems = [\n { name: 'Terminate in 1 week', id: this.AXPTokenExpirationDurations.oneWeek },\n { name: 'Terminate in 1 month', id: this.AXPTokenExpirationDurations.oneMonth },\n { name: 'Terminate in 3 month', id: this.AXPTokenExpirationDurations.threeMonths },\n { name: 'Terminate in 6 month', id: this.AXPTokenExpirationDurations.sixMonths },\n ];\n this.dataSource = new AXDataSource({\n pageSize: 10,\n key: 'id',\n load: async (e) => {\n let items = this.expirationItems;\n return {\n items,\n total: items.length,\n };\n },\n });\n this.userDeviceSessionsService = inject(AXMUserDeviceSessionsService);\n this.cdRef = inject(ChangeDetectorRef);\n this.popupService = inject(AXPopupService);\n this.platform = inject(AXPlatform);\n this.translateService = inject(AXTranslationService);\n this.sessionService = inject(AXPSessionService);\n this.settingService = inject(AXPSettingService);\n // ✅ Use a computed signal to update dynamically when items change\n this.itemsWithIcons = computed(() => this.items().map((item) => ({\n ...item,\n icon: this.getDeviceIcon(item.deviceName),\n })));\n this.loadUserSessions();\n }\n async loadUserSessions() {\n try {\n let sessions = await this.userDeviceSessionsService.getSessions();\n this.items.set(sessions);\n const activeSession = await this.userDeviceSessionsService.getCurrentActiveSessions();\n this.activeSession.set(activeSession);\n const sessionTimeout = await this.settingService.scope(AXPPlatformScope.User).get('session-timeout');\n if (sessionTimeout && sessionTimeout.id in this.AXPTokenExpirationDurations) {\n let selectedItem = this.expirationItems.find((item) => item.id === sessionTimeout.id);\n if (selectedItem) {\n this.expireTime.set({ name: selectedItem.name, id: selectedItem.id });\n }\n }\n }\n catch (error) {\n console.error('Error loading user sessions', error);\n }\n }\n getDeviceIcon(deviceName) {\n if (!deviceName)\n return 'fa-solid fa-question'; // Default icon if no name is provided\n const lowerCaseName = deviceName.toLowerCase();\n if (lowerCaseName.includes('windows'))\n return 'fa-brands fa-microsoft';\n if (lowerCaseName.includes('mac'))\n return 'fa-brands fa-microsoft';\n if (lowerCaseName.includes('linux'))\n return 'fa-brands fa-microsoft';\n if (lowerCaseName.includes('android'))\n return 'fa-brands fa-android';\n if (lowerCaseName.includes('ios'))\n return 'fa-brands fa-apple';\n if (lowerCaseName.includes('ipad'))\n return 'fa-brands fa-apple';\n if (lowerCaseName.includes('iphone'))\n return 'fa-brands fa-apple';\n return 'fa-solid fa-question'; // Default icon if no match\n }\n onChangeSessionExpireTime(e) {\n this.userDeviceSessionsService.setTokenLifetimeMinutes(e.component.selectedItems[0]);\n }\n async onTerminate(sessionId) {\n if (!sessionId) {\n console.error('No item to terminate');\n return;\n }\n await this.userDeviceSessionsService.terminateSession(sessionId);\n await this.loadUserSessions();\n }\n async onTerminateAll() {\n await this.userDeviceSessionsService.terminateAllSession();\n await this.loadUserSessions();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXMUserSessionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.6\", type: AXMUserSessionsComponent, isStandalone: true, selector: \"ng-component\", ngImport: i0, template: \"<div class=\\\"ax-mx-auto ax-p-6\\\">\\n <p class=\\\"ax-font-semibold ax-text-base ax-text-on-lightest ax-mb-4\\\">This Device</p>\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <div class=\\\"ax-border-primary-200 ax-border ax-bg-primary-50 ax-rounded-lg\\\">\\n <i class=\\\"{{ getDeviceIcon(activeSession()?.deviceName) }} ax-text-primary-500 ax-m-3\\\"></i>\\n </div>\\n @if (activeSession()) {\\n <div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">{{ activeSession()?.deviceName }}</div>\\n <div class=\\\"ax-font-normal ax-text-sm ax-text-on-lightest\\\">{{ activeSession()?.operatingSystem }}</div>\\n <p class=\\\"ax-font-normal ax-text-xs ax-subtitle-on-lightest\\\">\\n {{ activeSession()?.location }} <span>{{ activeSession()?.lastLoginDate | date: 'YYYY/MM/DD HH:mm' }}</span>\\n </p>\\n </div>\\n </div>\\n }\\n </div>\\n\\n @if (itemsWithIcons() && itemsWithIcons().length > 0) {\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <div class=\\\"ax-border-danger-200 ax-border ax-bg-danger-50 ax-rounded-lg\\\">\\n <i class=\\\"ax-icon ax-icon-clear ax-text-danger-500 ax-m-3\\\"></i>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2 ax-cursor-pointer\\\" (click)=\\\"onTerminateAll()\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">Terminate All Other Sessions</div>\\n <p class=\\\"ax-font-normal ax-text-sm ax-subtitle-on-lightest\\\">Log out all devices exept for this one.</p>\\n </div>\\n </div>\\n }\\n @if (itemsWithIcons() && itemsWithIcons().length > 0) {\\n <div>\\n <p class=\\\"ax-font-semibold ax-text-base ax-text-on-lightest ax-mt-4 ax-mb-4\\\">Active Devices</p>\\n @for (item of itemsWithIcons(); track item) {\\n <div>\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-relative ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <i\\n class=\\\"ax-icon ax-icon-close ax-absolute ax-end-2 ax-top-2 ax-cursor-pointer\\\"\\n (click)=\\\"onTerminate(item.id)\\\"\\n ></i>\\n <div class=\\\"ax-border ax-rounded-lg\\\">\\n <i class=\\\"{{ item.icon }} ax-m-3\\\"></i>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">{{ item.deviceName }}</div>\\n <div class=\\\"ax-font-normal ax-text-sm ax-text-on-lightest\\\">{{ item.operatingSystem }}</div>\\n <p class=\\\"ax-font-normal ax-text-xs ax-subtitle-on-lightest\\\">\\n {{ item.location }} <span>{{ item.lastLoginDate | date: 'YYYY/MM/DD HH:mm' }}</span>\\n </p>\\n </div>\\n </div>\\n </div>\\n }\\n </div>\\n }\\n</div>\\n<ax-footer>\\n <div class=\\\"ax-flex-col ax-w-full\\\">\\n <div>\\n <p class=\\\"ax-text-danger-500 ax-font-medium ax-text-base\\\">Terminate Old Sessions</p>\\n </div>\\n <div>\\n <ax-suffix>\\n <div class=\\\"ax-flex ax-items-center ax-justify-between ax-mt-4\\\">\\n <div class=\\\"ax-font-normal ax-text-base ax-text-on-lightest\\\">If inactive for...</div>\\n <div class=\\\"ax-w-3/6\\\">\\n <ax-select-box\\n [ngModel]=\\\"expireTime()\\\"\\n (onValueChanged)=\\\"onChangeSessionExpireTime($event)\\\"\\n [dataSource]=\\\"dataSource\\\"\\n textField=\\\"name\\\"\\n valueField=\\\"id\\\"\\n placeholder=\\\"Choose...\\\"\\n >\\n </ax-select-box>\\n </div>\\n </div>\\n </ax-suffix>\\n </div>\\n </div>\\n</ax-footer>\\n\", dependencies: [{ kind: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i1.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: CommonModule }, { kind: \"pipe\", type: i2.DatePipe, name: \"date\" }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i3.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i3.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXSelectBoxModule }, { kind: \"component\", type: i4.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: AXDropdownModule }, { kind: \"ngmodule\", type: AXPopoverModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.6\", ngImport: i0, type: AXMUserSessionsComponent, decorators: [{\n type: Component,\n args: [{ changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n AXButtonModule,\n AXDecoratorModule,\n CommonModule,\n FormsModule,\n AXSelectBoxModule,\n AXDropdownModule,\n AXPopoverModule,\n ], template: \"<div class=\\\"ax-mx-auto ax-p-6\\\">\\n <p class=\\\"ax-font-semibold ax-text-base ax-text-on-lightest ax-mb-4\\\">This Device</p>\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <div class=\\\"ax-border-primary-200 ax-border ax-bg-primary-50 ax-rounded-lg\\\">\\n <i class=\\\"{{ getDeviceIcon(activeSession()?.deviceName) }} ax-text-primary-500 ax-m-3\\\"></i>\\n </div>\\n @if (activeSession()) {\\n <div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">{{ activeSession()?.deviceName }}</div>\\n <div class=\\\"ax-font-normal ax-text-sm ax-text-on-lightest\\\">{{ activeSession()?.operatingSystem }}</div>\\n <p class=\\\"ax-font-normal ax-text-xs ax-subtitle-on-lightest\\\">\\n {{ activeSession()?.location }} <span>{{ activeSession()?.lastLoginDate | date: 'YYYY/MM/DD HH:mm' }}</span>\\n </p>\\n </div>\\n </div>\\n }\\n </div>\\n\\n @if (itemsWithIcons() && itemsWithIcons().length > 0) {\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <div class=\\\"ax-border-danger-200 ax-border ax-bg-danger-50 ax-rounded-lg\\\">\\n <i class=\\\"ax-icon ax-icon-clear ax-text-danger-500 ax-m-3\\\"></i>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2 ax-cursor-pointer\\\" (click)=\\\"onTerminateAll()\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">Terminate All Other Sessions</div>\\n <p class=\\\"ax-font-normal ax-text-sm ax-subtitle-on-lightest\\\">Log out all devices exept for this one.</p>\\n </div>\\n </div>\\n }\\n @if (itemsWithIcons() && itemsWithIcons().length > 0) {\\n <div>\\n <p class=\\\"ax-font-semibold ax-text-base ax-text-on-lightest ax-mt-4 ax-mb-4\\\">Active Devices</p>\\n @for (item of itemsWithIcons(); track item) {\\n <div>\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-relative ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <i\\n class=\\\"ax-icon ax-icon-close ax-absolute ax-end-2 ax-top-2 ax-cursor-pointer\\\"\\n (click)=\\\"onTerminate(item.id)\\\"\\n ></i>\\n <div class=\\\"ax-border ax-rounded-lg\\\">\\n <i class=\\\"{{ item.icon }} ax-m-3\\\"></i>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">{{ item.deviceName }}</div>\\n <div class=\\\"ax-font-normal ax-text-sm ax-text-on-lightest\\\">{{ item.operatingSystem }}</div>\\n <p class=\\\"ax-font-normal ax-text-xs ax-subtitle-on-lightest\\\">\\n {{ item.location }} <span>{{ item.lastLoginDate | date: 'YYYY/MM/DD HH:mm' }}</span>\\n </p>\\n </div>\\n </div>\\n </div>\\n }\\n </div>\\n }\\n</div>\\n<ax-footer>\\n <div class=\\\"ax-flex-col ax-w-full\\\">\\n <div>\\n <p class=\\\"ax-text-danger-500 ax-font-medium ax-text-base\\\">Terminate Old Sessions</p>\\n </div>\\n <div>\\n <ax-suffix>\\n <div class=\\\"ax-flex ax-items-center ax-justify-between ax-mt-4\\\">\\n <div class=\\\"ax-font-normal ax-text-base ax-text-on-lightest\\\">If inactive for...</div>\\n <div class=\\\"ax-w-3/6\\\">\\n <ax-select-box\\n [ngModel]=\\\"expireTime()\\\"\\n (onValueChanged)=\\\"onChangeSessionExpireTime($event)\\\"\\n [dataSource]=\\\"dataSource\\\"\\n textField=\\\"name\\\"\\n valueField=\\\"id\\\"\\n placeholder=\\\"Choose...\\\"\\n >\\n </ax-select-box>\\n </div>\\n </div>\\n </ax-suffix>\\n </div>\\n </div>\\n</ax-footer>\\n\" }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1zZXNzaW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXV0aC9zcmMvbGliL3BhZ2VzL2FjY291bnQvdXNlci1zZXNzaW9ucy91c2VyLXNlc3Npb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hdXRoL3NyYy9saWIvcGFnZXMvYWNjb3VudC91c2VyLXNlc3Npb25zL3VzZXItc2Vzc2lvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQXVCLE1BQU0sb0JBQW9CLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9D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QVcsOFZBQ1gsaUJBQWlCLHduQkFDakIsZ0JBQWdCLDhCQUNoQixlQUFlOzsyRkFHTix3QkFBd0I7a0JBYnBDLFNBQVM7c0NBRVMsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixlQUFlO3FCQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2UsIEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IEFYUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wb3BvdmVyJztcbmltcG9ydCB7IEFYUG9wdXBTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhQbGF0Zm9ybSB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWE1TZWN1cml0eU1hbmFnZW1lbnREZXZpY2VTZXNzaW9uc0VudGl0eU1vZGVsIH0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL3NlY3VyaXR5LW1hbmFnZW1lbnQnO1xuaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQU2V0dGluZ1NlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBQbGF0Zm9ybVNjb3BlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFYTVVzZXJEZXZpY2VTZXNzaW9uc1NlcnZpY2UgfSBmcm9tICcuL3VzZXItc2Vzc2lvbnMuc2VydmljZSc7XG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXItc2Vzc2lvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgICBBWERyb3Bkb3duTW9kdWxlLFxuICAgIEFYUG9wb3Zlck1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNVXNlclNlc3Npb25zQ29tcG9uZW50IHtcbiAgQVhQVG9rZW5FeHBpcmF0aW9uRHVyYXRpb25zID0ge1xuICAgIG9uZVdlZWs6ICdvbmVXZWVrJyxcbiAgICBvbmVNb250aDogJ29uZU1vbnRoJyxcbiAgICB0aHJlZU1vbnRoczogJ3RocmVlTW9udGhzJyxcbiAgICBzaXhNb250aHM6ICdzaXhNb250aHMnLFxuICB9O1xuXG4gIGl0ZW1zID0gc2lnbmFsPEFYTVNlY3VyaXR5TWFuYWdlbWVudERldmljZVNlc3Npb25zRW50aXR5TW9kZWxbXT4oW10pO1xuICBhY3RpdmVTZXNzaW9uID0gc2lnbmFsPEFYTVNlY3VyaXR5TWFuYWdlbWVudERldmljZVNlc3Npb25zRW50aXR5TW9kZWwgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIGV4cGlyZVRpbWUgPSBzaWduYWw8eyBuYW1lOiBzdHJpbmc7IGlkOiBzdHJpbmcgfSB8IG51bGw+KG51bGwpO1xuXG4gIGV4cGlyYXRpb25JdGVtcyA9IFtcbiAgICB7IG5hbWU6ICdUZXJtaW5hdGUgaW4gMSB3ZWVrJywgaWQ6IHRoaXMuQVhQVG9rZW5FeHBpcmF0aW9uRHVyYXRpb25zLm9uZVdlZWsgfSxcbiAgICB7IG5hbWU6ICdUZXJtaW5hdGUgaW4gMSBtb250aCcsIGlkOiB0aGlzLkFYUFRva2VuRXhwaXJhdGlvbkR1cmF0aW9ucy5vbmVNb250aCB9LFxuICAgIHsgbmFtZTogJ1Rlcm1pbmF0ZSBpbiAzIG1vbnRoJywgaWQ6IHRoaXMuQVhQVG9rZW5FeHBpcmF0aW9uRHVyYXRpb25zLnRocmVlTW9udGhzIH0sXG4gICAgeyBuYW1lOiAnVGVybWluYXRlIGluIDYgbW9udGgnLCBpZDogdGhpcy5BWFBUb2tlbkV4cGlyYXRpb25EdXJhdGlvbnMuc2l4TW9udGhzIH0sXG4gIF07XG4gIHByb3RlY3RlZCBkYXRhU291cmNlID0gbmV3IEFYRGF0YVNvdXJjZTxhbnk+KHtcbiAgICBwYWdlU2l6ZTogMTAsXG4gICAga2V5OiAnaWQnLFxuICAgIGxvYWQ6IGFzeW5jIChlKSA9PiB7XG4gICAgICBsZXQgaXRlbXMgPSB0aGlzLmV4cGlyYXRpb25JdGVtcztcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGl0ZW1zLFxuICAgICAgICB0b3RhbDogaXRlbXMubGVuZ3RoLFxuICAgICAgfTtcbiAgICB9LFxuICB9KTtcbiAgcHJpdmF0ZSB1c2VyRGV2aWNlU2Vzc2lvbnNTZXJ2aWNlID0gaW5qZWN0KEFYTVVzZXJEZXZpY2VTZXNzaW9uc1NlcnZpY2UpO1xuICBwcml2YXRlIGNkUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSBwb3B1cFNlcnZpY2UgPSBpbmplY3QoQVhQb3B1cFNlcnZpY2UpO1xuICBwcml2YXRlIHBsYXRmb3JtID0gaW5qZWN0KEFYUGxhdGZvcm0pO1xuICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2UgPSBpbmplY3QoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHNlc3Npb25TZXJ2aWNlID0gaW5qZWN0KEFYUFNlc3Npb25TZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzZXR0aW5nU2VydmljZSA9IGluamVjdChBWFBTZXR0aW5nU2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5sb2FkVXNlclNlc3Npb25zKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWRVc2VyU2Vzc2lvbnMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGxldCBzZXNzaW9ucyA9IGF3YWl0IHRoaXMudXNlckRldmljZVNlc3Npb25zU2VydmljZS5nZXRTZXNzaW9ucygpO1xuICAgICAgdGhpcy5pdGVtcy5zZXQoc2Vzc2lvbnMpO1xuICAgICAgY29uc3QgYWN0aXZlU2Vzc2lvbiA9IGF3YWl0IHRoaXMudXNlckRldmljZVNlc3Npb25zU2VydmljZS5nZXRDdXJyZW50QWN0aXZlU2Vzc2lvbnMoKTtcbiAgICAgIHRoaXMuYWN0aXZlU2Vzc2lvbi5zZXQoYWN0aXZlU2Vzc2lvbik7XG4gICAgICBjb25zdCBzZXNzaW9uVGltZW91dCA9IGF3YWl0IHRoaXMuc2V0dGluZ1NlcnZpY2Uuc2NvcGUoQVhQUGxhdGZvcm1TY29wZS5Vc2VyKS5nZXQoJ3Nlc3Npb24tdGltZW91dCcpO1xuICAgICAgaWYgKHNlc3Npb25UaW1lb3V0ICYmIHNlc3Npb25UaW1lb3V0LmlkIGluIHRoaXMuQVhQVG9rZW5FeHBpcmF0aW9uRHVyYXRpb25zKSB7XG4gICAgICAgIGxldCBzZWxlY3RlZEl0ZW0gPSB0aGlzLmV4cGlyYXRpb25JdGVtcy5maW5kKChpdGVtKSA9PiBpdGVtLmlkID09PSBzZXNzaW9uVGltZW91dC5pZCk7XG4gICAgICAgIGlmIChzZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICB0aGlzLmV4cGlyZVRpbWUuc2V0KHsgbmFtZTogc2VsZWN0ZWRJdGVtLm5hbWUsIGlkOiBzZWxlY3RlZEl0ZW0uaWQgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyB1c2VyIHNlc3Npb25zJywgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8vIOKchSBVc2UgYSBjb21wdXRlZCBzaWduYWwgdG8gdXBkYXRlIGR5bmFtaWNhbGx5IHdoZW4gaXRlbXMgY2hhbmdlXG4gIGl0ZW1zV2l0aEljb25zID0gY29tcHV0ZWQoKCkgPT5cbiAgICB0aGlzLml0ZW1zKCkubWFwKChpdGVtKSA9PiAoe1xuICAgICAgLi4uaXRlbSxcbiAgICAgIGljb246IHRoaXMuZ2V0RGV2aWNlSWNvbihpdGVtLmRldmljZU5hbWUpLFxuICAgIH0pKSxcbiAgKTtcblxuICBnZXREZXZpY2VJY29uKGRldmljZU5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgaWYgKCFkZXZpY2VOYW1lKSByZXR1cm4gJ2ZhLXNvbGlkIGZhLXF1ZXN0aW9uJzsgLy8gRGVmYXVsdCBpY29uIGlmIG5vIG5hbWUgaXMgcHJvdmlkZWRcblxuICAgIGNvbnN0IGxvd2VyQ2FzZU5hbWUgPSBkZXZpY2VOYW1lLnRvTG93ZXJDYXNlKCk7XG5cbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnd2luZG93cycpKSByZXR1cm4gJ2ZhLWJyYW5kcyBmYS1taWNyb3NvZnQnO1xuICAgIGlmIChsb3dlckNhc2VOYW1lLmluY2x1ZGVzKCdtYWMnKSkgcmV0dXJuICdmYS1icmFuZHMgZmEtbWljcm9zb2Z0JztcbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnbGludXgnKSkgcmV0dXJuICdmYS1icmFuZHMgZmEtbWljcm9zb2Z0JztcbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnYW5kcm9pZCcpKSByZXR1cm4gJ2ZhLWJyYW5kcyBmYS1hbmRyb2lkJztcbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnaW9zJykpIHJldHVybiAnZmEtYnJhbmRzIGZhLWFwcGxlJztcbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnaXBhZCcpKSByZXR1cm4gJ2ZhLWJyYW5kcyBmYS1hcHBsZSc7XG4gICAgaWYgKGxvd2VyQ2FzZU5hbWUuaW5jbHVkZXMoJ2lwaG9uZScpKSByZXR1cm4gJ2ZhLWJyYW5kcyBmYS1hcHBsZSc7XG5cbiAgICByZXR1cm4gJ2ZhLXNvbGlkIGZhLXF1ZXN0aW9uJzsgLy8gRGVmYXVsdCBpY29uIGlmIG5vIG1hdGNoXG4gIH1cblxuICBwcm90ZWN0ZWQgb25DaGFuZ2VTZXNzaW9uRXhwaXJlVGltZShlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50KSB7XG4gICAgdGhpcy51c2VyRGV2aWNlU2Vzc2lvbnNTZXJ2aWNlLnNldFRva2VuTGlmZXRpbWVNaW51dGVzKGUuY29tcG9uZW50LnNlbGVjdGVkSXRlbXNbMF0pO1xuICB9XG5cbiAgYXN5bmMgb25UZXJtaW5hdGUoc2Vzc2lvbklkOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXNlc3Npb25JZCkge1xuICAgICAgY29uc29sZS5lcnJvcignTm8gaXRlbSB0byB0ZXJtaW5hdGUnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgYXdhaXQgdGhpcy51c2VyRGV2aWNlU2Vzc2lvbnNTZXJ2aWNlLnRlcm1pbmF0ZVNlc3Npb24oc2Vzc2lvbklkKTtcbiAgICBhd2FpdCB0aGlzLmxvYWRVc2VyU2Vzc2lvbnMoKTtcbiAgfVxuXG4gIGFzeW5jIG9uVGVybWluYXRlQWxsKCkge1xuICAgIGF3YWl0IHRoaXMudXNlckRldmljZVNlc3Npb25zU2VydmljZS50ZXJtaW5hdGVBbGxTZXNzaW9uKCk7XG4gICAgYXdhaXQgdGhpcy5sb2FkVXNlclNlc3Npb25zKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC1teC1hdXRvIGF4LXAtNlwiPlxuICA8cCBjbGFzcz1cImF4LWZvbnQtc2VtaWJvbGQgYXgtdGV4dC1iYXNlIGF4LXRleHQtb24tbGlnaHRlc3QgYXgtbWItNFwiPlRoaXMgRGV2aWNlPC9wPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJheC1mbGV4IGF4LWJvcmRlciBheC1pdGVtcy1jZW50ZXIgYXgtcm91bmRlZC1sZyBheC1ib3JkZXItbGlnaHRlc3QgYXgtYmctbGlnaHRlc3QgYXgtdGV4dC1vbi1saWdodGVzdCBheC1tYi0zIGF4LXAtM1wiXG4gICAgPlxuICAgIDxkaXYgY2xhc3M9XCJheC1ib3JkZXItcHJpbWFyeS0yMDAgYXgtYm9yZGVyIGF4LWJnLXByaW1hcnktNTAgYXgtcm91bmRlZC1sZ1wiPlxuICAgICAgPGkgY2xhc3M9XCJ7eyBnZXREZXZpY2VJY29uKGFjdGl2ZVNlc3Npb24oKT8uZGV2aWNlTmFtZSkgfX0gYXgtdGV4dC1wcmltYXJ5LTUwMCBheC1tLTNcIj48L2k+XG4gICAgPC9kaXY+XG4gICAgQGlmIChhY3RpdmVTZXNzaW9uKCkpIHtcbiAgICAgIDxkaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LW1sLTJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZm9udC1tZWRpdW0gYXgtdGV4dC1iYXNlIGF4LXRleHQtb24tbGlnaHRlc3RcIj57eyBhY3RpdmVTZXNzaW9uKCk/LmRldmljZU5hbWUgfX08L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZm9udC1ub3JtYWwgYXgtdGV4dC1zbSBheC10ZXh0LW9uLWxpZ2h0ZXN0XCI+e3sgYWN0aXZlU2Vzc2lvbigpPy5vcGVyYXRpbmdTeXN0ZW0gfX08L2Rpdj5cbiAgICAgICAgICA8cCBjbGFzcz1cImF4LWZvbnQtbm9ybWFsIGF4LXRleHQteHMgYXgtc3VidGl0bGUtb24tbGlnaHRlc3RcIj5cbiAgICAgICAgICAgIHt7IGFjdGl2ZVNlc3Npb24oKT8ubG9jYXRpb24gfX0gPHNwYW4+e3sgYWN0aXZlU2Vzc2lvbigpPy5sYXN0TG9naW5EYXRlIHwgZGF0ZTogJ1lZWVkvTU0vREQgSEg6bW0nIH19PC9zcGFuPlxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIEBpZiAoaXRlbXNXaXRoSWNvbnMoKSAmJiBpdGVtc1dpdGhJY29ucygpLmxlbmd0aCA+IDApIHtcbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImF4LWZsZXggYXgtYm9yZGVyIGF4LWl0ZW1zLWNlbnRlciBheC1yb3VuZGVkLWxnIGF4LWJvcmRlci1saWdodGVzdCBheC1iZy1saWdodGVzdCBheC10ZXh0LW9uLWxpZ2h0ZXN0IGF4LW1iLTMgYXgtcC0zXCJcbiAgICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1ib3JkZXItZGFuZ2VyLTIwMCBheC1ib3JkZXIgYXgtYmctZGFuZ2VyLTUwIGF4LXJvdW5kZWQtbGdcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJheC1pY29uIGF4LWljb24tY2xlYXIgYXgtdGV4dC1kYW5nZXItNTAwIGF4LW0tM1wiPjwvaT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtbWwtMiBheC1jdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblRlcm1pbmF0ZUFsbCgpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mb250LW1lZGl1bSBheC10ZXh0LWJhc2UgYXgtdGV4dC1vbi1saWdodGVzdFwiPlRlcm1pbmF0ZSBBbGwgT3RoZXIgU2Vzc2lvbnM8L2Rpdj5cbiAgICAgICAgPHAgY2xhc3M9XCJheC1mb250LW5vcm1hbCBheC10ZXh0LXNtIGF4LXN1YnRpdGxlLW9uLWxpZ2h0ZXN0XCI+TG9nIG91dCBhbGwgZGV2aWNlcyBleGVwdCBmb3IgdGhpcyBvbmUuPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIH1cbiAgQGlmIChpdGVtc1dpdGhJY29ucygpICYmIGl0ZW1zV2l0aEljb25zKCkubGVuZ3RoID4gMCkge1xuICAgIDxkaXY+XG4gICAgICA8cCBjbGFzcz1cImF4LWZvbnQtc2VtaWJvbGQgYXgtdGV4dC1iYXNlIGF4LXRleHQtb24tbGlnaHRlc3QgYXgtbXQtNCBheC1tYi00XCI+QWN0aXZlIERldmljZXM8L3A+XG4gICAgICBAZm9yIChpdGVtIG9mIGl0ZW1zV2l0aEljb25zKCk7IHRyYWNrIGl0ZW0pIHtcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImF4LWZsZXggYXgtYm9yZGVyIGF4LWl0ZW1zLWNlbnRlciBheC1yZWxhdGl2ZSBheC1yb3VuZGVkLWxnIGF4LWJvcmRlci1saWdodGVzdCBheC1iZy1saWdodGVzdCBheC10ZXh0LW9uLWxpZ2h0ZXN0IGF4LW1iLTMgYXgtcC0zXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWNsb3NlIGF4LWFic29sdXRlIGF4LWVuZC0yIGF4LXRvcC0yIGF4LWN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uVGVybWluYXRlKGl0ZW0uaWQpXCJcbiAgICAgICAgICAgID48L2k+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtYm9yZGVyIGF4LXJvdW5kZWQtbGdcIj5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJ7eyBpdGVtLmljb24gfX0gYXgtbS0zXCI+PC9pPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1tbC0yXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mb250LW1lZGl1bSBheC10ZXh0LWJhc2UgYXgtdGV4dC1vbi1saWdodGVzdFwiPnt7IGl0ZW0uZGV2aWNlTmFtZSB9fTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZm9udC1ub3JtYWwgYXgtdGV4dC1zbSBheC10ZXh0LW9uLWxpZ2h0ZXN0XCI+e3sgaXRlbS5vcGVyYXRpbmdTeXN0ZW0gfX08L2Rpdj5cbiAgICAgICAgICAgICAgPHAgY2xhc3M9XCJheC1mb250LW5vcm1hbCBheC10ZXh0LXhzIGF4LXN1YnRpdGxlLW9uLWxpZ2h0ZXN0XCI+XG4gICAgICAgICAgICAgICAge3sgaXRlbS5sb2NhdGlvbiB9fSA8c3Bhbj57eyBpdGVtLmxhc3RMb2dpbkRhdGUgfCBkYXRlOiAnWVlZWS9NTS9ERCBISDptbScgfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG48YXgtZm9vdGVyPlxuICA8ZGl2IGNsYXNzPVwiYXgtZmxleC1jb2wgYXgtdy1mdWxsXCI+XG4gICAgPGRpdj5cbiAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1kYW5nZXItNTAwIGF4LWZvbnQtbWVkaXVtIGF4LXRleHQtYmFzZVwiPlRlcm1pbmF0ZSBPbGQgU2Vzc2lvbnM8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWJldHdlZW4gYXgtbXQtNFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mb250LW5vcm1hbCBheC10ZXh0LWJhc2UgYXgtdGV4dC1vbi1saWdodGVzdFwiPklmIGluYWN0aXZlIGZvci4uLjwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC13LTMvNlwiPlxuICAgICAgICAgICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICAgICAgICAgW25nTW9kZWxdPVwiZXhwaXJlVGltZSgpXCJcbiAgICAgICAgICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cIm9uQ2hhbmdlU2Vzc2lvbkV4cGlyZVRpbWUoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIlxuICAgICAgICAgICAgICB0ZXh0RmllbGQ9XCJuYW1lXCJcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZD1cImlkXCJcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJDaG9vc2UuLi5cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9heC1zdWZmaXg+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9heC1mb290ZXI+XG4iXX0="],"names":["i2","i3"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-modules-auth-user-sessions.component-D9D-vWic.mjs","sources":["../tmp-esm2022/auth/lib/pages/account/user-sessions/user-sessions.component.js"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDataSource } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex/platform/auth';\nimport { AXPSettingService } from '@acorex/platform/common';\nimport { AXPPlatformScope } from '@acorex/platform/core';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, computed, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXMUserDeviceSessionsService } from './user-sessions.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/decorators\";\nimport * as i2 from \"@angular/common\";\nimport * as i3 from \"@angular/forms\";\nimport * as i4 from \"@acorex/components/select-box\";\nexport class AXMUserSessionsComponent {\n constructor() {\n this.AXPTokenExpirationDurations = {\n oneWeek: 'oneWeek',\n oneMonth: 'oneMonth',\n threeMonths: 'threeMonths',\n sixMonths: 'sixMonths',\n };\n this.items = signal([]);\n this.activeSession = signal(undefined);\n this.expireTime = signal(null);\n this.expirationItems = [\n { name: 'Terminate in 1 week', id: this.AXPTokenExpirationDurations.oneWeek },\n { name: 'Terminate in 1 month', id: this.AXPTokenExpirationDurations.oneMonth },\n { name: 'Terminate in 3 month', id: this.AXPTokenExpirationDurations.threeMonths },\n { name: 'Terminate in 6 month', id: this.AXPTokenExpirationDurations.sixMonths },\n ];\n this.dataSource = new AXDataSource({\n pageSize: 10,\n key: 'id',\n load: async (e) => {\n let items = this.expirationItems;\n return {\n items,\n total: items.length,\n };\n },\n });\n this.userDeviceSessionsService = inject(AXMUserDeviceSessionsService);\n this.cdRef = inject(ChangeDetectorRef);\n this.popupService = inject(AXPopupService);\n this.platform = inject(AXPlatform);\n this.translateService = inject(AXTranslationService);\n this.sessionService = inject(AXPSessionService);\n this.settingService = inject(AXPSettingService);\n // ✅ Use a computed signal to update dynamically when items change\n this.itemsWithIcons = computed(() => this.items().map((item) => ({\n ...item,\n icon: this.getDeviceIcon(item.deviceName),\n })));\n this.loadUserSessions();\n }\n async loadUserSessions() {\n try {\n let sessions = await this.userDeviceSessionsService.getSessions();\n this.items.set(sessions);\n const activeSession = await this.userDeviceSessionsService.getCurrentActiveSessions();\n this.activeSession.set(activeSession);\n const sessionTimeout = await this.settingService.scope(AXPPlatformScope.User).get('session-timeout');\n if (sessionTimeout && sessionTimeout.id in this.AXPTokenExpirationDurations) {\n let selectedItem = this.expirationItems.find((item) => item.id === sessionTimeout.id);\n if (selectedItem) {\n this.expireTime.set({ name: selectedItem.name, id: selectedItem.id });\n }\n }\n }\n catch (error) {\n console.error('Error loading user sessions', error);\n }\n }\n getDeviceIcon(deviceName) {\n if (!deviceName)\n return 'fa-solid fa-question'; // Default icon if no name is provided\n const lowerCaseName = deviceName.toLowerCase();\n if (lowerCaseName.includes('windows'))\n return 'fa-brands fa-microsoft';\n if (lowerCaseName.includes('mac'))\n return 'fa-brands fa-microsoft';\n if (lowerCaseName.includes('linux'))\n return 'fa-brands fa-microsoft';\n if (lowerCaseName.includes('android'))\n return 'fa-brands fa-android';\n if (lowerCaseName.includes('ios'))\n return 'fa-brands fa-apple';\n if (lowerCaseName.includes('ipad'))\n return 'fa-brands fa-apple';\n if (lowerCaseName.includes('iphone'))\n return 'fa-brands fa-apple';\n return 'fa-solid fa-question'; // Default icon if no match\n }\n onChangeSessionExpireTime(e) {\n this.userDeviceSessionsService.setTokenLifetimeMinutes(e.component.selectedItems[0]);\n }\n async onTerminate(sessionId) {\n if (!sessionId) {\n console.error('No item to terminate');\n return;\n }\n await this.userDeviceSessionsService.terminateSession(sessionId);\n await this.loadUserSessions();\n }\n async onTerminateAll() {\n await this.userDeviceSessionsService.terminateAllSession();\n await this.loadUserSessions();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.7\", ngImport: i0, type: AXMUserSessionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.7\", type: AXMUserSessionsComponent, isStandalone: true, selector: \"ng-component\", ngImport: i0, template: \"<div class=\\\"ax-mx-auto ax-p-6\\\">\\n <p class=\\\"ax-font-semibold ax-text-base ax-text-on-lightest ax-mb-4\\\">This Device</p>\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <div class=\\\"ax-border-primary-200 ax-border ax-bg-primary-50 ax-rounded-lg\\\">\\n <i class=\\\"{{ getDeviceIcon(activeSession()?.deviceName) }} ax-text-primary-500 ax-m-3\\\"></i>\\n </div>\\n @if (activeSession()) {\\n <div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">{{ activeSession()?.deviceName }}</div>\\n <div class=\\\"ax-font-normal ax-text-sm ax-text-on-lightest\\\">{{ activeSession()?.operatingSystem }}</div>\\n <p class=\\\"ax-font-normal ax-text-xs ax-subtitle-on-lightest\\\">\\n {{ activeSession()?.location }} <span>{{ activeSession()?.lastLoginDate | date: 'YYYY/MM/DD HH:mm' }}</span>\\n </p>\\n </div>\\n </div>\\n }\\n </div>\\n\\n @if (itemsWithIcons() && itemsWithIcons().length > 0) {\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <div class=\\\"ax-border-danger-200 ax-border ax-bg-danger-50 ax-rounded-lg\\\">\\n <i class=\\\"ax-icon ax-icon-clear ax-text-danger-500 ax-m-3\\\"></i>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2 ax-cursor-pointer\\\" (click)=\\\"onTerminateAll()\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">Terminate All Other Sessions</div>\\n <p class=\\\"ax-font-normal ax-text-sm ax-subtitle-on-lightest\\\">Log out all devices exept for this one.</p>\\n </div>\\n </div>\\n }\\n @if (itemsWithIcons() && itemsWithIcons().length > 0) {\\n <div>\\n <p class=\\\"ax-font-semibold ax-text-base ax-text-on-lightest ax-mt-4 ax-mb-4\\\">Active Devices</p>\\n @for (item of itemsWithIcons(); track item) {\\n <div>\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-relative ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <i\\n class=\\\"ax-icon ax-icon-close ax-absolute ax-end-2 ax-top-2 ax-cursor-pointer\\\"\\n (click)=\\\"onTerminate(item.id)\\\"\\n ></i>\\n <div class=\\\"ax-border ax-rounded-lg\\\">\\n <i class=\\\"{{ item.icon }} ax-m-3\\\"></i>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">{{ item.deviceName }}</div>\\n <div class=\\\"ax-font-normal ax-text-sm ax-text-on-lightest\\\">{{ item.operatingSystem }}</div>\\n <p class=\\\"ax-font-normal ax-text-xs ax-subtitle-on-lightest\\\">\\n {{ item.location }} <span>{{ item.lastLoginDate | date: 'YYYY/MM/DD HH:mm' }}</span>\\n </p>\\n </div>\\n </div>\\n </div>\\n }\\n </div>\\n }\\n</div>\\n<ax-footer>\\n <div class=\\\"ax-flex-col ax-w-full\\\">\\n <div>\\n <p class=\\\"ax-text-danger-500 ax-font-medium ax-text-base\\\">Terminate Old Sessions</p>\\n </div>\\n <div>\\n <ax-suffix>\\n <div class=\\\"ax-flex ax-items-center ax-justify-between ax-mt-4\\\">\\n <div class=\\\"ax-font-normal ax-text-base ax-text-on-lightest\\\">If inactive for...</div>\\n <div class=\\\"ax-w-3/6\\\">\\n <ax-select-box\\n [ngModel]=\\\"expireTime()\\\"\\n (onValueChanged)=\\\"onChangeSessionExpireTime($event)\\\"\\n [dataSource]=\\\"dataSource\\\"\\n textField=\\\"name\\\"\\n valueField=\\\"id\\\"\\n placeholder=\\\"Choose...\\\"\\n >\\n </ax-select-box>\\n </div>\\n </div>\\n </ax-suffix>\\n </div>\\n </div>\\n</ax-footer>\\n\", dependencies: [{ kind: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i1.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: CommonModule }, { kind: \"pipe\", type: i2.DatePipe, name: \"date\" }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i3.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i3.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXSelectBoxModule }, { kind: \"component\", type: i4.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: AXDropdownModule }, { kind: \"ngmodule\", type: AXPopoverModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.7\", ngImport: i0, type: AXMUserSessionsComponent, decorators: [{\n type: Component,\n args: [{ changeDetection: ChangeDetectionStrategy.OnPush, imports: [\n AXButtonModule,\n AXDecoratorModule,\n CommonModule,\n FormsModule,\n AXSelectBoxModule,\n AXDropdownModule,\n AXPopoverModule,\n ], template: \"<div class=\\\"ax-mx-auto ax-p-6\\\">\\n <p class=\\\"ax-font-semibold ax-text-base ax-text-on-lightest ax-mb-4\\\">This Device</p>\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <div class=\\\"ax-border-primary-200 ax-border ax-bg-primary-50 ax-rounded-lg\\\">\\n <i class=\\\"{{ getDeviceIcon(activeSession()?.deviceName) }} ax-text-primary-500 ax-m-3\\\"></i>\\n </div>\\n @if (activeSession()) {\\n <div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">{{ activeSession()?.deviceName }}</div>\\n <div class=\\\"ax-font-normal ax-text-sm ax-text-on-lightest\\\">{{ activeSession()?.operatingSystem }}</div>\\n <p class=\\\"ax-font-normal ax-text-xs ax-subtitle-on-lightest\\\">\\n {{ activeSession()?.location }} <span>{{ activeSession()?.lastLoginDate | date: 'YYYY/MM/DD HH:mm' }}</span>\\n </p>\\n </div>\\n </div>\\n }\\n </div>\\n\\n @if (itemsWithIcons() && itemsWithIcons().length > 0) {\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <div class=\\\"ax-border-danger-200 ax-border ax-bg-danger-50 ax-rounded-lg\\\">\\n <i class=\\\"ax-icon ax-icon-clear ax-text-danger-500 ax-m-3\\\"></i>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2 ax-cursor-pointer\\\" (click)=\\\"onTerminateAll()\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">Terminate All Other Sessions</div>\\n <p class=\\\"ax-font-normal ax-text-sm ax-subtitle-on-lightest\\\">Log out all devices exept for this one.</p>\\n </div>\\n </div>\\n }\\n @if (itemsWithIcons() && itemsWithIcons().length > 0) {\\n <div>\\n <p class=\\\"ax-font-semibold ax-text-base ax-text-on-lightest ax-mt-4 ax-mb-4\\\">Active Devices</p>\\n @for (item of itemsWithIcons(); track item) {\\n <div>\\n <div\\n class=\\\"ax-flex ax-border ax-items-center ax-relative ax-rounded-lg ax-border-lightest ax-bg-lightest ax-text-on-lightest ax-mb-3 ax-p-3\\\"\\n >\\n <i\\n class=\\\"ax-icon ax-icon-close ax-absolute ax-end-2 ax-top-2 ax-cursor-pointer\\\"\\n (click)=\\\"onTerminate(item.id)\\\"\\n ></i>\\n <div class=\\\"ax-border ax-rounded-lg\\\">\\n <i class=\\\"{{ item.icon }} ax-m-3\\\"></i>\\n </div>\\n <div class=\\\"ax-flex ax-flex-col ax-ml-2\\\">\\n <div class=\\\"ax-font-medium ax-text-base ax-text-on-lightest\\\">{{ item.deviceName }}</div>\\n <div class=\\\"ax-font-normal ax-text-sm ax-text-on-lightest\\\">{{ item.operatingSystem }}</div>\\n <p class=\\\"ax-font-normal ax-text-xs ax-subtitle-on-lightest\\\">\\n {{ item.location }} <span>{{ item.lastLoginDate | date: 'YYYY/MM/DD HH:mm' }}</span>\\n </p>\\n </div>\\n </div>\\n </div>\\n }\\n </div>\\n }\\n</div>\\n<ax-footer>\\n <div class=\\\"ax-flex-col ax-w-full\\\">\\n <div>\\n <p class=\\\"ax-text-danger-500 ax-font-medium ax-text-base\\\">Terminate Old Sessions</p>\\n </div>\\n <div>\\n <ax-suffix>\\n <div class=\\\"ax-flex ax-items-center ax-justify-between ax-mt-4\\\">\\n <div class=\\\"ax-font-normal ax-text-base ax-text-on-lightest\\\">If inactive for...</div>\\n <div class=\\\"ax-w-3/6\\\">\\n <ax-select-box\\n [ngModel]=\\\"expireTime()\\\"\\n (onValueChanged)=\\\"onChangeSessionExpireTime($event)\\\"\\n [dataSource]=\\\"dataSource\\\"\\n textField=\\\"name\\\"\\n valueField=\\\"id\\\"\\n placeholder=\\\"Choose...\\\"\\n >\\n </ax-select-box>\\n </div>\\n </div>\\n </ax-suffix>\\n </div>\\n </div>\\n</ax-footer>\\n\" }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1zZXNzaW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21vZHVsZXMvYXV0aC9zcmMvbGliL3BhZ2VzL2FjY291bnQvdXNlci1zZXNzaW9ucy91c2VyLXNlc3Npb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbW9kdWxlcy9hdXRoL3NyYy9saWIvcGFnZXMvYWNjb3VudC91c2VyLXNlc3Npb25zL3VzZXItc2Vzc2lvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQXVCLE1BQU0sb0JBQW9CLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9D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QVcsOFZBQ1gsaUJBQWlCLHduQkFDakIsZ0JBQWdCLDhCQUNoQixlQUFlOzsyRkFHTix3QkFBd0I7a0JBYnBDLFNBQVM7c0NBRVMsdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGlCQUFpQjt3QkFDakIsZ0JBQWdCO3dCQUNoQixlQUFlO3FCQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2UsIEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IEFYUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wb3BvdmVyJztcbmltcG9ydCB7IEFYUG9wdXBTZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhQbGF0Zm9ybSB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBBWE1TZWN1cml0eU1hbmFnZW1lbnREZXZpY2VTZXNzaW9uc0VudGl0eU1vZGVsIH0gZnJvbSAnQGFjb3JleC9tb2R1bGVzL3NlY3VyaXR5LW1hbmFnZW1lbnQnO1xuaW1wb3J0IHsgQVhQU2Vzc2lvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2F1dGgnO1xuaW1wb3J0IHsgQVhQU2V0dGluZ1NlcnZpY2UgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBQbGF0Zm9ybVNjb3BlIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFYTVVzZXJEZXZpY2VTZXNzaW9uc1NlcnZpY2UgfSBmcm9tICcuL3VzZXItc2Vzc2lvbnMuc2VydmljZSc7XG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXItc2Vzc2lvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaW1wb3J0czogW1xuICAgIEFYQnV0dG9uTW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBWFNlbGVjdEJveE1vZHVsZSxcbiAgICBBWERyb3Bkb3duTW9kdWxlLFxuICAgIEFYUG9wb3Zlck1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhNVXNlclNlc3Npb25zQ29tcG9uZW50IHtcbiAgQVhQVG9rZW5FeHBpcmF0aW9uRHVyYXRpb25zID0ge1xuICAgIG9uZVdlZWs6ICdvbmVXZWVrJyxcbiAgICBvbmVNb250aDogJ29uZU1vbnRoJyxcbiAgICB0aHJlZU1vbnRoczogJ3RocmVlTW9udGhzJyxcbiAgICBzaXhNb250aHM6ICdzaXhNb250aHMnLFxuICB9O1xuXG4gIGl0ZW1zID0gc2lnbmFsPEFYTVNlY3VyaXR5TWFuYWdlbWVudERldmljZVNlc3Npb25zRW50aXR5TW9kZWxbXT4oW10pO1xuICBhY3RpdmVTZXNzaW9uID0gc2lnbmFsPEFYTVNlY3VyaXR5TWFuYWdlbWVudERldmljZVNlc3Npb25zRW50aXR5TW9kZWwgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIGV4cGlyZVRpbWUgPSBzaWduYWw8eyBuYW1lOiBzdHJpbmc7IGlkOiBzdHJpbmcgfSB8IG51bGw+KG51bGwpO1xuXG4gIGV4cGlyYXRpb25JdGVtcyA9IFtcbiAgICB7IG5hbWU6ICdUZXJtaW5hdGUgaW4gMSB3ZWVrJywgaWQ6IHRoaXMuQVhQVG9rZW5FeHBpcmF0aW9uRHVyYXRpb25zLm9uZVdlZWsgfSxcbiAgICB7IG5hbWU6ICdUZXJtaW5hdGUgaW4gMSBtb250aCcsIGlkOiB0aGlzLkFYUFRva2VuRXhwaXJhdGlvbkR1cmF0aW9ucy5vbmVNb250aCB9LFxuICAgIHsgbmFtZTogJ1Rlcm1pbmF0ZSBpbiAzIG1vbnRoJywgaWQ6IHRoaXMuQVhQVG9rZW5FeHBpcmF0aW9uRHVyYXRpb25zLnRocmVlTW9udGhzIH0sXG4gICAgeyBuYW1lOiAnVGVybWluYXRlIGluIDYgbW9udGgnLCBpZDogdGhpcy5BWFBUb2tlbkV4cGlyYXRpb25EdXJhdGlvbnMuc2l4TW9udGhzIH0sXG4gIF07XG4gIHByb3RlY3RlZCBkYXRhU291cmNlID0gbmV3IEFYRGF0YVNvdXJjZTxhbnk+KHtcbiAgICBwYWdlU2l6ZTogMTAsXG4gICAga2V5OiAnaWQnLFxuICAgIGxvYWQ6IGFzeW5jIChlKSA9PiB7XG4gICAgICBsZXQgaXRlbXMgPSB0aGlzLmV4cGlyYXRpb25JdGVtcztcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGl0ZW1zLFxuICAgICAgICB0b3RhbDogaXRlbXMubGVuZ3RoLFxuICAgICAgfTtcbiAgICB9LFxuICB9KTtcbiAgcHJpdmF0ZSB1c2VyRGV2aWNlU2Vzc2lvbnNTZXJ2aWNlID0gaW5qZWN0KEFYTVVzZXJEZXZpY2VTZXNzaW9uc1NlcnZpY2UpO1xuICBwcml2YXRlIGNkUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSBwb3B1cFNlcnZpY2UgPSBpbmplY3QoQVhQb3B1cFNlcnZpY2UpO1xuICBwcml2YXRlIHBsYXRmb3JtID0gaW5qZWN0KEFYUGxhdGZvcm0pO1xuICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2UgPSBpbmplY3QoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHNlc3Npb25TZXJ2aWNlID0gaW5qZWN0KEFYUFNlc3Npb25TZXJ2aWNlKTtcbiAgcHJpdmF0ZSBzZXR0aW5nU2VydmljZSA9IGluamVjdChBWFBTZXR0aW5nU2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5sb2FkVXNlclNlc3Npb25zKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWRVc2VyU2Vzc2lvbnMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGxldCBzZXNzaW9ucyA9IGF3YWl0IHRoaXMudXNlckRldmljZVNlc3Npb25zU2VydmljZS5nZXRTZXNzaW9ucygpO1xuICAgICAgdGhpcy5pdGVtcy5zZXQoc2Vzc2lvbnMpO1xuICAgICAgY29uc3QgYWN0aXZlU2Vzc2lvbiA9IGF3YWl0IHRoaXMudXNlckRldmljZVNlc3Npb25zU2VydmljZS5nZXRDdXJyZW50QWN0aXZlU2Vzc2lvbnMoKTtcbiAgICAgIHRoaXMuYWN0aXZlU2Vzc2lvbi5zZXQoYWN0aXZlU2Vzc2lvbik7XG4gICAgICBjb25zdCBzZXNzaW9uVGltZW91dCA9IGF3YWl0IHRoaXMuc2V0dGluZ1NlcnZpY2Uuc2NvcGUoQVhQUGxhdGZvcm1TY29wZS5Vc2VyKS5nZXQoJ3Nlc3Npb24tdGltZW91dCcpO1xuICAgICAgaWYgKHNlc3Npb25UaW1lb3V0ICYmIHNlc3Npb25UaW1lb3V0LmlkIGluIHRoaXMuQVhQVG9rZW5FeHBpcmF0aW9uRHVyYXRpb25zKSB7XG4gICAgICAgIGxldCBzZWxlY3RlZEl0ZW0gPSB0aGlzLmV4cGlyYXRpb25JdGVtcy5maW5kKChpdGVtKSA9PiBpdGVtLmlkID09PSBzZXNzaW9uVGltZW91dC5pZCk7XG4gICAgICAgIGlmIChzZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICB0aGlzLmV4cGlyZVRpbWUuc2V0KHsgbmFtZTogc2VsZWN0ZWRJdGVtLm5hbWUsIGlkOiBzZWxlY3RlZEl0ZW0uaWQgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyB1c2VyIHNlc3Npb25zJywgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8vIOKchSBVc2UgYSBjb21wdXRlZCBzaWduYWwgdG8gdXBkYXRlIGR5bmFtaWNhbGx5IHdoZW4gaXRlbXMgY2hhbmdlXG4gIGl0ZW1zV2l0aEljb25zID0gY29tcHV0ZWQoKCkgPT5cbiAgICB0aGlzLml0ZW1zKCkubWFwKChpdGVtKSA9PiAoe1xuICAgICAgLi4uaXRlbSxcbiAgICAgIGljb246IHRoaXMuZ2V0RGV2aWNlSWNvbihpdGVtLmRldmljZU5hbWUpLFxuICAgIH0pKSxcbiAgKTtcblxuICBnZXREZXZpY2VJY29uKGRldmljZU5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XG4gICAgaWYgKCFkZXZpY2VOYW1lKSByZXR1cm4gJ2ZhLXNvbGlkIGZhLXF1ZXN0aW9uJzsgLy8gRGVmYXVsdCBpY29uIGlmIG5vIG5hbWUgaXMgcHJvdmlkZWRcblxuICAgIGNvbnN0IGxvd2VyQ2FzZU5hbWUgPSBkZXZpY2VOYW1lLnRvTG93ZXJDYXNlKCk7XG5cbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnd2luZG93cycpKSByZXR1cm4gJ2ZhLWJyYW5kcyBmYS1taWNyb3NvZnQnO1xuICAgIGlmIChsb3dlckNhc2VOYW1lLmluY2x1ZGVzKCdtYWMnKSkgcmV0dXJuICdmYS1icmFuZHMgZmEtbWljcm9zb2Z0JztcbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnbGludXgnKSkgcmV0dXJuICdmYS1icmFuZHMgZmEtbWljcm9zb2Z0JztcbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnYW5kcm9pZCcpKSByZXR1cm4gJ2ZhLWJyYW5kcyBmYS1hbmRyb2lkJztcbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnaW9zJykpIHJldHVybiAnZmEtYnJhbmRzIGZhLWFwcGxlJztcbiAgICBpZiAobG93ZXJDYXNlTmFtZS5pbmNsdWRlcygnaXBhZCcpKSByZXR1cm4gJ2ZhLWJyYW5kcyBmYS1hcHBsZSc7XG4gICAgaWYgKGxvd2VyQ2FzZU5hbWUuaW5jbHVkZXMoJ2lwaG9uZScpKSByZXR1cm4gJ2ZhLWJyYW5kcyBmYS1hcHBsZSc7XG5cbiAgICByZXR1cm4gJ2ZhLXNvbGlkIGZhLXF1ZXN0aW9uJzsgLy8gRGVmYXVsdCBpY29uIGlmIG5vIG1hdGNoXG4gIH1cblxuICBwcm90ZWN0ZWQgb25DaGFuZ2VTZXNzaW9uRXhwaXJlVGltZShlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50KSB7XG4gICAgdGhpcy51c2VyRGV2aWNlU2Vzc2lvbnNTZXJ2aWNlLnNldFRva2VuTGlmZXRpbWVNaW51dGVzKGUuY29tcG9uZW50LnNlbGVjdGVkSXRlbXNbMF0pO1xuICB9XG5cbiAgYXN5bmMgb25UZXJtaW5hdGUoc2Vzc2lvbklkOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXNlc3Npb25JZCkge1xuICAgICAgY29uc29sZS5lcnJvcignTm8gaXRlbSB0byB0ZXJtaW5hdGUnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgYXdhaXQgdGhpcy51c2VyRGV2aWNlU2Vzc2lvbnNTZXJ2aWNlLnRlcm1pbmF0ZVNlc3Npb24oc2Vzc2lvbklkKTtcbiAgICBhd2FpdCB0aGlzLmxvYWRVc2VyU2Vzc2lvbnMoKTtcbiAgfVxuXG4gIGFzeW5jIG9uVGVybWluYXRlQWxsKCkge1xuICAgIGF3YWl0IHRoaXMudXNlckRldmljZVNlc3Npb25zU2VydmljZS50ZXJtaW5hdGVBbGxTZXNzaW9uKCk7XG4gICAgYXdhaXQgdGhpcy5sb2FkVXNlclNlc3Npb25zKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC1teC1hdXRvIGF4LXAtNlwiPlxuICA8cCBjbGFzcz1cImF4LWZvbnQtc2VtaWJvbGQgYXgtdGV4dC1iYXNlIGF4LXRleHQtb24tbGlnaHRlc3QgYXgtbWItNFwiPlRoaXMgRGV2aWNlPC9wPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJheC1mbGV4IGF4LWJvcmRlciBheC1pdGVtcy1jZW50ZXIgYXgtcm91bmRlZC1sZyBheC1ib3JkZXItbGlnaHRlc3QgYXgtYmctbGlnaHRlc3QgYXgtdGV4dC1vbi1saWdodGVzdCBheC1tYi0zIGF4LXAtM1wiXG4gICAgPlxuICAgIDxkaXYgY2xhc3M9XCJheC1ib3JkZXItcHJpbWFyeS0yMDAgYXgtYm9yZGVyIGF4LWJnLXByaW1hcnktNTAgYXgtcm91bmRlZC1sZ1wiPlxuICAgICAgPGkgY2xhc3M9XCJ7eyBnZXREZXZpY2VJY29uKGFjdGl2ZVNlc3Npb24oKT8uZGV2aWNlTmFtZSkgfX0gYXgtdGV4dC1wcmltYXJ5LTUwMCBheC1tLTNcIj48L2k+XG4gICAgPC9kaXY+XG4gICAgQGlmIChhY3RpdmVTZXNzaW9uKCkpIHtcbiAgICAgIDxkaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWZsZXgtY29sIGF4LW1sLTJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZm9udC1tZWRpdW0gYXgtdGV4dC1iYXNlIGF4LXRleHQtb24tbGlnaHRlc3RcIj57eyBhY3RpdmVTZXNzaW9uKCk/LmRldmljZU5hbWUgfX08L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZm9udC1ub3JtYWwgYXgtdGV4dC1zbSBheC10ZXh0LW9uLWxpZ2h0ZXN0XCI+e3sgYWN0aXZlU2Vzc2lvbigpPy5vcGVyYXRpbmdTeXN0ZW0gfX08L2Rpdj5cbiAgICAgICAgICA8cCBjbGFzcz1cImF4LWZvbnQtbm9ybWFsIGF4LXRleHQteHMgYXgtc3VidGl0bGUtb24tbGlnaHRlc3RcIj5cbiAgICAgICAgICAgIHt7IGFjdGl2ZVNlc3Npb24oKT8ubG9jYXRpb24gfX0gPHNwYW4+e3sgYWN0aXZlU2Vzc2lvbigpPy5sYXN0TG9naW5EYXRlIHwgZGF0ZTogJ1lZWVkvTU0vREQgSEg6bW0nIH19PC9zcGFuPlxuICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIEBpZiAoaXRlbXNXaXRoSWNvbnMoKSAmJiBpdGVtc1dpdGhJY29ucygpLmxlbmd0aCA+IDApIHtcbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImF4LWZsZXggYXgtYm9yZGVyIGF4LWl0ZW1zLWNlbnRlciBheC1yb3VuZGVkLWxnIGF4LWJvcmRlci1saWdodGVzdCBheC1iZy1saWdodGVzdCBheC10ZXh0LW9uLWxpZ2h0ZXN0IGF4LW1iLTMgYXgtcC0zXCJcbiAgICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1ib3JkZXItZGFuZ2VyLTIwMCBheC1ib3JkZXIgYXgtYmctZGFuZ2VyLTUwIGF4LXJvdW5kZWQtbGdcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJheC1pY29uIGF4LWljb24tY2xlYXIgYXgtdGV4dC1kYW5nZXItNTAwIGF4LW0tM1wiPjwvaT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWZsZXggYXgtZmxleC1jb2wgYXgtbWwtMiBheC1jdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJvblRlcm1pbmF0ZUFsbCgpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mb250LW1lZGl1bSBheC10ZXh0LWJhc2UgYXgtdGV4dC1vbi1saWdodGVzdFwiPlRlcm1pbmF0ZSBBbGwgT3RoZXIgU2Vzc2lvbnM8L2Rpdj5cbiAgICAgICAgPHAgY2xhc3M9XCJheC1mb250LW5vcm1hbCBheC10ZXh0LXNtIGF4LXN1YnRpdGxlLW9uLWxpZ2h0ZXN0XCI+TG9nIG91dCBhbGwgZGV2aWNlcyBleGVwdCBmb3IgdGhpcyBvbmUuPC9wPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIH1cbiAgQGlmIChpdGVtc1dpdGhJY29ucygpICYmIGl0ZW1zV2l0aEljb25zKCkubGVuZ3RoID4gMCkge1xuICAgIDxkaXY+XG4gICAgICA8cCBjbGFzcz1cImF4LWZvbnQtc2VtaWJvbGQgYXgtdGV4dC1iYXNlIGF4LXRleHQtb24tbGlnaHRlc3QgYXgtbXQtNCBheC1tYi00XCI+QWN0aXZlIERldmljZXM8L3A+XG4gICAgICBAZm9yIChpdGVtIG9mIGl0ZW1zV2l0aEljb25zKCk7IHRyYWNrIGl0ZW0pIHtcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImF4LWZsZXggYXgtYm9yZGVyIGF4LWl0ZW1zLWNlbnRlciBheC1yZWxhdGl2ZSBheC1yb3VuZGVkLWxnIGF4LWJvcmRlci1saWdodGVzdCBheC1iZy1saWdodGVzdCBheC10ZXh0LW9uLWxpZ2h0ZXN0IGF4LW1iLTMgYXgtcC0zXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWNsb3NlIGF4LWFic29sdXRlIGF4LWVuZC0yIGF4LXRvcC0yIGF4LWN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uVGVybWluYXRlKGl0ZW0uaWQpXCJcbiAgICAgICAgICAgID48L2k+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtYm9yZGVyIGF4LXJvdW5kZWQtbGdcIj5cbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJ7eyBpdGVtLmljb24gfX0gYXgtbS0zXCI+PC9pPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1tbC0yXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mb250LW1lZGl1bSBheC10ZXh0LWJhc2UgYXgtdGV4dC1vbi1saWdodGVzdFwiPnt7IGl0ZW0uZGV2aWNlTmFtZSB9fTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZm9udC1ub3JtYWwgYXgtdGV4dC1zbSBheC10ZXh0LW9uLWxpZ2h0ZXN0XCI+e3sgaXRlbS5vcGVyYXRpbmdTeXN0ZW0gfX08L2Rpdj5cbiAgICAgICAgICAgICAgPHAgY2xhc3M9XCJheC1mb250LW5vcm1hbCBheC10ZXh0LXhzIGF4LXN1YnRpdGxlLW9uLWxpZ2h0ZXN0XCI+XG4gICAgICAgICAgICAgICAge3sgaXRlbS5sb2NhdGlvbiB9fSA8c3Bhbj57eyBpdGVtLmxhc3RMb2dpbkRhdGUgfCBkYXRlOiAnWVlZWS9NTS9ERCBISDptbScgfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG48YXgtZm9vdGVyPlxuICA8ZGl2IGNsYXNzPVwiYXgtZmxleC1jb2wgYXgtdy1mdWxsXCI+XG4gICAgPGRpdj5cbiAgICAgIDxwIGNsYXNzPVwiYXgtdGV4dC1kYW5nZXItNTAwIGF4LWZvbnQtbWVkaXVtIGF4LXRleHQtYmFzZVwiPlRlcm1pbmF0ZSBPbGQgU2Vzc2lvbnM8L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1mbGV4IGF4LWl0ZW1zLWNlbnRlciBheC1qdXN0aWZ5LWJldHdlZW4gYXgtbXQtNFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1mb250LW5vcm1hbCBheC10ZXh0LWJhc2UgYXgtdGV4dC1vbi1saWdodGVzdFwiPklmIGluYWN0aXZlIGZvci4uLjwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC13LTMvNlwiPlxuICAgICAgICAgICAgPGF4LXNlbGVjdC1ib3hcbiAgICAgICAgICAgICAgW25nTW9kZWxdPVwiZXhwaXJlVGltZSgpXCJcbiAgICAgICAgICAgICAgKG9uVmFsdWVDaGFuZ2VkKT1cIm9uQ2hhbmdlU2Vzc2lvbkV4cGlyZVRpbWUoJGV2ZW50KVwiXG4gICAgICAgICAgICAgIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIlxuICAgICAgICAgICAgICB0ZXh0RmllbGQ9XCJuYW1lXCJcbiAgICAgICAgICAgICAgdmFsdWVGaWVsZD1cImlkXCJcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJDaG9vc2UuLi5cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9heC1zdWZmaXg+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9heC1mb290ZXI+XG4iXX0="],"names":["i2","i3"],"mappings":"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"}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
export { e as AXMAuthErrorHandler, h as AXMAuthModule, a as AXMAuthenticationTypes, f as AXMDefaultAuthConfigs, A as AXM_AUTH_CONFIG_TOKEN, i as AXPIdleService, g as configAuthModule } from './acorex-modules-auth-acorex-modules-auth-
|
1
|
+
export { e as AXMAuthErrorHandler, h as AXMAuthModule, a as AXMAuthenticationTypes, f as AXMDefaultAuthConfigs, A as AXM_AUTH_CONFIG_TOKEN, i as AXPIdleService, g as configAuthModule } from './acorex-modules-auth-acorex-modules-auth-BXc_ogZY.mjs';
|
2
2
|
//# sourceMappingURL=acorex-modules-auth.mjs.map
|
@@ -94,14 +94,14 @@ class AXPGlobalSearchPopupComponent extends AXBasePageComponent {
|
|
94
94
|
e.stopPropagation();
|
95
95
|
this.vm.togglePin(item);
|
96
96
|
}
|
97
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.
|
98
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: AXPGlobalSearchPopupComponent, isStandalone: true, selector: "ng-component", providers: [AXPGlobalSearchViewModel], viewQueries: [{ propertyName: "list", first: true, predicate: AXListNavigationDirective, descendants: true, isSignal: true }, { propertyName: "searchBox", first: true, predicate: AXSearchBoxComponent, descendants: true, isSignal: true }, { propertyName: "items", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<axp-layout-content *translate=\"let t\">\n <axp-layout-header class=\"ax-lg\">\n <ax-search-box\n [axAutoFocus]\n [look]=\"'none'\"\n [ngModel]=\"vm.text()\"\n (onValueChanged)=\"handleTextChanged($event)\"\n [placeholder]=\"t('search-anything', { scope: i18nScope }) | async\"\n (onKeyDown)=\"handleSearchKeyDown($event)\"\n ></ax-search-box>\n <div class=\"__close-button\">\n <ax-button [look]=\"'blank'\" class=\"ax-rounded-full\" (onClick)=\"close()\">\n <ax-icon icon=\"fa-light fa-xmark fa-sm\"></ax-icon>\n </ax-button>\n </div>\n </axp-layout-header>\n\n <!-- Results Area -->\n <axp-layout-body>\n @if(vm.isBusy()) {\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\n } @else if(vm.isEmpty()) {\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n } @else if(vm.isWelcome()) {\n <ng-container *ngTemplateOutlet=\"welcome\"></ng-container>\n } @else if(vm.isStart()) {\n <ng-container *ngTemplateOutlet=\"start\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"result\"></ng-container>\n }\n </axp-layout-body>\n\n <!-- Skeleton Template -->\n <ng-template #skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-10 ax-p-8\">\n @for (item of [1,2,3,4,5]; track $index) {\n <div class=\"ax-flex ax-items-center ax-gap-4\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-4 ax-h-4 ax-rounded-full\"></ax-skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-flex-1\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/4 ax-h-2 ax-rounded\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/2 ax-h-2 ax-rounded\"></ax-skeleton>\n </div>\n </div>\n }\n </div>\n </ng-template>\n\n <!-- Empty Template -->\n <ng-template #empty>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\">\n <!-- Icon -->\n <div class=\"ax-mb-4\">\n <i class=\"fas fa-search ax-text-gray-400 ax-text-4xl\"></i>\n </div>\n <!-- Message -->\n <div class=\"ax-text-center\">\n <h2 class=\"ax-text-lg ax-font-semibold\">{{ t('no-result.title', { scope: i18nScope }) | async }}</h2>\n <p class=\"ax-mt-2 ax-leading-relaxed\">\n {{ t('no-result.message', { scope: i18nScope }) | async }}\n </p>\n </div>\n </div>\n </ng-template>\n\n <!-- Welcome Template -->\n <ng-template #welcome>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\">\n <!-- Icon -->\n <div class=\"ax-mb-4\">\n <i class=\"fas fa-search ax-text-gray-400 ax-text-4xl\"></i>\n </div>\n <!-- Message -->\n <div class=\"ax-text-center\">\n <h2 class=\"ax-text-lg ax-font-semibold\">{{ t('start.title', { scope: i18nScope }) | async }}</h2>\n <p class=\"ax-mt-2\">{{ t('start.message', { scope: i18nScope }) | async }}</p>\n </div>\n </div>\n </ng-template>\n\n <!-- Start Template -->\n <ng-template #start>\n <!-- Pinned Items -->\n <axp-layout-list\n *translate=\"let t\"\n class=\"ax-p-4 ax-divide-none\"\n (keydown)=\"handleListKeyDown($event)\"\n axListNavigation\n #list=\"axListNavigation\"\n >\n @if(vm.pinnedItems().length>0) {\n <axp-layout-list-group>\n <axp-layout-title>{{ t('pinned', { scope: i18nScope }) | async }}</axp-layout-title>\n @for (item of vm.pinnedItems(); track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{item}\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n <!-- Recent Items -->\n @if(vm.recentItems().length>0) {\n <axp-layout-list-group>\n <axp-layout-header>\n <axp-layout-prefix>\n <axp-layout-title>{{ t('recent', { scope: i18nScope }) | async }}</axp-layout-title>\n </axp-layout-prefix>\n <axp-layout-prefix class=\"ax-xs\">\n <ax-button\n [text]=\"t('clear', { scope: i18nScope }) | async\"\n look=\"blank\"\n [color]=\"'default'\"\n (onClick)=\"handleClearClick($event)\"\n ></ax-button>\n </axp-layout-prefix>\n </axp-layout-header>\n @for (item of vm.recentItems(); track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{item}\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <!-- Result Template -->\n <ng-template #result>\n <axp-layout-list\n class=\"ax-p-4 ax-divide-none\"\n (keydown)=\"handleListKeyDown($event)\"\n axListNavigation\n #list=\"axListNavigation\"\n >\n @for (group of vm.results(); track $index) {\n <axp-layout-list-group>\n <axp-layout-title> {{ t(group.title) | async }}</axp-layout-title>\n @for (item of group.children; track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{item}\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <ng-template #listItem let-item=\"item\">\n <axp-layout-prefix>\n <ax-icon icon=\"fal {{ item.icon }}\"></ax-icon>\n </axp-layout-prefix>\n <axp-layout-content>\n <axp-layout-title class=\"ax-group\">\n <span>{{ t(item.title) | async }}</span>\n <span class=\"ax-ms-3\" (click)=\"handlePinClick($event, item)\">\n <i\n [class.ax-invisible]=\"!vm.isPinned(item)\"\n class=\"fa-light fa-thumbtack ax-rotate-45 group-hover:!ax-visible\"\n [class.fa-solid]=\"vm.isPinned(item)\"\n ></i>\n </span>\n </axp-layout-title>\n @if(item.parent) {\n <axp-layout-description>\n {{ t(item.parent.title) | async }}\n </axp-layout-description>\n }@else if (item.description) {\n <axp-layout-description>\n {{ t(item.description) | async }}\n </axp-layout-description>\n }\n </axp-layout-content>\n <axp-layout-suffix>\n <i class=\"far fa-chevron-right rtl:ax-rotate-180\"></i>\n </axp-layout-suffix>\n </ng-template>\n</axp-layout-content>\n", styles: [":host .ax-editor-container:focus-within{outline-style:none}:host>axp-layout-content{display:flex;flex-direction:column;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));width:90vw;max-width:36rem}@media (min-width: 640px){:host>axp-layout-content{width:80vw}}@media (min-width: 768px){:host>axp-layout-content{width:60vw}}@media (min-width: 1024px){:host>axp-layout-content{width:40vw}}@media (min-width: 1280px){:host>axp-layout-content{width:30vw}}:host>axp-layout-content>axp-layout-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-width:1px;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))}:host>axp-layout-content>axp-layout-header>.__close-button{position:absolute;inset-inline-end:1rem;top:1rem;--ax-sys-size-base: 2rem}:host>axp-layout-content>axp-layout-body{display:flex;flex-direction:column}:host>axp-layout-content>axp-layout-body>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}:host>axp-layout-content>axp-layout-body{overflow-y:auto;border-radius:.375rem;max-height:50vh;min-height:30vh}@media (min-width: 640px){:host>axp-layout-content>axp-layout-body{max-height:60vh;min-height:40vh}}@media (min-width: 768px){:host>axp-layout-content>axp-layout-body{max-height:70vh;min-height:50vh}}@media (min-width: 1024px){:host>axp-layout-content>axp-layout-body{max-height:80vh;min-height:40vh}}:host>axp-layout-content>axp-layout-body .axp-search-recent{display:flex;flex-direction:column;padding:1rem}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-header{margin-bottom:.5rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:.875rem;line-height:1.25rem;font-weight:600}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-body{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;border-radius:.375rem}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{display:flex;height:2.25rem;width:2.25rem;align-items:center;justify-content:center;border-radius:.375rem;background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-darker-surface));color:rgb(var(--ax-sys-color-on-darker-surface));border-color:rgb(var(--ax-sys-color-border-darker-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{font-size:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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:
|
97
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.7", ngImport: i0, type: AXPGlobalSearchPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
98
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.7", type: AXPGlobalSearchPopupComponent, isStandalone: true, selector: "ng-component", providers: [AXPGlobalSearchViewModel], viewQueries: [{ propertyName: "list", first: true, predicate: AXListNavigationDirective, descendants: true, isSignal: true }, { propertyName: "searchBox", first: true, predicate: AXSearchBoxComponent, descendants: true, isSignal: true }, { propertyName: "items", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<axp-layout-content *translate=\"let t\">\n <axp-layout-header class=\"ax-lg\">\n <ax-search-box\n [axAutoFocus]\n [look]=\"'none'\"\n [ngModel]=\"vm.text()\"\n (onValueChanged)=\"handleTextChanged($event)\"\n [placeholder]=\"t('search-anything', { scope: i18nScope }) | async\"\n (onKeyDown)=\"handleSearchKeyDown($event)\"\n ></ax-search-box>\n <div class=\"__close-button\">\n <ax-button [look]=\"'blank'\" class=\"ax-rounded-full\" (onClick)=\"close()\">\n <ax-icon icon=\"fa-light fa-xmark fa-sm\"></ax-icon>\n </ax-button>\n </div>\n </axp-layout-header>\n\n <!-- Results Area -->\n <axp-layout-body>\n @if(vm.isBusy()) {\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\n } @else if(vm.isEmpty()) {\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n } @else if(vm.isWelcome()) {\n <ng-container *ngTemplateOutlet=\"welcome\"></ng-container>\n } @else if(vm.isStart()) {\n <ng-container *ngTemplateOutlet=\"start\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"result\"></ng-container>\n }\n </axp-layout-body>\n\n <!-- Skeleton Template -->\n <ng-template #skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-10 ax-p-8\">\n @for (item of [1,2,3,4,5]; track $index) {\n <div class=\"ax-flex ax-items-center ax-gap-4\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-4 ax-h-4 ax-rounded-full\"></ax-skeleton>\n <div class=\"ax-flex ax-flex-col ax-gap-2 ax-flex-1\">\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/4 ax-h-2 ax-rounded\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"ax-w-1/2 ax-h-2 ax-rounded\"></ax-skeleton>\n </div>\n </div>\n }\n </div>\n </ng-template>\n\n <!-- Empty Template -->\n <ng-template #empty>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\">\n <!-- Icon -->\n <div class=\"ax-mb-4\">\n <i class=\"fas fa-search ax-text-gray-400 ax-text-4xl\"></i>\n </div>\n <!-- Message -->\n <div class=\"ax-text-center\">\n <h2 class=\"ax-text-lg ax-font-semibold\">{{ t('no-result.title', { scope: i18nScope }) | async }}</h2>\n <p class=\"ax-mt-2 ax-leading-relaxed\">\n {{ t('no-result.message', { scope: i18nScope }) | async }}\n </p>\n </div>\n </div>\n </ng-template>\n\n <!-- Welcome Template -->\n <ng-template #welcome>\n <div class=\"ax-flex ax-flex-col ax-items-center ax-justify-center ax-h-full ax-rounded-md ax-p-8\">\n <!-- Icon -->\n <div class=\"ax-mb-4\">\n <i class=\"fas fa-search ax-text-gray-400 ax-text-4xl\"></i>\n </div>\n <!-- Message -->\n <div class=\"ax-text-center\">\n <h2 class=\"ax-text-lg ax-font-semibold\">{{ t('start.title', { scope: i18nScope }) | async }}</h2>\n <p class=\"ax-mt-2\">{{ t('start.message', { scope: i18nScope }) | async }}</p>\n </div>\n </div>\n </ng-template>\n\n <!-- Start Template -->\n <ng-template #start>\n <!-- Pinned Items -->\n <axp-layout-list\n *translate=\"let t\"\n class=\"ax-p-4 ax-divide-none\"\n (keydown)=\"handleListKeyDown($event)\"\n axListNavigation\n #list=\"axListNavigation\"\n >\n @if(vm.pinnedItems().length>0) {\n <axp-layout-list-group>\n <axp-layout-title>{{ t('pinned', { scope: i18nScope }) | async }}</axp-layout-title>\n @for (item of vm.pinnedItems(); track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{item}\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n <!-- Recent Items -->\n @if(vm.recentItems().length>0) {\n <axp-layout-list-group>\n <axp-layout-header>\n <axp-layout-prefix>\n <axp-layout-title>{{ t('recent', { scope: i18nScope }) | async }}</axp-layout-title>\n </axp-layout-prefix>\n <axp-layout-prefix class=\"ax-xs\">\n <ax-button\n [text]=\"t('clear', { scope: i18nScope }) | async\"\n look=\"blank\"\n [color]=\"'default'\"\n (onClick)=\"handleClearClick($event)\"\n ></ax-button>\n </axp-layout-prefix>\n </axp-layout-header>\n @for (item of vm.recentItems(); track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{item}\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <!-- Result Template -->\n <ng-template #result>\n <axp-layout-list\n class=\"ax-p-4 ax-divide-none\"\n (keydown)=\"handleListKeyDown($event)\"\n axListNavigation\n #list=\"axListNavigation\"\n >\n @for (group of vm.results(); track $index) {\n <axp-layout-list-group>\n <axp-layout-title> {{ t(group.title) | async }}</axp-layout-title>\n @for (item of group.children; track $index) {\n <axp-layout-list-item\n (click)=\"vm.execute(item)\"\n (keydown)=\"handleItemKeyDown($event, item)\"\n class=\"ax-group\"\n axListNavigationItem\n #i=\"axListNavigationItem\"\n [class.axp-state-focused]=\"i.isActive()\"\n >\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{item}\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <ng-template #listItem let-item=\"item\">\n <axp-layout-prefix>\n <ax-icon icon=\"fal {{ item.icon }}\"></ax-icon>\n </axp-layout-prefix>\n <axp-layout-content>\n <axp-layout-title class=\"ax-group\">\n <span>{{ t(item.title) | async }}</span>\n <span class=\"ax-ms-3\" (click)=\"handlePinClick($event, item)\">\n <i\n [class.ax-invisible]=\"!vm.isPinned(item)\"\n class=\"fa-light fa-thumbtack ax-rotate-45 group-hover:!ax-visible\"\n [class.fa-solid]=\"vm.isPinned(item)\"\n ></i>\n </span>\n </axp-layout-title>\n @if(item.parent) {\n <axp-layout-description>\n {{ t(item.parent.title) | async }}\n </axp-layout-description>\n }@else if (item.description) {\n <axp-layout-description>\n {{ t(item.description) | async }}\n </axp-layout-description>\n }\n </axp-layout-content>\n <axp-layout-suffix>\n <i class=\"far fa-chevron-right rtl:ax-rotate-180\"></i>\n </axp-layout-suffix>\n </ng-template>\n</axp-layout-content>\n", styles: [":host .ax-editor-container:focus-within{outline-style:none}:host>axp-layout-content{display:flex;flex-direction:column;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));width:90vw;max-width:36rem}@media (min-width: 640px){:host>axp-layout-content{width:80vw}}@media (min-width: 768px){:host>axp-layout-content{width:60vw}}@media (min-width: 1024px){:host>axp-layout-content{width:40vw}}@media (min-width: 1280px){:host>axp-layout-content{width:30vw}}:host>axp-layout-content>axp-layout-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-width:1px;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))}:host>axp-layout-content>axp-layout-header>.__close-button{position:absolute;inset-inline-end:1rem;top:1rem;--ax-sys-size-base: 2rem}:host>axp-layout-content>axp-layout-body{display:flex;flex-direction:column}:host>axp-layout-content>axp-layout-body>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}:host>axp-layout-content>axp-layout-body{overflow-y:auto;border-radius:.375rem;max-height:50vh;min-height:30vh}@media (min-width: 640px){:host>axp-layout-content>axp-layout-body{max-height:60vh;min-height:40vh}}@media (min-width: 768px){:host>axp-layout-content>axp-layout-body{max-height:70vh;min-height:50vh}}@media (min-width: 1024px){:host>axp-layout-content>axp-layout-body{max-height:80vh;min-height:40vh}}:host>axp-layout-content>axp-layout-body .axp-search-recent{display:flex;flex-direction:column;padding:1rem}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-header{margin-bottom:.5rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:.875rem;line-height:1.25rem;font-weight:600}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-body{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;border-radius:.375rem}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{display:flex;height:2.25rem;width:2.25rem;align-items:center;justify-content:center;border-radius:.375rem;background-color:rgb(var(--ax-sys-color-dark-surface));color:rgb(var(--ax-sys-color-on-dark-surface));border-color:rgb(var(--ax-sys-color-border-dark-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon:is(.ax-dark *){background-color:rgb(var(--ax-sys-color-darker-surface));color:rgb(var(--ax-sys-color-on-darker-surface));border-color:rgb(var(--ax-sys-color-border-darker-surface))}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{font-size:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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:
|
99
99
|
//
|
100
100
|
AXSearchBoxModule }, { kind: "component", type: i3.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i4.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i4$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i4$2.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i7.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onPressEnterOrSpace"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i7.AXListNavigationItemDirective, selector: "[axListNavigationItem]", exportAs: ["axListNavigationItem"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i3$1.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:
|
101
101
|
//
|
102
102
|
AXSkeletonModule }, { kind: "component", type: i9.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: AXChipsModule }, { kind: "component", type: AXPThemeLayoutBlockComponent, selector: " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, " }, { kind: "component", type: AXPThemeLayoutListComponent, selector: "axp-layout-list" }, { kind: "component", type: AXPThemeLayoutListItemComponent, selector: "axp-layout-list-item" }, { kind: "component", type: AXPThemeLayoutListItemsGroupComponent, selector: "axp-layout-list-group" }, { kind: "component", type: AXPThemeLayoutHeaderComponent, selector: "axp-layout-header" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
103
103
|
}
|
104
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.
|
104
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.7", ngImport: i0, type: AXPGlobalSearchPopupComponent, decorators: [{
|
105
105
|
type: Component,
|
106
106
|
args: [{ imports: [
|
107
107
|
CommonModule,
|
@@ -125,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
125
125
|
}] });
|
126
126
|
|
127
127
|
export { AXPGlobalSearchPopupComponent };
|
128
|
-
//# sourceMappingURL=acorex-modules-common-search-popup.component-
|
128
|
+
//# sourceMappingURL=acorex-modules-common-search-popup.component-CNh7TFpe.mjs.map
|