@skysoftware-co/bayan-core-widgets-ui 0.0.1
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/README.md +336 -0
- package/fesm2022/skysoftware-co-bayan-core-widgets-ui.mjs +966 -0
- package/fesm2022/skysoftware-co-bayan-core-widgets-ui.mjs.map +1 -0
- package/index.d.ts +6 -0
- package/lib/shared/common-methods/navigation.utils.d.ts +4 -0
- package/lib/shared/common-methods/navigation.utils.d.ts.map +1 -0
- package/lib/shared/menu.dtos.d.ts +91 -0
- package/lib/shared/menu.dtos.d.ts.map +1 -0
- package/lib/shared/menu.service.d.ts +24 -0
- package/lib/shared/menu.service.d.ts.map +1 -0
- package/lib/top-menu-widget/components/about-dialog-widget/about-dialog-widget.component.d.ts +18 -0
- package/lib/top-menu-widget/components/about-dialog-widget/about-dialog-widget.component.d.ts.map +1 -0
- package/lib/top-menu-widget/components/change-password-widget/change-password-widget.component.d.ts +30 -0
- package/lib/top-menu-widget/components/change-password-widget/change-password-widget.component.d.ts.map +1 -0
- package/lib/top-menu-widget/components/global-search-widget/global-search-widget.component.d.ts +47 -0
- package/lib/top-menu-widget/components/global-search-widget/global-search-widget.component.d.ts.map +1 -0
- package/lib/top-menu-widget/components/item-widget/item-widget.component.d.ts +22 -0
- package/lib/top-menu-widget/components/item-widget/item-widget.component.d.ts.map +1 -0
- package/lib/top-menu-widget/components/notifications-widget/notifications-widget.component.d.ts +24 -0
- package/lib/top-menu-widget/components/notifications-widget/notifications-widget.component.d.ts.map +1 -0
- package/lib/top-menu-widget/components/settings-widget/settings-widget.component.d.ts +35 -0
- package/lib/top-menu-widget/components/settings-widget/settings-widget.component.d.ts.map +1 -0
- package/lib/top-menu-widget/components/user-panel-widget/user-panel-widget.component.d.ts +29 -0
- package/lib/top-menu-widget/components/user-panel-widget/user-panel-widget.component.d.ts.map +1 -0
- package/lib/top-menu-widget/top-menu-widget.component.d.ts +72 -0
- package/lib/top-menu-widget/top-menu-widget.component.d.ts.map +1 -0
- package/lib/top-menu-widget/top-menu-widget.models.d.ts +63 -0
- package/lib/top-menu-widget/top-menu-widget.models.d.ts.map +1 -0
- package/package.json +47 -0
- package/public-api.d.ts +4 -0
- package/public-api.d.ts.map +1 -0
- package/skysoftware-co-bayan-core-widgets-ui.d.ts.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skysoftware-co-bayan-core-widgets-ui.mjs","sources":["../../../projects/bayan-core-ui/src/lib/shared/common-methods/navigation.utils.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/about-dialog-widget/about-dialog-widget.component.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/about-dialog-widget/about-dialog-widget.component.html","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/change-password-widget/change-password-widget.component.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/change-password-widget/change-password-widget.component.html","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/global-search-widget/global-search-widget.component.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/global-search-widget/global-search-widget.component.html","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/item-widget/item-widget.component.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/item-widget/item-widget.component.html","../../../projects/bayan-core-ui/src/lib/shared/menu.service.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/notifications-widget/notifications-widget.component.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/notifications-widget/notifications-widget.component.html","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/settings-widget/settings-widget.component.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/settings-widget/settings-widget.component.html","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/user-panel-widget/user-panel-widget.component.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/user-panel-widget/user-panel-widget.component.html","../../../projects/bayan-core-ui/src/lib/top-menu-widget/top-menu-widget.component.ts","../../../projects/bayan-core-ui/src/lib/top-menu-widget/top-menu-widget.component.html","../../../projects/bayan-core-ui/src/lib/shared/menu.dtos.ts","../../../projects/bayan-core-ui/src/public-api.ts","../../../projects/bayan-core-ui/src/skysoftware-co-bayan-core-widgets-ui.ts"],"sourcesContent":["export function resolveUrl(baseUrl: string | null | undefined, url: string | null | undefined): string | null {\r\n if (!url) {\r\n return null;\r\n }\r\n\r\n return baseUrl ? joinUrl(baseUrl, url) : url;\r\n}\r\n\r\nexport function isExternalNavigation(baseUrl: string | null | undefined, url: string): boolean {\r\n return isAbsoluteUrl(url) || (!!baseUrl && isAbsoluteUrl(baseUrl));\r\n}\r\n\r\nexport function joinUrl(baseUrl: string, url: string): string {\r\n const normalizedBaseUrl = baseUrl.endsWith('/') ? baseUrl.slice(0, -1) : baseUrl;\r\n const normalizedUrl = url.startsWith('/') ? url : `/${url}`;\r\n return `${normalizedBaseUrl}${normalizedUrl}`;\r\n}\r\n\r\nfunction isAbsoluteUrl(url: string): boolean {\r\n return /^(?:[a-z][a-z0-9+.-]*:|\\/\\/)/i.test(url);\r\n}","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { faCheckCircle } from '@fortawesome/pro-solid-svg-icons';\r\nimport { TranslatePipe } from '@skysoftware-co/sky-components-ui';\r\nimport { TopMenuWidgetAboutDialogConfig } from '../../top-menu-widget.models';\r\n\r\n@Component({\r\n selector: 'bayan-core-about-dialog-widget',\r\n standalone: true,\r\n imports: [CommonModule, FontAwesomeModule, TranslatePipe],\r\n templateUrl: './about-dialog-widget.component.html',\r\n styleUrls: ['../../top-menu-widget.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BayanCoreAboutDialogWidgetComponent {\r\n @Input() baseUrl = '';\r\n @Input() visible = false;\r\n @Input({ required: true }) config!: TopMenuWidgetAboutDialogConfig;\r\n\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n @Output() licenseClick = new EventEmitter<void>();\r\n @Output() releaseNotesClick = new EventEmitter<void>();\r\n @Output() supportClick = new EventEmitter<void>();\r\n\r\n readonly checkCircleIcon = faCheckCircle;\r\n\r\n onBackdropClick(event: MouseEvent): void {\r\n if ((event.target as HTMLElement).classList.contains('about-backdrop')) {\r\n this.closeDialog();\r\n }\r\n }\r\n\r\n closeDialog(): void {\r\n this.visibleChange.emit(false);\r\n }\r\n}\r\n","@if (visible) {\r\n <div class=\"about-backdrop\" (click)=\"onBackdropClick($event)\">\r\n <div class=\"about-modal\" role=\"dialog\" aria-labelledby=\"topMenuAboutDialogTitle\" aria-modal=\"true\">\r\n <div class=\"about-modal-header\">\r\n <h4 class=\"about-modal-title\" id=\"topMenuAboutDialogTitle\">{{ config.title || 'AboutSkyBayan' | translate }}</h4>\r\n <button type=\"button\" class=\"about-close-btn\" (click)=\"closeDialog()\" [attr.aria-label]=\"(config.closeButtonLabel || 'Close') | translate\">\r\n <span aria-hidden=\"true\">×</span>\r\n </button>\r\n </div>\r\n\r\n <div class=\"about-modal-body\">\r\n <div class=\"row align-items-start\">\r\n <div class=\"col-4\">\r\n @if (config.logoUrl) {\r\n <img [src]=\"config.logoUrl\" alt=\"Logo\" class=\"img-fluid about-logo\">\r\n }\r\n </div>\r\n <div class=\"col-8\">\r\n <h3 class=\"about-product-name\">{{ config.title || 'AboutSkyBayan' | translate }}</h3>\r\n <p class=\"about-version-text mb-1\">{{ (config.versionLabel || 'Version') | translate }} {{ config.version || '' }}</p>\r\n <p class=\"about-up-to-date mb-2\">\r\n <fa-icon [icon]=\"checkCircleIcon\" class=\"text-info me-1\"></fa-icon>\r\n <small class=\"text-muted\">{{ (config.statusLabel || 'SkyBayanUpToDate') | translate }}</small>\r\n </p>\r\n <p class=\"about-copyright mb-0\">{{ config.copyright || '' }}</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"about-modal-actions\">\r\n <button type=\"button\" class=\"about-action-btn\" (click)=\"licenseClick.emit()\">{{ (config.licenseButtonLabel || 'LicenseInformation') | translate }}</button>\r\n <button type=\"button\" class=\"about-action-btn\" (click)=\"releaseNotesClick.emit()\">{{ (config.releaseNotesButtonLabel || 'ReleaseNotes') | translate }}</button>\r\n <button type=\"button\" class=\"about-action-btn\" (click)=\"supportClick.emit()\">{{ (config.supportButtonLabel || 'TechnicalSupport') | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, signal } from '@angular/core';\r\nimport { DxFormComponent, DxFormModule, DxPopupModule } from 'devextreme-angular';\r\nimport { SkyFooterActionsComponent, TranslatePipe } from '@skysoftware-co/sky-components-ui';\r\nimport {\r\n TopMenuWidgetChangePasswordDialogConfig,\r\n TopMenuWidgetChangePasswordPayload,\r\n} from '../../top-menu-widget.models';\r\n\r\n@Component({\r\n selector: 'bayan-core-change-password-widget',\r\n standalone: true,\r\n imports: [CommonModule, DxPopupModule, DxFormModule, SkyFooterActionsComponent, TranslatePipe],\r\n templateUrl: './change-password-widget.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BayanCoreChangePasswordWidgetComponent {\r\n @Input() baseUrl = '';\r\n @Input() visible = false;\r\n @Input({ required: true }) config!: TopMenuWidgetChangePasswordDialogConfig;\r\n @Input() isSubmitting = false;\r\n @Output() visibleChange = new EventEmitter<boolean>();\r\n @Output() submitPasswordChange = new EventEmitter<TopMenuWidgetChangePasswordPayload>();\r\n\r\n @ViewChild('changePasswordForm') changePasswordForm?: DxFormComponent;\r\n\r\n readonly currentPasswordMode = signal<'password' | 'text'>('password');\r\n readonly newPasswordMode = signal<'password' | 'text'>('password');\r\n readonly confirmNewPasswordMode = signal<'password' | 'text'>('password');\r\n\r\n formData: TopMenuWidgetChangePasswordPayload = {\r\n currentPassword: '',\r\n newPassword: '',\r\n confirmNewPassword: '',\r\n };\r\n\r\n closeDialog(): void {\r\n this.visible = false;\r\n this.visibleChange.emit(false);\r\n this.resetForm();\r\n }\r\n\r\n resetForm(): void {\r\n this.formData = {\r\n currentPassword: '',\r\n newPassword: '',\r\n confirmNewPassword: '',\r\n };\r\n }\r\n\r\n onSaveButtonClick(): void {\r\n const isValid = this.changePasswordForm?.instance.validate().isValid ?? false;\r\n if (!isValid) {\r\n return;\r\n }\r\n\r\n this.submitPasswordChange.emit({ ...this.formData });\r\n }\r\n\r\n togglePasswordMode(field: 'currentPasswordMode' | 'newPasswordMode' | 'confirmNewPasswordMode'): void {\r\n const current = this[field]();\r\n this[field].set(current === 'text' ? 'password' : 'text');\r\n }\r\n\r\n updateField(field: keyof TopMenuWidgetChangePasswordPayload, value: string): void {\r\n this.formData = {\r\n ...this.formData,\r\n [field]: value,\r\n };\r\n }\r\n\r\n isChangePasswordValid(): boolean {\r\n return !!this.formData.currentPassword && !!this.formData.newPassword && !!this.formData.confirmNewPassword && this.formData.newPassword === this.formData.confirmNewPassword;\r\n }\r\n\r\n getCurrentPasswordEditorOptions(): object {\r\n return {\r\n maxLength: 256,\r\n disabled: this.isSubmitting,\r\n mode: this.currentPasswordMode(),\r\n onValueChanged: (event: { value?: string }) => this.updateField('currentPassword', event.value ?? ''),\r\n buttons: [{\r\n name: 'password',\r\n location: 'after',\r\n options: {\r\n stylingMode: 'text',\r\n icon: this.currentPasswordMode() === 'text' ? 'eyeopen' : 'eyeclose',\r\n onClick: () => this.togglePasswordMode('currentPasswordMode'),\r\n },\r\n }],\r\n };\r\n }\r\n\r\n getNewPasswordEditorOptions(): object {\r\n return {\r\n maxLength: 256,\r\n disabled: this.isSubmitting,\r\n mode: this.newPasswordMode(),\r\n onValueChanged: (event: { value?: string }) => this.updateField('newPassword', event.value ?? ''),\r\n buttons: [{\r\n name: 'password',\r\n location: 'after',\r\n options: {\r\n stylingMode: 'text',\r\n icon: this.newPasswordMode() === 'text' ? 'eyeopen' : 'eyeclose',\r\n onClick: () => this.togglePasswordMode('newPasswordMode'),\r\n },\r\n }],\r\n };\r\n }\r\n\r\n getConfirmPasswordEditorOptions(): object {\r\n return {\r\n maxLength: 256,\r\n disabled: this.isSubmitting,\r\n mode: this.confirmNewPasswordMode(),\r\n onValueChanged: (event: { value?: string }) => this.updateField('confirmNewPassword', event.value ?? ''),\r\n buttons: [{\r\n name: 'password',\r\n location: 'after',\r\n options: {\r\n stylingMode: 'text',\r\n icon: this.confirmNewPasswordMode() === 'text' ? 'eyeopen' : 'eyeclose',\r\n onClick: () => this.togglePasswordMode('confirmNewPasswordMode'),\r\n },\r\n }],\r\n };\r\n }\r\n\r\n passwordComparison = (): string => this.formData.newPassword;\r\n}\r\n","<dx-popup\r\n [visible]=\"visible\"\r\n (onHiding)=\"closeDialog()\"\r\n [title]=\"config.title | translate\"\r\n [showCloseButton]=\"true\"\r\n [width]=\"450\"\r\n [height]=\"'auto'\"\r\n [dragEnabled]=\"false\"\r\n [shading]=\"true\"\r\n shadingColor=\"rgba(0,0,0,0.4)\">\r\n <div *dxTemplate=\"let data of 'content'\">\r\n <dx-form\r\n #changePasswordForm\r\n [formData]=\"formData\"\r\n labelLocation=\"top\"\r\n [showColonAfterLabel]=\"false\"\r\n class=\"mb-3 mx-2\">\r\n <dxi-item\r\n dataField=\"currentPassword\"\r\n editorType=\"dxTextBox\"\r\n [editorOptions]=\"getCurrentPasswordEditorOptions()\">\r\n <dxo-label [text]=\"config.currentPasswordLabel | translate\"></dxo-label>\r\n <dxi-validation-rule type=\"required\"></dxi-validation-rule>\r\n </dxi-item>\r\n\r\n <dxi-item\r\n dataField=\"newPassword\"\r\n editorType=\"dxTextBox\"\r\n [editorOptions]=\"getNewPasswordEditorOptions()\">\r\n <dxo-label [text]=\"config.newPasswordLabel | translate\"></dxo-label>\r\n <dxi-validation-rule type=\"required\"></dxi-validation-rule>\r\n </dxi-item>\r\n\r\n <dxi-item\r\n dataField=\"confirmNewPassword\"\r\n editorType=\"dxTextBox\"\r\n [editorOptions]=\"getConfirmPasswordEditorOptions()\">\r\n <dxo-label [text]=\"config.confirmNewPasswordLabel | translate\"></dxo-label>\r\n <dxi-validation-rule type=\"required\"></dxi-validation-rule>\r\n <dxi-validation-rule\r\n type=\"compare\"\r\n [comparisonTarget]=\"passwordComparison\">\r\n </dxi-validation-rule>\r\n </dxi-item>\r\n </dx-form>\r\n\r\n <sky-footer-actions\r\n [primaryButtonText]=\"config.primaryButtonText | translate\"\r\n [showSecondaryButton]=\"false\"\r\n [isLoading]=\"isSubmitting\"\r\n [disabledPrimaryButton]=\"isSubmitting || !isChangePasswordValid()\"\r\n (PrimaryButtonClick)=\"onSaveButtonClick()\">\r\n </sky-footer-actions>\r\n </div>\r\n</dx-popup>\r\n","import { CommonModule, DOCUMENT } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, inject } from '@angular/core';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport {\r\n faDollar,\r\n faGraduationCap,\r\n faGrid,\r\n faMedal,\r\n faRightLeft,\r\n faTools,\r\n faUsers,\r\n} from '@fortawesome/pro-solid-svg-icons';\r\nimport { faClock } from '@fortawesome/pro-light-svg-icons';\r\nimport { Router } from '@angular/router';\r\nimport { DxAutocompleteComponent, DxAutocompleteModule } from 'devextreme-angular';\r\nimport { TranslatePipe } from '@skysoftware-co/sky-components-ui';\r\nimport { TopMenuWidgetSearchItem } from '../../top-menu-widget.models';\r\nimport { isExternalNavigation, resolveUrl } from '../../../shared/common-methods/navigation.utils';\r\n\r\n@Component({\r\n selector: 'bayan-core-global-search-widget',\r\n standalone: true,\r\n imports: [CommonModule, DxAutocompleteModule, FontAwesomeModule, TranslatePipe],\r\n templateUrl: './global-search-widget.component.html',\r\n styleUrls: ['../../top-menu-widget.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BayanCoreGlobalSearchWidgetComponent {\r\n private readonly document = inject(DOCUMENT);\r\n private readonly router = inject(Router);\r\n\r\n @ViewChild('searchAutoComplete') searchAutoComplete?: DxAutocompleteComponent;\r\n\r\n @Input() baseUrl = '';\r\n @Input() placeholder = 'TopMenu.SearchPlaceholder';\r\n @Input() dataSource: TopMenuWidgetSearchItem[] = [];\r\n\r\n @Output() search = new EventEmitter<string>();\r\n @Output() itemNavigate = new EventEmitter<TopMenuWidgetSearchItem>();\r\n\r\n readonly toolsIcon = faTools;\r\n readonly gridIcon = faGrid;\r\n readonly creditIcon = faDollar;\r\n readonly usersIcon = faUsers;\r\n readonly clockIcon = faClock;\r\n readonly swapIcon = faRightLeft;\r\n readonly medalIcon = faMedal;\r\n readonly graduateIcon = faGraduationCap;\r\n\r\n onInput(event: { event?: { target?: { value?: string } }; component?: { option: (name: string, value: string) => void } } | any): void {\r\n const searchTerm = event.event?.target?.value;\r\n if (typeof searchTerm === 'string' && searchTerm.startsWith(' ')) {\r\n event.component?.option('value', searchTerm.trim());\r\n }\r\n }\r\n\r\n onEnterKey(event: { event?: { target?: { value?: string } } } | any): void {\r\n const searchTerm = (event.event?.target?.value ?? '').toString().trim();\r\n if (!searchTerm) {\r\n return;\r\n }\r\n\r\n const match = this.dataSource.find(\r\n (item) => item.menuSubTitle.toLowerCase().trim() === searchTerm.toLowerCase().trim(),\r\n );\r\n\r\n if (match) {\r\n this.itemNavigate.emit(match);\r\n return;\r\n }\r\n\r\n this.search.emit(searchTerm);\r\n }\r\n\r\n onItemSelected(event: Event, item: TopMenuWidgetSearchItem): void {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.itemNavigate.emit(item);\r\n this.navigateToUrl(item.menuUrl);\r\n }\r\n\r\n reset(): void {\r\n this.searchAutoComplete?.instance?.option('value', '');\r\n }\r\n\r\n getText(text: string, isTranslatable = false): string {\r\n return isTranslatable ? text : text;\r\n }\r\n\r\n hasNavigationUrl(url: string | null | undefined): boolean {\r\n return !!resolveUrl(this.baseUrl, url);\r\n }\r\n\r\n private navigateToUrl(url: string | null | undefined): void {\r\n if (!url) {\r\n return;\r\n }\r\n\r\n const resolvedUrl = resolveUrl(this.baseUrl, url);\r\n\r\n if (!resolvedUrl) {\r\n return;\r\n }\r\n\r\n if (isExternalNavigation(this.baseUrl, url)) {\r\n this.document.location.assign(resolvedUrl);\r\n return;\r\n }\r\n\r\n void this.router.navigateByUrl(resolvedUrl);\r\n }\r\n}\r\n","<div class=\"top-menu-widget__search\">\r\n <dx-autocomplete\r\n #searchAutoComplete\r\n [placeholder]=\"placeholder | translate\"\r\n [dataSource]=\"dataSource\"\r\n valueExpr=\"menuSubTitle\"\r\n [searchExpr]=\"['menuSubTitle']\"\r\n [showClearButton]=\"false\"\r\n [showDropDownButton]=\"false\"\r\n searchMode=\"contains\"\r\n [width]=\"'100%'\"\r\n stylingMode=\"filled\"\r\n [wrapItemText]=\"true\"\r\n [searchTimeout]=\"100\"\r\n (onInput)=\"onInput($event)\"\r\n (onEnterKey)=\"onEnterKey($event)\">\r\n <div class=\"w-100\" *dxTemplate=\"let item of 'item'\">\r\n @if (hasNavigationUrl(item.menuUrl)) {\r\n <a\r\n class=\"top-menu-widget__search-item\"\r\n (click)=\"onItemSelected($event, item)\">\r\n <div class=\"top-menu-widget__search-item-title\">\r\n @if (item.iconClass === 'icon icon-tools') {\r\n <fa-icon [icon]=\"toolsIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-grid') {\r\n <fa-icon [icon]=\"gridIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-credit') {\r\n <fa-icon [icon]=\"creditIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-users') {\r\n <fa-icon [icon]=\"usersIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-clock') {\r\n <fa-icon [icon]=\"clockIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-swap') {\r\n <fa-icon [icon]=\"swapIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-medal') {\r\n <fa-icon [icon]=\"medalIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-graduation-cap') {\r\n <fa-icon [icon]=\"graduateIcon\"></fa-icon>\r\n }\r\n\r\n @if (item.isTranslatable) {\r\n {{ item.menuTitle | translate }}\r\n } @else {\r\n {{ item.menuTitle }}\r\n }\r\n </div>\r\n\r\n <div class=\"top-menu-widget__search-item-subtitle\">\r\n @if (item.isTranslatable) {\r\n {{ item.menuSubTitle | translate }}\r\n } @else {\r\n {{ item.menuSubTitle }}\r\n }\r\n </div>\r\n </a>\r\n } @else {\r\n <button\r\n type=\"button\"\r\n class=\"top-menu-widget__search-item\"\r\n (click)=\"onItemSelected($event, item)\">\r\n <div class=\"top-menu-widget__search-item-title\">\r\n @if (item.iconClass === 'icon icon-tools') {\r\n <fa-icon [icon]=\"toolsIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-grid') {\r\n <fa-icon [icon]=\"gridIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-credit') {\r\n <fa-icon [icon]=\"creditIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-users') {\r\n <fa-icon [icon]=\"usersIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-clock') {\r\n <fa-icon [icon]=\"clockIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-swap') {\r\n <fa-icon [icon]=\"swapIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-medal') {\r\n <fa-icon [icon]=\"medalIcon\"></fa-icon>\r\n }\r\n @if (item.iconClass === 'icon icon-graduation-cap') {\r\n <fa-icon [icon]=\"graduateIcon\"></fa-icon>\r\n }\r\n\r\n @if (item.isTranslatable) {\r\n {{ item.menuTitle | translate }}\r\n } @else {\r\n {{ item.menuTitle }}\r\n }\r\n </div>\r\n\r\n <div class=\"top-menu-widget__search-item-subtitle\">\r\n @if (item.isTranslatable) {\r\n {{ item.menuSubTitle | translate }}\r\n } @else {\r\n {{ item.menuSubTitle }}\r\n }\r\n </div>\r\n </button>\r\n }\r\n </div>\r\n </dx-autocomplete>\r\n</div>\r\n","import { CommonModule, DOCUMENT } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n Output,\r\n inject,\r\n signal,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TranslatePipe } from '@skysoftware-co/sky-components-ui';\r\nimport { TopMenuWidgetItem } from '../../top-menu-widget.models';\r\nimport { isExternalNavigation, resolveUrl } from '../../../shared/common-methods/navigation.utils';\r\n\r\n@Component({\r\n selector: 'bayan-core-item-widget',\r\n standalone: true,\r\n imports: [CommonModule, TranslatePipe],\r\n templateUrl: './item-widget.component.html',\r\n styleUrls: ['../../top-menu-widget.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BayanCoreItemWidgetComponent {\r\n private readonly document = inject(DOCUMENT);\r\n private readonly router = inject(Router);\r\n\r\n @Input() baseUrl = '';\r\n @Input({ required: true }) item!: TopMenuWidgetItem;\r\n @Output() itemClick = new EventEmitter<TopMenuWidgetItem>();\r\n\r\n readonly open = signal(false);\r\n\r\n constructor(private readonly elementRef: ElementRef<HTMLElement>) {}\r\n\r\n @HostListener('document:click', ['$event'])\r\n onDocumentClick(event: MouseEvent): void {\r\n const target = event.target as Node | null;\r\n if (target && !this.elementRef.nativeElement.contains(target)) {\r\n this.open.set(false);\r\n }\r\n }\r\n\r\n hasChildren(): boolean {\r\n return (this.item.children ?? []).length > 0;\r\n }\r\n\r\n hasNavigationUrl(url: string | null | undefined): boolean {\r\n return !!resolveUrl(this.baseUrl, url);\r\n }\r\n\r\n onItemActivated(event: Event): void {\r\n event.preventDefault();\r\n\r\n if (this.hasChildren()) {\r\n event.stopPropagation();\r\n this.open.update((value) => !value);\r\n return;\r\n }\r\n\r\n this.itemClick.emit(this.item);\r\n this.navigateToUrl(this.item.menuUrl);\r\n }\r\n\r\n onChildItemClick(item: TopMenuWidgetItem): void {\r\n this.open.set(false);\r\n this.itemClick.emit(item);\r\n }\r\n\r\n private navigateToUrl(url: string | null | undefined): void {\r\n if (!url) {\r\n return;\r\n }\r\n\r\n const resolvedUrl = resolveUrl(this.baseUrl, url);\r\n\r\n if (!resolvedUrl) {\r\n return;\r\n }\r\n\r\n if (isExternalNavigation(this.baseUrl, url)) {\r\n this.document.location.assign(resolvedUrl);\r\n return;\r\n }\r\n\r\n void this.router.navigateByUrl(resolvedUrl);\r\n }\r\n}\r\n","@if (!hasChildren()) {\r\n <li class=\"nav-item\">\r\n @if (hasNavigationUrl(item.menuUrl)) {\r\n <a\r\n class=\"nav-link\"\r\n (click)=\"onItemActivated($event)\">\r\n {{ item.menuName | translate }}\r\n </a>\r\n } @else {\r\n <button\r\n type=\"button\"\r\n class=\"nav-link\"\r\n (click)=\"onItemActivated($event)\">\r\n {{ item.menuName | translate }}\r\n </button>\r\n }\r\n </li>\r\n}\r\n\r\n@if (hasChildren()) {\r\n <li class=\"nav-item dropdown\" [class.open]=\"open()\">\r\n <button type=\"button\" class=\"nav-link dropdown-toggle\" (click)=\"onItemActivated($event)\">\r\n {{ item.menuName | translate }} <span class=\"caret\"></span>\r\n </button>\r\n\r\n @if (open()) {\r\n <ul class=\"dropdown-menu menu-dropdown-panel\">\r\n @for (child of item.children; track child.id ?? child.menuName) {\r\n <bayan-core-item-widget\r\n [baseUrl]=\"baseUrl\"\r\n [item]=\"child\"\r\n (itemClick)=\"onChildItemClick($event)\">\r\n </bayan-core-item-widget>\r\n }\r\n </ul>\r\n }\r\n </li>\r\n}\r\n","import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable, inject } from '@angular/core';\r\nimport { catchError, map, Observable, throwError } from 'rxjs';\r\nimport {\r\n ApiEnvelope,\r\n AppFramePreferences,\r\n BlockableModule,\r\n BlockReleaseModuleRequest,\r\n ChangePasswordRequest,\r\n GlobalSearchMenu,\r\n ModuleBlockState,\r\n NotificationsSummary,\r\n SetDisplayAlternateNamesRequest,\r\n SetEmployeeNamesModeRequest,\r\n SwitchPropertyRequest,\r\n SwitchPropertyResult,\r\n SystemMenu,\r\n SystemModule,\r\n TopMenuShortcut,\r\n UserPanel,\r\n} from './menu.dtos';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class BayanCoreTopMenuService {\r\n private readonly http = inject(HttpClient);\r\n\r\n private unwrap<T>(obs: Observable<ApiEnvelope<T>>): Observable<T> {\r\n return obs.pipe(\r\n map((env) => {\r\n if (!env.ResponseData) {\r\n throw new Error('No data received');\r\n }\r\n\r\n return env.ResponseData;\r\n }),\r\n catchError((error) => throwError(() => error)),\r\n );\r\n }\r\n\r\n private getBaseUrl(baseUrl: string): string {\r\n return `${baseUrl.replace(/\\/$/, '')}/api/app-frame`;\r\n }\r\n\r\n getMicroserviceMenusByProperty(\r\n baseUrl: string,\r\n propertyId: number | string,\r\n systemModule: SystemModule,\r\n ): Observable<SystemMenu[]> {\r\n const params = new HttpParams()\r\n .set('PropertyId', propertyId)\r\n .set('SystemModule', systemModule);\r\n\r\n return this.unwrap(\r\n this.http.get<ApiEnvelope<SystemMenu[]>>(`${this.getBaseUrl(baseUrl)}/left-menu`, { params }),\r\n );\r\n }\r\n\r\n getMicroserviceTopMenusShortcut(\r\n baseUrl: string,\r\n propertyId: number | string,\r\n systemModule: SystemModule,\r\n ): Observable<TopMenuShortcut[]> {\r\n const params = new HttpParams()\r\n .set('PropertyId', propertyId)\r\n .set('SystemModule', systemModule);\r\n\r\n return this.unwrap(\r\n this.http.get<ApiEnvelope<TopMenuShortcut[]>>(`${this.getBaseUrl(baseUrl)}/top-shortcuts`, {\r\n params,\r\n }),\r\n );\r\n }\r\n\r\n getGlobalSearchMenus(baseUrl: string, propertyId?: number): Observable<GlobalSearchMenu[]> {\r\n let params = new HttpParams();\r\n\r\n if (propertyId != null) {\r\n params = params.set('PropertyId', propertyId);\r\n }\r\n\r\n return this.unwrap(\r\n this.http.get<ApiEnvelope<GlobalSearchMenu[]>>(\r\n `${this.getBaseUrl(baseUrl)}/global-search-menu`,\r\n { params },\r\n ),\r\n );\r\n }\r\n\r\n getUserPanel(baseUrl: string): Observable<UserPanel> {\r\n return this.unwrap(this.http.get<ApiEnvelope<UserPanel>>(`${this.getBaseUrl(baseUrl)}/user-panel`));\r\n }\r\n\r\n switchProperty(baseUrl: string, request: SwitchPropertyRequest): Observable<SwitchPropertyResult> {\r\n return this.unwrap(\r\n this.http.post<ApiEnvelope<SwitchPropertyResult>>(\r\n `${this.getBaseUrl(baseUrl)}/switch-property`,\r\n request,\r\n ),\r\n );\r\n }\r\n\r\n getPreferences(baseUrl: string): Observable<AppFramePreferences> {\r\n return this.unwrap(\r\n this.http.get<ApiEnvelope<AppFramePreferences>>(`${this.getBaseUrl(baseUrl)}/preferences`),\r\n );\r\n }\r\n\r\n setDisplayAlternateNames(\r\n baseUrl: string,\r\n request: SetDisplayAlternateNamesRequest,\r\n ): Observable<void> {\r\n return this.http.post<void>(`${this.getBaseUrl(baseUrl)}/preferences/alternate-names`, request);\r\n }\r\n\r\n setEmployeeNamesMode(baseUrl: string, request: SetEmployeeNamesModeRequest): Observable<void> {\r\n return this.http.post<void>(\r\n `${this.getBaseUrl(baseUrl)}/preferences/employee-names-mode`,\r\n request,\r\n );\r\n }\r\n\r\n getModuleBlockState(\r\n baseUrl: string,\r\n systemModule: SystemModule | BlockableModule,\r\n ): Observable<ModuleBlockState> {\r\n const params = new HttpParams().set('SystemModule', systemModule);\r\n\r\n return this.unwrap(\r\n this.http.get<ApiEnvelope<ModuleBlockState>>(`${this.getBaseUrl(baseUrl)}/module-block-state`, {\r\n params,\r\n }),\r\n );\r\n }\r\n\r\n blockModule(baseUrl: string, request: BlockReleaseModuleRequest): Observable<void> {\r\n return this.http.post<void>(`${this.getBaseUrl(baseUrl)}/block-module`, request);\r\n }\r\n\r\n releaseModule(baseUrl: string, request: BlockReleaseModuleRequest): Observable<void> {\r\n return this.http.post<void>(`${this.getBaseUrl(baseUrl)}/release-module`, request);\r\n }\r\n\r\n getNotificationsSummary(baseUrl: string): Observable<NotificationsSummary> {\r\n return this.unwrap(\r\n this.http.get<ApiEnvelope<NotificationsSummary>>(\r\n `${this.getBaseUrl(baseUrl)}/notifications-summary`,\r\n ),\r\n );\r\n }\r\n\r\n changePassword(baseUrl: string, request: ChangePasswordRequest): Observable<boolean> {\r\n return this.http.post<boolean>(`${this.getBaseUrl(baseUrl)}/change-password`, request);\r\n }\r\n}\r\n","import { CommonModule, DOCUMENT } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n SimpleChanges,\r\n inject,\r\n signal,\r\n} from '@angular/core';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { faBell } from '@fortawesome/pro-solid-svg-icons';\r\nimport { Router } from '@angular/router';\r\nimport { TranslatePipe } from '@skysoftware-co/sky-components-ui';\r\nimport { isExternalNavigation, resolveUrl } from '../../../shared/common-methods/navigation.utils';\r\nimport { NotificationsSummary } from '../../../shared/menu.dtos';\r\nimport { BayanCoreTopMenuService } from '../../../shared/menu.service';\r\n\r\n@Component({\r\n selector: 'bayan-core-notifications-widget',\r\n standalone: true,\r\n imports: [CommonModule, FontAwesomeModule, TranslatePipe],\r\n templateUrl: './notifications-widget.component.html',\r\n styleUrls: ['../../top-menu-widget.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BayanCoreNotificationsWidgetComponent implements OnInit, OnChanges {\r\n private readonly document = inject(DOCUMENT);\r\n private readonly router = inject(Router);\r\n private readonly topMenuService = inject(BayanCoreTopMenuService);\r\n\r\n @Input() baseUrl = '';\r\n @Input() title = 'Notifications';\r\n @Input() wrapperClass = 'notifications-icon-wrap menu-dropdown-host';\r\n @Input() linkClass = 'menu-icon-btn cursor-pointer top-menu-widget__notification-btn';\r\n @Input() iconClass = 'fs-6';\r\n @Input() badgeClass = 'top-menu-widget__notification-badge';\r\n\r\n readonly bellIcon = faBell;\r\n readonly notificationsSummary = signal<NotificationsSummary>({\r\n NotificationsUrl: '',\r\n TotalNotificationsCount: 0,\r\n });\r\n\r\n ngOnInit(): void {\r\n this.loadNotificationsSummary();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['baseUrl'] && !changes['baseUrl'].firstChange) {\r\n this.loadNotificationsSummary();\r\n }\r\n }\r\n\r\n onNotificationClick(event?: Event): void {\r\n event?.preventDefault();\r\n const rawNotificationUrl = this.notificationsSummary().NotificationsUrl;\r\n const notificationUrl = resolveUrl(this.baseUrl, rawNotificationUrl);\r\n\r\n if (notificationUrl) {\r\n if (rawNotificationUrl && isExternalNavigation(this.baseUrl, rawNotificationUrl)) {\r\n this.document.location.assign(notificationUrl);\r\n } else {\r\n void this.router.navigateByUrl(notificationUrl);\r\n }\r\n }\r\n }\r\n\r\n private loadNotificationsSummary(): void {\r\n if (!this.baseUrl) {\r\n this.resetNotificationsData();\r\n return;\r\n }\r\n\r\n this.topMenuService.getNotificationsSummary(this.baseUrl).subscribe({\r\n next: (summary) => {\r\n this.notificationsSummary.set({\r\n NotificationsUrl: summary.NotificationsUrl,\r\n TotalNotificationsCount: summary.TotalNotificationsCount,\r\n });\r\n },\r\n error: () => {\r\n this.resetNotificationsData();\r\n },\r\n });\r\n }\r\n\r\n private resetNotificationsData(): void {\r\n this.notificationsSummary.set({\r\n NotificationsUrl: '',\r\n TotalNotificationsCount: 0,\r\n });\r\n }\r\n}\r\n","<div [class]=\"wrapperClass\">\r\n <a [class]=\"linkClass\"\r\n [title]=\"title | translate\"\r\n (click)=\"onNotificationClick($event)\">\r\n <fa-icon [class]=\"iconClass\" [icon]=\"bellIcon\"></fa-icon>\r\n @if ((notificationsSummary().TotalNotificationsCount || 0) > 0) {\r\n <span [class]=\"badgeClass\">{{ notificationsSummary().TotalNotificationsCount }}</span>\r\n }\r\n </a>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n Output,\r\n signal,\r\n} from '@angular/core';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { faCheck, faCog, faInfoCircle } from '@fortawesome/pro-solid-svg-icons';\r\nimport { TranslatePipe } from '@skysoftware-co/sky-components-ui';\r\nimport { TopMenuWidgetNameModeItem } from '../../top-menu-widget.models';\r\n\r\n@Component({\r\n selector: 'bayan-core-settings-widget',\r\n standalone: true,\r\n imports: [CommonModule, FontAwesomeModule, TranslatePipe],\r\n templateUrl: './settings-widget.component.html',\r\n styleUrls: ['../../top-menu-widget.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BayanCoreSettingsWidgetComponent {\r\n @Input() useAlternateNames = false;\r\n @Input() displayAlternateNames = false;\r\n @Input() hrBlocked = false;\r\n @Input() hrCanBlock = false;\r\n @Input() tkBlocked = false;\r\n @Input() tkCanBlock = false;\r\n @Input() nameModeItems: TopMenuWidgetNameModeItem[] = [];\r\n @Input() settingsEnabled = true;\r\n\r\n @Output() alternateNamesChange = new EventEmitter<void>();\r\n @Output() nameModeChange = new EventEmitter<number>();\r\n @Output() blockHrClick = new EventEmitter<void>();\r\n @Output() releaseHrClick = new EventEmitter<void>();\r\n @Output() blockTkClick = new EventEmitter<void>();\r\n @Output() releaseTkClick = new EventEmitter<void>();\r\n @Output() changePasswordClick = new EventEmitter<void>();\r\n @Output() openAboutClick = new EventEmitter<void>();\r\n\r\n readonly checkIcon = faCheck;\r\n readonly cogIcon = faCog;\r\n readonly infoIcon = faInfoCircle;\r\n readonly dropdownOpen = signal(false);\r\n\r\n constructor(private readonly elementRef: ElementRef<HTMLElement>) {}\r\n\r\n @HostListener('document:click', ['$event'])\r\n onDocumentClick(event: MouseEvent): void {\r\n const target = event.target as Node | null;\r\n if (target && !this.elementRef.nativeElement.contains(target)) {\r\n this.dropdownOpen.set(false);\r\n }\r\n }\r\n\r\n toggleDropdown(event: Event): void {\r\n event.preventDefault();\r\n this.dropdownOpen.update((value) => !value);\r\n }\r\n\r\n onAlternateNamesClick(event: Event): void {\r\n event.preventDefault();\r\n if (!this.settingsEnabled) {\r\n return;\r\n }\r\n\r\n this.alternateNamesChange.emit();\r\n }\r\n\r\n onNameModeClick(index: number, event: Event): void {\r\n event.preventDefault();\r\n if (!this.settingsEnabled) {\r\n return;\r\n }\r\n\r\n this.dropdownOpen.set(false);\r\n this.nameModeChange.emit(index);\r\n }\r\n\r\n emitAndClose(event: Event, emitter: EventEmitter<void>): void {\r\n event.preventDefault();\r\n this.dropdownOpen.set(false);\r\n emitter.emit();\r\n }\r\n}","<div class=\"dropdown menu-dropdown-host\" [class.open]=\"dropdownOpen()\">\r\n <button type=\"button\" class=\"settings-toggle menu-icon-btn\" (click)=\"toggleDropdown($event)\" [title]=\"'Settings' | translate\">\r\n <fa-icon [icon]=\"cogIcon\" class=\"fs-6\"></fa-icon>\r\n </button>\r\n\r\n @if (dropdownOpen()) {\r\n <ul class=\"settings-menu menu-dropdown-panel\">\r\n @if (useAlternateNames) {\r\n <li>\r\n <button type=\"button\" class=\"header-dropdown-item menu-row\" [disabled]=\"!settingsEnabled\" [class.disabled]=\"!settingsEnabled\" (click)=\"onAlternateNamesClick($event)\">\r\n @if (displayAlternateNames) {\r\n <fa-icon class=\"menu-indicator menu-indicator-active\" [icon]=\"checkIcon\"></fa-icon>\r\n } @else {\r\n <fa-icon class=\"menu-indicator invisible\" [icon]=\"checkIcon\"></fa-icon>\r\n }\r\n {{ 'DisplayAlternateNames' | translate }}\r\n </button>\r\n </li>\r\n <li><hr class=\"dropdown-divider\"></li>\r\n }\r\n\r\n @if (hrCanBlock) {\r\n <li>\r\n @if (hrBlocked) {\r\n <button type=\"button\" class=\"header-dropdown-item menu-row\" (click)=\"emitAndClose($event, releaseHrClick)\">\r\n <fa-icon class=\"menu-indicator menu-indicator-active\" [icon]=\"checkIcon\"></fa-icon>\r\n {{ 'ReleaseHR' | translate }}\r\n </button>\r\n } @else {\r\n <button type=\"button\" class=\"header-dropdown-item menu-row\" (click)=\"emitAndClose($event, blockHrClick)\">\r\n <fa-icon class=\"menu-indicator invisible\" [icon]=\"checkIcon\"></fa-icon>\r\n {{ 'BlockHR' | translate }}\r\n </button>\r\n }\r\n </li>\r\n }\r\n\r\n @if (tkCanBlock) {\r\n <li>\r\n @if (tkBlocked) {\r\n <button type=\"button\" class=\"header-dropdown-item menu-row\" (click)=\"emitAndClose($event, releaseTkClick)\">\r\n <fa-icon class=\"menu-indicator menu-indicator-active\" [icon]=\"checkIcon\"></fa-icon>\r\n {{ 'ReleaseTK' | translate }}\r\n </button>\r\n } @else {\r\n <button type=\"button\" class=\"header-dropdown-item menu-row\" (click)=\"emitAndClose($event, blockTkClick)\">\r\n <fa-icon class=\"menu-indicator invisible\" [icon]=\"checkIcon\"></fa-icon>\r\n {{ 'BlockTK' | translate }}\r\n </button>\r\n }\r\n </li>\r\n }\r\n\r\n @if (hrCanBlock || tkCanBlock) {\r\n <li><hr class=\"dropdown-divider\"></li>\r\n }\r\n\r\n @if (nameModeItems.length > 0) {\r\n <li>\r\n <span class=\"menu-section-label\">{{ 'EmployeeNamesMode' | translate }}</span>\r\n </li>\r\n\r\n @for (item of nameModeItems; track item.id; let index = $index) {\r\n <li>\r\n <button type=\"button\" class=\"header-dropdown-item menu-row\" [disabled]=\"!settingsEnabled\" [class.disabled]=\"!settingsEnabled\" (click)=\"onNameModeClick(index, $event)\">\r\n @if (item.selected) {\r\n <fa-icon class=\"menu-indicator menu-indicator-active\" [icon]=\"checkIcon\"></fa-icon>\r\n } @else {\r\n <fa-icon class=\"menu-indicator invisible\" [icon]=\"checkIcon\"></fa-icon>\r\n }\r\n {{ item.text }}\r\n </button>\r\n </li>\r\n }\r\n\r\n <li><hr class=\"dropdown-divider\"></li>\r\n }\r\n\r\n <li>\r\n <button type=\"button\" class=\"header-dropdown-item menu-row\" (click)=\"emitAndClose($event, changePasswordClick)\">\r\n <span class=\"menu-indicator\"></span>\r\n {{ 'ChangePassword' | translate }}\r\n </button>\r\n </li>\r\n\r\n <li><hr class=\"dropdown-divider\"></li>\r\n\r\n <li>\r\n <button type=\"button\" class=\"header-dropdown-item menu-row\" (click)=\"emitAndClose($event, openAboutClick)\">\r\n <fa-icon class=\"menu-indicator\" [icon]=\"infoIcon\"></fa-icon>\r\n {{ 'About' | translate }}\r\n </button>\r\n </li>\r\n </ul>\r\n }\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n Output,\r\n computed,\r\n signal,\r\n} from '@angular/core';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { faPersonRunning } from '@fortawesome/pro-solid-svg-icons';\r\nimport { BayanEmployeeBadgeComponent, BayanEmployeeBadgeDTO } from '@skysoftware-co/bayan-components-ui';\r\nimport { TranslatePipe } from '@skysoftware-co/sky-components-ui';\r\nimport { TopMenuWidgetPropertyOption, TopMenuWidgetUserPanel } from '../../top-menu-widget.models';\r\n\r\n@Component({\r\n selector: 'bayan-core-user-panel-widget',\r\n standalone: true,\r\n imports: [CommonModule, FontAwesomeModule, BayanEmployeeBadgeComponent, TranslatePipe],\r\n templateUrl: './user-panel-widget.component.html',\r\n styleUrls: ['../../top-menu-widget.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BayanCoreUserPanelWidgetComponent {\r\n @Input() baseUrl = '';\r\n @Input() set userPanel(value: TopMenuWidgetUserPanel | null) {\r\n this.userPanelState.set(value);\r\n }\r\n\r\n @Input() isSsoLogin = false;\r\n\r\n @Output() propertyChange = new EventEmitter<TopMenuWidgetPropertyOption>();\r\n @Output() signOutClick = new EventEmitter<void>();\r\n\r\n readonly signOutIcon = faPersonRunning;\r\n readonly dropdownOpen = signal(false);\r\n private readonly userPanelState = signal<TopMenuWidgetUserPanel | null>(null);\r\n\r\n readonly badge = computed<BayanEmployeeBadgeDTO>(() => ({\r\n EmployeePhotoKey: this.userPanelState()?.photoPath ?? null,\r\n EmployeePhotoFailed: false,\r\n EmployeeNameInitials: this.userPanelState()?.nameInitials ?? '',\r\n }));\r\n\r\n constructor(private readonly elementRef: ElementRef<HTMLElement>) {}\r\n\r\n @HostListener('document:click', ['$event'])\r\n onDocumentClick(event: MouseEvent): void {\r\n const target = event.target as Node | null;\r\n if (target && !this.elementRef.nativeElement.contains(target)) {\r\n this.dropdownOpen.set(false);\r\n }\r\n }\r\n\r\n displayName(): string {\r\n return this.userPanelState()?.userDisplayName ?? '';\r\n }\r\n\r\n activePropertyName(): string {\r\n return this.userPanelState()?.activePropertyName ?? '';\r\n }\r\n\r\n activePropertyId(): number | null {\r\n return this.userPanelState()?.activePropertyId ?? null;\r\n }\r\n\r\n propertyList(): TopMenuWidgetPropertyOption[] {\r\n return this.userPanelState()?.properties ?? [];\r\n }\r\n\r\n showSignOut(): boolean {\r\n return !(this.userPanelState()?.isSsoLogin ?? this.isSsoLogin);\r\n }\r\n\r\n toggleDropdown(event: Event): void {\r\n event.preventDefault();\r\n this.dropdownOpen.update((value) => !value);\r\n }\r\n\r\n selectProperty(event: Event, property: TopMenuWidgetPropertyOption): void {\r\n event.preventDefault();\r\n if (property.propertyId === this.activePropertyId()) {\r\n this.dropdownOpen.set(false);\r\n return;\r\n }\r\n\r\n this.dropdownOpen.set(false);\r\n this.propertyChange.emit(property);\r\n }\r\n\r\n signOut(event: Event): void {\r\n event.preventDefault();\r\n this.dropdownOpen.set(false);\r\n this.signOutClick.emit();\r\n }\r\n}\r\n","<div class=\"menu-dropdown-host\" [class.open]=\"dropdownOpen()\">\r\n <button type=\"button\" class=\"employee-toggle\" (click)=\"toggleDropdown($event)\">\r\n <bayan-employee-badge [badge]=\"badge()\" width=\"34px\" height=\"34px\"></bayan-employee-badge>\r\n\r\n <div class=\"employee-info\">\r\n <span class=\"user-name\">{{ displayName() }}</span>\r\n\r\n @if (activePropertyName()) {\r\n <span class=\"property-name\">{{ activePropertyName() }}</span>\r\n }\r\n </div>\r\n\r\n <span class=\"employee-caret\">▼</span>\r\n </button>\r\n\r\n @if (dropdownOpen()) {\r\n <ul class=\"employee-menu menu-dropdown-panel\">\r\n @if (propertyList().length > 0) {\r\n <li class=\"menu-section-label\">{{ 'Properties' | translate }}</li>\r\n\r\n @for (property of propertyList(); track property.propertyId) {\r\n <li>\r\n <button\r\n type=\"button\"\r\n class=\"menu-item\"\r\n [class.menu-item-active]=\"property.propertyId === activePropertyId()\"\r\n (click)=\"selectProperty($event, property)\">\r\n @if (property.propertyId === activePropertyId()) {\r\n <span class=\"menu-indicator\">►</span>\r\n } @else {\r\n <span class=\"menu-indicator invisible\"></span>\r\n }\r\n\r\n {{ property.propertyName }}\r\n </button>\r\n </li>\r\n }\r\n\r\n <li><hr class=\"menu-divider\"></li>\r\n }\r\n\r\n @if (showSignOut()) {\r\n <li>\r\n <button type=\"button\" class=\"menu-item menu-item-signout\" (click)=\"signOut($event)\">\r\n <fa-icon class=\"mx-2\" [icon]=\"signOutIcon\"></fa-icon>{{ 'SignOut' | translate }}\r\n </button>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n</div>\r\n","import { CommonModule, DOCUMENT } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, inject, signal } from '@angular/core';\r\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\r\nimport { IconDefinition } from '@fortawesome/fontawesome-svg-core';\r\nimport { faQuestionCircle } from '@fortawesome/pro-solid-svg-icons';\r\nimport { Router } from '@angular/router';\r\nimport { DxToolbarModule } from 'devextreme-angular';\r\nimport { TranslatePipe } from '@skysoftware-co/sky-components-ui';\r\nimport { isExternalNavigation, resolveUrl } from '../shared/common-methods/navigation.utils';\r\nimport {\r\n TopMenuWidgetAboutDialogConfig,\r\n TopMenuWidgetChangePasswordDialogConfig,\r\n TopMenuWidgetChangePasswordPayload,\r\n TopMenuWidgetItem,\r\n TopMenuWidgetNameModeItem,\r\n TopMenuWidgetPropertyOption,\r\n TopMenuWidgetSearchItem,\r\n TopMenuWidgetUserPanel,\r\n} from './top-menu-widget.models';\r\nimport { BayanCoreAboutDialogWidgetComponent } from './components/about-dialog-widget/about-dialog-widget.component';\r\nimport { BayanCoreChangePasswordWidgetComponent } from './components/change-password-widget/change-password-widget.component';\r\nimport { BayanCoreGlobalSearchWidgetComponent } from './components/global-search-widget/global-search-widget.component';\r\nimport { BayanCoreItemWidgetComponent } from './components/item-widget/item-widget.component';\r\nimport { BayanCoreNotificationsWidgetComponent } from './components/notifications-widget/notifications-widget.component';\r\nimport { BayanCoreSettingsWidgetComponent } from './components/settings-widget/settings-widget.component';\r\nimport { BayanCoreUserPanelWidgetComponent } from './components/user-panel-widget/user-panel-widget.component';\r\n\r\n@Component({\r\n selector: 'bayan-core-top-menu-widget',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n DxToolbarModule,\r\n FontAwesomeModule,\r\n TranslatePipe,\r\n BayanCoreItemWidgetComponent,\r\n BayanCoreGlobalSearchWidgetComponent,\r\n BayanCoreUserPanelWidgetComponent,\r\n BayanCoreSettingsWidgetComponent,\r\n BayanCoreAboutDialogWidgetComponent,\r\n BayanCoreChangePasswordWidgetComponent,\r\n BayanCoreNotificationsWidgetComponent,\r\n ],\r\n templateUrl: './top-menu-widget.component.html',\r\n styleUrls: ['./top-menu-widget.styles.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class BayanCoreTopMenuWidgetComponent {\r\n private readonly document = inject(DOCUMENT);\r\n private readonly router = inject(Router);\r\n\r\n @Input() baseUrl = '';\r\n @Input() sidebarCollapsed = false;\r\n\r\n @Input() homeUrl: string | null = null;\r\n @Input() logoUrl = 'https://cdn-dev.skysoftware.cloud/bayan/images/logo-enterprise-dark.png';\r\n @Input() collapsedLogoUrl = 'https://cdn-dev.skysoftware.cloud/bayan/images/logo-collapsed.png';\r\n @Output() logoClick = new EventEmitter<void>();\r\n\r\n @Input() searchPlaceholder = 'TopMenu.SearchPlaceholder';\r\n\r\n @Input() menuItems: TopMenuWidgetItem[] = [];\r\n @Input() searchItems: TopMenuWidgetSearchItem[] = [];\r\n\r\n @Input() userPanel: TopMenuWidgetUserPanel | null = null;\r\n @Input() isSsoLogin = false;\r\n @Input() useAlternateNames = false;\r\n @Input() displayAlternateNames = false;\r\n @Input() hrBlocked = false;\r\n @Input() hrCanBlock = false;\r\n @Input() tkBlocked = false;\r\n @Input() tkCanBlock = false;\r\n\r\n @Input() nameModeItems: TopMenuWidgetNameModeItem[] = [];\r\n @Input() settingsEnabled = true;\r\n @Input() useInternalDialogs = false;\r\n\r\n @Input() changePasswordLoading = false;\r\n @Input() changePasswordDialog: TopMenuWidgetChangePasswordDialogConfig = {\r\n title: 'ChangePassword',\r\n currentPasswordLabel: 'CurrentPassword',\r\n newPasswordLabel: 'NewPassword',\r\n confirmNewPasswordLabel: 'ConfirmPassword',\r\n primaryButtonText: 'Change',\r\n };\r\n\r\n @Input() aboutDialog: TopMenuWidgetAboutDialogConfig = {\r\n title: 'Sky Bayan Human Resources Management',\r\n logoUrl: '',\r\n version: '',\r\n versionLabel: 'Version',\r\n copyright: `Copyright 2026, Sky Software Co LLC All Rights Reserved\r\nSky Bayan and Sky Bayan Logo are registered trademarks of Sky Software`,\r\n statusLabel: 'SkyBayanUpToDate',\r\n licenseButtonLabel: 'LicenseInformation',\r\n releaseNotesButtonLabel: 'ReleaseNotes',\r\n supportButtonLabel: 'TechnicalSupport',\r\n closeButtonLabel: 'Close',\r\n };\r\n\r\n @Input() showGlobalSearch = false;\r\n @Input() showUserPanel = false;\r\n @Input() showSettings = false;\r\n\r\n @Input() showNotifications = true;\r\n @Input() notificationsTitle = 'Notifications';\r\n\r\n @Input() showHelp = true;\r\n @Input() helpTitle = 'Help';\r\n @Input() helpUrl: string | null = null;\r\n @Input() helpIcon: IconDefinition = faQuestionCircle;\r\n @Input() helpAnchorClass = 'menu-icon-btn top-menu-widget__help-link';\r\n @Input() helpUrlTarget: '_self' | '_blank' | string = '_blank';\r\n @Output() helpClick = new EventEmitter<void>();\r\n\r\n @Output() menuItemClick = new EventEmitter<TopMenuWidgetItem>();\r\n @Output() searchSubmit = new EventEmitter<string>();\r\n @Output() searchItemNavigate = new EventEmitter<TopMenuWidgetSearchItem>();\r\n @Output() propertyChange = new EventEmitter<TopMenuWidgetPropertyOption>();\r\n @Output() signOutClick = new EventEmitter<void>();\r\n @Output() alternateNamesChange = new EventEmitter<void>();\r\n @Output() nameModeChange = new EventEmitter<number>();\r\n @Output() blockHrClick = new EventEmitter<void>();\r\n @Output() releaseHrClick = new EventEmitter<void>();\r\n @Output() blockTkClick = new EventEmitter<void>();\r\n @Output() releaseTkClick = new EventEmitter<void>();\r\n @Output() changePasswordClick = new EventEmitter<void>();\r\n @Output() openAboutClick = new EventEmitter<void>();\r\n @Output() aboutLicenseClick = new EventEmitter<void>();\r\n @Output() aboutReleaseNotesClick = new EventEmitter<void>();\r\n @Output() aboutSupportClick = new EventEmitter<void>();\r\n @Output() submitPasswordChange = new EventEmitter<TopMenuWidgetChangePasswordPayload>();\r\n\r\n readonly aboutVisible = signal(false);\r\n readonly changePasswordVisible = signal(false);\r\n\r\n hasNavigationUrl(url: string | null): boolean {\r\n return !!resolveUrl(this.baseUrl, url);\r\n }\r\n\r\n getLogoSrc(): string | null {\r\n if (this.sidebarCollapsed) {\r\n return this.collapsedLogoUrl || null;\r\n }\r\n\r\n return this.logoUrl || null;\r\n }\r\n\r\n onLogoClicked(event?: Event): void {\r\n event?.preventDefault();\r\n this.logoClick.emit();\r\n this.navigateToUrl(this.homeUrl);\r\n }\r\n\r\n onHelpClicked(event?: Event): void {\r\n event?.preventDefault();\r\n this.helpClick.emit();\r\n this.navigateToUrl(this.helpUrl);\r\n }\r\n\r\n onChangePasswordRequested(): void {\r\n this.changePasswordClick.emit();\r\n if (this.useInternalDialogs) {\r\n this.changePasswordVisible.set(true);\r\n }\r\n }\r\n\r\n onAboutRequested(): void {\r\n this.openAboutClick.emit();\r\n if (this.useInternalDialogs) {\r\n this.aboutVisible.set(true);\r\n }\r\n }\r\n\r\n private navigateToUrl(url: string | null): void {\r\n if (!url) {\r\n return;\r\n }\r\n\r\n const resolvedUrl = resolveUrl(this.baseUrl, url);\r\n\r\n if (!resolvedUrl) {\r\n return;\r\n }\r\n\r\n if (isExternalNavigation(this.baseUrl, url)) {\r\n this.document.location.assign(resolvedUrl);\r\n return;\r\n }\r\n\r\n void this.router.navigateByUrl(resolvedUrl);\r\n }\r\n}\r\n","<header class=\"top-menu-widget__header shadow-sm w-100 sticky-top\">\r\n <dx-toolbar class=\"top-menu-widget__toolbar px-4\">\r\n <dxi-item location=\"before\">\r\n <div *dxTemplate>\r\n <a\r\n class=\"top-menu-widget__brand\"\r\n [class.top-menu-widget__brand--collapsed]=\"sidebarCollapsed\"\r\n (click)=\"onLogoClicked($event)\">\r\n <img\r\n [src]=\"getLogoSrc()\"\r\n alt=\"\"\r\n class=\"top-menu-widget__logo\"\r\n [class.top-menu-widget__logo--collapsed]=\"sidebarCollapsed && !!collapsedLogoUrl\">\r\n </a>\r\n </div>\r\n </dxi-item>\r\n\r\n <dxi-item location=\"before\" locateInMenu=\"never\">\r\n <div *dxTemplate>\r\n <ul class=\"top-menu-widget__nav\">\r\n @for (item of menuItems; track item.id ?? item.menuName) {\r\n <bayan-core-item-widget [item]=\"item\" [baseUrl]=\"baseUrl\" (itemClick)=\"menuItemClick.emit($event)\"></bayan-core-item-widget>\r\n }\r\n </ul>\r\n </div>\r\n </dxi-item>\r\n\r\n @if (showGlobalSearch) {\r\n <dxi-item location=\"after\" locateInMenu=\"never\">\r\n <div *dxTemplate>\r\n <bayan-core-global-search-widget\r\n [baseUrl]=\"baseUrl\"\r\n [placeholder]=\"searchPlaceholder\"\r\n [dataSource]=\"searchItems\"\r\n (search)=\"searchSubmit.emit($event)\"\r\n (itemNavigate)=\"searchItemNavigate.emit($event)\">\r\n </bayan-core-global-search-widget>\r\n </div>\r\n </dxi-item>\r\n }\r\n\r\n @if (showUserPanel) {\r\n <dxi-item location=\"after\" locateInMenu=\"never\">\r\n <div *dxTemplate>\r\n <bayan-core-user-panel-widget\r\n [baseUrl]=\"baseUrl\"\r\n [userPanel]=\"userPanel\"\r\n [isSsoLogin]=\"isSsoLogin\"\r\n (propertyChange)=\"propertyChange.emit($event)\"\r\n (signOutClick)=\"signOutClick.emit()\">\r\n </bayan-core-user-panel-widget>\r\n </div>\r\n </dxi-item>\r\n }\r\n\r\n @if (showSettings) {\r\n <dxi-item location=\"after\" locateInMenu=\"never\">\r\n <div *dxTemplate>\r\n <bayan-core-settings-widget\r\n [useAlternateNames]=\"useAlternateNames\"\r\n [displayAlternateNames]=\"displayAlternateNames\"\r\n [hrBlocked]=\"hrBlocked\"\r\n [hrCanBlock]=\"hrCanBlock\"\r\n [tkBlocked]=\"tkBlocked\"\r\n [tkCanBlock]=\"tkCanBlock\"\r\n [nameModeItems]=\"nameModeItems\"\r\n [settingsEnabled]=\"settingsEnabled\"\r\n (alternateNamesChange)=\"alternateNamesChange.emit()\"\r\n (nameModeChange)=\"nameModeChange.emit($event)\"\r\n (blockHrClick)=\"blockHrClick.emit()\"\r\n (releaseHrClick)=\"releaseHrClick.emit()\"\r\n (blockTkClick)=\"blockTkClick.emit()\"\r\n (releaseTkClick)=\"releaseTkClick.emit()\"\r\n (changePasswordClick)=\"onChangePasswordRequested()\"\r\n (openAboutClick)=\"onAboutRequested()\">\r\n </bayan-core-settings-widget>\r\n </div>\r\n </dxi-item>\r\n }\r\n\r\n @if (showNotifications) {\r\n <dxi-item location=\"after\" locateInMenu=\"never\">\r\n <div *dxTemplate>\r\n <bayan-core-notifications-widget [baseUrl]=\"baseUrl\"\r\n [title]=\"notificationsTitle | translate\" >\r\n </bayan-core-notifications-widget>\r\n </div>\r\n </dxi-item>\r\n }\r\n\r\n @if (showHelp) {\r\n <dxi-item location=\"after\" locateInMenu=\"never\">\r\n <div *dxTemplate>\r\n <a\r\n [class]=\"helpAnchorClass\"\r\n [title]=\"helpTitle | translate\"\r\n [target]=\"helpUrlTarget\"\r\n (click)=\"onHelpClicked($event)\">\r\n <fa-icon [icon]=\"helpIcon\" class=\"fs-6\"></fa-icon>\r\n </a>\r\n </div>\r\n </dxi-item>\r\n }\r\n </dx-toolbar>\r\n</header>\r\n\r\n@if (useInternalDialogs) {\r\n <bayan-core-about-dialog-widget\r\n [baseUrl]=\"baseUrl\"\r\n [visible]=\"aboutVisible()\"\r\n [config]=\"aboutDialog\"\r\n (visibleChange)=\"aboutVisible.set($event)\"\r\n (licenseClick)=\"aboutLicenseClick.emit()\"\r\n (releaseNotesClick)=\"aboutReleaseNotesClick.emit()\"\r\n (supportClick)=\"aboutSupportClick.emit()\">\r\n </bayan-core-about-dialog-widget>\r\n\r\n <bayan-core-change-password-widget\r\n [baseUrl]=\"baseUrl\"\r\n [visible]=\"changePasswordVisible()\"\r\n [config]=\"changePasswordDialog\"\r\n [isSubmitting]=\"changePasswordLoading\"\r\n (visibleChange)=\"changePasswordVisible.set($event)\"\r\n (submitPasswordChange)=\"submitPasswordChange.emit($event)\">\r\n </bayan-core-change-password-widget>\r\n}\r\n","export interface ApiEnvelope<T> {\r\n ResponseData: T;\r\n ApiVersion: number;\r\n}\r\n\r\nexport interface TopMenuShortcut {\r\n MenuName: string;\r\n MenuUrl: string | null;\r\n Children: TopMenuShortcut[];\r\n}\r\n\r\nexport interface SystemMenu {\r\n MenuName: string;\r\n MenuUrl: string | null;\r\n IconClass: string | null;\r\n Expanded: boolean;\r\n Children: SystemMenu[];\r\n}\r\n\r\nexport interface GlobalSearchMenu {\r\n MenuTitle: string;\r\n MenuSubTitle: string;\r\n IconClass: string;\r\n MenuUrl: string;\r\n IsTranslatable: boolean;\r\n}\r\n\r\nexport interface PropertyOption {\r\n PropertyId: number;\r\n PropertyName: string;\r\n}\r\n\r\nexport interface UserPanel {\r\n UserDisplayName: string;\r\n ActivePropertyId: number;\r\n ActivePropertyName: string;\r\n PhotoPath: string | null;\r\n NameInitials: string;\r\n IsSSOLogin: boolean;\r\n Properties: PropertyOption[];\r\n}\r\n\r\nexport interface SwitchPropertyRequest {\r\n PropertyId: number;\r\n}\r\n\r\nexport interface SwitchPropertyResult {\r\n PropertyId: number;\r\n}\r\n\r\nexport enum EmployeeNamesModeOption {\r\n ShortNames = 1,\r\n StandardNames = 2,\r\n FullNames = 3,\r\n}\r\n\r\nexport interface AppFramePreferences {\r\n UseAlternateNames: boolean;\r\n DisplayAlternateNames: boolean;\r\n EmployeeNamesMode: EmployeeNamesModeOption;\r\n VersionNumber: string;\r\n}\r\n\r\nexport interface SetDisplayAlternateNamesRequest {\r\n DisplayAlternateNames: boolean;\r\n}\r\n\r\nexport interface SetEmployeeNamesModeRequest {\r\n EmployeeNamesMode: EmployeeNamesModeOption;\r\n}\r\n\r\nexport enum BlockableModule {\r\n HumanResources = 4,\r\n Timekeeping = 5,\r\n}\r\n\r\nexport interface ModuleBlockState {\r\n IsBlocked: boolean;\r\n UserCanBlockModule: boolean;\r\n}\r\n\r\nexport interface BlockReleaseModuleRequest {\r\n Module: BlockableModule;\r\n}\r\n\r\nexport interface NotificationsSummary {\r\n TotalNotificationsCount: number;\r\n NotificationsUrl: string;\r\n}\r\n\r\nexport interface ChangePasswordRequest {\r\n CurrentPassword: string;\r\n NewPassword: string;\r\n}\r\n\r\nexport enum SystemModule {\r\n Corporate = 1,\r\n Cluster = 2,\r\n Setup = 3,\r\n HumanResources = 4,\r\n Timekeeping = 5,\r\n Payroll = 6,\r\n Training = 7,\r\n Workflow = 8,\r\n Appraisal = 9,\r\n BusinessIntelligence = 10,\r\n}\r\n","/*\r\n * Public API Surface of bayan-core-ui\r\n */\r\n\r\nexport * from './lib/top-menu-widget/top-menu-widget.component';\r\nexport * from './lib/shared/menu.dtos';\r\nexport * from './lib/shared/menu.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i2","i4"],"mappings":"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"}
|
package/index.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare function resolveUrl(baseUrl: string | null | undefined, url: string | null | undefined): string | null;
|
|
2
|
+
export declare function isExternalNavigation(baseUrl: string | null | undefined, url: string): boolean;
|
|
3
|
+
export declare function joinUrl(baseUrl: string, url: string): string;
|
|
4
|
+
//# sourceMappingURL=navigation.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation.utils.d.ts","sourceRoot":"","sources":["../../../../../projects/bayan-core-ui/src/lib/shared/common-methods/navigation.utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAM5G;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAE7F;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI5D"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
export interface ApiEnvelope<T> {
|
|
2
|
+
ResponseData: T;
|
|
3
|
+
ApiVersion: number;
|
|
4
|
+
}
|
|
5
|
+
export interface TopMenuShortcut {
|
|
6
|
+
MenuName: string;
|
|
7
|
+
MenuUrl: string | null;
|
|
8
|
+
Children: TopMenuShortcut[];
|
|
9
|
+
}
|
|
10
|
+
export interface SystemMenu {
|
|
11
|
+
MenuName: string;
|
|
12
|
+
MenuUrl: string | null;
|
|
13
|
+
IconClass: string | null;
|
|
14
|
+
Expanded: boolean;
|
|
15
|
+
Children: SystemMenu[];
|
|
16
|
+
}
|
|
17
|
+
export interface GlobalSearchMenu {
|
|
18
|
+
MenuTitle: string;
|
|
19
|
+
MenuSubTitle: string;
|
|
20
|
+
IconClass: string;
|
|
21
|
+
MenuUrl: string;
|
|
22
|
+
IsTranslatable: boolean;
|
|
23
|
+
}
|
|
24
|
+
export interface PropertyOption {
|
|
25
|
+
PropertyId: number;
|
|
26
|
+
PropertyName: string;
|
|
27
|
+
}
|
|
28
|
+
export interface UserPanel {
|
|
29
|
+
UserDisplayName: string;
|
|
30
|
+
ActivePropertyId: number;
|
|
31
|
+
ActivePropertyName: string;
|
|
32
|
+
PhotoPath: string | null;
|
|
33
|
+
NameInitials: string;
|
|
34
|
+
IsSSOLogin: boolean;
|
|
35
|
+
Properties: PropertyOption[];
|
|
36
|
+
}
|
|
37
|
+
export interface SwitchPropertyRequest {
|
|
38
|
+
PropertyId: number;
|
|
39
|
+
}
|
|
40
|
+
export interface SwitchPropertyResult {
|
|
41
|
+
PropertyId: number;
|
|
42
|
+
}
|
|
43
|
+
export declare enum EmployeeNamesModeOption {
|
|
44
|
+
ShortNames = 1,
|
|
45
|
+
StandardNames = 2,
|
|
46
|
+
FullNames = 3
|
|
47
|
+
}
|
|
48
|
+
export interface AppFramePreferences {
|
|
49
|
+
UseAlternateNames: boolean;
|
|
50
|
+
DisplayAlternateNames: boolean;
|
|
51
|
+
EmployeeNamesMode: EmployeeNamesModeOption;
|
|
52
|
+
VersionNumber: string;
|
|
53
|
+
}
|
|
54
|
+
export interface SetDisplayAlternateNamesRequest {
|
|
55
|
+
DisplayAlternateNames: boolean;
|
|
56
|
+
}
|
|
57
|
+
export interface SetEmployeeNamesModeRequest {
|
|
58
|
+
EmployeeNamesMode: EmployeeNamesModeOption;
|
|
59
|
+
}
|
|
60
|
+
export declare enum BlockableModule {
|
|
61
|
+
HumanResources = 4,
|
|
62
|
+
Timekeeping = 5
|
|
63
|
+
}
|
|
64
|
+
export interface ModuleBlockState {
|
|
65
|
+
IsBlocked: boolean;
|
|
66
|
+
UserCanBlockModule: boolean;
|
|
67
|
+
}
|
|
68
|
+
export interface BlockReleaseModuleRequest {
|
|
69
|
+
Module: BlockableModule;
|
|
70
|
+
}
|
|
71
|
+
export interface NotificationsSummary {
|
|
72
|
+
TotalNotificationsCount: number;
|
|
73
|
+
NotificationsUrl: string;
|
|
74
|
+
}
|
|
75
|
+
export interface ChangePasswordRequest {
|
|
76
|
+
CurrentPassword: string;
|
|
77
|
+
NewPassword: string;
|
|
78
|
+
}
|
|
79
|
+
export declare enum SystemModule {
|
|
80
|
+
Corporate = 1,
|
|
81
|
+
Cluster = 2,
|
|
82
|
+
Setup = 3,
|
|
83
|
+
HumanResources = 4,
|
|
84
|
+
Timekeeping = 5,
|
|
85
|
+
Payroll = 6,
|
|
86
|
+
Training = 7,
|
|
87
|
+
Workflow = 8,
|
|
88
|
+
Appraisal = 9,
|
|
89
|
+
BusinessIntelligence = 10
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=menu.dtos.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menu.dtos.d.ts","sourceRoot":"","sources":["../../../../projects/bayan-core-ui/src/lib/shared/menu.dtos.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,YAAY,EAAE,CAAC,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,UAAU,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,cAAc,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,oBAAY,uBAAuB;IACjC,UAAU,IAAI;IACd,aAAa,IAAI;IACjB,SAAS,IAAI;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,+BAA+B;IAC9C,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,2BAA2B;IAC1C,iBAAiB,EAAE,uBAAuB,CAAC;CAC5C;AAED,oBAAY,eAAe;IACzB,cAAc,IAAI;IAClB,WAAW,IAAI;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,uBAAuB,EAAE,MAAM,CAAC;IAChC,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,oBAAY,YAAY;IACtB,SAAS,IAAI;IACb,OAAO,IAAI;IACX,KAAK,IAAI;IACT,cAAc,IAAI;IAClB,WAAW,IAAI;IACf,OAAO,IAAI;IACX,QAAQ,IAAI;IACZ,QAAQ,IAAI;IACZ,SAAS,IAAI;IACb,oBAAoB,KAAK;CAC1B"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { AppFramePreferences, BlockableModule, BlockReleaseModuleRequest, ChangePasswordRequest, GlobalSearchMenu, ModuleBlockState, NotificationsSummary, SetDisplayAlternateNamesRequest, SetEmployeeNamesModeRequest, SwitchPropertyRequest, SwitchPropertyResult, SystemMenu, SystemModule, TopMenuShortcut, UserPanel } from './menu.dtos';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class BayanCoreTopMenuService {
|
|
5
|
+
private readonly http;
|
|
6
|
+
private unwrap;
|
|
7
|
+
private getBaseUrl;
|
|
8
|
+
getMicroserviceMenusByProperty(baseUrl: string, propertyId: number | string, systemModule: SystemModule): Observable<SystemMenu[]>;
|
|
9
|
+
getMicroserviceTopMenusShortcut(baseUrl: string, propertyId: number | string, systemModule: SystemModule): Observable<TopMenuShortcut[]>;
|
|
10
|
+
getGlobalSearchMenus(baseUrl: string, propertyId?: number): Observable<GlobalSearchMenu[]>;
|
|
11
|
+
getUserPanel(baseUrl: string): Observable<UserPanel>;
|
|
12
|
+
switchProperty(baseUrl: string, request: SwitchPropertyRequest): Observable<SwitchPropertyResult>;
|
|
13
|
+
getPreferences(baseUrl: string): Observable<AppFramePreferences>;
|
|
14
|
+
setDisplayAlternateNames(baseUrl: string, request: SetDisplayAlternateNamesRequest): Observable<void>;
|
|
15
|
+
setEmployeeNamesMode(baseUrl: string, request: SetEmployeeNamesModeRequest): Observable<void>;
|
|
16
|
+
getModuleBlockState(baseUrl: string, systemModule: SystemModule | BlockableModule): Observable<ModuleBlockState>;
|
|
17
|
+
blockModule(baseUrl: string, request: BlockReleaseModuleRequest): Observable<void>;
|
|
18
|
+
releaseModule(baseUrl: string, request: BlockReleaseModuleRequest): Observable<void>;
|
|
19
|
+
getNotificationsSummary(baseUrl: string): Observable<NotificationsSummary>;
|
|
20
|
+
changePassword(baseUrl: string, request: ChangePasswordRequest): Observable<boolean>;
|
|
21
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BayanCoreTopMenuService, never>;
|
|
22
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<BayanCoreTopMenuService>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=menu.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menu.service.d.ts","sourceRoot":"","sources":["../../../../projects/bayan-core-ui/src/lib/shared/menu.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,UAAU,EAAc,MAAM,MAAM,CAAC;AAC/D,OAAO,EAEL,mBAAmB,EACnB,eAAe,EACf,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,+BAA+B,EAC/B,2BAA2B,EAC3B,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EACV,YAAY,EACZ,eAAe,EACf,SAAS,EACV,MAAM,aAAa,CAAC;;AAErB,qBAGa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAsB;IAE3C,OAAO,CAAC,MAAM;IAad,OAAO,CAAC,UAAU;IAIlB,8BAA8B,CAC5B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,YAAY,EAAE,YAAY,GACzB,UAAU,CAAC,UAAU,EAAE,CAAC;IAU3B,+BAA+B,CAC7B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,YAAY,EAAE,YAAY,GACzB,UAAU,CAAC,eAAe,EAAE,CAAC;IAYhC,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,gBAAgB,EAAE,CAAC;IAe1F,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC;IAIpD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,UAAU,CAAC,oBAAoB,CAAC;IASjG,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,mBAAmB,CAAC;IAMhE,wBAAwB,CACtB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,+BAA+B,GACvC,UAAU,CAAC,IAAI,CAAC;IAInB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,GAAG,UAAU,CAAC,IAAI,CAAC;IAO7F,mBAAmB,CACjB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,YAAY,GAAG,eAAe,GAC3C,UAAU,CAAC,gBAAgB,CAAC;IAU/B,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,yBAAyB,GAAG,UAAU,CAAC,IAAI,CAAC;IAIlF,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,yBAAyB,GAAG,UAAU,CAAC,IAAI,CAAC;IAIpF,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,oBAAoB,CAAC;IAQ1E,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,UAAU,CAAC,OAAO,CAAC;yCA/HzE,uBAAuB;6CAAvB,uBAAuB;CAkInC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { TopMenuWidgetAboutDialogConfig } from '../../top-menu-widget.models';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class BayanCoreAboutDialogWidgetComponent {
|
|
5
|
+
baseUrl: string;
|
|
6
|
+
visible: boolean;
|
|
7
|
+
config: TopMenuWidgetAboutDialogConfig;
|
|
8
|
+
visibleChange: EventEmitter<boolean>;
|
|
9
|
+
licenseClick: EventEmitter<void>;
|
|
10
|
+
releaseNotesClick: EventEmitter<void>;
|
|
11
|
+
supportClick: EventEmitter<void>;
|
|
12
|
+
readonly checkCircleIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
13
|
+
onBackdropClick(event: MouseEvent): void;
|
|
14
|
+
closeDialog(): void;
|
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BayanCoreAboutDialogWidgetComponent, never>;
|
|
16
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BayanCoreAboutDialogWidgetComponent, "bayan-core-about-dialog-widget", never, { "baseUrl": { "alias": "baseUrl"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "config": { "alias": "config"; "required": true; }; }, { "visibleChange": "visibleChange"; "licenseClick": "licenseClick"; "releaseNotesClick": "releaseNotesClick"; "supportClick": "supportClick"; }, never, never, true, never>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=about-dialog-widget.component.d.ts.map
|
package/lib/top-menu-widget/components/about-dialog-widget/about-dialog-widget.component.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"about-dialog-widget.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/about-dialog-widget/about-dialog-widget.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAsC,YAAY,EAAiB,MAAM,eAAe,CAAC;AAIhG,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;;AAE9E,qBAQa,mCAAmC;IACrC,OAAO,SAAM;IACb,OAAO,UAAS;IACE,MAAM,EAAG,8BAA8B,CAAC;IAEzD,aAAa,wBAA+B;IAC5C,YAAY,qBAA4B;IACxC,iBAAiB,qBAA4B;IAC7C,YAAY,qBAA4B;IAElD,QAAQ,CAAC,eAAe,iEAAiB;IAEzC,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAMxC,WAAW,IAAI,IAAI;yCAlBR,mCAAmC;2CAAnC,mCAAmC;CAqB/C"}
|
package/lib/top-menu-widget/components/change-password-widget/change-password-widget.component.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { DxFormComponent } from 'devextreme-angular';
|
|
3
|
+
import { TopMenuWidgetChangePasswordDialogConfig, TopMenuWidgetChangePasswordPayload } from '../../top-menu-widget.models';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class BayanCoreChangePasswordWidgetComponent {
|
|
6
|
+
baseUrl: string;
|
|
7
|
+
visible: boolean;
|
|
8
|
+
config: TopMenuWidgetChangePasswordDialogConfig;
|
|
9
|
+
isSubmitting: boolean;
|
|
10
|
+
visibleChange: EventEmitter<boolean>;
|
|
11
|
+
submitPasswordChange: EventEmitter<TopMenuWidgetChangePasswordPayload>;
|
|
12
|
+
changePasswordForm?: DxFormComponent;
|
|
13
|
+
readonly currentPasswordMode: import("@angular/core").WritableSignal<"password" | "text">;
|
|
14
|
+
readonly newPasswordMode: import("@angular/core").WritableSignal<"password" | "text">;
|
|
15
|
+
readonly confirmNewPasswordMode: import("@angular/core").WritableSignal<"password" | "text">;
|
|
16
|
+
formData: TopMenuWidgetChangePasswordPayload;
|
|
17
|
+
closeDialog(): void;
|
|
18
|
+
resetForm(): void;
|
|
19
|
+
onSaveButtonClick(): void;
|
|
20
|
+
togglePasswordMode(field: 'currentPasswordMode' | 'newPasswordMode' | 'confirmNewPasswordMode'): void;
|
|
21
|
+
updateField(field: keyof TopMenuWidgetChangePasswordPayload, value: string): void;
|
|
22
|
+
isChangePasswordValid(): boolean;
|
|
23
|
+
getCurrentPasswordEditorOptions(): object;
|
|
24
|
+
getNewPasswordEditorOptions(): object;
|
|
25
|
+
getConfirmPasswordEditorOptions(): object;
|
|
26
|
+
passwordComparison: () => string;
|
|
27
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BayanCoreChangePasswordWidgetComponent, never>;
|
|
28
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BayanCoreChangePasswordWidgetComponent, "bayan-core-change-password-widget", never, { "baseUrl": { "alias": "baseUrl"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "config": { "alias": "config"; "required": true; }; "isSubmitting": { "alias": "isSubmitting"; "required": false; }; }, { "visibleChange": "visibleChange"; "submitPasswordChange": "submitPasswordChange"; }, never, never, true, never>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=change-password-widget.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"change-password-widget.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/change-password-widget/change-password-widget.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAsC,YAAY,EAAoC,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,eAAe,EAA+B,MAAM,oBAAoB,CAAC;AAElF,OAAO,EACL,uCAAuC,EACvC,kCAAkC,EACnC,MAAM,8BAA8B,CAAC;;AAEtC,qBAOa,sCAAsC;IACxC,OAAO,SAAM;IACb,OAAO,UAAS;IACE,MAAM,EAAG,uCAAuC,CAAC;IACnE,YAAY,UAAS;IACpB,aAAa,wBAA+B;IAC5C,oBAAoB,mDAA0D;IAEvD,kBAAkB,CAAC,EAAE,eAAe,CAAC;IAEtE,QAAQ,CAAC,mBAAmB,8DAA2C;IACvE,QAAQ,CAAC,eAAe,8DAA2C;IACnE,QAAQ,CAAC,sBAAsB,8DAA2C;IAE1E,QAAQ,EAAE,kCAAkC,CAI1C;IAEF,WAAW,IAAI,IAAI;IAMnB,SAAS,IAAI,IAAI;IAQjB,iBAAiB,IAAI,IAAI;IASzB,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,GAAG,iBAAiB,GAAG,wBAAwB,GAAG,IAAI;IAKrG,WAAW,CAAC,KAAK,EAAE,MAAM,kCAAkC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAOjF,qBAAqB,IAAI,OAAO;IAIhC,+BAA+B,IAAI,MAAM;IAkBzC,2BAA2B,IAAI,MAAM;IAkBrC,+BAA+B,IAAI,MAAM;IAkBzC,kBAAkB,QAAO,MAAM,CAA8B;yCAjHlD,sCAAsC;2CAAtC,sCAAsC;CAkHlD"}
|
package/lib/top-menu-widget/components/global-search-widget/global-search-widget.component.d.ts
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { DxAutocompleteComponent } from 'devextreme-angular';
|
|
3
|
+
import { TopMenuWidgetSearchItem } from '../../top-menu-widget.models';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class BayanCoreGlobalSearchWidgetComponent {
|
|
6
|
+
private readonly document;
|
|
7
|
+
private readonly router;
|
|
8
|
+
searchAutoComplete?: DxAutocompleteComponent;
|
|
9
|
+
baseUrl: string;
|
|
10
|
+
placeholder: string;
|
|
11
|
+
dataSource: TopMenuWidgetSearchItem[];
|
|
12
|
+
search: EventEmitter<string>;
|
|
13
|
+
itemNavigate: EventEmitter<TopMenuWidgetSearchItem>;
|
|
14
|
+
readonly toolsIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
15
|
+
readonly gridIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
16
|
+
readonly creditIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
17
|
+
readonly usersIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
18
|
+
readonly clockIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
19
|
+
readonly swapIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
20
|
+
readonly medalIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
21
|
+
readonly graduateIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
22
|
+
onInput(event: {
|
|
23
|
+
event?: {
|
|
24
|
+
target?: {
|
|
25
|
+
value?: string;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
component?: {
|
|
29
|
+
option: (name: string, value: string) => void;
|
|
30
|
+
};
|
|
31
|
+
} | any): void;
|
|
32
|
+
onEnterKey(event: {
|
|
33
|
+
event?: {
|
|
34
|
+
target?: {
|
|
35
|
+
value?: string;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
} | any): void;
|
|
39
|
+
onItemSelected(event: Event, item: TopMenuWidgetSearchItem): void;
|
|
40
|
+
reset(): void;
|
|
41
|
+
getText(text: string, isTranslatable?: boolean): string;
|
|
42
|
+
hasNavigationUrl(url: string | null | undefined): boolean;
|
|
43
|
+
private navigateToUrl;
|
|
44
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BayanCoreGlobalSearchWidgetComponent, never>;
|
|
45
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BayanCoreGlobalSearchWidgetComponent, "bayan-core-global-search-widget", never, { "baseUrl": { "alias": "baseUrl"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "dataSource": { "alias": "dataSource"; "required": false; }; }, { "search": "search"; "itemNavigate": "itemNavigate"; }, never, never, true, never>;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=global-search-widget.component.d.ts.map
|
package/lib/top-menu-widget/components/global-search-widget/global-search-widget.component.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-search-widget.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/global-search-widget/global-search-widget.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAsC,YAAY,EAAoC,MAAM,eAAe,CAAC;AAanH,OAAO,EAAE,uBAAuB,EAAwB,MAAM,oBAAoB,CAAC;AAEnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;;AAGvE,qBAQa,oCAAoC;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IAER,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;IAErE,OAAO,SAAM;IACb,WAAW,SAA+B;IAC1C,UAAU,EAAE,uBAAuB,EAAE,CAAM;IAE1C,MAAM,uBAA8B;IACpC,YAAY,wCAA+C;IAErE,QAAQ,CAAC,SAAS,iEAAW;IAC7B,QAAQ,CAAC,QAAQ,iEAAU;IAC3B,QAAQ,CAAC,UAAU,iEAAY;IAC/B,QAAQ,CAAC,SAAS,iEAAW;IAC7B,QAAQ,CAAC,SAAS,iEAAW;IAC7B,QAAQ,CAAC,QAAQ,iEAAe;IAChC,QAAQ,CAAC,SAAS,iEAAW;IAC7B,QAAQ,CAAC,YAAY,iEAAmB;IAExC,OAAO,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE;gBAAE,KAAK,CAAC,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;QAAC,SAAS,CAAC,EAAE;YAAE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;SAAE,CAAA;KAAE,GAAG,GAAG,GAAG,IAAI;IAOtI,UAAU,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE;gBAAE,KAAK,CAAC,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAA;KAAE,GAAG,GAAG,GAAG,IAAI;IAkB1E,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,uBAAuB,GAAG,IAAI;IAOjE,KAAK,IAAI,IAAI;IAIb,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,UAAQ,GAAG,MAAM;IAIrD,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO;IAIzD,OAAO,CAAC,aAAa;yCAlEV,oCAAoC;2CAApC,oCAAoC;CAoFhD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ElementRef, EventEmitter } from '@angular/core';
|
|
2
|
+
import { TopMenuWidgetItem } from '../../top-menu-widget.models';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class BayanCoreItemWidgetComponent {
|
|
5
|
+
private readonly elementRef;
|
|
6
|
+
private readonly document;
|
|
7
|
+
private readonly router;
|
|
8
|
+
baseUrl: string;
|
|
9
|
+
item: TopMenuWidgetItem;
|
|
10
|
+
itemClick: EventEmitter<TopMenuWidgetItem>;
|
|
11
|
+
readonly open: import("@angular/core").WritableSignal<boolean>;
|
|
12
|
+
constructor(elementRef: ElementRef<HTMLElement>);
|
|
13
|
+
onDocumentClick(event: MouseEvent): void;
|
|
14
|
+
hasChildren(): boolean;
|
|
15
|
+
hasNavigationUrl(url: string | null | undefined): boolean;
|
|
16
|
+
onItemActivated(event: Event): void;
|
|
17
|
+
onChildItemClick(item: TopMenuWidgetItem): void;
|
|
18
|
+
private navigateToUrl;
|
|
19
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BayanCoreItemWidgetComponent, never>;
|
|
20
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BayanCoreItemWidgetComponent, "bayan-core-item-widget", never, { "baseUrl": { "alias": "baseUrl"; "required": false; }; "item": { "alias": "item"; "required": true; }; }, { "itemClick": "itemClick"; }, never, never, true, never>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=item-widget.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"item-widget.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/item-widget/item-widget.component.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,UAAU,EACV,YAAY,EAMb,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;;AAGjE,qBAQa,4BAA4B;IAU3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IATvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IAEhC,OAAO,SAAM;IACK,IAAI,EAAG,iBAAiB,CAAC;IAC1C,SAAS,kCAAyC;IAE5D,QAAQ,CAAC,IAAI,kDAAiB;gBAED,UAAU,EAAE,UAAU,CAAC,WAAW,CAAC;IAGhE,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAOxC,WAAW,IAAI,OAAO;IAItB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO;IAIzD,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAanC,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAK/C,OAAO,CAAC,aAAa;yCA9CV,4BAA4B;2CAA5B,4BAA4B;CAgExC"}
|
package/lib/top-menu-widget/components/notifications-widget/notifications-widget.component.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
|
|
2
|
+
import { NotificationsSummary } from '../../../shared/menu.dtos';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class BayanCoreNotificationsWidgetComponent implements OnInit, OnChanges {
|
|
5
|
+
private readonly document;
|
|
6
|
+
private readonly router;
|
|
7
|
+
private readonly topMenuService;
|
|
8
|
+
baseUrl: string;
|
|
9
|
+
title: string;
|
|
10
|
+
wrapperClass: string;
|
|
11
|
+
linkClass: string;
|
|
12
|
+
iconClass: string;
|
|
13
|
+
badgeClass: string;
|
|
14
|
+
readonly bellIcon: import("@fortawesome/fontawesome-common-types").IconDefinition;
|
|
15
|
+
readonly notificationsSummary: import("@angular/core").WritableSignal<NotificationsSummary>;
|
|
16
|
+
ngOnInit(): void;
|
|
17
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
18
|
+
onNotificationClick(event?: Event): void;
|
|
19
|
+
private loadNotificationsSummary;
|
|
20
|
+
private resetNotificationsData;
|
|
21
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BayanCoreNotificationsWidgetComponent, never>;
|
|
22
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BayanCoreNotificationsWidgetComponent, "bayan-core-notifications-widget", never, { "baseUrl": { "alias": "baseUrl"; "required": false; }; "title": { "alias": "title"; "required": false; }; "wrapperClass": { "alias": "wrapperClass"; "required": false; }; "linkClass": { "alias": "linkClass"; "required": false; }; "iconClass": { "alias": "iconClass"; "required": false; }; "badgeClass": { "alias": "badgeClass"; "required": false; }; }, {}, never, never, true, never>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=notifications-widget.component.d.ts.map
|
package/lib/top-menu-widget/components/notifications-widget/notifications-widget.component.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notifications-widget.component.d.ts","sourceRoot":"","sources":["../../../../../../projects/bayan-core-ui/src/lib/top-menu-widget/components/notifications-widget/notifications-widget.component.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,SAAS,EACT,MAAM,EACN,aAAa,EAGd,MAAM,eAAe,CAAC;AAMvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;;AAGjE,qBAQa,qCAAsC,YAAW,MAAM,EAAE,SAAS;IAC7E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmC;IAEzD,OAAO,SAAM;IACb,KAAK,SAAmB;IACxB,YAAY,SAAgD;IAC5D,SAAS,SAAoE;IAC7E,SAAS,SAAU;IACnB,UAAU,SAAyC;IAE5D,QAAQ,CAAC,QAAQ,iEAAU;IAC3B,QAAQ,CAAC,oBAAoB,+DAG1B;IAEH,QAAQ,IAAI,IAAI;IAIhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAMzC,mBAAmB,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;IAcxC,OAAO,CAAC,wBAAwB;IAmBhC,OAAO,CAAC,sBAAsB;yCA7DnB,qCAAqC;2CAArC,qCAAqC;CAmEjD"}
|