@n-isi-platform/design-system 1.0.49 → 1.0.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/n-isi-platform-design-system.mjs +193 -6
- package/fesm2022/n-isi-platform-design-system.mjs.map +1 -1
- package/interceptors/error.interceptor.d.ts +2 -0
- package/lib/file-upload/file-upload.component.d.ts +4 -0
- package/lib/navbar/navbar.component.d.ts +50 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -25,7 +25,7 @@ import { TooltipModule, Tooltip } from 'primeng/tooltip';
|
|
|
25
25
|
import * as i1$3 from 'primeng/config';
|
|
26
26
|
import * as i1$1 from 'primeng/api';
|
|
27
27
|
import { PrimeTemplate, ConfirmEventType } from 'primeng/api';
|
|
28
|
-
import { BehaviorSubject, throwError, firstValueFrom, Subscription, take } from 'rxjs';
|
|
28
|
+
import { BehaviorSubject, throwError, interval, firstValueFrom, Subscription, take } from 'rxjs';
|
|
29
29
|
import { catchError } from 'rxjs/operators';
|
|
30
30
|
import * as i1$4 from 'primeng/accordion';
|
|
31
31
|
import { Accordion, AccordionModule } from 'primeng/accordion';
|
|
@@ -61,6 +61,7 @@ import { InputNumberModule } from 'primeng/inputnumber';
|
|
|
61
61
|
import { InputMask } from 'primeng/inputmask';
|
|
62
62
|
import { ProgressSpinner } from 'primeng/progressspinner';
|
|
63
63
|
import { Dialog, DialogModule } from 'primeng/dialog';
|
|
64
|
+
import { Avatar } from 'primeng/avatar';
|
|
64
65
|
import { MessageModule } from 'primeng/message';
|
|
65
66
|
import * as i1$9 from 'primeng/picklist';
|
|
66
67
|
import { PickListModule } from 'primeng/picklist';
|
|
@@ -453,6 +454,9 @@ class SharedMessageService {
|
|
|
453
454
|
});
|
|
454
455
|
}
|
|
455
456
|
errorMessage(message) {
|
|
457
|
+
if (message?.includes('Aktiven zaklep ne obstaja')) {
|
|
458
|
+
return;
|
|
459
|
+
}
|
|
456
460
|
this.messageService.add({
|
|
457
461
|
key: 'notification',
|
|
458
462
|
severity: 'error',
|
|
@@ -520,8 +524,12 @@ class FileUploadComponent {
|
|
|
520
524
|
getPrilogaId(item) {
|
|
521
525
|
if (item instanceof File)
|
|
522
526
|
return undefined;
|
|
523
|
-
if (this.isLocalPhoto(item))
|
|
524
|
-
|
|
527
|
+
if (this.isLocalPhoto(item)) {
|
|
528
|
+
if (typeof item.serverPrilogaId === 'number')
|
|
529
|
+
return item.serverPrilogaId;
|
|
530
|
+
const firstServerId = item.serverPrilogaIds?.[0];
|
|
531
|
+
return typeof firstServerId === 'number' ? firstServerId : undefined;
|
|
532
|
+
}
|
|
525
533
|
return item.id;
|
|
526
534
|
}
|
|
527
535
|
delete(fileOrId, index) {
|
|
@@ -602,6 +610,9 @@ class FileUploadComponent {
|
|
|
602
610
|
getLocalPhotoStatusSeverity(item) {
|
|
603
611
|
return this.isLocalPhoto(item) && this.isLocalPhotoSynced(item) ? 'success' : 'warn';
|
|
604
612
|
}
|
|
613
|
+
hasDownloadableLocalPhoto(item) {
|
|
614
|
+
return this.isLocalPhoto(item) && this.isLocalPhotoSynced(item) && this.getPrilogaId(item) != null;
|
|
615
|
+
}
|
|
605
616
|
isLocalPhotoSynced(item) {
|
|
606
617
|
const synced = item.synced;
|
|
607
618
|
return synced === true || synced === 1 || synced === '1' || synced === 'true';
|
|
@@ -635,7 +646,7 @@ class FileUploadComponent {
|
|
|
635
646
|
this.totalSizePercent = this.totalSize / 10;
|
|
636
647
|
}
|
|
637
648
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FileUploadComponent, deps: [{ token: i1$3.PrimeNG }, { token: SharedMessageService }, { token: i1$2.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
638
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: FileUploadComponent, isStandalone: true, selector: "app-file-upload", inputs: { postavkaPregledaId: "postavkaPregledaId", uploadedFiles: "uploadedFiles", maxFileSize: "maxFileSize", totalMaxFileSize: "totalMaxFileSize", disabled: "disabled", acceptFiles: "acceptFiles", multiple: "multiple", extraInfo: "extraInfo" }, outputs: { onSaveFile: "onSaveFile", onDelete: "onDelete", onDeleteLocal: "onDeleteLocal", onDeleteLocalPhotoId: "onDeleteLocalPhotoId", onDownload: "onDownload", valid: "valid" }, ngImport: i0, template: " <p-fileupload\r\n class=\"pt-3\"\r\n name=\"priloge[]\"\r\n invalidFileSizeMessageSummary=\"{{\r\n 'components.fileUpload.invalidFileSizeMessageSummary' | translate\r\n }}\"\r\n invalidFileSizeMessageDetail=\"{{\r\n 'components.fileUpload.invalidFileSizeMessageDetail' | translate\r\n }}\"\r\n invalidFileTypeMessageDetail=\"{{'components.fileUpload.invalidFileTypeMessageDetail' | translate}}\"\r\n invalidFileTypeMessageSummary=\"{{ 'components.fileUpload.invalidFileTypeMessageSummary' | translate}}\"\r\n [multiple]=\"multiple\"\r\n (onRemove)=\"remove($event)\"\r\n [accept]=\"acceptFiles\"\r\n [maxFileSize]=\"maxFileSize\"\r\n (onSelect)=\"onSelectedFiles($event)\">\r\n <ng-template\r\n #header\r\n let-priloge\r\n let-chooseCallback=\"chooseCallback\"\r\n let-clearCallback=\"clearCallback\">\r\n <div class=\"flex gap-2\">\r\n <lib-button\r\n [disabled]=\"disabled\"\r\n (click)=\"choose($event, chooseCallback)\"\r\n label=\"{{ 'components.fileUpload.izberi' | translate }}\"\r\n [hasIcon]=\"true\"\r\n [icon]=\"'pi pi-file'\"\r\n [color]=\"ButtonColor.primary\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #content let-priloge let-removeFileCallback=\"removeFileCallback\">\r\n <div class=\"flex flex-col gap-8 pt-4\">\r\n <div class=\"w-full\" *ngIf=\"uploadedFiles.length > 0\">\r\n <div class=\"flex flex-column gap-4\">\r\n <div\r\n *ngFor=\"let priloga of uploadedFiles; let i = index\"\r\n class=\"flex flex-col justify-content-between items-center gap-2 px-3\">\r\n <div class=\"flex flex-col\">\r\n <div>\r\n <i [class]=\"isLocalPhoto(priloga) ? 'pi pi-image' : 'pi pi-file'\"></i>\r\n </div>\r\n <span class=\"pl-3 text-ellipsis max-w-60 whitespace-nowrap overflow-hidden\">\r\n {{ getDisplayName(priloga) }}\r\n </span>\r\n </div>\r\n <div class=\"flex align-items-center\">\r\n <div *ngIf=\"isLocalPhoto(priloga)\">\r\n <p-badge\r\n [value]=\"getLocalPhotoStatusShortLabel(priloga)\"\r\n badgeSize=\"small\"\r\n [severity]=\"getLocalPhotoStatusSeverity(priloga)\"\r\n [pTooltip]=\"getLocalPhotoStatusLabel(priloga)\"\r\n tooltipPosition=\"top\" />\r\n </div>\r\n <div *ngIf=\"!isTempFile(priloga) && !isLocalPhoto(priloga)\">\r\n <p-badge value=\"Zaklju\u010Den\" badgeSize=\"small\" severity=\"success\" />\r\n <p-button\r\n (click)=\"downloadFile(priloga)\"\r\n severity=\"primary\"\r\n icon=\"pi pi-download\"\r\n aria-label=\"Prenesi\"\r\n [rounded]=\"true\"\r\n [text]=\"true\" />\r\n </div>\r\n <p-button\r\n [disabled]=\"disabled\"\r\n (click)=\"isTempFile(priloga) ? delete(priloga, i) : delete(priloga, i)\"\r\n severity=\"danger\"\r\n icon=\"pi pi-times\"\r\n [rounded]=\"true\"\r\n [text]=\"true\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #priloga></ng-template>\r\n <ng-template #empty>\r\n <div\r\n *ngIf=\"uploadedFiles.length === 0\"\r\n class=\"flex align-center justify-around\"\r\n [style.width]=\"'100%'\">\r\n <span class=\"pi pi-cloud-upload mr-3\"></span>\r\n <p>{{ 'components.fileUpload.povlecitveInSpustiteDatotekeZaNalaganje' | translate }}</p>\r\n <p *ngIf=\"extraInfo\">{{ extraInfo | translate }}</p>\r\n </div>\r\n <div *ngIf=\"acceptFiles\" class=\"flex align-center justify-around\">\r\n <div class=\"placeholder\"></div>\r\n <p>{{ ('components.fileUpload.dovoljeneDatoteke' | translate) + acceptFiles }}</p>\r\n </div>\r\n </ng-template>\r\n </p-fileupload>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i4.Badge, selector: "p-badge", inputs: ["styleClass", "style", "badgeSize", "size", "severity", "value", "badgeDisabled"] }, { kind: "ngmodule", type: FileUploadModule }, { kind: "component", type: i5.FileUpload, selector: "p-fileupload, p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "uploadStyleClass", "cancelStyleClass", "removeStyleClass", "chooseStyleClass", "chooseButtonProps", "uploadButtonProps", "cancelButtonProps", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler", "onImageError", "onRemoveUploadedFile"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i6.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["hasIcon", "label", "color", "icon", "iconPos", "disabled", "isLoading", "styleClass", "size", "accessibilityText", "buttonType", "isAccessible", "isSelected", "ariaControlsId", "isExpanded", "link", "isTextareaClear"], outputs: ["clickEvent"] }, { kind: "ngmodule", type: OverlayBadgeModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MenubarModule }, { kind: "ngmodule", type: ChipModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] });
|
|
649
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: FileUploadComponent, isStandalone: true, selector: "app-file-upload", inputs: { postavkaPregledaId: "postavkaPregledaId", uploadedFiles: "uploadedFiles", maxFileSize: "maxFileSize", totalMaxFileSize: "totalMaxFileSize", disabled: "disabled", acceptFiles: "acceptFiles", multiple: "multiple", extraInfo: "extraInfo" }, outputs: { onSaveFile: "onSaveFile", onDelete: "onDelete", onDeleteLocal: "onDeleteLocal", onDeleteLocalPhotoId: "onDeleteLocalPhotoId", onDownload: "onDownload", valid: "valid" }, ngImport: i0, template: " <p-fileupload\r\n class=\"pt-3\"\r\n name=\"priloge[]\"\r\n invalidFileSizeMessageSummary=\"{{\r\n 'components.fileUpload.invalidFileSizeMessageSummary' | translate\r\n }}\"\r\n invalidFileSizeMessageDetail=\"{{\r\n 'components.fileUpload.invalidFileSizeMessageDetail' | translate\r\n }}\"\r\n invalidFileTypeMessageDetail=\"{{'components.fileUpload.invalidFileTypeMessageDetail' | translate}}\"\r\n invalidFileTypeMessageSummary=\"{{ 'components.fileUpload.invalidFileTypeMessageSummary' | translate}}\"\r\n [multiple]=\"multiple\"\r\n (onRemove)=\"remove($event)\"\r\n [accept]=\"acceptFiles\"\r\n [maxFileSize]=\"maxFileSize\"\r\n (onSelect)=\"onSelectedFiles($event)\">\r\n <ng-template\r\n #header\r\n let-priloge\r\n let-chooseCallback=\"chooseCallback\"\r\n let-clearCallback=\"clearCallback\">\r\n <div class=\"flex gap-2\">\r\n <lib-button\r\n [disabled]=\"disabled\"\r\n (click)=\"choose($event, chooseCallback)\"\r\n label=\"{{ 'components.fileUpload.izberi' | translate }}\"\r\n [hasIcon]=\"true\"\r\n [icon]=\"'pi pi-file'\"\r\n [color]=\"ButtonColor.primary\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #content let-priloge let-removeFileCallback=\"removeFileCallback\">\r\n <div class=\"flex flex-col gap-8 pt-4\">\r\n <div class=\"w-full\" *ngIf=\"uploadedFiles.length > 0\">\r\n <div class=\"flex flex-column gap-4\">\r\n <div\r\n *ngFor=\"let priloga of uploadedFiles; let i = index\"\r\n class=\"flex flex-col justify-content-between items-center gap-2 px-3\">\r\n <div class=\"flex flex-col\">\r\n <div>\r\n <i [class]=\"isLocalPhoto(priloga) ? 'pi pi-image' : 'pi pi-file'\"></i>\r\n </div>\r\n <span class=\"pl-3 text-ellipsis max-w-60 whitespace-nowrap overflow-hidden\">\r\n {{ getDisplayName(priloga) }}\r\n </span>\r\n </div>\r\n <div class=\"flex align-items-center\">\r\n <div *ngIf=\"isLocalPhoto(priloga) && !hasDownloadableLocalPhoto(priloga)\">\r\n <p-badge\r\n [value]=\"getLocalPhotoStatusShortLabel(priloga)\"\r\n badgeSize=\"small\"\r\n [severity]=\"getLocalPhotoStatusSeverity(priloga)\"\r\n [pTooltip]=\"getLocalPhotoStatusLabel(priloga)\"\r\n tooltipPosition=\"top\" />\r\n </div>\r\n <div *ngIf=\"hasDownloadableLocalPhoto(priloga) || (!isTempFile(priloga) && !isLocalPhoto(priloga))\">\r\n <p-badge value=\"Zaklju\u010Den\" badgeSize=\"small\" severity=\"success\" />\r\n <p-button\r\n (click)=\"downloadFile(priloga)\"\r\n severity=\"primary\"\r\n icon=\"pi pi-download\"\r\n aria-label=\"Prenesi\"\r\n [rounded]=\"true\"\r\n [text]=\"true\" />\r\n </div>\r\n <p-button\r\n [disabled]=\"disabled\"\r\n (click)=\"isTempFile(priloga) ? delete(priloga, i) : delete(priloga, i)\"\r\n severity=\"danger\"\r\n icon=\"pi pi-times\"\r\n [rounded]=\"true\"\r\n [text]=\"true\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #priloga></ng-template>\r\n <ng-template #empty>\r\n <div\r\n *ngIf=\"uploadedFiles.length === 0\"\r\n class=\"flex align-center justify-around\"\r\n [style.width]=\"'100%'\">\r\n <span class=\"pi pi-cloud-upload mr-3\"></span>\r\n <p>{{ 'components.fileUpload.povlecitveInSpustiteDatotekeZaNalaganje' | translate }}</p>\r\n <p *ngIf=\"extraInfo\">{{ extraInfo | translate }}</p>\r\n </div>\r\n <div *ngIf=\"acceptFiles\" class=\"flex align-center justify-around\">\r\n <div class=\"placeholder\"></div>\r\n <p>{{ ('components.fileUpload.dovoljeneDatoteke' | translate) + acceptFiles }}</p>\r\n </div>\r\n </ng-template>\r\n </p-fileupload>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i4.Badge, selector: "p-badge", inputs: ["styleClass", "style", "badgeSize", "size", "severity", "value", "badgeDisabled"] }, { kind: "ngmodule", type: FileUploadModule }, { kind: "component", type: i5.FileUpload, selector: "p-fileupload, p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "uploadStyleClass", "cancelStyleClass", "removeStyleClass", "chooseStyleClass", "chooseButtonProps", "uploadButtonProps", "cancelButtonProps", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler", "onImageError", "onRemoveUploadedFile"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i6.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["hasIcon", "label", "color", "icon", "iconPos", "disabled", "isLoading", "styleClass", "size", "accessibilityText", "buttonType", "isAccessible", "isSelected", "ariaControlsId", "isExpanded", "link", "isTextareaClear"], outputs: ["clickEvent"] }, { kind: "ngmodule", type: OverlayBadgeModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MenubarModule }, { kind: "ngmodule", type: ChipModule }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] });
|
|
639
650
|
}
|
|
640
651
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: FileUploadComponent, decorators: [{
|
|
641
652
|
type: Component,
|
|
@@ -653,7 +664,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImpor
|
|
|
653
664
|
MenubarModule,
|
|
654
665
|
ChipModule,
|
|
655
666
|
TooltipModule,
|
|
656
|
-
], template: " <p-fileupload\r\n class=\"pt-3\"\r\n name=\"priloge[]\"\r\n invalidFileSizeMessageSummary=\"{{\r\n 'components.fileUpload.invalidFileSizeMessageSummary' | translate\r\n }}\"\r\n invalidFileSizeMessageDetail=\"{{\r\n 'components.fileUpload.invalidFileSizeMessageDetail' | translate\r\n }}\"\r\n invalidFileTypeMessageDetail=\"{{'components.fileUpload.invalidFileTypeMessageDetail' | translate}}\"\r\n invalidFileTypeMessageSummary=\"{{ 'components.fileUpload.invalidFileTypeMessageSummary' | translate}}\"\r\n [multiple]=\"multiple\"\r\n (onRemove)=\"remove($event)\"\r\n [accept]=\"acceptFiles\"\r\n [maxFileSize]=\"maxFileSize\"\r\n (onSelect)=\"onSelectedFiles($event)\">\r\n <ng-template\r\n #header\r\n let-priloge\r\n let-chooseCallback=\"chooseCallback\"\r\n let-clearCallback=\"clearCallback\">\r\n <div class=\"flex gap-2\">\r\n <lib-button\r\n [disabled]=\"disabled\"\r\n (click)=\"choose($event, chooseCallback)\"\r\n label=\"{{ 'components.fileUpload.izberi' | translate }}\"\r\n [hasIcon]=\"true\"\r\n [icon]=\"'pi pi-file'\"\r\n [color]=\"ButtonColor.primary\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #content let-priloge let-removeFileCallback=\"removeFileCallback\">\r\n <div class=\"flex flex-col gap-8 pt-4\">\r\n <div class=\"w-full\" *ngIf=\"uploadedFiles.length > 0\">\r\n <div class=\"flex flex-column gap-4\">\r\n <div\r\n *ngFor=\"let priloga of uploadedFiles; let i = index\"\r\n class=\"flex flex-col justify-content-between items-center gap-2 px-3\">\r\n <div class=\"flex flex-col\">\r\n <div>\r\n <i [class]=\"isLocalPhoto(priloga) ? 'pi pi-image' : 'pi pi-file'\"></i>\r\n </div>\r\n <span class=\"pl-3 text-ellipsis max-w-60 whitespace-nowrap overflow-hidden\">\r\n {{ getDisplayName(priloga) }}\r\n </span>\r\n </div>\r\n <div class=\"flex align-items-center\">\r\n <div *ngIf=\"isLocalPhoto(priloga)\">\r\n <p-badge\r\n [value]=\"getLocalPhotoStatusShortLabel(priloga)\"\r\n badgeSize=\"small\"\r\n [severity]=\"getLocalPhotoStatusSeverity(priloga)\"\r\n [pTooltip]=\"getLocalPhotoStatusLabel(priloga)\"\r\n tooltipPosition=\"top\" />\r\n </div>\r\n <div *ngIf=\"!isTempFile(priloga) && !isLocalPhoto(priloga)\">\r\n <p-badge value=\"Zaklju\u010Den\" badgeSize=\"small\" severity=\"success\" />\r\n <p-button\r\n (click)=\"downloadFile(priloga)\"\r\n severity=\"primary\"\r\n icon=\"pi pi-download\"\r\n aria-label=\"Prenesi\"\r\n [rounded]=\"true\"\r\n [text]=\"true\" />\r\n </div>\r\n <p-button\r\n [disabled]=\"disabled\"\r\n (click)=\"isTempFile(priloga) ? delete(priloga, i) : delete(priloga, i)\"\r\n severity=\"danger\"\r\n icon=\"pi pi-times\"\r\n [rounded]=\"true\"\r\n [text]=\"true\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #priloga></ng-template>\r\n <ng-template #empty>\r\n <div\r\n *ngIf=\"uploadedFiles.length === 0\"\r\n class=\"flex align-center justify-around\"\r\n [style.width]=\"'100%'\">\r\n <span class=\"pi pi-cloud-upload mr-3\"></span>\r\n <p>{{ 'components.fileUpload.povlecitveInSpustiteDatotekeZaNalaganje' | translate }}</p>\r\n <p *ngIf=\"extraInfo\">{{ extraInfo | translate }}</p>\r\n </div>\r\n <div *ngIf=\"acceptFiles\" class=\"flex align-center justify-around\">\r\n <div class=\"placeholder\"></div>\r\n <p>{{ ('components.fileUpload.dovoljeneDatoteke' | translate) + acceptFiles }}</p>\r\n </div>\r\n </ng-template>\r\n </p-fileupload>\r\n" }]
|
|
667
|
+
], template: " <p-fileupload\r\n class=\"pt-3\"\r\n name=\"priloge[]\"\r\n invalidFileSizeMessageSummary=\"{{\r\n 'components.fileUpload.invalidFileSizeMessageSummary' | translate\r\n }}\"\r\n invalidFileSizeMessageDetail=\"{{\r\n 'components.fileUpload.invalidFileSizeMessageDetail' | translate\r\n }}\"\r\n invalidFileTypeMessageDetail=\"{{'components.fileUpload.invalidFileTypeMessageDetail' | translate}}\"\r\n invalidFileTypeMessageSummary=\"{{ 'components.fileUpload.invalidFileTypeMessageSummary' | translate}}\"\r\n [multiple]=\"multiple\"\r\n (onRemove)=\"remove($event)\"\r\n [accept]=\"acceptFiles\"\r\n [maxFileSize]=\"maxFileSize\"\r\n (onSelect)=\"onSelectedFiles($event)\">\r\n <ng-template\r\n #header\r\n let-priloge\r\n let-chooseCallback=\"chooseCallback\"\r\n let-clearCallback=\"clearCallback\">\r\n <div class=\"flex gap-2\">\r\n <lib-button\r\n [disabled]=\"disabled\"\r\n (click)=\"choose($event, chooseCallback)\"\r\n label=\"{{ 'components.fileUpload.izberi' | translate }}\"\r\n [hasIcon]=\"true\"\r\n [icon]=\"'pi pi-file'\"\r\n [color]=\"ButtonColor.primary\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #content let-priloge let-removeFileCallback=\"removeFileCallback\">\r\n <div class=\"flex flex-col gap-8 pt-4\">\r\n <div class=\"w-full\" *ngIf=\"uploadedFiles.length > 0\">\r\n <div class=\"flex flex-column gap-4\">\r\n <div\r\n *ngFor=\"let priloga of uploadedFiles; let i = index\"\r\n class=\"flex flex-col justify-content-between items-center gap-2 px-3\">\r\n <div class=\"flex flex-col\">\r\n <div>\r\n <i [class]=\"isLocalPhoto(priloga) ? 'pi pi-image' : 'pi pi-file'\"></i>\r\n </div>\r\n <span class=\"pl-3 text-ellipsis max-w-60 whitespace-nowrap overflow-hidden\">\r\n {{ getDisplayName(priloga) }}\r\n </span>\r\n </div>\r\n <div class=\"flex align-items-center\">\r\n <div *ngIf=\"isLocalPhoto(priloga) && !hasDownloadableLocalPhoto(priloga)\">\r\n <p-badge\r\n [value]=\"getLocalPhotoStatusShortLabel(priloga)\"\r\n badgeSize=\"small\"\r\n [severity]=\"getLocalPhotoStatusSeverity(priloga)\"\r\n [pTooltip]=\"getLocalPhotoStatusLabel(priloga)\"\r\n tooltipPosition=\"top\" />\r\n </div>\r\n <div *ngIf=\"hasDownloadableLocalPhoto(priloga) || (!isTempFile(priloga) && !isLocalPhoto(priloga))\">\r\n <p-badge value=\"Zaklju\u010Den\" badgeSize=\"small\" severity=\"success\" />\r\n <p-button\r\n (click)=\"downloadFile(priloga)\"\r\n severity=\"primary\"\r\n icon=\"pi pi-download\"\r\n aria-label=\"Prenesi\"\r\n [rounded]=\"true\"\r\n [text]=\"true\" />\r\n </div>\r\n <p-button\r\n [disabled]=\"disabled\"\r\n (click)=\"isTempFile(priloga) ? delete(priloga, i) : delete(priloga, i)\"\r\n severity=\"danger\"\r\n icon=\"pi pi-times\"\r\n [rounded]=\"true\"\r\n [text]=\"true\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #priloga></ng-template>\r\n <ng-template #empty>\r\n <div\r\n *ngIf=\"uploadedFiles.length === 0\"\r\n class=\"flex align-center justify-around\"\r\n [style.width]=\"'100%'\">\r\n <span class=\"pi pi-cloud-upload mr-3\"></span>\r\n <p>{{ 'components.fileUpload.povlecitveInSpustiteDatotekeZaNalaganje' | translate }}</p>\r\n <p *ngIf=\"extraInfo\">{{ extraInfo | translate }}</p>\r\n </div>\r\n <div *ngIf=\"acceptFiles\" class=\"flex align-center justify-around\">\r\n <div class=\"placeholder\"></div>\r\n <p>{{ ('components.fileUpload.dovoljeneDatoteke' | translate) + acceptFiles }}</p>\r\n </div>\r\n </ng-template>\r\n </p-fileupload>\r\n" }]
|
|
657
668
|
}], ctorParameters: () => [{ type: i1$3.PrimeNG }, { type: SharedMessageService }, { type: i1$2.TranslateService }], propDecorators: { postavkaPregledaId: [{
|
|
658
669
|
type: Input
|
|
659
670
|
}], uploadedFiles: [{
|
|
@@ -955,6 +966,13 @@ class ErrorInterceptor {
|
|
|
955
966
|
constructor() { }
|
|
956
967
|
intercept(httpRequest, next) {
|
|
957
968
|
return next.handle(httpRequest).pipe(catchError((err) => {
|
|
969
|
+
const errorMessage = this.getErrorText(err);
|
|
970
|
+
const suppressMissingActiveLockToast = errorMessage.includes('Aktiven zaklep ne obstaja');
|
|
971
|
+
const suppressNoActiveLockLookupToast = this.isNoActiveLockLookupError(httpRequest, err);
|
|
972
|
+
const suppressGlobalError = err.url?.includes('/zaklepi') && err.status !== 401;
|
|
973
|
+
if (suppressGlobalError || suppressMissingActiveLockToast || suppressNoActiveLockLookupToast) {
|
|
974
|
+
return throwError(() => err);
|
|
975
|
+
}
|
|
958
976
|
if (err.status === 401) {
|
|
959
977
|
if (err?.error?.errorCode == 2056) {
|
|
960
978
|
this.sharedMessageService.errorMessage(this.translateService?.instant('errors.deactivatedAccount'));
|
|
@@ -1005,6 +1023,33 @@ class ErrorInterceptor {
|
|
|
1005
1023
|
return throwError(() => err);
|
|
1006
1024
|
}));
|
|
1007
1025
|
}
|
|
1026
|
+
getErrorText(err) {
|
|
1027
|
+
const body = err.error;
|
|
1028
|
+
const parts = [
|
|
1029
|
+
typeof body === 'string' ? body : '',
|
|
1030
|
+
body?.message,
|
|
1031
|
+
body?.detail,
|
|
1032
|
+
body?.messageToUser,
|
|
1033
|
+
body?.error,
|
|
1034
|
+
err.message,
|
|
1035
|
+
];
|
|
1036
|
+
if (body && typeof body === 'object') {
|
|
1037
|
+
try {
|
|
1038
|
+
parts.push(JSON.stringify(body));
|
|
1039
|
+
}
|
|
1040
|
+
catch {
|
|
1041
|
+
// Ignore non-serializable error payloads.
|
|
1042
|
+
}
|
|
1043
|
+
}
|
|
1044
|
+
return parts.filter((part) => typeof part === 'string').join(' ');
|
|
1045
|
+
}
|
|
1046
|
+
isNoActiveLockLookupError(httpRequest, err) {
|
|
1047
|
+
return (httpRequest.method === 'GET' &&
|
|
1048
|
+
/\/zaklepi\/ZADEVA\/\d+(?:$|[/?#])/.test(httpRequest.urlWithParams) &&
|
|
1049
|
+
err.status === 400 &&
|
|
1050
|
+
(err.error?.errorCode === 2068 ||
|
|
1051
|
+
err.error?.message === 'Aktiven zaklep ne obstaja.'));
|
|
1052
|
+
}
|
|
1008
1053
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ErrorInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1009
1054
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: ErrorInterceptor });
|
|
1010
1055
|
}
|
|
@@ -3509,6 +3554,148 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImpor
|
|
|
3509
3554
|
type: Input
|
|
3510
3555
|
}] } });
|
|
3511
3556
|
|
|
3557
|
+
class NavbarComponent {
|
|
3558
|
+
localStorageService;
|
|
3559
|
+
appConfigService;
|
|
3560
|
+
imageWidth = '189';
|
|
3561
|
+
imageHeight = '50';
|
|
3562
|
+
logoAltText = 'logo';
|
|
3563
|
+
multiLanguageEnabled = false;
|
|
3564
|
+
userData;
|
|
3565
|
+
logoutLabel = '';
|
|
3566
|
+
isLogoClick = new EventEmitter();
|
|
3567
|
+
isAccessibilityClicked = new EventEmitter();
|
|
3568
|
+
isLogoutClicked = new EventEmitter();
|
|
3569
|
+
notificationList = [];
|
|
3570
|
+
ButtonColor = ButtonColor;
|
|
3571
|
+
// za urgent notifications
|
|
3572
|
+
currentLanguage = 'sl';
|
|
3573
|
+
currentNotification = '';
|
|
3574
|
+
currentIndex = 0;
|
|
3575
|
+
animationClass = 'fade-in';
|
|
3576
|
+
notificationChangeInterval = 5000;
|
|
3577
|
+
constructor(localStorageService, appConfigService) {
|
|
3578
|
+
this.localStorageService = localStorageService;
|
|
3579
|
+
this.appConfigService = appConfigService;
|
|
3580
|
+
}
|
|
3581
|
+
ngOnInit() {
|
|
3582
|
+
this.currentLanguage = this.localStorageService.getItem('lang') || 'sl'; // Simuliraj izbran jezik
|
|
3583
|
+
if (this.notificationList?.length > 0) {
|
|
3584
|
+
this.showUrgentNotifications();
|
|
3585
|
+
}
|
|
3586
|
+
}
|
|
3587
|
+
/**
|
|
3588
|
+
* prikaz nujnih obvestil
|
|
3589
|
+
*/
|
|
3590
|
+
showUrgentNotifications() {
|
|
3591
|
+
// prikaže obvestila
|
|
3592
|
+
this.displayNotification();
|
|
3593
|
+
// Menjaj obvestila vsakih N sekund, če jih je več
|
|
3594
|
+
if (this.notificationList.length > 1) {
|
|
3595
|
+
interval(this.notificationChangeInterval).subscribe(() => {
|
|
3596
|
+
this.changeNotification();
|
|
3597
|
+
});
|
|
3598
|
+
}
|
|
3599
|
+
}
|
|
3600
|
+
displayNotification() {
|
|
3601
|
+
const notification = this.notificationList[this.currentIndex];
|
|
3602
|
+
this.currentNotification = notification.notificationText;
|
|
3603
|
+
}
|
|
3604
|
+
changeNotification() {
|
|
3605
|
+
// Najprej uporabi fade-out
|
|
3606
|
+
this.animationClass = 'fade-out';
|
|
3607
|
+
// Počakaj, da se fade-out konča, nato posodobi obvestilo in uporabi fade-in
|
|
3608
|
+
setTimeout(() => {
|
|
3609
|
+
this.currentIndex = (this.currentIndex + 1) % this.notificationList.length;
|
|
3610
|
+
this.displayNotification();
|
|
3611
|
+
this.animationClass = 'fade-in';
|
|
3612
|
+
}, 1000); // 1 sekunda za fade-out
|
|
3613
|
+
}
|
|
3614
|
+
clickLogo(event) {
|
|
3615
|
+
event.preventDefault();
|
|
3616
|
+
this.isLogoClick.emit(event);
|
|
3617
|
+
}
|
|
3618
|
+
accessibilityClick(event) {
|
|
3619
|
+
event.preventDefault();
|
|
3620
|
+
this.isAccessibilityClicked.emit(event);
|
|
3621
|
+
}
|
|
3622
|
+
logoutClick(event) {
|
|
3623
|
+
event.preventDefault();
|
|
3624
|
+
this.isLogoutClicked.emit(event);
|
|
3625
|
+
}
|
|
3626
|
+
get userFullName() {
|
|
3627
|
+
return [this.userData?.ime, this.userData?.priimek].filter(Boolean).join(' ');
|
|
3628
|
+
}
|
|
3629
|
+
get userInspekcije() {
|
|
3630
|
+
return this.userData?.vloge ? Object.keys(this.userData.vloge).join(', ') : '';
|
|
3631
|
+
}
|
|
3632
|
+
/**
|
|
3633
|
+
* Mare; 2026-01-13; safe version za checkmarx
|
|
3634
|
+
*/
|
|
3635
|
+
sanitizeLang(lang) {
|
|
3636
|
+
switch (lang) {
|
|
3637
|
+
case 'si':
|
|
3638
|
+
case 'sl':
|
|
3639
|
+
return 'sl';
|
|
3640
|
+
case 'it':
|
|
3641
|
+
case 'hu':
|
|
3642
|
+
case 'en':
|
|
3643
|
+
return lang;
|
|
3644
|
+
default:
|
|
3645
|
+
return 'sl';
|
|
3646
|
+
}
|
|
3647
|
+
}
|
|
3648
|
+
/**
|
|
3649
|
+
* Mare, 2024-09-13; safe version, da ne faila Checkmarx XSS check
|
|
3650
|
+
* Mare; 2026-01-13; safe version za checkmarx
|
|
3651
|
+
*/
|
|
3652
|
+
changeLanguage(event, language) {
|
|
3653
|
+
event.preventDefault();
|
|
3654
|
+
const safeLang = this.sanitizeLang(language);
|
|
3655
|
+
this.localStorageService.setItem('lang', safeLang);
|
|
3656
|
+
const url = new URL(window.location.href);
|
|
3657
|
+
const routeSegments = getAppRouteSegments(url.pathname, this.appConfigService.getConfig());
|
|
3658
|
+
routeSegments[0] = safeLang;
|
|
3659
|
+
url.pathname = buildAppPath(routeSegments, this.appConfigService.getConfig());
|
|
3660
|
+
// redirect na novi URL
|
|
3661
|
+
window.location.assign(url.toString());
|
|
3662
|
+
}
|
|
3663
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: NavbarComponent, deps: [{ token: LocalStorageService }, { token: AppConfigService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3664
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.6", type: NavbarComponent, isStandalone: true, selector: "lib-navbar", inputs: { imageWidth: "imageWidth", imageHeight: "imageHeight", logoAltText: "logoAltText", multiLanguageEnabled: "multiLanguageEnabled", userData: "userData", logoutLabel: "logoutLabel", notificationList: "notificationList" }, outputs: { isLogoClick: "isLogoClick", isAccessibilityClicked: "isAccessibilityClicked", isLogoutClicked: "isLogoutClicked" }, ngImport: i0, template: "<nav class=\"menu\">\r\n <div\r\n class=\"container flex sm:align-items-start sm:justify-content-start md:align-items-center md:justify-content-between flex-column md:flex-row\">\r\n <a href=\"#\" (click)=\"clickLogo($event)\" class=\"navbar-logo\">\r\n <svg id=\"a\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" width=\"189.01\" height=\"50\" viewBox=\"0 0 189.01 50\">\r\n <title>Navigacija na doma\u010Do stran, portala eSamonaro\u010Danje republike Slovenije.</title>\r\n <defs>\r\n <style>.b {\r\n fill: #fff;\r\n }</style>\r\n </defs>\r\n <path class=\"b\"\r\n d=\"M38.39,27.03c-.67,10.72-7.89,19.84-18.48,22.9C9.7,47.04,2.1,38.1,1.4,27.03L0,4.8C6.49,1.65,12.53,0,19.91,0,26.59,0,33.2,1.46,39.79,4.8m-2.83,.32l-1.37,21.72c-.57,9.06-6.46,17.11-15.68,20.16-8.68-2.8-15.07-10.59-15.68-20.16L2.83,5.12c-.35,.16-.89,.38-1.27,.57l1.34,21.25c.64,9.99,7.47,18.64,17.01,21.44,9.35-2.8,16.38-11.26,17.02-21.44l1.34-21.25c-.41-.19-.83-.38-1.3-.57M15.84,25.48l-2.83-3.78-6.71,9c.47,2.32,1.62,3.43,4.45,3.43,1.94,0,2.26-1.21,4.55-1.21s2.54,1.21,4.61,1.21,2.2-1.21,4.58-1.21,2.61,1.21,4.58,1.21c2.8,0,4.1-1.34,4.45-3.46l-6.74-8.97-2.83,3.78-4.04-8.08-4.07,8.08Zm13.23,11.8c.64,0,1.21-.13,1.72-.35,.38-.61,.64-1.08,.96-1.72-.8,.41-1.66,.73-2.67,.73-2.23,0-2.35-1.21-4.58-1.21s-2.42,1.21-4.61,1.21-2.29-1.21-4.58-1.21c-2.16,0-2.42,1.21-4.58,1.21-1.21,0-1.97-.45-2.7-.8,.32,.64,.67,1.21,1.05,1.81,.54,.19,1.12,.29,1.69,.29,2.35,0,2.32-1.21,4.55-1.21s2.42,1.24,4.58,1.24,2.48-1.24,4.61-1.24,2.39,1.24,4.58,1.24m-4.58,.57c-2.1,0-2.16,1.24-4.58,1.24-2.26,0-2.67-1.24-4.61-1.24-2.04,0-2.07,1.17-4.68,1.21,2.42,2.83,5.57,5.09,9.29,6.39,3.56-1.24,6.71-3.37,9.26-6.39-2.55,0-2.61-1.21-4.68-1.21M14.37,4.64l-1.72-.16,1.02,1.37-1.05,1.4,1.75-.19,.7,1.59,.7-1.59,1.75,.19-1.05-1.4,1.02-1.4-1.72,.19-.7-1.59-.7,1.59Zm4.83,6.42l-1.72-.16,1.02,1.37-1.05,1.4,1.75-.19,.7,1.59,.7-1.59,1.75,.19-1.05-1.4,1.02-1.4-1.72,.19-.7-1.59-.7,1.59Zm4.8-6.42l-1.72-.16,1.02,1.37-1.05,1.4,1.75-.19,.7,1.59,.7-1.59,1.75,.19-1.05-1.4,1.02-1.4-1.72,.19-.7-1.59-.7,1.59Z\"/>\r\n <g>\r\n <path class=\"b\"\r\n d=\"M81.43,19.46h-1.61V4.27h4.86c.86,0,1.61,.07,2.25,.21,.64,.14,1.16,.38,1.58,.7,.42,.33,.72,.76,.92,1.29s.3,1.2,.3,1.97c0,1.29-.26,2.27-.78,2.94-.52,.67-1.34,1.11-2.44,1.3l3.54,6.77h-1.85l-3.39-6.6h-3.37v6.6Zm0-7.96h3.12c.58,0,1.09-.04,1.53-.11,.44-.07,.81-.21,1.1-.42s.52-.51,.68-.91c.16-.39,.23-.9,.23-1.52s-.07-1.1-.22-1.48c-.15-.38-.37-.67-.66-.88s-.66-.36-1.1-.44c-.45-.08-.97-.12-1.56-.12h-3.12v5.88Z\"/>\r\n <path class=\"b\" d=\"M93.05,19.46V4.27h9.1v1.36h-7.49v5.49h6.49v1.36h-6.49v5.62h7.49v1.36h-9.1Z\"/>\r\n <path class=\"b\"\r\n d=\"M106.99,19.46h-1.61V4.27h4.75c.86,0,1.61,.07,2.25,.22,.64,.15,1.16,.39,1.58,.73s.72,.79,.92,1.34c.2,.55,.3,1.24,.3,2.06,0,1.65-.41,2.83-1.22,3.53-.81,.7-2.09,1.05-3.83,1.05h-3.14v6.26Zm0-7.62h3.01c.58,0,1.09-.04,1.53-.12s.81-.23,1.1-.45c.3-.22,.52-.53,.68-.94,.16-.41,.23-.94,.23-1.61s-.08-1.16-.22-1.55-.37-.71-.66-.94c-.29-.23-.66-.38-1.1-.46-.45-.08-.96-.12-1.56-.12h-3.01v6.17Z\"/>\r\n <path class=\"b\"\r\n d=\"M127.88,14.17c0,.98-.12,1.81-.36,2.51-.24,.7-.59,1.27-1.06,1.72s-1.03,.77-1.7,.99c-.67,.21-1.42,.32-2.27,.32-1.64,0-2.91-.42-3.81-1.26-.9-.84-1.35-2.19-1.35-4.04V4.27h1.61V14.24c0,1.46,.3,2.5,.9,3.13,.6,.63,1.52,.94,2.75,.94s2.13-.32,2.75-.95,.92-1.68,.92-3.12V4.27h1.61V14.17Z\"/>\r\n <path class=\"b\"\r\n d=\"M141.65,15.31c0,1.43-.4,2.48-1.2,3.14s-2.1,1-3.89,1h-4.84V4.27h4.84c1.71,0,2.94,.33,3.69,.99,.75,.66,1.12,1.64,1.12,2.95,0,1.74-.62,2.87-1.87,3.39v.08c.73,.28,1.28,.7,1.62,1.26s.52,1.35,.52,2.37Zm-1.91-6.97c0-1.05-.26-1.76-.79-2.14s-1.27-.57-2.22-.57h-3.39v5.41h3.39c.93,0,1.67-.19,2.21-.58,.54-.39,.81-1.09,.81-2.11Zm.28,6.88c0-.98-.25-1.7-.76-2.15s-1.29-.68-2.33-.68h-3.58v5.71h3.58c1.05,0,1.83-.23,2.33-.69,.51-.46,.76-1.19,.76-2.18Z\"/>\r\n <path class=\"b\" d=\"M144.92,19.46V4.27h1.61v13.83h7.09v1.36h-8.7Z\"/>\r\n <path class=\"b\" d=\"M156.24,19.46V4.27h1.61v15.19h-1.61Z\"/>\r\n <path class=\"b\"\r\n d=\"M162.06,4.27h1.61v6.7h1.42l4.94-6.7h1.87l-5.49,7.34,5.62,7.85h-1.95l-5.09-7.11h-1.32v7.11h-1.61V4.27Z\"/>\r\n <path class=\"b\"\r\n d=\"M181.91,15.74h-6.45l-1.17,3.71h-1.65l4.98-15.19h2.16l5.01,15.19h-1.7l-1.19-3.71Zm-6.02-1.36h5.6l-2.76-8.68h-.08l-2.76,8.68Z\"/>\r\n </g>\r\n <g>\r\n <path class=\"b\"\r\n d=\"M88.07,40.9c0,.76-.09,1.42-.26,1.96-.18,.54-.47,.99-.87,1.32-.4,.34-.92,.59-1.56,.74-.64,.15-1.41,.23-2.31,.23-.81,0-1.54-.06-2.21-.17-.67-.11-1.32-.29-1.95-.53l.34-1.38c.59,.21,1.23,.38,1.92,.5,.69,.12,1.38,.18,2.09,.18,.55,0,1.03-.04,1.42-.12,.4-.08,.72-.22,.99-.43,.26-.21,.46-.48,.58-.84s.19-.8,.19-1.34c0-.44-.05-.82-.14-1.13s-.26-.59-.51-.83c-.25-.23-.58-.44-1-.63s-.94-.37-1.58-.55c-.71-.2-1.33-.41-1.86-.65-.53-.23-.97-.52-1.32-.86s-.6-.74-.77-1.2c-.17-.46-.25-1.01-.25-1.64,0-1.36,.38-2.38,1.15-3.06,.76-.69,1.95-1.03,3.56-1.03,.67,0,1.33,.06,1.98,.18,.66,.12,1.28,.29,1.86,.52l-.28,1.36c-.58-.2-1.15-.35-1.7-.47-.55-.11-1.15-.17-1.8-.17-1.13,0-1.93,.2-2.41,.59-.47,.4-.71,1.05-.71,1.97,0,.47,.06,.86,.18,1.17,.12,.31,.3,.57,.54,.79,.24,.21,.54,.4,.91,.55,.37,.16,.8,.3,1.29,.45,.89,.28,1.63,.56,2.21,.82,.58,.26,1.04,.56,1.37,.89s.57,.72,.7,1.17c.13,.45,.2,.99,.2,1.62Z\"/>\r\n <path class=\"b\" d=\"M91.06,44.91v-15.19h1.61v13.83h7.08v1.36h-8.7Z\"/>\r\n <path class=\"b\"\r\n d=\"M106.67,45.16c-.99,0-1.85-.13-2.59-.39-.74-.26-1.34-.7-1.83-1.3-.48-.61-.84-1.41-1.08-2.41-.24-1-.36-2.23-.36-3.7s.12-2.71,.36-3.72c.24-1.01,.6-1.82,1.08-2.44,.48-.62,1.09-1.06,1.83-1.33,.73-.27,1.6-.4,2.59-.4s1.83,.13,2.56,.4c.73,.27,1.33,.71,1.81,1.32,.48,.61,.84,1.41,1.08,2.42s.36,2.23,.36,3.69-.12,2.73-.35,3.73-.59,1.81-1.06,2.43-1.08,1.05-1.81,1.31-1.6,.39-2.59,.39Zm-.02-1.42c.79,0,1.45-.12,1.98-.35,.53-.23,.95-.61,1.27-1.12,.32-.52,.54-1.19,.68-2.01,.13-.82,.2-1.82,.2-2.99s-.07-2.19-.2-3c-.13-.81-.36-1.47-.68-1.97s-.74-.86-1.27-1.08-1.19-.33-1.98-.33-1.45,.11-1.98,.33-.96,.58-1.27,1.08c-.32,.5-.54,1.16-.68,1.97-.13,.81-.2,1.81-.2,3s.07,2.17,.2,2.99c.13,.82,.36,1.49,.68,2.01,.32,.52,.74,.89,1.27,1.12,.53,.23,1.19,.35,1.98,.35Z\"/>\r\n <path class=\"b\" d=\"M113.97,29.72h1.66l4.07,13.62h.08l4.03-13.62h1.57l-4.56,15.19h-2.27l-4.58-15.19Z\"/>\r\n <path class=\"b\" d=\"M127.69,44.91v-15.19h9.1v1.36h-7.49v5.49h6.49v1.36h-6.49v5.62h7.49v1.36h-9.1Z\"/>\r\n <path class=\"b\"\r\n d=\"M141.59,31.44h-.08v13.47h-1.49v-15.19h2.38l6.81,13.45h.08v-13.45h1.49v15.19h-2.36l-6.83-13.47Z\"/>\r\n <path class=\"b\" d=\"M154.97,44.91v-15.19h1.61v15.19h-1.61Z\"/>\r\n <path class=\"b\"\r\n d=\"M162.84,29.72v13.98c0,.72-.06,1.36-.18,1.91-.12,.55-.33,1.03-.62,1.44s-.68,.76-1.16,1.06-1.08,.55-1.8,.76l-.42-1.36c.48-.14,.88-.32,1.21-.52,.33-.21,.59-.46,.8-.75s.35-.64,.43-1.04c.08-.4,.13-.86,.13-1.38v-14.11h1.61Z\"/>\r\n <path class=\"b\"\r\n d=\"M174.08,41.2h-6.45l-1.17,3.71h-1.65l4.98-15.19h2.16l5.01,15.19h-1.7l-1.19-3.71Zm-6.02-1.36h5.6l-2.76-8.68h-.08l-2.76,8.68Z\"/>\r\n </g>\r\n </svg>\r\n </a>\r\n <div class=\"nav-actions\">\r\n <div class=\"nav-list\">\r\n <ul class=\"flex\">\r\n <!-- <li class=\"mx-2\" *ngIf=\"multiLanguageEnabled\" [ngClass]=\"this.localStorageService.getItem('lang') === 'sl' ?'font-bold' : ''\">\r\n <a href=\"#\" aria-label=\"Slovenian language\" (click)=\"changeLanguage($event, 'sl')\">SI</a>\r\n </li>\r\n <li class=\"mx-2\" *ngIf=\"multiLanguageEnabled\" [ngClass]=\"this.localStorageService.getItem('lang') === 'it' ?'font-bold' : ''\">\r\n <a href=\"#\" aria-label=\"Italian language\" (click)=\"changeLanguage($event, 'it')\">IT</a>\r\n </li>\r\n <li class=\"mx-2\" *ngIf=\"multiLanguageEnabled\" [ngClass]=\"this.localStorageService.getItem('lang') === 'hu' ?'font-bold' : ''\">\r\n <a href=\"#\" aria-label=\"Hungarian language\" (click)=\"changeLanguage($event, 'hu')\">HU</a>\r\n </li>\r\n <li class=\"mx-2\" *ngIf=\"multiLanguageEnabled\" [ngClass]=\"this.localStorageService.getItem('lang') === 'en' ?'font-bold' : ''\">\r\n <a href=\"#\" aria-label=\"English language\" (click)=\"changeLanguage($event, 'en')\">EN</a>\r\n </li> -->\r\n <li class=\"mx-2\">\r\n <a href=\"#\" (click)=\"accessibilityClick($event)\">\r\n {{ 'components.navbar.accessibility' | translate }}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n <div *ngIf=\"userData\" class=\"user-menu flex align-items-center\">\r\n <div class=\"user-text flex flex-column align-items-end\">\r\n <strong>{{ userFullName }}</strong>\r\n <p *ngIf=\"userInspekcije\" class=\"user-subtitle\">{{ userInspekcije }}</p>\r\n </div>\r\n\r\n <button\r\n type=\"button\"\r\n class=\"avatar-button\"\r\n [attr.aria-label]=\"userFullName\"\r\n (click)=\"userMenu.toggle($event)\">\r\n <p-avatar icon=\"pi pi-user\" shape=\"circle\" size=\"large\"></p-avatar>\r\n </button>\r\n\r\n <p-popover #userMenu [style]=\"{ padding: '0 10px' }\">\r\n <p *ngIf=\"userData.krovnaInspekcija\" class=\"text-xs\">krovna organizacija:</p>\r\n <p *ngIf=\"userData.krovnaInspekcija\">{{ userData.krovnaInspekcija }}</p>\r\n <ng-template pTemplate=\"content\">\r\n <lib-button\r\n [label]=\"logoutLabel || ('components.navbar.logout' | translate)\"\r\n [hasIcon]=\"true\"\r\n [icon]=\"'pi-sign-out'\"\r\n [color]=\"ButtonColor.link\"\r\n (clickEvent)=\"logoutClick($event)\">\r\n </lib-button>\r\n </ng-template>\r\n </p-popover>\r\n </div>\r\n </div>\r\n </div>\r\n</nav>\r\n\r\n<!-- prikaz nujnih obvestil: \u010De jih je ve\u010D se menjajo na N sekund -->\r\n<div class=\"urgent-notifications\" *ngIf=\"notificationList.length > 0\">\r\n <div class=\"banner\" [ngClass]=\"animationClass\">\r\n <p>{{ currentNotification }}</p>\r\n </div>\r\n</div>\r\n", styles: [".menu{background:#1b495a}.menu .container{padding:.5rem 1rem}.menu .container .nav-list a{font-size:1.2rem;text-decoration:none;color:#fff}.menu .container .nav-list a:hover{text-decoration:underline}.menu .container .nav-list a:active{color:#000;background:#ffa142}.menu .container .nav-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:flex-end}.menu .container .user-menu{gap:.75rem;color:#fff}.menu .container .user-text{line-height:1.2;text-align:right}.menu .container .user-subtitle{color:#fff;font-size:.85rem;margin:0}.menu .container .avatar-button{border:0;border-radius:50%;background:transparent;cursor:pointer;padding:0;line-height:0}.menu .container .avatar-button:focus-visible{outline:2px solid #ffa142;outline-offset:.2rem}::ng-deep .p-popover{top:55px}::ng-deep .p-avatar{background:#ffa142}::ng-deep .p-avatar:hover,::ng-deep .p-avatar:active,::ng-deep .p-avatar:focus{background:#f57b00}.urgent-notifications{background-color:#d9534f;position:relative;min-height:40px;overflow:hidden}.urgent-notifications .banner{max-width:1190px;margin:0 auto;position:relative;color:#fff;padding:.5rem 1rem;font-weight:700;font-size:18px;white-space:nowrap;transition:opacity 1s ease-in-out}.urgent-notifications .banner p{text-wrap:wrap}.urgent-notifications .fade-in{opacity:1}.urgent-notifications .fade-out{opacity:0}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }, { kind: "component", type: Avatar, selector: "p-avatar", inputs: ["label", "icon", "image", "size", "shape", "style", "styleClass", "ariaLabel", "ariaLabelledBy"], outputs: ["onImageError"] }, { kind: "ngmodule", type: PopoverModule }, { kind: "component", type: i3.Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i1$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["hasIcon", "label", "color", "icon", "iconPos", "disabled", "isLoading", "styleClass", "size", "accessibilityText", "buttonType", "isAccessible", "isSelected", "ariaControlsId", "isExpanded", "link", "isTextareaClear"], outputs: ["clickEvent"] }] });
|
|
3665
|
+
}
|
|
3666
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.6", ngImport: i0, type: NavbarComponent, decorators: [{
|
|
3667
|
+
type: Component,
|
|
3668
|
+
args: [{ selector: 'lib-navbar', imports: [
|
|
3669
|
+
NgIf,
|
|
3670
|
+
NgClass,
|
|
3671
|
+
TranslateModule,
|
|
3672
|
+
Avatar,
|
|
3673
|
+
PopoverModule,
|
|
3674
|
+
PrimeTemplate,
|
|
3675
|
+
ButtonComponent,
|
|
3676
|
+
], template: "<nav class=\"menu\">\r\n <div\r\n class=\"container flex sm:align-items-start sm:justify-content-start md:align-items-center md:justify-content-between flex-column md:flex-row\">\r\n <a href=\"#\" (click)=\"clickLogo($event)\" class=\"navbar-logo\">\r\n <svg id=\"a\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" width=\"189.01\" height=\"50\" viewBox=\"0 0 189.01 50\">\r\n <title>Navigacija na doma\u010Do stran, portala eSamonaro\u010Danje republike Slovenije.</title>\r\n <defs>\r\n <style>.b {\r\n fill: #fff;\r\n }</style>\r\n </defs>\r\n <path class=\"b\"\r\n d=\"M38.39,27.03c-.67,10.72-7.89,19.84-18.48,22.9C9.7,47.04,2.1,38.1,1.4,27.03L0,4.8C6.49,1.65,12.53,0,19.91,0,26.59,0,33.2,1.46,39.79,4.8m-2.83,.32l-1.37,21.72c-.57,9.06-6.46,17.11-15.68,20.16-8.68-2.8-15.07-10.59-15.68-20.16L2.83,5.12c-.35,.16-.89,.38-1.27,.57l1.34,21.25c.64,9.99,7.47,18.64,17.01,21.44,9.35-2.8,16.38-11.26,17.02-21.44l1.34-21.25c-.41-.19-.83-.38-1.3-.57M15.84,25.48l-2.83-3.78-6.71,9c.47,2.32,1.62,3.43,4.45,3.43,1.94,0,2.26-1.21,4.55-1.21s2.54,1.21,4.61,1.21,2.2-1.21,4.58-1.21,2.61,1.21,4.58,1.21c2.8,0,4.1-1.34,4.45-3.46l-6.74-8.97-2.83,3.78-4.04-8.08-4.07,8.08Zm13.23,11.8c.64,0,1.21-.13,1.72-.35,.38-.61,.64-1.08,.96-1.72-.8,.41-1.66,.73-2.67,.73-2.23,0-2.35-1.21-4.58-1.21s-2.42,1.21-4.61,1.21-2.29-1.21-4.58-1.21c-2.16,0-2.42,1.21-4.58,1.21-1.21,0-1.97-.45-2.7-.8,.32,.64,.67,1.21,1.05,1.81,.54,.19,1.12,.29,1.69,.29,2.35,0,2.32-1.21,4.55-1.21s2.42,1.24,4.58,1.24,2.48-1.24,4.61-1.24,2.39,1.24,4.58,1.24m-4.58,.57c-2.1,0-2.16,1.24-4.58,1.24-2.26,0-2.67-1.24-4.61-1.24-2.04,0-2.07,1.17-4.68,1.21,2.42,2.83,5.57,5.09,9.29,6.39,3.56-1.24,6.71-3.37,9.26-6.39-2.55,0-2.61-1.21-4.68-1.21M14.37,4.64l-1.72-.16,1.02,1.37-1.05,1.4,1.75-.19,.7,1.59,.7-1.59,1.75,.19-1.05-1.4,1.02-1.4-1.72,.19-.7-1.59-.7,1.59Zm4.83,6.42l-1.72-.16,1.02,1.37-1.05,1.4,1.75-.19,.7,1.59,.7-1.59,1.75,.19-1.05-1.4,1.02-1.4-1.72,.19-.7-1.59-.7,1.59Zm4.8-6.42l-1.72-.16,1.02,1.37-1.05,1.4,1.75-.19,.7,1.59,.7-1.59,1.75,.19-1.05-1.4,1.02-1.4-1.72,.19-.7-1.59-.7,1.59Z\"/>\r\n <g>\r\n <path class=\"b\"\r\n d=\"M81.43,19.46h-1.61V4.27h4.86c.86,0,1.61,.07,2.25,.21,.64,.14,1.16,.38,1.58,.7,.42,.33,.72,.76,.92,1.29s.3,1.2,.3,1.97c0,1.29-.26,2.27-.78,2.94-.52,.67-1.34,1.11-2.44,1.3l3.54,6.77h-1.85l-3.39-6.6h-3.37v6.6Zm0-7.96h3.12c.58,0,1.09-.04,1.53-.11,.44-.07,.81-.21,1.1-.42s.52-.51,.68-.91c.16-.39,.23-.9,.23-1.52s-.07-1.1-.22-1.48c-.15-.38-.37-.67-.66-.88s-.66-.36-1.1-.44c-.45-.08-.97-.12-1.56-.12h-3.12v5.88Z\"/>\r\n <path class=\"b\" d=\"M93.05,19.46V4.27h9.1v1.36h-7.49v5.49h6.49v1.36h-6.49v5.62h7.49v1.36h-9.1Z\"/>\r\n <path class=\"b\"\r\n d=\"M106.99,19.46h-1.61V4.27h4.75c.86,0,1.61,.07,2.25,.22,.64,.15,1.16,.39,1.58,.73s.72,.79,.92,1.34c.2,.55,.3,1.24,.3,2.06,0,1.65-.41,2.83-1.22,3.53-.81,.7-2.09,1.05-3.83,1.05h-3.14v6.26Zm0-7.62h3.01c.58,0,1.09-.04,1.53-.12s.81-.23,1.1-.45c.3-.22,.52-.53,.68-.94,.16-.41,.23-.94,.23-1.61s-.08-1.16-.22-1.55-.37-.71-.66-.94c-.29-.23-.66-.38-1.1-.46-.45-.08-.96-.12-1.56-.12h-3.01v6.17Z\"/>\r\n <path class=\"b\"\r\n d=\"M127.88,14.17c0,.98-.12,1.81-.36,2.51-.24,.7-.59,1.27-1.06,1.72s-1.03,.77-1.7,.99c-.67,.21-1.42,.32-2.27,.32-1.64,0-2.91-.42-3.81-1.26-.9-.84-1.35-2.19-1.35-4.04V4.27h1.61V14.24c0,1.46,.3,2.5,.9,3.13,.6,.63,1.52,.94,2.75,.94s2.13-.32,2.75-.95,.92-1.68,.92-3.12V4.27h1.61V14.17Z\"/>\r\n <path class=\"b\"\r\n d=\"M141.65,15.31c0,1.43-.4,2.48-1.2,3.14s-2.1,1-3.89,1h-4.84V4.27h4.84c1.71,0,2.94,.33,3.69,.99,.75,.66,1.12,1.64,1.12,2.95,0,1.74-.62,2.87-1.87,3.39v.08c.73,.28,1.28,.7,1.62,1.26s.52,1.35,.52,2.37Zm-1.91-6.97c0-1.05-.26-1.76-.79-2.14s-1.27-.57-2.22-.57h-3.39v5.41h3.39c.93,0,1.67-.19,2.21-.58,.54-.39,.81-1.09,.81-2.11Zm.28,6.88c0-.98-.25-1.7-.76-2.15s-1.29-.68-2.33-.68h-3.58v5.71h3.58c1.05,0,1.83-.23,2.33-.69,.51-.46,.76-1.19,.76-2.18Z\"/>\r\n <path class=\"b\" d=\"M144.92,19.46V4.27h1.61v13.83h7.09v1.36h-8.7Z\"/>\r\n <path class=\"b\" d=\"M156.24,19.46V4.27h1.61v15.19h-1.61Z\"/>\r\n <path class=\"b\"\r\n d=\"M162.06,4.27h1.61v6.7h1.42l4.94-6.7h1.87l-5.49,7.34,5.62,7.85h-1.95l-5.09-7.11h-1.32v7.11h-1.61V4.27Z\"/>\r\n <path class=\"b\"\r\n d=\"M181.91,15.74h-6.45l-1.17,3.71h-1.65l4.98-15.19h2.16l5.01,15.19h-1.7l-1.19-3.71Zm-6.02-1.36h5.6l-2.76-8.68h-.08l-2.76,8.68Z\"/>\r\n </g>\r\n <g>\r\n <path class=\"b\"\r\n d=\"M88.07,40.9c0,.76-.09,1.42-.26,1.96-.18,.54-.47,.99-.87,1.32-.4,.34-.92,.59-1.56,.74-.64,.15-1.41,.23-2.31,.23-.81,0-1.54-.06-2.21-.17-.67-.11-1.32-.29-1.95-.53l.34-1.38c.59,.21,1.23,.38,1.92,.5,.69,.12,1.38,.18,2.09,.18,.55,0,1.03-.04,1.42-.12,.4-.08,.72-.22,.99-.43,.26-.21,.46-.48,.58-.84s.19-.8,.19-1.34c0-.44-.05-.82-.14-1.13s-.26-.59-.51-.83c-.25-.23-.58-.44-1-.63s-.94-.37-1.58-.55c-.71-.2-1.33-.41-1.86-.65-.53-.23-.97-.52-1.32-.86s-.6-.74-.77-1.2c-.17-.46-.25-1.01-.25-1.64,0-1.36,.38-2.38,1.15-3.06,.76-.69,1.95-1.03,3.56-1.03,.67,0,1.33,.06,1.98,.18,.66,.12,1.28,.29,1.86,.52l-.28,1.36c-.58-.2-1.15-.35-1.7-.47-.55-.11-1.15-.17-1.8-.17-1.13,0-1.93,.2-2.41,.59-.47,.4-.71,1.05-.71,1.97,0,.47,.06,.86,.18,1.17,.12,.31,.3,.57,.54,.79,.24,.21,.54,.4,.91,.55,.37,.16,.8,.3,1.29,.45,.89,.28,1.63,.56,2.21,.82,.58,.26,1.04,.56,1.37,.89s.57,.72,.7,1.17c.13,.45,.2,.99,.2,1.62Z\"/>\r\n <path class=\"b\" d=\"M91.06,44.91v-15.19h1.61v13.83h7.08v1.36h-8.7Z\"/>\r\n <path class=\"b\"\r\n d=\"M106.67,45.16c-.99,0-1.85-.13-2.59-.39-.74-.26-1.34-.7-1.83-1.3-.48-.61-.84-1.41-1.08-2.41-.24-1-.36-2.23-.36-3.7s.12-2.71,.36-3.72c.24-1.01,.6-1.82,1.08-2.44,.48-.62,1.09-1.06,1.83-1.33,.73-.27,1.6-.4,2.59-.4s1.83,.13,2.56,.4c.73,.27,1.33,.71,1.81,1.32,.48,.61,.84,1.41,1.08,2.42s.36,2.23,.36,3.69-.12,2.73-.35,3.73-.59,1.81-1.06,2.43-1.08,1.05-1.81,1.31-1.6,.39-2.59,.39Zm-.02-1.42c.79,0,1.45-.12,1.98-.35,.53-.23,.95-.61,1.27-1.12,.32-.52,.54-1.19,.68-2.01,.13-.82,.2-1.82,.2-2.99s-.07-2.19-.2-3c-.13-.81-.36-1.47-.68-1.97s-.74-.86-1.27-1.08-1.19-.33-1.98-.33-1.45,.11-1.98,.33-.96,.58-1.27,1.08c-.32,.5-.54,1.16-.68,1.97-.13,.81-.2,1.81-.2,3s.07,2.17,.2,2.99c.13,.82,.36,1.49,.68,2.01,.32,.52,.74,.89,1.27,1.12,.53,.23,1.19,.35,1.98,.35Z\"/>\r\n <path class=\"b\" d=\"M113.97,29.72h1.66l4.07,13.62h.08l4.03-13.62h1.57l-4.56,15.19h-2.27l-4.58-15.19Z\"/>\r\n <path class=\"b\" d=\"M127.69,44.91v-15.19h9.1v1.36h-7.49v5.49h6.49v1.36h-6.49v5.62h7.49v1.36h-9.1Z\"/>\r\n <path class=\"b\"\r\n d=\"M141.59,31.44h-.08v13.47h-1.49v-15.19h2.38l6.81,13.45h.08v-13.45h1.49v15.19h-2.36l-6.83-13.47Z\"/>\r\n <path class=\"b\" d=\"M154.97,44.91v-15.19h1.61v15.19h-1.61Z\"/>\r\n <path class=\"b\"\r\n d=\"M162.84,29.72v13.98c0,.72-.06,1.36-.18,1.91-.12,.55-.33,1.03-.62,1.44s-.68,.76-1.16,1.06-1.08,.55-1.8,.76l-.42-1.36c.48-.14,.88-.32,1.21-.52,.33-.21,.59-.46,.8-.75s.35-.64,.43-1.04c.08-.4,.13-.86,.13-1.38v-14.11h1.61Z\"/>\r\n <path class=\"b\"\r\n d=\"M174.08,41.2h-6.45l-1.17,3.71h-1.65l4.98-15.19h2.16l5.01,15.19h-1.7l-1.19-3.71Zm-6.02-1.36h5.6l-2.76-8.68h-.08l-2.76,8.68Z\"/>\r\n </g>\r\n </svg>\r\n </a>\r\n <div class=\"nav-actions\">\r\n <div class=\"nav-list\">\r\n <ul class=\"flex\">\r\n <!-- <li class=\"mx-2\" *ngIf=\"multiLanguageEnabled\" [ngClass]=\"this.localStorageService.getItem('lang') === 'sl' ?'font-bold' : ''\">\r\n <a href=\"#\" aria-label=\"Slovenian language\" (click)=\"changeLanguage($event, 'sl')\">SI</a>\r\n </li>\r\n <li class=\"mx-2\" *ngIf=\"multiLanguageEnabled\" [ngClass]=\"this.localStorageService.getItem('lang') === 'it' ?'font-bold' : ''\">\r\n <a href=\"#\" aria-label=\"Italian language\" (click)=\"changeLanguage($event, 'it')\">IT</a>\r\n </li>\r\n <li class=\"mx-2\" *ngIf=\"multiLanguageEnabled\" [ngClass]=\"this.localStorageService.getItem('lang') === 'hu' ?'font-bold' : ''\">\r\n <a href=\"#\" aria-label=\"Hungarian language\" (click)=\"changeLanguage($event, 'hu')\">HU</a>\r\n </li>\r\n <li class=\"mx-2\" *ngIf=\"multiLanguageEnabled\" [ngClass]=\"this.localStorageService.getItem('lang') === 'en' ?'font-bold' : ''\">\r\n <a href=\"#\" aria-label=\"English language\" (click)=\"changeLanguage($event, 'en')\">EN</a>\r\n </li> -->\r\n <li class=\"mx-2\">\r\n <a href=\"#\" (click)=\"accessibilityClick($event)\">\r\n {{ 'components.navbar.accessibility' | translate }}\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n <div *ngIf=\"userData\" class=\"user-menu flex align-items-center\">\r\n <div class=\"user-text flex flex-column align-items-end\">\r\n <strong>{{ userFullName }}</strong>\r\n <p *ngIf=\"userInspekcije\" class=\"user-subtitle\">{{ userInspekcije }}</p>\r\n </div>\r\n\r\n <button\r\n type=\"button\"\r\n class=\"avatar-button\"\r\n [attr.aria-label]=\"userFullName\"\r\n (click)=\"userMenu.toggle($event)\">\r\n <p-avatar icon=\"pi pi-user\" shape=\"circle\" size=\"large\"></p-avatar>\r\n </button>\r\n\r\n <p-popover #userMenu [style]=\"{ padding: '0 10px' }\">\r\n <p *ngIf=\"userData.krovnaInspekcija\" class=\"text-xs\">krovna organizacija:</p>\r\n <p *ngIf=\"userData.krovnaInspekcija\">{{ userData.krovnaInspekcija }}</p>\r\n <ng-template pTemplate=\"content\">\r\n <lib-button\r\n [label]=\"logoutLabel || ('components.navbar.logout' | translate)\"\r\n [hasIcon]=\"true\"\r\n [icon]=\"'pi-sign-out'\"\r\n [color]=\"ButtonColor.link\"\r\n (clickEvent)=\"logoutClick($event)\">\r\n </lib-button>\r\n </ng-template>\r\n </p-popover>\r\n </div>\r\n </div>\r\n </div>\r\n</nav>\r\n\r\n<!-- prikaz nujnih obvestil: \u010De jih je ve\u010D se menjajo na N sekund -->\r\n<div class=\"urgent-notifications\" *ngIf=\"notificationList.length > 0\">\r\n <div class=\"banner\" [ngClass]=\"animationClass\">\r\n <p>{{ currentNotification }}</p>\r\n </div>\r\n</div>\r\n", styles: [".menu{background:#1b495a}.menu .container{padding:.5rem 1rem}.menu .container .nav-list a{font-size:1.2rem;text-decoration:none;color:#fff}.menu .container .nav-list a:hover{text-decoration:underline}.menu .container .nav-list a:active{color:#000;background:#ffa142}.menu .container .nav-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:flex-end}.menu .container .user-menu{gap:.75rem;color:#fff}.menu .container .user-text{line-height:1.2;text-align:right}.menu .container .user-subtitle{color:#fff;font-size:.85rem;margin:0}.menu .container .avatar-button{border:0;border-radius:50%;background:transparent;cursor:pointer;padding:0;line-height:0}.menu .container .avatar-button:focus-visible{outline:2px solid #ffa142;outline-offset:.2rem}::ng-deep .p-popover{top:55px}::ng-deep .p-avatar{background:#ffa142}::ng-deep .p-avatar:hover,::ng-deep .p-avatar:active,::ng-deep .p-avatar:focus{background:#f57b00}.urgent-notifications{background-color:#d9534f;position:relative;min-height:40px;overflow:hidden}.urgent-notifications .banner{max-width:1190px;margin:0 auto;position:relative;color:#fff;padding:.5rem 1rem;font-weight:700;font-size:18px;white-space:nowrap;transition:opacity 1s ease-in-out}.urgent-notifications .banner p{text-wrap:wrap}.urgent-notifications .fade-in{opacity:1}.urgent-notifications .fade-out{opacity:0}\n"] }]
|
|
3677
|
+
}], ctorParameters: () => [{ type: LocalStorageService }, { type: AppConfigService }], propDecorators: { imageWidth: [{
|
|
3678
|
+
type: Input
|
|
3679
|
+
}], imageHeight: [{
|
|
3680
|
+
type: Input
|
|
3681
|
+
}], logoAltText: [{
|
|
3682
|
+
type: Input
|
|
3683
|
+
}], multiLanguageEnabled: [{
|
|
3684
|
+
type: Input
|
|
3685
|
+
}], userData: [{
|
|
3686
|
+
type: Input
|
|
3687
|
+
}], logoutLabel: [{
|
|
3688
|
+
type: Input
|
|
3689
|
+
}], isLogoClick: [{
|
|
3690
|
+
type: Output
|
|
3691
|
+
}], isAccessibilityClicked: [{
|
|
3692
|
+
type: Output
|
|
3693
|
+
}], isLogoutClicked: [{
|
|
3694
|
+
type: Output
|
|
3695
|
+
}], notificationList: [{
|
|
3696
|
+
type: Input
|
|
3697
|
+
}] } });
|
|
3698
|
+
|
|
3512
3699
|
class NoDataFoundComponent {
|
|
3513
3700
|
translateService;
|
|
3514
3701
|
message = '';
|
|
@@ -4521,5 +4708,5 @@ function emailListValidator() {
|
|
|
4521
4708
|
* Generated bundle index. Do not edit.
|
|
4522
4709
|
*/
|
|
4523
4710
|
|
|
4524
|
-
export { AccordionComponent, AppConfigService, AutocompleteComponent, BreadcrumbsComponent, ButtonColor, ButtonComponent, ButtonIconPosition, ButtonLinkComponent, ButtonSize, CacheService, CameraUploadComponent, CaptionColor, CardComponent, CheckboxComponent, ConfirmModalComponent, ConfirmModalService, CustomTableComponent, DateInputComponent, DateService, DialogColor, DividerComponent, DropdownComponent, DynamicRouteService, ErrorComponent, ErrorInterceptor, ExpandedTable, ExpandedTableComponent, ExportService, FileUploadComponent, FilterHeaderComponent, FilterHeaderService, FooterComponent, GenericTableComponent, GlobalErrorHandler, IconButtonComponent, InputComponent, InputMaskComponent, InputType, IsNotBlank, IsNotDecimal, LoaderComponent, LocalStorageService, MainMenuComponent, ModalComponent, NoDataFoundComponent, NoInternetService, NumberInputComponent, NumberInputMode, PicklistComponent, PositionKey, ProgressBarComponent, SelectionMode, SharedAuthService, SharedMessageService, TableColumnSelectComponent, TableColumnsService, TagColor, TagComponent, TextareaComponent, TinymceEditorComponent, ToastSeverity, ToggleSwitchComponent, TooltipComponent, TooltipHoverEventEnum, TooltipPosition, TranslateSanitizerService, TranslationService, TreeSelectComponent, atLeastOneFieldPresentValidator, buildAppPath, cleanMobilePhoneNumber, coordinateValidator, dateAndTimeMismatchValidator, dateMismatchValidator, emailListValidator, findUnavailableDates, formatDate, formatDateTime, formatDateToLocalISOString, getAppRouteSegments, getCurrentAppRouteSegments, getTomorrowDate, isEmpty, isFormInvalid, isMultipleOfFiveValidator, isOnePhoneNumberValidator, localFormatDate, mobilePhoneAreaCodeValidator, transformDateTime };
|
|
4711
|
+
export { AccordionComponent, AppConfigService, AutocompleteComponent, BreadcrumbsComponent, ButtonColor, ButtonComponent, ButtonIconPosition, ButtonLinkComponent, ButtonSize, CacheService, CameraUploadComponent, CaptionColor, CardComponent, CheckboxComponent, ConfirmModalComponent, ConfirmModalService, CustomTableComponent, DateInputComponent, DateService, DialogColor, DividerComponent, DropdownComponent, DynamicRouteService, ErrorComponent, ErrorInterceptor, ExpandedTable, ExpandedTableComponent, ExportService, FileUploadComponent, FilterHeaderComponent, FilterHeaderService, FooterComponent, GenericTableComponent, GlobalErrorHandler, IconButtonComponent, InputComponent, InputMaskComponent, InputType, IsNotBlank, IsNotDecimal, LoaderComponent, LocalStorageService, MainMenuComponent, ModalComponent, NavbarComponent, NoDataFoundComponent, NoInternetService, NumberInputComponent, NumberInputMode, PicklistComponent, PositionKey, ProgressBarComponent, SelectionMode, SharedAuthService, SharedMessageService, TableColumnSelectComponent, TableColumnsService, TagColor, TagComponent, TextareaComponent, TinymceEditorComponent, ToastSeverity, ToggleSwitchComponent, TooltipComponent, TooltipHoverEventEnum, TooltipPosition, TranslateSanitizerService, TranslationService, TreeSelectComponent, atLeastOneFieldPresentValidator, buildAppPath, cleanMobilePhoneNumber, coordinateValidator, dateAndTimeMismatchValidator, dateMismatchValidator, emailListValidator, findUnavailableDates, formatDate, formatDateTime, formatDateToLocalISOString, getAppRouteSegments, getCurrentAppRouteSegments, getTomorrowDate, isEmpty, isFormInvalid, isMultipleOfFiveValidator, isOnePhoneNumberValidator, localFormatDate, mobilePhoneAreaCodeValidator, transformDateTime };
|
|
4525
4712
|
//# sourceMappingURL=n-isi-platform-design-system.mjs.map
|