ngx-techlify-core 18.44.0 → 18.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/access-control-config/access-control-config-form/access-control-config-form.component.mjs +3 -3
- package/esm2022/lib/access-control-config/access-control-config-routing.module.mjs +4 -4
- package/esm2022/lib/access-control-config/access-control-config.component.mjs +3 -3
- package/esm2022/lib/access-control-config/access-control-config.module.mjs +4 -4
- package/esm2022/lib/access-control-config/access-control-config.service.mjs +3 -3
- package/esm2022/lib/action-popup/action-popup.component.mjs +8 -9
- package/esm2022/lib/action-popup/action-popup.module.mjs +5 -9
- package/esm2022/lib/app-admin/admin-role/admin-role-list/admin-role-list-routing.module.mjs +4 -4
- package/esm2022/lib/app-admin/admin-role/admin-role-list/admin-role-list.component.mjs +3 -3
- package/esm2022/lib/app-admin/admin-role/admin-role-list/admin-role-list.module.mjs +4 -4
- package/esm2022/lib/app-admin/admin-role/admin-role-permission-form/admin-role-permission-form.component.mjs +3 -3
- package/esm2022/lib/app-admin/admin-role/admin-role-permission-form/admin-role-permission-form.module.mjs +4 -4
- package/esm2022/lib/app-admin/admin-role/admin-role.service.mjs +3 -3
- package/esm2022/lib/app-admin/app-admin-home/app-admin-home.component.mjs +3 -3
- package/esm2022/lib/app-admin/app-admin-routing.module.mjs +4 -4
- package/esm2022/lib/app-admin/app-admin.module.mjs +4 -4
- package/esm2022/lib/app-admin/tenant/tenant-list-widget/tenant-list-widget.component.mjs +3 -3
- package/esm2022/lib/audit-log/audit-log-for-model/audit-log-for-model-routing.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-for-model/audit-log-for-model.component.mjs +3 -3
- package/esm2022/lib/audit-log/audit-log-for-model/audit-log-for-model.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-list/audit-log-list-routing.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-list/audit-log-list.component.mjs +3 -3
- package/esm2022/lib/audit-log/audit-log-list/audit-log-list.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-list-filter/audit-log-list-filter-routing.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-list-filter/audit-log-list-filter.component.mjs +3 -3
- package/esm2022/lib/audit-log/audit-log-list-filter/audit-log-list-filter.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-routing.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-view/audit-log-view-routing.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-view/audit-log-view.component.mjs +3 -3
- package/esm2022/lib/audit-log/audit-log-view/audit-log-view.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-view-model/audit-log-view-model-routing.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log-view-model/audit-log-view-model.component.mjs +3 -3
- package/esm2022/lib/audit-log/audit-log-view-model/audit-log-view-model.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-log.service.mjs +3 -3
- package/esm2022/lib/audit-log/audit-logs-view-model/audit-logs-view-model-routing.module.mjs +4 -4
- package/esm2022/lib/audit-log/audit-logs-view-model/audit-logs-view-model.component.mjs +3 -3
- package/esm2022/lib/audit-log/audit-logs-view-model/audit-logs-view-model.module.mjs +4 -4
- package/esm2022/lib/base-model/techlify-form-component.class.mjs +3 -3
- package/esm2022/lib/base-model/techlify-listing-component.class.mjs +3 -3
- package/esm2022/lib/change-password/change-password-routing.module.mjs +4 -4
- package/esm2022/lib/change-password/change-password.component.mjs +3 -3
- package/esm2022/lib/change-password/change-password.module.mjs +4 -4
- package/esm2022/lib/column-selector/column-selector/column-selector.component.mjs +3 -3
- package/esm2022/lib/column-selector/column-selector.module.mjs +4 -4
- package/esm2022/lib/company-information/client.service.mjs +3 -3
- package/esm2022/lib/company-information/company-info-display/company-info-display.component.mjs +3 -3
- package/esm2022/lib/company-information/company-information/company-information.component.mjs +3 -3
- package/esm2022/lib/company-information/tenant-form-button/tenant-form-button.component.mjs +3 -3
- package/esm2022/lib/core/alert.service.mjs +3 -3
- package/esm2022/lib/core/api-prefix.interceptor.mjs +3 -3
- package/esm2022/lib/core/authentication.guard.mjs +3 -3
- package/esm2022/lib/core/authentication.service.mjs +3 -3
- package/esm2022/lib/core/cache.interceptor.mjs +3 -3
- package/esm2022/lib/core/config.service.mjs +3 -3
- package/esm2022/lib/core/core.module.mjs +4 -4
- package/esm2022/lib/core/credentials.service.mjs +3 -3
- package/esm2022/lib/core/dataManager.service.mjs +3 -3
- package/esm2022/lib/core/environment.service.mjs +3 -3
- package/esm2022/lib/core/error-handler.interceptor.mjs +3 -3
- package/esm2022/lib/core/error-handler.service.mjs +3 -3
- package/esm2022/lib/core/filter.service.mjs +3 -3
- package/esm2022/lib/core/form-validator.service.mjs +3 -3
- package/esm2022/lib/core/header.interceptor.mjs +3 -3
- package/esm2022/lib/core/http-cache.service.mjs +3 -3
- package/esm2022/lib/core/http.service.mjs +3 -3
- package/esm2022/lib/core/route-reusable-strategy.mjs +3 -3
- package/esm2022/lib/core/snack/snack.component.mjs +6 -6
- package/esm2022/lib/core/snack/snack.module.mjs +4 -4
- package/esm2022/lib/core/storage.service.mjs +3 -3
- package/esm2022/lib/core/token.interceptor.mjs +3 -3
- package/esm2022/lib/custom-icon/custom-icon-registry.service.mjs +3 -3
- package/esm2022/lib/custom-icon/custom-icon.component.mjs +3 -3
- package/esm2022/lib/custom-icon/custom-icon.module.mjs +4 -4
- package/esm2022/lib/data-table/data-table.component.mjs +3 -3
- package/esm2022/lib/data-table/data-table.module.mjs +4 -4
- package/esm2022/lib/delete-button/techlify-delete-button.component.mjs +68 -0
- package/esm2022/lib/document-viewer/document-viewer.component.mjs +3 -3
- package/esm2022/lib/document-viewer/document-viewer.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-for-user/email-subscription-for-user-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.component.mjs +3 -3
- package/esm2022/lib/email-subscription/email-subscription-for-user/email-subscription-for-user.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.component.mjs +3 -3
- package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-form/email-subscription-type-form.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.component.mjs +3 -3
- package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-list/email-subscription-type-list.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-type/email-subscription-type.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.component.mjs +3 -3
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-form/email-subscription-user-form.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.component.mjs +3 -3
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list/email-subscription-user-list.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.component.mjs +3 -3
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-list-filter/email-subscription-user-list-filter.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user-routing.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription-user/email-subscription-user.module.mjs +4 -4
- package/esm2022/lib/email-subscription/email-subscription.module.mjs +4 -4
- package/esm2022/lib/entity-files/entity-file-form/entity-file-form.component.mjs +3 -3
- package/esm2022/lib/entity-files/entity-file.service.mjs +3 -3
- package/esm2022/lib/entity-files/entity-files-view-all.component.mjs +3 -3
- package/esm2022/lib/entity-files/entity-files-view-all.module.mjs +4 -4
- package/esm2022/lib/export-excel/export-excel-button/export-excel-button.component.mjs +3 -3
- package/esm2022/lib/export-excel/export-excel.module.mjs +4 -4
- package/esm2022/lib/file-dragdrop-uploader/file-dragdrop-uploader/file-dragdrop-uploader.component.mjs +3 -3
- package/esm2022/lib/file-dragdrop-uploader/file-dragdrop-uploader.module.mjs +4 -4
- package/esm2022/lib/file-dropper/file-dropper.component.mjs +3 -3
- package/esm2022/lib/file-dropper/file-dropper.module.mjs +4 -4
- package/esm2022/lib/file-upload-button/file-upload-button.component.mjs +3 -3
- package/esm2022/lib/forgot-password/forgot-password-routing.module.mjs +4 -4
- package/esm2022/lib/forgot-password/forgot-password.component.mjs +3 -3
- package/esm2022/lib/forgot-password/forgot-password.module.mjs +4 -4
- package/esm2022/lib/image-preview/image-preview.component.mjs +3 -3
- package/esm2022/lib/import-csv/data-import/data-import.component.mjs +3 -3
- package/esm2022/lib/import-csv/failed-items-list/failed-items-list.component.mjs +5 -5
- package/esm2022/lib/import-csv/field-mapping/field-mapping.component.mjs +3 -3
- package/esm2022/lib/import-csv/import-csv.component.mjs +17 -12
- package/esm2022/lib/import-csv/import-csv.module.mjs +4 -4
- package/esm2022/lib/import-csv/import-history-list/import-history-list.component.mjs +3 -3
- package/esm2022/lib/import-csv/import-success/import-success.component.mjs +3 -3
- package/esm2022/lib/ip-address-selector/ip-address-selector.module.mjs +4 -4
- package/esm2022/lib/ip-address-selector/ip-range-selector/ip-range-selector.component.mjs +3 -3
- package/esm2022/lib/loader/loader.component.mjs +3 -3
- package/esm2022/lib/loader/loader.module.mjs +4 -4
- package/esm2022/lib/login/login-form-fields/login-form-fields.component.mjs +3 -3
- package/esm2022/lib/login/login-routing.module.mjs +4 -4
- package/esm2022/lib/login/login.component.mjs +3 -3
- package/esm2022/lib/login/login.module.mjs +4 -4
- package/esm2022/lib/login-history-for-user/login-history-for-user-routing.module.mjs +4 -4
- package/esm2022/lib/login-history-for-user/login-history-for-user.component.mjs +3 -3
- package/esm2022/lib/login-history-for-user/login-history-for-user.module.mjs +4 -4
- package/esm2022/lib/material.module.mjs +4 -4
- package/esm2022/lib/ngx-techlify-users/ngx-techlify-users-routing.module.mjs +4 -4
- package/esm2022/lib/ngx-techlify-users/ngx-techlify-users.module.mjs +4 -4
- package/esm2022/lib/note/comment-form/comment-form.component.mjs +3 -3
- package/esm2022/lib/note/note-form/note-form.component.mjs +3 -3
- package/esm2022/lib/note/note-list/note-list.component.mjs +3 -3
- package/esm2022/lib/note/note.module.mjs +4 -4
- package/esm2022/lib/note/note.service.mjs +3 -3
- package/esm2022/lib/number-input-button/number-input-button/number-input-button.component.mjs +3 -3
- package/esm2022/lib/number-input-button/number-input-button.module.mjs +4 -4
- package/esm2022/lib/password-requirement-check/password-check.service.mjs +3 -3
- package/esm2022/lib/password-requirement-check/password-requirement-check/password-requirement-check.component.mjs +3 -3
- package/esm2022/lib/password-requirement-check/password-requirement-check.module.mjs +4 -4
- package/esm2022/lib/pdf-button/pdf-button.component.mjs +3 -3
- package/esm2022/lib/pdf-button/pdf-button.module.mjs +4 -4
- package/esm2022/lib/pipes/wrap.pipe.mjs +3 -3
- package/esm2022/lib/profile/profile-edit.component.mjs +3 -3
- package/esm2022/lib/profile/profile-routing.module.mjs +4 -4
- package/esm2022/lib/profile/profile.module.mjs +4 -4
- package/esm2022/lib/read-more/read-more.component.mjs +3 -3
- package/esm2022/lib/read-more/read-more.module.mjs +4 -4
- package/esm2022/lib/request-helper/request-helper.service.mjs +3 -3
- package/esm2022/lib/reset-password/reset-password-routing.module.mjs +4 -4
- package/esm2022/lib/reset-password/reset-password.component.mjs +3 -3
- package/esm2022/lib/reset-password/reset-password.module.mjs +4 -4
- package/esm2022/lib/reset-password/reset-password.service.mjs +3 -3
- package/esm2022/lib/restrictors/restrictor-level-selector/restrictor-level-selector/restrictor-level-selector.component.mjs +3 -3
- package/esm2022/lib/restrictors/restrictor-level-selector/restrictor-level-selector.module.mjs +4 -4
- package/esm2022/lib/restrictors/restrictor-level-selector/restrictor-level.service.mjs +3 -3
- package/esm2022/lib/restrictors/restrictor-status-selector/restrictor-status-selector/restrictor-status-selector.component.mjs +3 -3
- package/esm2022/lib/restrictors/restrictor-status-selector/restrictor-status-selector.module.mjs +4 -4
- package/esm2022/lib/restrictors/restrictor-status-selector/restrictor-status.service.mjs +3 -3
- package/esm2022/lib/restrictors/restrictor-type-selector/restrictor-type-selector/restrictor-type-selector.component.mjs +3 -3
- package/esm2022/lib/restrictors/restrictor-type-selector/restrictor-type-selector.module.mjs +4 -4
- package/esm2022/lib/restrictors/restrictor-type-selector/restrictor-type.service.mjs +3 -3
- package/esm2022/lib/restrictors/restrictor.service.mjs +3 -3
- package/esm2022/lib/restrictors/restrictors-form/restrictors-form.component.mjs +3 -3
- package/esm2022/lib/restrictors/restrictors-form-page/restrictors-form-page.component.mjs +3 -3
- package/esm2022/lib/restrictors/restrictors-list-page/restrictors-list-page.component.mjs +3 -3
- package/esm2022/lib/restrictors/restrictors-routing.module.mjs +4 -4
- package/esm2022/lib/restrictors/restrictors.module.mjs +4 -4
- package/esm2022/lib/role/permission/permission.module.mjs +4 -4
- package/esm2022/lib/role/permission/permission.routes.mjs +4 -4
- package/esm2022/lib/role/permission/permissions-management.component.mjs +3 -3
- package/esm2022/lib/role/role-form-button.component.mjs +3 -3
- package/esm2022/lib/role/role-form.component.mjs +3 -3
- package/esm2022/lib/role/role-view/role-view-routing.module.mjs +4 -4
- package/esm2022/lib/role/role-view/role-view.component.mjs +3 -3
- package/esm2022/lib/role/role-view/role-view.module.mjs +4 -4
- package/esm2022/lib/role/role.module.mjs +4 -4
- package/esm2022/lib/role/role.routes.mjs +4 -4
- package/esm2022/lib/role/role.service.mjs +3 -3
- package/esm2022/lib/role/roles-view-all.component.mjs +3 -3
- package/esm2022/lib/searchable-selector/searchable-selector.component.mjs +3 -3
- package/esm2022/lib/searchable-selector/searchable-selector.module.mjs +4 -4
- package/esm2022/lib/signup/signup-routing.module.mjs +4 -4
- package/esm2022/lib/signup/signup.component.mjs +3 -3
- package/esm2022/lib/signup/signup.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-form/subscription-form-routing.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-form/subscription-form.component.mjs +3 -3
- package/esm2022/lib/subscription/subscription-form/subscription-form.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-listing/subscription-listing-routing.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-listing/subscription-listing.component.mjs +3 -3
- package/esm2022/lib/subscription/subscription-listing/subscription-listing.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-package-listing/subscription-package-listing-routing.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-package-listing/subscription-package-listing.component.mjs +3 -3
- package/esm2022/lib/subscription/subscription-package-listing/subscription-package-listing.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-package-view/subscription-package-view-routing.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-package-view/subscription-package-view.component.mjs +3 -3
- package/esm2022/lib/subscription/subscription-package-view/subscription-package-view.module.mjs +4 -4
- package/esm2022/lib/subscription/subscription-package.service.mjs +3 -3
- package/esm2022/lib/subscription/subscription.service.mjs +3 -3
- package/esm2022/lib/subscription/techlify-subscription-directive.module.mjs +4 -4
- package/esm2022/lib/subscription/techlify-subscription.directive.mjs +3 -3
- package/esm2022/lib/techlify-app-selector/techlify-app-selector.component.mjs +3 -3
- package/esm2022/lib/techlify-app-selector/techlify-app-selector.module.mjs +4 -4
- package/esm2022/lib/techlify-company-switcher/techlify-company-switcher/techlify-company-switcher.component.mjs +3 -3
- package/esm2022/lib/techlify-company-switcher/techlify-company-switcher.module.mjs +4 -4
- package/esm2022/lib/techlify-feature/on-off-switch/on-off-switch.component.mjs +3 -3
- package/esm2022/lib/techlify-feature/techlify-feature-directive.module.mjs +4 -4
- package/esm2022/lib/techlify-feature/techlify-feature-enabled.directive.mjs +3 -3
- package/esm2022/lib/techlify-feature/techlify-feature-listing.component.mjs +3 -3
- package/esm2022/lib/techlify-feature/techlify-feature.module.mjs +4 -4
- package/esm2022/lib/techlify-feature/techlify-feature.service.mjs +3 -3
- package/esm2022/lib/techlify-icon/techlify-icon.component.mjs +3 -3
- package/esm2022/lib/techlify-icon/techlify-icon.module.mjs +4 -4
- package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user-routing.module.mjs +4 -4
- package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user.component.mjs +3 -3
- package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-for-user.module.mjs +4 -4
- package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-subscription.service.mjs +3 -3
- package/esm2022/lib/techlify-notifications/techlify-notification-for-user/techlify-notification-type.service.mjs +3 -3
- package/esm2022/lib/techlify-notifications/techlify-notification-routing.module.mjs +4 -4
- package/esm2022/lib/techlify-notifications/techlify-notification.module.mjs +4 -4
- package/esm2022/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.component.mjs +3 -3
- package/esm2022/lib/techlify-tagger-tag-form-field/techlify-tagger-tag-form-field.module.mjs +4 -4
- package/esm2022/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.component.mjs +3 -3
- package/esm2022/lib/techlify-tagger-tag-selector/techlify-tagger-tag-selector.module.mjs +4 -4
- package/esm2022/lib/techlify-update/techlify-update-form/techlify-update-form.component.mjs +3 -3
- package/esm2022/lib/techlify-update/techlify-update-form/techlify-update-form.module.mjs +4 -4
- package/esm2022/lib/techlify-update/techlify-update-history/techlify-update-history-routing.module.mjs +4 -4
- package/esm2022/lib/techlify-update/techlify-update-history/techlify-update-history.component.mjs +3 -3
- package/esm2022/lib/techlify-update/techlify-update-history/techlify-update-history.module.mjs +4 -4
- package/esm2022/lib/techlify-update/techlify-update-routing.module.mjs +4 -4
- package/esm2022/lib/techlify-update/techlify-update.module.mjs +4 -4
- package/esm2022/lib/techlify-update/techlify-update.service.mjs +3 -3
- package/esm2022/lib/techlify-update/techlify-updates-list/techlify-updates-list.component.mjs +3 -3
- package/esm2022/lib/techlify-update/techlify-updates-teaser/techlify-updates-teaser.component.mjs +3 -3
- package/esm2022/lib/techlify-update/techlify-updates-teaser/techlify-updates-teaser.module.mjs +4 -4
- package/esm2022/lib/techlify-update/update-notifier/update-notifier-snack/update-notifier-snack.component.mjs +3 -3
- package/esm2022/lib/techlify-update/update-notifier/update-notifier.component.mjs +3 -3
- package/esm2022/lib/techlify-update/update-notifier/update-notifier.module.mjs +4 -4
- package/esm2022/lib/techlify-update/update-view/update-view.component.mjs +3 -3
- package/esm2022/lib/techlify-update/update-view/update-view.module.mjs +4 -4
- package/esm2022/lib/timeline-activity/timeline-activity-button/timeline-activity-button-routing.module.mjs +4 -4
- package/esm2022/lib/timeline-activity/timeline-activity-button/timeline-activity-button.component.mjs +3 -3
- package/esm2022/lib/timeline-activity/timeline-activity-button/timeline-activity-button.module.mjs +4 -4
- package/esm2022/lib/timeline-activity/timeline-activity-list/timeline-activity-list-routing.module.mjs +4 -4
- package/esm2022/lib/timeline-activity/timeline-activity-list/timeline-activity-list.component.mjs +3 -3
- package/esm2022/lib/timeline-activity/timeline-activity-list/timeline-activity-list.module.mjs +4 -4
- package/esm2022/lib/timeline-activity/timeline-activity.service.mjs +3 -3
- package/esm2022/lib/timeline-filter/timeline-filter-routing.module.mjs +4 -4
- package/esm2022/lib/timeline-filter/timeline-filter.component.mjs +3 -3
- package/esm2022/lib/timeline-filter/timeline-filter.module.mjs +4 -4
- package/esm2022/lib/user/app-admin-user-view/app-admin-user-view.component.mjs +3 -3
- package/esm2022/lib/user/app-admin-user-view/app-admin-user-view.module.mjs +4 -4
- package/esm2022/lib/user/app-admin-user-view/app-admin-user-view.routes.mjs +4 -4
- package/esm2022/lib/user/current-user.service.mjs +3 -3
- package/esm2022/lib/user/user-enable-button-component/user-enable-button.component.mjs +3 -3
- package/esm2022/lib/user/user-enable-button-component/user-enable-button.module.mjs +4 -4
- package/esm2022/lib/user/user-explore.component.mjs +3 -3
- package/esm2022/lib/user/user-form.component.mjs +3 -3
- package/esm2022/lib/user/user-sessions/user-session.service.mjs +3 -3
- package/esm2022/lib/user/user-sessions/user-sessions/user-sessions.component.mjs +3 -3
- package/esm2022/lib/user/user-sessions/user-sessions/user-sessions.module.mjs +4 -4
- package/esm2022/lib/user/user-view.component.mjs +3 -3
- package/esm2022/lib/user/user.module.mjs +4 -4
- package/esm2022/lib/user/user.routes.mjs +4 -4
- package/esm2022/lib/user/user.service.mjs +3 -3
- package/esm2022/lib/user/users-view-all.component.mjs +3 -3
- package/esm2022/lib/user-client-enable-disable-button/user-client-enable-disable-button.component.mjs +3 -3
- package/esm2022/lib/user-client-enable-disable-button/user-client-enable-disable-button.module.mjs +4 -4
- package/esm2022/lib/user-clients-list/user-client.service.mjs +3 -3
- package/esm2022/lib/user-clients-list/user-clients-list.component.mjs +3 -3
- package/esm2022/lib/user-clients-list/user-clients-list.module.mjs +4 -4
- package/esm2022/lib/user-config/user-config.service.mjs +3 -3
- package/esm2022/lib/user-menu/user-menu.component.mjs +3 -3
- package/esm2022/lib/user-menu/user-menu.module.mjs +4 -4
- package/esm2022/lib/user-selector/user-data.service.mjs +3 -3
- package/esm2022/lib/user-selector/user-selector.component.mjs +3 -3
- package/esm2022/lib/user-selector/user-selector.module.mjs +4 -4
- package/esm2022/lib/utility/date-utils.service.mjs +3 -3
- package/esm2022/lib/utility/num-items-selector.component.mjs +3 -3
- package/esm2022/lib/utility/number-selector.component.mjs +3 -3
- package/esm2022/lib/utility/utility.module.mjs +4 -4
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/ngx-techlify-core.mjs +1079 -1018
- package/fesm2022/ngx-techlify-core.mjs.map +1 -1
- package/lib/action-popup/action-popup.module.d.ts +3 -4
- package/lib/delete-button/techlify-delete-button.component.d.ts +23 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -203,14 +203,14 @@ let UsersViewAllComponent = class UsersViewAllComponent extends TechlifyListingC
|
|
|
203
203
|
.pipe(finalize(() => this.isWorking = false))
|
|
204
204
|
.subscribe(_ => this.alertService.addAlert('Password reset email sent', 'success'));
|
|
205
205
|
}
|
|
206
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
207
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UsersViewAllComponent, selector: "app-users-view-all", inputs: { clientId: "clientId", userTypeIds: "userTypeIds", title: "title", isAppAdminUser: "isAppAdminUser" }, usesInheritance: true, ngImport: i0, template: "<div [ngClass]=\"{'m-4':config?.userConfig?.showDefaultMargin}\">\n <mat-card class=\"mb-2\">\n <mat-card-content class=\"d-flex justify-content-between align-items center gap-2\">\n <section class=\"d-flex justify-content-start align-items-center gap-2\">\n <h3 class=\"mb-0\">\n {{ title }}\n </h3>\n <mat-icon class=\"cursor-pointer\" matTooltip=\"New User\"\n *ngIf=\"config?.userConfig?.showAddUser && currentUserService?.hasPermission('user_create')\"\n (click)=\"createOrEditUser()\">add</mat-icon>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../import']\"\n *ngIf=\"config?.userConfig?.showImportButton && currentUserService?.hasPermission('user_create')\">\n Import User\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../roles']\" *ngIf=\"config?.userConfig?.showRoles\">\n <mat-icon>people</mat-icon>\n Roles\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../role-permissions']\"\n *ngIf=\"config?.userConfig?.showPermissions\">\n <mat-icon>lock</mat-icon>\n Role Permissions\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../configurations']\"\n *ngIf=\"config?.userConfig?.showConfigurations && currentUser?.user_type_id === 2\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n toggle_on\n </span>\n </mat-icon>\n Configurations\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../restrictors']\"\n *ngIf=\"config?.userConfig?.showRestrictors && currentUser?.user_type_id === 2\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n vpn_lock\n </span>\n </mat-icon>\n Restrictors\n </button>\n </section>\n <form [formGroup]=\"filterForm\" fxLayout fxLayoutAlign=\"end start\" fxLayoutGap=\"0.3rem\">\n <mat-form-field appearance=\"outline\" style=\"max-width: 150px;\">\n <mat-label>Search</mat-label>\n <input autocomplete=\"off\" matInput type=\"text\" name=\"search\" placeholder=\"Search by name, email\"\n formControlName=\"search\">\n </mat-form-field>\n <mat-form-field appearance=\"outline\" style=\"max-width: 150px;\">\n <mat-label>Role</mat-label>\n <app-searchable-selector apiUrl=\"api/roles\" [multiple]=\"true\" formControlName=\"role_ids\"\n titleField=\"label\"></app-searchable-selector>\n </mat-form-field>\n <mat-button-toggle-group [hideSingleSelectionIndicator]=\"true\" [hideMultipleSelectionIndicator]=\"true\"\n formControlName=\"status\" multiple>\n <mat-button-toggle value=\"enabled\">Enabled</mat-button-toggle>\n <mat-button-toggle value=\"disabled\">Disabled</mat-button-toggle>\n </mat-button-toggle-group>\n </form>\n </mat-card-content>\n </mat-card>\n <mat-card class=\"mt-2 p-0\">\n <mat-card-content>\n <table mat-table [dataSource]=\"models\" class=\"w-100\" aria-describedby=\"Users\" infiniteScroll\n [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\" [infiniteScrollContainer]=\"scrollContainer\"\n [fromRoot]=\"true\" (scrolled)=\"onScroll()\" matSort (matSortChange)=\"onSortChange($event)\">\n <!-- Index Column -->\n <ng-container matColumnDef=\"index\">\n <th mat-header-cell *matHeaderCellDef> # </th>\n <td mat-cell *matCellDef=\"let element; let i = index;\"> {{ i + 1 }} </td>\n </ng-container>\n\n <!-- Name Column -->\n <ng-container matColumnDef=\"name\">\n <th mat-header-cell mat-sort-header=\"name\" *matHeaderCellDef> Name </th>\n <td mat-cell *matCellDef=\"let element\">\n <a [routerLink]=\"[element?.id]\" class=\"text-decoration-none\">\n {{ element.name }}\n </a>\n <p class=\"mb-0 text-secondary\">\n <!-- !element?.user_client condition added to check if user has user_client record -->\n {{ !element?.user_client ? '' : element?.user_client?.is_enabled ? 'Enabled' : 'Disabled' }}\n </p>\n </td>\n </ng-container>\n\n <!-- Email Column -->\n <ng-container matColumnDef=\"email\">\n <th mat-header-cell mat-sort-header=\"email\" *matHeaderCellDef> Email </th>\n <td mat-cell *matCellDef=\"let element\"> {{element.email}} </td>\n </ng-container>\n\n <!-- Type Column -->\n <ng-container matColumnDef=\"type\">\n <th mat-header-cell mat-sort-header=\"user_type_id\" *matHeaderCellDef> User Type </th>\n <td mat-cell *matCellDef=\"let element\"> {{ getUserType(element) }} </td>\n </ng-container>\n\n <!-- Roles Column -->\n <ng-container matColumnDef=\"roles\">\n <th mat-header-cell *matHeaderCellDef> Role </th>\n <td mat-cell *matCellDef=\"let element\">\n <div class=\"d-flex justify-content-start align-items-center gap-1 flex-wrap text-light\">\n <span *ngFor=\"let role of element?.roles\" class=\"badge bg-secondary\">\n {{ role?.label }}\n </span>\n </div>\n </td>\n </ng-container>\n\n <!-- Last Login Column -->\n <ng-container matColumnDef=\"last_login\">\n <th mat-header-cell *matHeaderCellDef> Last Login </th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.last_login | date:'medium' }}</td>\n </ng-container>\n\n <!-- Added By Column -->\n <ng-container matColumnDef=\"added_by\">\n <th mat-header-cell *matHeaderCellDef> Added By </th>\n <td mat-cell *matCellDef=\"let element\">\n <p class=\"mb-0\">{{ element?.creator?.name }}</p>\n <p class=\"text-secondary\">{{ element?.created_at | date }}</p>\n </td>\n </ng-container>\n\n <!-- Actions Column -->\n <ng-container matColumnDef=\"actions\">\n <th mat-header-cell *matHeaderCellDef> Action </th>\n <td mat-cell *matCellDef=\"let element\">\n <div fxLayout fxLayoutAlign=\"start center\" fxLayoutGap=\"5px\">\n <button type=\"button\" mat-icon-button [routerLink]=\"[getUserViewRoute(element)]\">\n <mat-icon>visibility</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('user_update')\" type=\"button\" mat-icon-button\n (click)=\"createOrEditUser(element)\">\n <mat-icon>edit</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('user_delete')\" type=\"button\" mat-icon-button\n (click)=\"deleteUser(element)\">\n <mat-icon>delete</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('techlify_rbac.user.reset_password')\" type=\"button\"\n mat-icon-button (click)=\"resetPassword(element)\" matTooltip=\"Reset User Password\">\n <mat-icon>refresh</mat-icon>\n </button>\n\n <app-user-enable-button [user]=\"element\" (onSave)=\"reload()\"></app-user-enable-button>\n </div>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </table>\n <mat-progress-bar *ngIf=\"isWorking\" mode=\"indeterminate\"></mat-progress-bar>\n </mat-card-content>\n </mat-card>\n</div>", dependencies: [{ kind: "directive", type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i9.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i9.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i10.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i10.MatLabel, selector: "mat-label" }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i12.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i13.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i13.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i14.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i14.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i14.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i14.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i14.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i14.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i14.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i14.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i14.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i14.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i15.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i15.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i16.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i17.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i17.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "component", type: i18.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "directive", type: i19.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i19.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i19.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i20.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i21.InfiniteScrollDirective, selector: "[infiniteScroll], [infinite-scroll], [data-infinite-scroll]", inputs: ["infiniteScrollDistance", "infiniteScrollUpDistance", "infiniteScrollThrottle", "infiniteScrollDisabled", "infiniteScrollContainer", "scrollWindow", "immediateCheck", "horizontal", "alwaysCallback", "fromRoot"], outputs: ["scrolled", "scrolledUp"] }, { kind: "component", type: i22.SearchableSelectorComponent, selector: "app-searchable-selector", inputs: ["valueField", "titleField", "subtitleField", "apiUrl", "multiple", "selectedValue", "enableSearch", "add", "addConfig", "edit", "editConfig", "sort", "sortBy", "searchField", "itemComponent", "items", "apiDataProperty", "cache", "perPage", "inDataSearch", "panelWidth", "focusSearchOnOpen", "required", "disabled", "value"], outputs: ["selectedValueChange", "selectionChange", "itemsChange"] }, { kind: "component", type: i23.UserEnableButtonComponent, selector: "app-user-enable-button", inputs: ["user", "isUseIcons"], outputs: ["onSave"] }, { kind: "pipe", type: i8.DatePipe, name: "date" }] }); }
|
|
206
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UsersViewAllComponent, deps: [{ token: i1.HttpService }, { token: i1.AlertService }, { token: i2.CurrentUserService }, { token: i3.UserConfigService }, { token: i4.MatDialog }, { token: i5.UserService }, { token: i6.UntypedFormBuilder }, { token: i7.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
207
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: UsersViewAllComponent, selector: "app-users-view-all", inputs: { clientId: "clientId", userTypeIds: "userTypeIds", title: "title", isAppAdminUser: "isAppAdminUser" }, usesInheritance: true, ngImport: i0, template: "<div [ngClass]=\"{'m-4':config?.userConfig?.showDefaultMargin}\">\n <mat-card class=\"mb-2\">\n <mat-card-content class=\"d-flex justify-content-between align-items center gap-2\">\n <section class=\"d-flex justify-content-start align-items-center gap-2\">\n <h3 class=\"mb-0\">\n {{ title }}\n </h3>\n <mat-icon class=\"cursor-pointer\" matTooltip=\"New User\"\n *ngIf=\"config?.userConfig?.showAddUser && currentUserService?.hasPermission('user_create')\"\n (click)=\"createOrEditUser()\">add</mat-icon>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../import']\"\n *ngIf=\"config?.userConfig?.showImportButton && currentUserService?.hasPermission('user_create')\">\n Import User\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../roles']\" *ngIf=\"config?.userConfig?.showRoles\">\n <mat-icon>people</mat-icon>\n Roles\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../role-permissions']\"\n *ngIf=\"config?.userConfig?.showPermissions\">\n <mat-icon>lock</mat-icon>\n Role Permissions\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../configurations']\"\n *ngIf=\"config?.userConfig?.showConfigurations && currentUser?.user_type_id === 2\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n toggle_on\n </span>\n </mat-icon>\n Configurations\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../restrictors']\"\n *ngIf=\"config?.userConfig?.showRestrictors && currentUser?.user_type_id === 2\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n vpn_lock\n </span>\n </mat-icon>\n Restrictors\n </button>\n </section>\n <form [formGroup]=\"filterForm\" fxLayout fxLayoutAlign=\"end start\" fxLayoutGap=\"0.3rem\">\n <mat-form-field appearance=\"outline\" style=\"max-width: 150px;\">\n <mat-label>Search</mat-label>\n <input autocomplete=\"off\" matInput type=\"text\" name=\"search\" placeholder=\"Search by name, email\"\n formControlName=\"search\">\n </mat-form-field>\n <mat-form-field appearance=\"outline\" style=\"max-width: 150px;\">\n <mat-label>Role</mat-label>\n <app-searchable-selector apiUrl=\"api/roles\" [multiple]=\"true\" formControlName=\"role_ids\"\n titleField=\"label\"></app-searchable-selector>\n </mat-form-field>\n <mat-button-toggle-group [hideSingleSelectionIndicator]=\"true\" [hideMultipleSelectionIndicator]=\"true\"\n formControlName=\"status\" multiple>\n <mat-button-toggle value=\"enabled\">Enabled</mat-button-toggle>\n <mat-button-toggle value=\"disabled\">Disabled</mat-button-toggle>\n </mat-button-toggle-group>\n </form>\n </mat-card-content>\n </mat-card>\n <mat-card class=\"mt-2 p-0\">\n <mat-card-content>\n <table mat-table [dataSource]=\"models\" class=\"w-100\" aria-describedby=\"Users\" infiniteScroll\n [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\" [infiniteScrollContainer]=\"scrollContainer\"\n [fromRoot]=\"true\" (scrolled)=\"onScroll()\" matSort (matSortChange)=\"onSortChange($event)\">\n <!-- Index Column -->\n <ng-container matColumnDef=\"index\">\n <th mat-header-cell *matHeaderCellDef> # </th>\n <td mat-cell *matCellDef=\"let element; let i = index;\"> {{ i + 1 }} </td>\n </ng-container>\n\n <!-- Name Column -->\n <ng-container matColumnDef=\"name\">\n <th mat-header-cell mat-sort-header=\"name\" *matHeaderCellDef> Name </th>\n <td mat-cell *matCellDef=\"let element\">\n <a [routerLink]=\"[element?.id]\" class=\"text-decoration-none\">\n {{ element.name }}\n </a>\n <p class=\"mb-0 text-secondary\">\n <!-- !element?.user_client condition added to check if user has user_client record -->\n {{ !element?.user_client ? '' : element?.user_client?.is_enabled ? 'Enabled' : 'Disabled' }}\n </p>\n </td>\n </ng-container>\n\n <!-- Email Column -->\n <ng-container matColumnDef=\"email\">\n <th mat-header-cell mat-sort-header=\"email\" *matHeaderCellDef> Email </th>\n <td mat-cell *matCellDef=\"let element\"> {{element.email}} </td>\n </ng-container>\n\n <!-- Type Column -->\n <ng-container matColumnDef=\"type\">\n <th mat-header-cell mat-sort-header=\"user_type_id\" *matHeaderCellDef> User Type </th>\n <td mat-cell *matCellDef=\"let element\"> {{ getUserType(element) }} </td>\n </ng-container>\n\n <!-- Roles Column -->\n <ng-container matColumnDef=\"roles\">\n <th mat-header-cell *matHeaderCellDef> Role </th>\n <td mat-cell *matCellDef=\"let element\">\n <div class=\"d-flex justify-content-start align-items-center gap-1 flex-wrap text-light\">\n <span *ngFor=\"let role of element?.roles\" class=\"badge bg-secondary\">\n {{ role?.label }}\n </span>\n </div>\n </td>\n </ng-container>\n\n <!-- Last Login Column -->\n <ng-container matColumnDef=\"last_login\">\n <th mat-header-cell *matHeaderCellDef> Last Login </th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.last_login | date:'medium' }}</td>\n </ng-container>\n\n <!-- Added By Column -->\n <ng-container matColumnDef=\"added_by\">\n <th mat-header-cell *matHeaderCellDef> Added By </th>\n <td mat-cell *matCellDef=\"let element\">\n <p class=\"mb-0\">{{ element?.creator?.name }}</p>\n <p class=\"text-secondary\">{{ element?.created_at | date }}</p>\n </td>\n </ng-container>\n\n <!-- Actions Column -->\n <ng-container matColumnDef=\"actions\">\n <th mat-header-cell *matHeaderCellDef> Action </th>\n <td mat-cell *matCellDef=\"let element\">\n <div fxLayout fxLayoutAlign=\"start center\" fxLayoutGap=\"5px\">\n <button type=\"button\" mat-icon-button [routerLink]=\"[getUserViewRoute(element)]\">\n <mat-icon>visibility</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('user_update')\" type=\"button\" mat-icon-button\n (click)=\"createOrEditUser(element)\">\n <mat-icon>edit</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('user_delete')\" type=\"button\" mat-icon-button\n (click)=\"deleteUser(element)\">\n <mat-icon>delete</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('techlify_rbac.user.reset_password')\" type=\"button\"\n mat-icon-button (click)=\"resetPassword(element)\" matTooltip=\"Reset User Password\">\n <mat-icon>refresh</mat-icon>\n </button>\n\n <app-user-enable-button [user]=\"element\" (onSave)=\"reload()\"></app-user-enable-button>\n </div>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </table>\n <mat-progress-bar *ngIf=\"isWorking\" mode=\"indeterminate\"></mat-progress-bar>\n </mat-card-content>\n </mat-card>\n</div>", dependencies: [{ kind: "directive", type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i9.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i9.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i10.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i10.MatLabel, selector: "mat-label" }, { kind: "component", type: i11.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i12.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i13.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i13.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "component", type: i14.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i14.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i14.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i14.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i14.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i14.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i14.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i14.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i14.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i14.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i15.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i15.MatCardContent, selector: "mat-card-content" }, { kind: "directive", type: i16.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i17.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled", "disabledInteractive", "hideSingleSelectionIndicator", "hideMultipleSelectionIndicator"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i17.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled", "disabledInteractive"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "component", type: i18.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "directive", type: i19.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i19.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i19.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i20.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i21.InfiniteScrollDirective, selector: "[infiniteScroll], [infinite-scroll], [data-infinite-scroll]", inputs: ["infiniteScrollDistance", "infiniteScrollUpDistance", "infiniteScrollThrottle", "infiniteScrollDisabled", "infiniteScrollContainer", "scrollWindow", "immediateCheck", "horizontal", "alwaysCallback", "fromRoot"], outputs: ["scrolled", "scrolledUp"] }, { kind: "component", type: i22.SearchableSelectorComponent, selector: "app-searchable-selector", inputs: ["valueField", "titleField", "subtitleField", "apiUrl", "multiple", "selectedValue", "enableSearch", "add", "addConfig", "edit", "editConfig", "sort", "sortBy", "searchField", "itemComponent", "items", "apiDataProperty", "cache", "perPage", "inDataSearch", "panelWidth", "focusSearchOnOpen", "required", "disabled", "value"], outputs: ["selectedValueChange", "selectionChange", "itemsChange"] }, { kind: "component", type: i23.UserEnableButtonComponent, selector: "app-user-enable-button", inputs: ["user", "isUseIcons"], outputs: ["onSave"] }, { kind: "pipe", type: i8.DatePipe, name: "date" }] }); }
|
|
208
208
|
};
|
|
209
209
|
UsersViewAllComponent = __decorate([
|
|
210
210
|
UntilDestroy()
|
|
211
211
|
], UsersViewAllComponent);
|
|
212
212
|
export { UsersViewAllComponent };
|
|
213
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
213
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UsersViewAllComponent, decorators: [{
|
|
214
214
|
type: Component,
|
|
215
215
|
args: [{ selector: 'app-users-view-all', template: "<div [ngClass]=\"{'m-4':config?.userConfig?.showDefaultMargin}\">\n <mat-card class=\"mb-2\">\n <mat-card-content class=\"d-flex justify-content-between align-items center gap-2\">\n <section class=\"d-flex justify-content-start align-items-center gap-2\">\n <h3 class=\"mb-0\">\n {{ title }}\n </h3>\n <mat-icon class=\"cursor-pointer\" matTooltip=\"New User\"\n *ngIf=\"config?.userConfig?.showAddUser && currentUserService?.hasPermission('user_create')\"\n (click)=\"createOrEditUser()\">add</mat-icon>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../import']\"\n *ngIf=\"config?.userConfig?.showImportButton && currentUserService?.hasPermission('user_create')\">\n Import User\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../roles']\" *ngIf=\"config?.userConfig?.showRoles\">\n <mat-icon>people</mat-icon>\n Roles\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../role-permissions']\"\n *ngIf=\"config?.userConfig?.showPermissions\">\n <mat-icon>lock</mat-icon>\n Role Permissions\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../configurations']\"\n *ngIf=\"config?.userConfig?.showConfigurations && currentUser?.user_type_id === 2\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n toggle_on\n </span>\n </mat-icon>\n Configurations\n </button>\n <button mat-raised-button type=\"button\" [routerLink]=\"['../restrictors']\"\n *ngIf=\"config?.userConfig?.showRestrictors && currentUser?.user_type_id === 2\">\n <mat-icon>\n <span class=\"material-icons-outlined\">\n vpn_lock\n </span>\n </mat-icon>\n Restrictors\n </button>\n </section>\n <form [formGroup]=\"filterForm\" fxLayout fxLayoutAlign=\"end start\" fxLayoutGap=\"0.3rem\">\n <mat-form-field appearance=\"outline\" style=\"max-width: 150px;\">\n <mat-label>Search</mat-label>\n <input autocomplete=\"off\" matInput type=\"text\" name=\"search\" placeholder=\"Search by name, email\"\n formControlName=\"search\">\n </mat-form-field>\n <mat-form-field appearance=\"outline\" style=\"max-width: 150px;\">\n <mat-label>Role</mat-label>\n <app-searchable-selector apiUrl=\"api/roles\" [multiple]=\"true\" formControlName=\"role_ids\"\n titleField=\"label\"></app-searchable-selector>\n </mat-form-field>\n <mat-button-toggle-group [hideSingleSelectionIndicator]=\"true\" [hideMultipleSelectionIndicator]=\"true\"\n formControlName=\"status\" multiple>\n <mat-button-toggle value=\"enabled\">Enabled</mat-button-toggle>\n <mat-button-toggle value=\"disabled\">Disabled</mat-button-toggle>\n </mat-button-toggle-group>\n </form>\n </mat-card-content>\n </mat-card>\n <mat-card class=\"mt-2 p-0\">\n <mat-card-content>\n <table mat-table [dataSource]=\"models\" class=\"w-100\" aria-describedby=\"Users\" infiniteScroll\n [infiniteScrollDistance]=\"2\" [infiniteScrollThrottle]=\"50\" [infiniteScrollContainer]=\"scrollContainer\"\n [fromRoot]=\"true\" (scrolled)=\"onScroll()\" matSort (matSortChange)=\"onSortChange($event)\">\n <!-- Index Column -->\n <ng-container matColumnDef=\"index\">\n <th mat-header-cell *matHeaderCellDef> # </th>\n <td mat-cell *matCellDef=\"let element; let i = index;\"> {{ i + 1 }} </td>\n </ng-container>\n\n <!-- Name Column -->\n <ng-container matColumnDef=\"name\">\n <th mat-header-cell mat-sort-header=\"name\" *matHeaderCellDef> Name </th>\n <td mat-cell *matCellDef=\"let element\">\n <a [routerLink]=\"[element?.id]\" class=\"text-decoration-none\">\n {{ element.name }}\n </a>\n <p class=\"mb-0 text-secondary\">\n <!-- !element?.user_client condition added to check if user has user_client record -->\n {{ !element?.user_client ? '' : element?.user_client?.is_enabled ? 'Enabled' : 'Disabled' }}\n </p>\n </td>\n </ng-container>\n\n <!-- Email Column -->\n <ng-container matColumnDef=\"email\">\n <th mat-header-cell mat-sort-header=\"email\" *matHeaderCellDef> Email </th>\n <td mat-cell *matCellDef=\"let element\"> {{element.email}} </td>\n </ng-container>\n\n <!-- Type Column -->\n <ng-container matColumnDef=\"type\">\n <th mat-header-cell mat-sort-header=\"user_type_id\" *matHeaderCellDef> User Type </th>\n <td mat-cell *matCellDef=\"let element\"> {{ getUserType(element) }} </td>\n </ng-container>\n\n <!-- Roles Column -->\n <ng-container matColumnDef=\"roles\">\n <th mat-header-cell *matHeaderCellDef> Role </th>\n <td mat-cell *matCellDef=\"let element\">\n <div class=\"d-flex justify-content-start align-items-center gap-1 flex-wrap text-light\">\n <span *ngFor=\"let role of element?.roles\" class=\"badge bg-secondary\">\n {{ role?.label }}\n </span>\n </div>\n </td>\n </ng-container>\n\n <!-- Last Login Column -->\n <ng-container matColumnDef=\"last_login\">\n <th mat-header-cell *matHeaderCellDef> Last Login </th>\n <td mat-cell *matCellDef=\"let element\">{{ element?.last_login | date:'medium' }}</td>\n </ng-container>\n\n <!-- Added By Column -->\n <ng-container matColumnDef=\"added_by\">\n <th mat-header-cell *matHeaderCellDef> Added By </th>\n <td mat-cell *matCellDef=\"let element\">\n <p class=\"mb-0\">{{ element?.creator?.name }}</p>\n <p class=\"text-secondary\">{{ element?.created_at | date }}</p>\n </td>\n </ng-container>\n\n <!-- Actions Column -->\n <ng-container matColumnDef=\"actions\">\n <th mat-header-cell *matHeaderCellDef> Action </th>\n <td mat-cell *matCellDef=\"let element\">\n <div fxLayout fxLayoutAlign=\"start center\" fxLayoutGap=\"5px\">\n <button type=\"button\" mat-icon-button [routerLink]=\"[getUserViewRoute(element)]\">\n <mat-icon>visibility</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('user_update')\" type=\"button\" mat-icon-button\n (click)=\"createOrEditUser(element)\">\n <mat-icon>edit</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('user_delete')\" type=\"button\" mat-icon-button\n (click)=\"deleteUser(element)\">\n <mat-icon>delete</mat-icon>\n </button>\n\n <button *ngIf=\"currentUserService.hasPermission('techlify_rbac.user.reset_password')\" type=\"button\"\n mat-icon-button (click)=\"resetPassword(element)\" matTooltip=\"Reset User Password\">\n <mat-icon>refresh</mat-icon>\n </button>\n\n <app-user-enable-button [user]=\"element\" (onSave)=\"reload()\"></app-user-enable-button>\n </div>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </table>\n <mat-progress-bar *ngIf=\"isWorking\" mode=\"indeterminate\"></mat-progress-bar>\n </mat-card-content>\n </mat-card>\n</div>" }]
|
|
216
216
|
}], ctorParameters: () => [{ type: i1.HttpService }, { type: i1.AlertService }, { type: i2.CurrentUserService }, { type: i3.UserConfigService }, { type: i4.MatDialog }, { type: i5.UserService }, { type: i6.UntypedFormBuilder }, { type: i7.ActivatedRoute }], propDecorators: { clientId: [{
|
|
@@ -39,10 +39,10 @@ export class UserClientEnableDisableButtonComponent {
|
|
|
39
39
|
error: () => (this.isWorking = false)
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
42
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientEnableDisableButtonComponent, deps: [{ token: i1.CredentialsService }, { token: i2.CurrentUserService }, { token: i3.UserClientService }, { token: i1.AlertService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: UserClientEnableDisableButtonComponent, selector: "app-user-client-enable-disable-button", inputs: { userClient: "userClient" }, outputs: { saved: "saved" }, ngImport: i0, template: "<button\n type=\"button\"\n mat-stroked-button color=\"warn\"\n *ngIf=\"userClient?.is_enabled && userClient?.user_id != user?.id\"\n [disabled]=\"isWorking\"\n (click)=\"disable()\"\n>\n Disable\n</button>\n<button\n mat-raised-button color=\"primary\"\n *ngIf=\"!userClient?.is_enabled && userClient?.user_id != user?.id\"\n [disabled]=\"isWorking\"\n type=\"button\"\n (click)=\"enable()\"\n>\n Enable\n</button>\n", styles: [""], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] }); }
|
|
44
44
|
}
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientEnableDisableButtonComponent, decorators: [{
|
|
46
46
|
type: Component,
|
|
47
47
|
args: [{ selector: 'app-user-client-enable-disable-button', template: "<button\n type=\"button\"\n mat-stroked-button color=\"warn\"\n *ngIf=\"userClient?.is_enabled && userClient?.user_id != user?.id\"\n [disabled]=\"isWorking\"\n (click)=\"disable()\"\n>\n Disable\n</button>\n<button\n mat-raised-button color=\"primary\"\n *ngIf=\"!userClient?.is_enabled && userClient?.user_id != user?.id\"\n [disabled]=\"isWorking\"\n type=\"button\"\n (click)=\"enable()\"\n>\n Enable\n</button>\n" }]
|
|
48
48
|
}], ctorParameters: () => [{ type: i1.CredentialsService }, { type: i2.CurrentUserService }, { type: i3.UserClientService }, { type: i1.AlertService }], propDecorators: { userClient: [{
|
package/esm2022/lib/user-client-enable-disable-button/user-client-enable-disable-button.module.mjs
CHANGED
|
@@ -5,15 +5,15 @@ import { MaterialModule } from '../material.module';
|
|
|
5
5
|
import { UserClientEnableDisableButtonComponent } from './user-client-enable-disable-button.component';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class UserClientEnableDisableButtonModule {
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientEnableDisableButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: UserClientEnableDisableButtonModule, declarations: [UserClientEnableDisableButtonComponent], imports: [CommonModule,
|
|
10
10
|
MaterialModule,
|
|
11
11
|
FlexLayoutModule], exports: [UserClientEnableDisableButtonComponent] }); }
|
|
12
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
12
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientEnableDisableButtonModule, imports: [CommonModule,
|
|
13
13
|
MaterialModule,
|
|
14
14
|
FlexLayoutModule] }); }
|
|
15
15
|
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientEnableDisableButtonModule, decorators: [{
|
|
17
17
|
type: NgModule,
|
|
18
18
|
args: [{
|
|
19
19
|
declarations: [UserClientEnableDisableButtonComponent],
|
|
@@ -12,10 +12,10 @@ export class UserClientService extends TechlifyServiceBaseClass {
|
|
|
12
12
|
disable(userClient, params) {
|
|
13
13
|
return this.http.put(`api/user-clients/${userClient?.id}/disable`, { params });
|
|
14
14
|
}
|
|
15
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
16
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientService, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
16
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientService, providedIn: 'root' }); }
|
|
17
17
|
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientService, decorators: [{
|
|
19
19
|
type: Injectable,
|
|
20
20
|
args: [{
|
|
21
21
|
providedIn: 'root'
|
|
@@ -38,10 +38,10 @@ export class UserClientsListComponent extends TechlifyListingControllerInterface
|
|
|
38
38
|
error: () => (this.isWorking = false)
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientsListComponent, deps: [{ token: i1.UserClientService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: UserClientsListComponent, selector: "app-user-clients-list", inputs: { user: "user" }, usesInheritance: true, ngImport: i0, template: "<mat-card>\n <mat-card-content>\n <table mat-table [dataSource]=\"models\" class=\"w-100\">\n\n <!-- # Column -->\n <ng-container matColumnDef=\"#\">\n <th mat-header-cell *matHeaderCellDef> # </th>\n <td mat-cell *matCellDef=\"let element; let i = index\"> {{ i + 1 }} </td>\n </ng-container>\n\n <!-- Name Column -->\n <ng-container matColumnDef=\"Name\">\n <th mat-header-cell *matHeaderCellDef> Name </th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.client?.name }}\n </td>\n </ng-container>\n\n <!-- Added On Column -->\n <ng-container matColumnDef=\"Added On\">\n <th mat-header-cell *matHeaderCellDef> Added On </th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.created_at | date }}\n </td>\n </ng-container>\n\n <!-- Status Column -->\n <ng-container matColumnDef=\"Status\">\n <th mat-header-cell *matHeaderCellDef> Status </th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.is_enabled ? 'Enabled' : 'Disabled' }}\n </td>\n </ng-container>\n\n <!-- Action Column -->\n <ng-container matColumnDef=\"Action\">\n <th mat-header-cell *matHeaderCellDef> Action </th>\n <td mat-cell *matCellDef=\"let element\">\n <app-user-client-enable-disable-button\n [userClient]=\"element\"\n (saved)=\"reload()\"\n ></app-user-client-enable-disable-button>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </table>\n\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"isWorking\"></mat-progress-bar>\n\n </mat-card-content>\n</mat-card>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i3.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i3.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i3.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i3.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i3.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i3.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i4.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i4.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i6.UserClientEnableDisableButtonComponent, selector: "app-user-client-enable-disable-button", inputs: ["userClient"], outputs: ["saved"] }, { kind: "pipe", type: i2.DatePipe, name: "date" }] }); }
|
|
43
43
|
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientsListComponent, decorators: [{
|
|
45
45
|
type: Component,
|
|
46
46
|
args: [{ selector: 'app-user-clients-list', template: "<mat-card>\n <mat-card-content>\n <table mat-table [dataSource]=\"models\" class=\"w-100\">\n\n <!-- # Column -->\n <ng-container matColumnDef=\"#\">\n <th mat-header-cell *matHeaderCellDef> # </th>\n <td mat-cell *matCellDef=\"let element; let i = index\"> {{ i + 1 }} </td>\n </ng-container>\n\n <!-- Name Column -->\n <ng-container matColumnDef=\"Name\">\n <th mat-header-cell *matHeaderCellDef> Name </th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.client?.name }}\n </td>\n </ng-container>\n\n <!-- Added On Column -->\n <ng-container matColumnDef=\"Added On\">\n <th mat-header-cell *matHeaderCellDef> Added On </th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.created_at | date }}\n </td>\n </ng-container>\n\n <!-- Status Column -->\n <ng-container matColumnDef=\"Status\">\n <th mat-header-cell *matHeaderCellDef> Status </th>\n <td mat-cell *matCellDef=\"let element\">\n {{ element?.is_enabled ? 'Enabled' : 'Disabled' }}\n </td>\n </ng-container>\n\n <!-- Action Column -->\n <ng-container matColumnDef=\"Action\">\n <th mat-header-cell *matHeaderCellDef> Action </th>\n <td mat-cell *matCellDef=\"let element\">\n <app-user-client-enable-disable-button\n [userClient]=\"element\"\n (saved)=\"reload()\"\n ></app-user-client-enable-disable-button>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayedColumns;\"></tr>\n </table>\n\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"isWorking\"></mat-progress-bar>\n\n </mat-card-content>\n</mat-card>\n" }]
|
|
47
47
|
}], ctorParameters: () => [{ type: i1.UserClientService }], propDecorators: { user: [{
|
|
@@ -6,17 +6,17 @@ import { UserClientsListComponent } from './user-clients-list.component';
|
|
|
6
6
|
import { UserClientEnableDisableButtonModule } from '../user-client-enable-disable-button/user-client-enable-disable-button.module';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
export class UserClientsListModule {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientsListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: UserClientsListModule, declarations: [UserClientsListComponent], imports: [CommonModule,
|
|
11
11
|
MaterialModule,
|
|
12
12
|
FlexLayoutModule,
|
|
13
13
|
UserClientEnableDisableButtonModule], exports: [UserClientsListComponent] }); }
|
|
14
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
14
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientsListModule, imports: [CommonModule,
|
|
15
15
|
MaterialModule,
|
|
16
16
|
FlexLayoutModule,
|
|
17
17
|
UserClientEnableDisableButtonModule] }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserClientsListModule, decorators: [{
|
|
20
20
|
type: NgModule,
|
|
21
21
|
args: [{
|
|
22
22
|
declarations: [UserClientsListComponent],
|
|
@@ -53,10 +53,10 @@ export class UserConfigService {
|
|
|
53
53
|
}
|
|
54
54
|
return config;
|
|
55
55
|
}
|
|
56
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
57
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserConfigService, deps: [{ token: i1.UserConfig }, { token: i2.CurrentUserService }, { token: i3.CredentialsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
57
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserConfigService, providedIn: 'root' }); }
|
|
58
58
|
}
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserConfigService, decorators: [{
|
|
60
60
|
type: Injectable,
|
|
61
61
|
args: [{
|
|
62
62
|
providedIn: 'root'
|
|
@@ -29,10 +29,10 @@ export class UserMenuComponent {
|
|
|
29
29
|
this.errorHandler.handleError(error);
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserMenuComponent, deps: [{ token: i1.Router }, { token: i2.ErrorHandlerService }, { token: i2.AlertService }, { token: i2.CredentialsService }, { token: i2.AuthenticationService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: UserMenuComponent, selector: "app-user-menu", ngImport: i0, template: "<button\n mat-button\n [matMenuTriggerFor]=\"userMenu\"\n type=\"button\"\n color=\"primary\"\n class=\"p-1 font-xs w-100\"\n>\n <div class=\"d-flex align-items-center gap-1\">\n <span class=\"material-symbols-outlined\"> account_circle </span>\n <span class=\"font-weight-normal font-md\">\n {{ username }}\n </span>\n <span class=\"material-symbols-outlined\"> arrow_drop_down </span>\n </div>\n</button>\n\n<mat-menu #userMenu=\"matMenu\">\n <app-techlify-company-switcher *ngIf=\"user.user_type_id != 1\"></app-techlify-company-switcher>\n <button mat-menu-item type=\"button\" [routerLink]=\"['/change-password']\">\n <mat-icon>vpn_key</mat-icon>\n Change Password\n </button>\n <button mat-menu-item (click)=\"logout()\" type=\"button\">\n <mat-icon>login</mat-icon>\n Logout\n </button>\n</mat-menu>\n", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: i6.TechlifyCompanySwitcherComponent, selector: "app-techlify-company-switcher" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
|
34
34
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserMenuComponent, decorators: [{
|
|
36
36
|
type: Component,
|
|
37
37
|
args: [{ selector: 'app-user-menu', template: "<button\n mat-button\n [matMenuTriggerFor]=\"userMenu\"\n type=\"button\"\n color=\"primary\"\n class=\"p-1 font-xs w-100\"\n>\n <div class=\"d-flex align-items-center gap-1\">\n <span class=\"material-symbols-outlined\"> account_circle </span>\n <span class=\"font-weight-normal font-md\">\n {{ username }}\n </span>\n <span class=\"material-symbols-outlined\"> arrow_drop_down </span>\n </div>\n</button>\n\n<mat-menu #userMenu=\"matMenu\">\n <app-techlify-company-switcher *ngIf=\"user.user_type_id != 1\"></app-techlify-company-switcher>\n <button mat-menu-item type=\"button\" [routerLink]=\"['/change-password']\">\n <mat-icon>vpn_key</mat-icon>\n Change Password\n </button>\n <button mat-menu-item (click)=\"logout()\" type=\"button\">\n <mat-icon>login</mat-icon>\n Logout\n </button>\n</mat-menu>\n" }]
|
|
38
38
|
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.ErrorHandlerService }, { type: i2.AlertService }, { type: i2.CredentialsService }, { type: i2.AuthenticationService }] });
|
|
@@ -8,13 +8,13 @@ import { TechlifyCompanySwitcherModule } from '../techlify-company-switcher';
|
|
|
8
8
|
import { MatIcon } from '@angular/material/icon';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
export class UserMenuModule {
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
12
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: UserMenuModule, declarations: [UserMenuComponent], imports: [CommonModule, MatButton, MatMenu, MatMenuItem, RouterLink, MatMenuTrigger, TechlifyCompanySwitcherModule,
|
|
13
13
|
MatIcon], exports: [UserMenuComponent] }); }
|
|
14
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
14
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserMenuModule, imports: [CommonModule, MatButton, MatMenu, MatMenuItem, TechlifyCompanySwitcherModule,
|
|
15
15
|
MatIcon] }); }
|
|
16
16
|
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserMenuModule, decorators: [{
|
|
18
18
|
type: NgModule,
|
|
19
19
|
args: [{
|
|
20
20
|
declarations: [UserMenuComponent],
|
|
@@ -25,10 +25,10 @@ export class UserDataService {
|
|
|
25
25
|
});
|
|
26
26
|
return promise;
|
|
27
27
|
}
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
29
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
28
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserDataService, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
29
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserDataService, providedIn: 'root' }); }
|
|
30
30
|
}
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserDataService, decorators: [{
|
|
32
32
|
type: Injectable,
|
|
33
33
|
args: [{ providedIn: 'root' }]
|
|
34
34
|
}], ctorParameters: () => [{ type: i1.HttpService }] });
|
|
@@ -53,8 +53,8 @@ export class UserSelectorComponent {
|
|
|
53
53
|
itemSelected() {
|
|
54
54
|
this.idChange.emit(this.id);
|
|
55
55
|
}
|
|
56
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
57
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserSelectorComponent, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: UserSelectorComponent, selector: "user-selector", inputs: { _value: ["value", "_value"], clientId: "clientId", id: "id", isRequired: "isRequired" }, outputs: { idChange: "idChange" }, providers: [
|
|
58
58
|
{
|
|
59
59
|
provide: NG_VALUE_ACCESSOR,
|
|
60
60
|
useExisting: forwardRef(() => UserSelectorComponent),
|
|
@@ -62,7 +62,7 @@ export class UserSelectorComponent {
|
|
|
62
62
|
}
|
|
63
63
|
], ngImport: i0, template: "<mat-form-field class=\"col-12 pl-0 pr-0\">\n <mat-label>User</mat-label>\n <mat-select [(ngModel)]=\"value\" (selectionChange)=\"itemSelected()\" [required]=\"isRequired\">\n <mat-option *ngFor=\"let user of items\" [value]=\"user.id\">{{user.name}}</mat-option>\n </mat-select>\n <mat-error>User is required</mat-error>\n</mat-form-field>", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i6.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }] }); }
|
|
64
64
|
}
|
|
65
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserSelectorComponent, decorators: [{
|
|
66
66
|
type: Component,
|
|
67
67
|
args: [{ selector: 'user-selector', providers: [
|
|
68
68
|
{
|
|
@@ -7,17 +7,17 @@ import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
|
7
7
|
import { MaterialModule } from '../material.module';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
export class UserSelectorModule {
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
11
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserSelectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: UserSelectorModule, declarations: [UserSelectorComponent], imports: [CommonModule,
|
|
12
12
|
FormsModule,
|
|
13
13
|
ReactiveFormsModule,
|
|
14
14
|
MaterialModule], exports: [UserSelectorComponent] }); }
|
|
15
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
15
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserSelectorModule, imports: [CommonModule,
|
|
16
16
|
FormsModule,
|
|
17
17
|
ReactiveFormsModule,
|
|
18
18
|
MaterialModule] }); }
|
|
19
19
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserSelectorModule, decorators: [{
|
|
21
21
|
type: NgModule,
|
|
22
22
|
args: [{
|
|
23
23
|
imports: [
|
|
@@ -38,10 +38,10 @@ export class DateUtils {
|
|
|
38
38
|
var time = inputDate.toLocaleTimeString();
|
|
39
39
|
return year + "-" + month + "-" + date + " " + time;
|
|
40
40
|
}
|
|
41
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
42
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DateUtils, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
42
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DateUtils, providedIn: 'root' }); }
|
|
43
43
|
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DateUtils, decorators: [{
|
|
45
45
|
type: Injectable,
|
|
46
46
|
args: [{
|
|
47
47
|
providedIn: 'root'
|
|
@@ -17,10 +17,10 @@ export class NumItemsSelector {
|
|
|
17
17
|
numItemsChanged() {
|
|
18
18
|
this.numItemsChange.emit(this.numItems);
|
|
19
19
|
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumItemsSelector, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NumItemsSelector, selector: "num-items-selector", inputs: { numItems: "numItems" }, outputs: { numItemsChange: "numItemsChange" }, ngImport: i0, template: "<select [(ngModel)]=\"numItems\" class=\"form-control\" id=\"numItems\" name=\"numItems\" (change)=\"numItemsChanged()\">\r\n <option value=\"25\">25</option>\r\n <option value=\"50\">50</option>\r\n <option value=\"100\">100</option>\r\n <option value=\"250\">250</option>\r\n <option value=\"500\">500</option>\r\n <option value=\"1000\">1000</option>\r\n <option value=\"2000\">2000</option>\r\n <option value=\"3000\">3000</option>\r\n <option value=\"4000\">4000</option>\r\n <option value=\"5000\">5000</option>\r\n <option value=\"5000000000\">All</option>\r\n</select> ", dependencies: [{ kind: "directive", type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
22
22
|
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumItemsSelector, decorators: [{
|
|
24
24
|
type: Component,
|
|
25
25
|
args: [{ selector: "num-items-selector", template: "<select [(ngModel)]=\"numItems\" class=\"form-control\" id=\"numItems\" name=\"numItems\" (change)=\"numItemsChanged()\">\r\n <option value=\"25\">25</option>\r\n <option value=\"50\">50</option>\r\n <option value=\"100\">100</option>\r\n <option value=\"250\">250</option>\r\n <option value=\"500\">500</option>\r\n <option value=\"1000\">1000</option>\r\n <option value=\"2000\">2000</option>\r\n <option value=\"3000\">3000</option>\r\n <option value=\"4000\">4000</option>\r\n <option value=\"5000\">5000</option>\r\n <option value=\"5000000000\">All</option>\r\n</select> " }]
|
|
26
26
|
}], ctorParameters: () => [], propDecorators: { numItems: [{
|
|
@@ -24,10 +24,10 @@ export class NumberSelector {
|
|
|
24
24
|
this.items.push(i);
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberSelector, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NumberSelector, selector: "number-selector", inputs: { start_value: "start_value", end_value: "end_value", selectedValue: "selectedValue" }, outputs: { selectedValueChange: "selectedValueChange" }, ngImport: i0, template: "<div class=\"number-selector-wrapper\">\n <select name=\"selectedValue\" [(ngModel)]=\"selectedValue\" class=\"form-control\" (change)=\"numChanged()\">\n <option value=\"\">-- Student Status --</option>\n <option *ngFor=\"let start_value of items;\" value=\"{{start_value}}\">{{start_value}}</option>\n </select>\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { 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"] }] }); }
|
|
29
29
|
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NumberSelector, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
32
|
args: [{ selector: "number-selector", template: "<div class=\"number-selector-wrapper\">\n <select name=\"selectedValue\" [(ngModel)]=\"selectedValue\" class=\"form-control\" (change)=\"numChanged()\">\n <option value=\"\">-- Student Status --</option>\n <option *ngFor=\"let start_value of items;\" value=\"{{start_value}}\">{{start_value}}</option>\n </select>\n</div>" }]
|
|
33
33
|
}], ctorParameters: () => [], propDecorators: { start_value: [{
|
|
@@ -6,13 +6,13 @@ import { NumItemsSelector } from './num-items-selector.component';
|
|
|
6
6
|
import { NumberSelector } from './number-selector.component';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
export class UtilityModule {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UtilityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: UtilityModule, declarations: [NumItemsSelector, NumberSelector], imports: [CommonModule,
|
|
11
11
|
FormsModule], exports: [NumItemsSelector, NumberSelector] }); }
|
|
12
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
12
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UtilityModule, imports: [CommonModule,
|
|
13
13
|
FormsModule] }); }
|
|
14
14
|
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UtilityModule, decorators: [{
|
|
16
16
|
type: NgModule,
|
|
17
17
|
args: [{
|
|
18
18
|
imports: [
|