herum-shared 0.1.25
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 +63 -0
- package/animations/index.d.ts +5 -0
- package/assets/feed/exercise/exerciseAchivment.svg +11 -0
- package/assets/feed/icons/active/audio.svg +5 -0
- package/assets/feed/icons/active/collection.svg +15 -0
- package/assets/feed/icons/active/exercise.svg +13 -0
- package/assets/feed/icons/active/generic-file.svg +8 -0
- package/assets/feed/icons/active/image.svg +11 -0
- package/assets/feed/icons/active/link.svg +6 -0
- package/assets/feed/icons/active/pdf.svg +14 -0
- package/assets/feed/icons/active/presentation.svg +11 -0
- package/assets/feed/icons/active/quiz.svg +17 -0
- package/assets/feed/icons/active/story.svg +7 -0
- package/assets/feed/icons/active/video.svg +11 -0
- package/assets/feed/icons/comment.svg +12 -0
- package/assets/feed/icons/error/audio.svg +5 -0
- package/assets/feed/icons/error/collection.svg +15 -0
- package/assets/feed/icons/error/exercise.svg +13 -0
- package/assets/feed/icons/error/generic-file.svg +8 -0
- package/assets/feed/icons/error/image.svg +11 -0
- package/assets/feed/icons/error/pdf.svg +14 -0
- package/assets/feed/icons/error/presentation.svg +11 -0
- package/assets/feed/icons/error/quiz.svg +17 -0
- package/assets/feed/icons/error/story.svg +7 -0
- package/assets/feed/icons/error/video.svg +11 -0
- package/assets/feed/icons/eye.svg +13 -0
- package/assets/feed/icons/garbage-secondary.svg +14 -0
- package/assets/feed/icons/garbage.svg +14 -0
- package/assets/feed/icons/green-x.svg +165 -0
- package/assets/feed/icons/hamburger.svg +2 -0
- package/assets/feed/icons/inactive/audio.svg +5 -0
- package/assets/feed/icons/inactive/exercise.svg +17 -0
- package/assets/feed/icons/inactive/link.svg +6 -0
- package/assets/feed/icons/inactive/pdf.svg +19 -0
- package/assets/feed/icons/inactive/presentation.svg +13 -0
- package/assets/feed/icons/inactive/quiz.svg +25 -0
- package/assets/feed/icons/inactive/story.svg +7 -0
- package/assets/feed/icons/inactive/video.svg +13 -0
- package/assets/feed/icons/status/Group 856.svg +11 -0
- package/assets/feed/icons/status/almostDone.svg +11 -0
- package/assets/feed/icons/status/done.svg +11 -0
- package/assets/feed/icons/status/inProgress.svg +13 -0
- package/assets/feed/icons/white-chevron.svg +3 -0
- package/assets/feed/icons/wide-mode.png +0 -0
- package/assets/feed/icons/wide-mode.svg +7 -0
- package/assets/feed/icons/wide-mode2.svg +8 -0
- package/assets/files-icons/.image.svg +11 -0
- package/assets/files-icons/.mp4.png +0 -0
- package/assets/files-icons/.mp4.svg +12 -0
- package/assets/files-icons/.pdf.png +0 -0
- package/assets/files-icons/.pdf.svg +16 -0
- package/assets/files-icons/.pptx.png +0 -0
- package/assets/files-icons/.pptx.svg +12 -0
- package/assets/files-icons/.video.svg +12 -0
- package/assets/files-icons/default-file.png +0 -0
- package/assets/files-icons/generic-file.svg +8 -0
- package/assets/files-icons/story.png +0 -0
- package/assets/files-icons/story.svg +3 -0
- package/assets/files-icons/upload-file.svg +4 -0
- package/assets/general/calendar.svg +12 -0
- package/assets/general/chevron.svg +3 -0
- package/assets/general/clock.svg +4 -0
- package/assets/general/closed-chevron.png +0 -0
- package/assets/general/college-calendar.svg +12 -0
- package/assets/general/comment-icon.svg +12 -0
- package/assets/general/dialogX.png +0 -0
- package/assets/general/errorOwl.png +0 -0
- package/assets/general/green-x.svg +4 -0
- package/assets/general/grey-chevron.svg +3 -0
- package/assets/general/keyboardLink.svg +15 -0
- package/assets/general/logo.png +0 -0
- package/assets/general/noCollectionsMessage.svg +59 -0
- package/assets/general/open-chevron.png +0 -0
- package/assets/general/owl-logo.svg +98 -0
- package/assets/general/secondary-x.svg +3 -0
- package/assets/general/user.svg +15 -0
- package/assets/general/white-chevron.svg +3 -0
- package/assets/quiz/greenHeaderArrow.svg +12 -0
- package/assets/quiz/greyHeaderArrow.svg +12 -0
- package/assets/quiz/happyOwl.svg +126 -0
- package/assets/quiz/sadOwl.svg +94 -0
- package/assets/quiz/skip.svg +5 -0
- package/assets/shared/atoms/inputs/herum-inputs.component.scss +56 -0
- package/assets/shared/atoms/selects/herum-selects.component.scss +141 -0
- package/assets/shared/atoms/uploadingStatuses/error.svg +8 -0
- package/assets/shared/atoms/uploadingStatuses/information.svg +6 -0
- package/assets/shared/atoms/uploadingStatuses/success.svg +9 -0
- package/assets/shared/audio-images/gray-pause.svg +4 -0
- package/assets/shared/audio-images/gray-play.svg +3 -0
- package/assets/shared/audio-images/next15.svg +7 -0
- package/assets/shared/audio-images/pause.svg +4 -0
- package/assets/shared/audio-images/play.svg +3 -0
- package/assets/shared/audio-images/previous15.svg +7 -0
- package/assets/shared/background/cubes.png +0 -0
- package/assets/shared/background/cubes.svg +1900 -0
- package/assets/shared/icons/V.svg +3 -0
- package/assets/shared/icons/X.svg +3 -0
- package/assets/shared/icons/active-clipboard.svg +7 -0
- package/assets/shared/icons/active-drag.svg +44 -0
- package/assets/shared/icons/active-upload.svg +3 -0
- package/assets/shared/icons/add.svg +3 -0
- package/assets/shared/icons/attachUsers.png +0 -0
- package/assets/shared/icons/big-no-result-owl.png +0 -0
- package/assets/shared/icons/bigV.svg +3 -0
- package/assets/shared/icons/celeb-owl.png +0 -0
- package/assets/shared/icons/clock.svg +3 -0
- package/assets/shared/icons/drag.svg +44 -0
- package/assets/shared/icons/edit.svg +3 -0
- package/assets/shared/icons/editCollection.png +0 -0
- package/assets/shared/icons/femaleAvatar.svg +80 -0
- package/assets/shared/icons/inactive-clipboard.svg +7 -0
- package/assets/shared/icons/input/X.png +0 -0
- package/assets/shared/icons/input/X.svg +3 -0
- package/assets/shared/icons/input/drag.svg +6 -0
- package/assets/shared/icons/input/green-search.png +0 -0
- package/assets/shared/icons/input/grey-search.png +0 -0
- package/assets/shared/icons/input/search.svg +4 -0
- package/assets/shared/icons/maleAvatar.svg +55 -0
- package/assets/shared/icons/no-result-owl.png +0 -0
- package/assets/shared/icons/resources.svg +6 -0
- package/assets/shared/icons/secondary-x.svg +3 -0
- package/assets/shared/icons/settings.png +0 -0
- package/assets/shared/icons/stepper/white-v.svg +3 -0
- package/assets/shared/icons/table/edit.svg +3 -0
- package/assets/shared/icons/target.png +0 -0
- package/assets/shared/icons/upload.png +0 -0
- package/assets/shared/icons/upload.svg +7 -0
- package/assets/shared/icons/user.svg +8 -0
- package/assets/shared/icons/video/Play.PNG +0 -0
- package/assets/shared/icons/video/back10.PNG +0 -0
- package/assets/shared/icons/video/back10.svg +7 -0
- package/assets/shared/icons/video/download.PNG +0 -0
- package/assets/shared/icons/video/download.svg +4 -0
- package/assets/shared/icons/video/fullScreen.PNG +0 -0
- package/assets/shared/icons/video/fullScreen.svg +7 -0
- package/assets/shared/icons/video/minimize.png +0 -0
- package/assets/shared/icons/video/mute.png +0 -0
- package/assets/shared/icons/video/mute.svg +7 -0
- package/assets/shared/icons/video/next10.PNG +0 -0
- package/assets/shared/icons/video/next10.svg +7 -0
- package/assets/shared/icons/video/pause.PNG +0 -0
- package/assets/shared/icons/video/pause.svg +5 -0
- package/assets/shared/icons/video/pictureInPicture.png +0 -0
- package/assets/shared/icons/video/pictureInPicture.svg +5 -0
- package/assets/shared/icons/video/pictureInPictureOff.svg +7 -0
- package/assets/shared/icons/video/play.svg +4 -0
- package/assets/shared/icons/video/primary-play.png +0 -0
- package/assets/shared/icons/video/primaryPlay.svg +22 -0
- package/assets/shared/icons/video/sound.svg +8 -0
- package/assets/shared/icons/video/speaker.PNG +0 -0
- package/assets/shared/trackChanges/edit.svg +11 -0
- package/assets/shared/trackChanges/message-plus.svg +14 -0
- package/assets/shared/trackChanges/show-comments.svg +5 -0
- package/assets/shared/trackChanges/text-reference.svg +3 -0
- package/assets/shared/trackChanges/trash.svg +9 -0
- package/atoms/index.d.ts +836 -0
- package/constants/index.d.ts +795 -0
- package/decorators/index.d.ts +3 -0
- package/dialogs/index.d.ts +41 -0
- package/directives/index.d.ts +55 -0
- package/environment/index.d.ts +129 -0
- package/errors/index.d.ts +26 -0
- package/fesm2022/herum-shared-animations.mjs +41 -0
- package/fesm2022/herum-shared-animations.mjs.map +1 -0
- package/fesm2022/herum-shared-atoms.mjs +2919 -0
- package/fesm2022/herum-shared-atoms.mjs.map +1 -0
- package/fesm2022/herum-shared-constants.mjs +711 -0
- package/fesm2022/herum-shared-constants.mjs.map +1 -0
- package/fesm2022/herum-shared-decorators.mjs +12 -0
- package/fesm2022/herum-shared-decorators.mjs.map +1 -0
- package/fesm2022/herum-shared-dialogs.mjs +113 -0
- package/fesm2022/herum-shared-dialogs.mjs.map +1 -0
- package/fesm2022/herum-shared-directives.mjs +226 -0
- package/fesm2022/herum-shared-directives.mjs.map +1 -0
- package/fesm2022/herum-shared-environment.mjs +10 -0
- package/fesm2022/herum-shared-environment.mjs.map +1 -0
- package/fesm2022/herum-shared-errors.mjs +71 -0
- package/fesm2022/herum-shared-errors.mjs.map +1 -0
- package/fesm2022/herum-shared-fetched-message.mjs +118 -0
- package/fesm2022/herum-shared-fetched-message.mjs.map +1 -0
- package/fesm2022/herum-shared-herum-types.mjs +106 -0
- package/fesm2022/herum-shared-herum-types.mjs.map +1 -0
- package/fesm2022/herum-shared-molecules.mjs +1530 -0
- package/fesm2022/herum-shared-molecules.mjs.map +1 -0
- package/fesm2022/herum-shared-mongo-molecules.mjs +269 -0
- package/fesm2022/herum-shared-mongo-molecules.mjs.map +1 -0
- package/fesm2022/herum-shared-mongo-services.mjs +441 -0
- package/fesm2022/herum-shared-mongo-services.mjs.map +1 -0
- package/fesm2022/herum-shared-mongo.mjs +729 -0
- package/fesm2022/herum-shared-mongo.mjs.map +1 -0
- package/fesm2022/herum-shared-objectsExample.mjs +190 -0
- package/fesm2022/herum-shared-objectsExample.mjs.map +1 -0
- package/fesm2022/herum-shared-pipes.mjs +406 -0
- package/fesm2022/herum-shared-pipes.mjs.map +1 -0
- package/fesm2022/herum-shared-services.mjs +1107 -0
- package/fesm2022/herum-shared-services.mjs.map +1 -0
- package/fesm2022/herum-shared-static-services.mjs +140 -0
- package/fesm2022/herum-shared-static-services.mjs.map +1 -0
- package/fesm2022/herum-shared-table.mjs +837 -0
- package/fesm2022/herum-shared-table.mjs.map +1 -0
- package/fesm2022/herum-shared-testsObjects.mjs +5722 -0
- package/fesm2022/herum-shared-testsObjects.mjs.map +1 -0
- package/fesm2022/herum-shared-tokens.mjs +13 -0
- package/fesm2022/herum-shared-tokens.mjs.map +1 -0
- package/fesm2022/herum-shared-utils.mjs +380 -0
- package/fesm2022/herum-shared-utils.mjs.map +1 -0
- package/fesm2022/herum-shared-validators.mjs +76 -0
- package/fesm2022/herum-shared-validators.mjs.map +1 -0
- package/fesm2022/herum-shared.mjs +11709 -0
- package/fesm2022/herum-shared.mjs.map +1 -0
- package/fetched-message/index.d.ts +49 -0
- package/herum-types/index.d.ts +198 -0
- package/index.d.ts +2946 -0
- package/molecules/index.d.ts +458 -0
- package/mongo/index.d.ts +175 -0
- package/mongo/molecules/index.d.ts +76 -0
- package/mongo/services/index.d.ts +98 -0
- package/objectsExample/index.d.ts +11 -0
- package/package.json +128 -0
- package/pipes/index.d.ts +93 -0
- package/services/index.d.ts +266 -0
- package/static-services/index.d.ts +25 -0
- package/styles/_mixin.scss +86 -0
- package/styles/collection-wizard-layout.component.scss +70 -0
- package/styles/dialogs.scss +49 -0
- package/styles/forms.scss +18 -0
- package/styles/overView.scss +115 -0
- package/styles/variables/_colors.college.scss +65 -0
- package/styles/variables/_colors.scss +161 -0
- package/styles/variables/_sizes.scss +73 -0
- package/styles/wizard-steps-layout.scss +21 -0
- package/table/index.d.ts +233 -0
- package/testsObjects/index.d.ts +91 -0
- package/tokens/index.d.ts +8 -0
- package/utils/index.d.ts +92 -0
- package/validators/index.d.ts +20 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"herum-shared-molecules.mjs","sources":["../../../projects/herum-shared/molecules/herum-active-link/herum-active-link.component.ts","../../../projects/herum-shared/molecules/herum-active-link/herum-active-link.component.html","../../../projects/herum-shared/molecules/herum-active-menu/herum-active-menu.component.ts","../../../projects/herum-shared/molecules/herum-active-menu/herum-active-menu.component.html","../../../projects/herum-shared/molecules/herum-autocomplete/herum-autocomplete.component.ts","../../../projects/herum-shared/molecules/herum-autocomplete/herum-autocomplete.component.html","../../../projects/herum-shared/molecules/herum-closed-list-multi-select/herum-closed-list-multi-select.component.ts","../../../projects/herum-shared/molecules/herum-closed-list-multi-select/herum-closed-list-multi-select.component.html","../../../projects/herum-shared/molecules/herum-closed-list-select/herum-closed-list-select.component.ts","../../../projects/herum-shared/molecules/herum-closed-list-select/herum-closed-list-select.component.html","../../../projects/herum-shared/molecules/herum-date-time-input/herum-date-time-input.component.ts","../../../projects/herum-shared/molecules/herum-date-time-input/herum-date-time-input.component.html","../../../projects/herum-shared/molecules/herum-date-time-picker/herum-date-time-picker.component.ts","../../../projects/herum-shared/molecules/herum-date-time-picker/herum-date-time-picker.component.html","../../../projects/herum-shared/molecules/herum-drop-zone/herum-drop-zone.component.ts","../../../projects/herum-shared/molecules/herum-drop-zone/herum-drop-zone.component.html","../../../projects/herum-shared/molecules/herum-expendable-panel/herum-expendable-panel.component.ts","../../../projects/herum-shared/molecules/herum-expendable-panel/herum-expendable-panel.component.html","../../../projects/herum-shared/molecules/herum-files-viewer/herum-files-viewer.component.ts","../../../projects/herum-shared/molecules/herum-files-viewer/herum-files-viewer.component.html","../../../projects/herum-shared/molecules/herum-hierarchy-tree-node/herum-hierarchy-tree-node.component.ts","../../../projects/herum-shared/molecules/herum-hierarchy-tree-node/herum-hierarchy-tree-node.component.html","../../../projects/herum-shared/molecules/herum-multi-progress-bar/herum-multi-progress-bar.component.ts","../../../projects/herum-shared/molecules/herum-multi-progress-bar/herum-multi-progress-bar.component.html","../../../projects/herum-shared/molecules/herum-navigator/herum-navigator.component.ts","../../../projects/herum-shared/molecules/herum-navigator/herum-navigator.component.html","../../../projects/herum-shared/molecules/herum-step-navigator/herum-step-navigator.component.ts","../../../projects/herum-shared/molecules/herum-step-navigator/herum-step-navigator.component.html","../../../projects/herum-shared/molecules/herum-stepper/herum-stepper.component.ts","../../../projects/herum-shared/molecules/herum-stepper/herum-stepper.component.html","../../../projects/herum-shared/molecules/herum-time-select/herum-time-select.component.ts","../../../projects/herum-shared/molecules/herum-time-select/herum-time-select.component.html","../../../projects/herum-shared/molecules/herum-user-profile/herum-user-profile.component.ts","../../../projects/herum-shared/molecules/herum-user-profile/herum-user-profile.component.html","../../../projects/herum-shared/molecules/herum-user-progress/herum-user-progress.component.ts","../../../projects/herum-shared/molecules/herum-user-progress/herum-user-progress.component.html","../../../projects/herum-shared/molecules/key-value-list/key-value-list.component.ts","../../../projects/herum-shared/molecules/key-value-list/key-value-list.component.html","../../../projects/herum-shared/molecules/labels-with-icons-list/labels-with-icons-list.component.ts","../../../projects/herum-shared/molecules/labels-with-icons-list/labels-with-icons-list.component.html","../../../projects/herum-shared/molecules/progresses-over-view/progresses-over-view.component.ts","../../../projects/herum-shared/molecules/progresses-over-view/progresses-over-view.component.html","../../../projects/herum-shared/molecules/molecules-module.ts","../../../projects/herum-shared/molecules/herum-shared-molecules.ts"],"sourcesContent":["import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'app-herum-active-link',\r\n templateUrl: './herum-active-link.component.html',\r\n styleUrls: ['./herum-active-link.component.scss']\r\n})\r\nexport class HerumActiveLinkComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","<p>herum-active-link works!</p>\r\n","import { ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, Input, Output, QueryList, SimpleChanges, ViewChild, ViewChildren } from '@angular/core';\r\nimport { SplitGutterInteractionEvent } from 'angular-split';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-active-menu',\r\n templateUrl: './herum-active-menu.component.html',\r\n styleUrls: ['./herum-active-menu.component.scss']\r\n})\r\nexport class HerumActiveMenuComponent {\r\n\r\n @Input() useIcons: boolean = true;\r\n\r\n @Input() view: \"wide\" | \"narrow\" = \"wide\";\r\n\r\n @Input() activeColor: string = \"\";\r\n @Input() activeTextColor: string = \"\";\r\n @Input() secondaryTextColor: string = \"\";\r\n\r\n @Input() menuItems: any[] = [];\r\n @Input() selectedItem: any;\r\n @Input() selectById: boolean = false;\r\n @Input() isBlock: boolean = false;\r\n @Input() dragEvent: SplitGutterInteractionEvent;\r\n\r\n @Output() selectionIndex: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n @ViewChild('tabsContainer') tabsContainer!: ElementRef;\r\n @ViewChildren('tabs') tabsElement!: QueryList<ElementRef>;\r\n\r\n @HostListener('window:resize')\r\n onResize() {\r\n this.setTabElementWidth();\r\n }\r\n\r\n currentItemIndex: number = 0;\r\n hostElement!: HTMLElement;\r\n\r\n constructor(private elementRef: ElementRef, private changeDetectorRef: ChangeDetectorRef) { this.hostElement = this.elementRef.nativeElement; }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['activeColor']?.currentValue)\r\n this.setCSSVariable('--active-menu-background', this.activeColor);\r\n\r\n if (changes['activeTextColor']?.currentValue)\r\n this.setCSSVariable('--active-menu-text-color', this.activeTextColor);\r\n\r\n if (changes['secondaryTextColor']?.currentValue)\r\n this.setCSSVariable('--active-menu-secondary-text-color', this.secondaryTextColor);\r\n\r\n if (changes['menuItems']?.currentValue.length) {\r\n this.changeDetectorRef.detectChanges();\r\n this.setTabElementWidth();\r\n }\r\n\r\n if (changes['dragEvent']?.currentValue)\r\n this.setTabElementWidth();\r\n }\r\n\r\n private setCSSVariable(variable: string, value: string): void {\r\n this.hostElement.style.setProperty(variable, value);\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setTabElementWidth();\r\n }\r\n\r\n _onSelectTab(selection: number) {\r\n this.currentItemIndex = selection;\r\n if (!this.isBlock)\r\n this.selectionIndex.emit(selection);\r\n }\r\n\r\n\r\n private setTabElementWidth() {\r\n if (!this.tabsElement?.length || !this.menuItems.length)\r\n return;\r\n\r\n const tabsContainerWidth = this.tabsContainer.nativeElement.clientWidth;\r\n\r\n this.tabsElement.forEach(tab => {\r\n const width = (tabsContainerWidth / this.menuItems.length) > 150 ? '150px' : `${tabsContainerWidth / this.menuItems.length}px`;\r\n tab.nativeElement.style.width = width;\r\n });\r\n }\r\n}","<ul #tabsContainer class=\"tabs group\" [ngClass]=\"view\" [class.isBlock]=\"isBlock\">\r\n <li #tabs *ngFor=\"let menuItem of menuItems; let i = index\"\r\n [class.active]=\"selectById ? menuItem?.id === selectedItem?.id : (currentItemIndex === i || menuItem === selectedItem)\">\r\n <a (click)=\"_onSelectTab(i)\" [userAction]=\"menuItem.label\">\r\n <span *ngIf=\"useIcons\" [innerHTML]=\"menuItem.icon | safeHtml\"\r\n [ngClass]=\"i == currentItemIndex ? 'active-icon' : 'non-active-icon'\">\r\n </span>\r\n\r\n <p class=\"m-0 truncate\" [matTooltip]=\"menuItem.label\">\r\n {{ menuItem.label }}\r\n </p>\r\n </a>\r\n </li>\r\n</ul>","import { Component, ElementRef, EventEmitter, HostListener, Input, Optional, Output, Self, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\r\nimport { HerumInputFieldComponent } from 'herum-shared/atoms';\r\nimport { openClose } from 'herum-shared/animations';\r\nimport { DisplayIdentifiedEntity } from 'herum-shared/herum-types';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-autocomplete',\r\n templateUrl: './herum-autocomplete.component.html',\r\n styleUrls: ['./herum-autocomplete.component.scss'],\r\n animations: [openClose]\r\n})\r\nexport class HerumAutocompleteComponent implements ControlValueAccessor {\r\n\r\n @Input() options: DisplayIdentifiedEntity[] = [];\r\n @Input() displayBy: string = 'name';\r\n @Input() subTitleBy: string;\r\n @Input() placeholder: string = 'הקלד/י לחיפוש...';\r\n @Input() noResultsText: string = 'אויש, נראה שאין תוצאות מתאימות...'\r\n @Input() disabled: boolean = false;\r\n @Input() isLoadingInput: boolean = false;\r\n @Input() debounceTime: number = 0;\r\n @Input() selectedOption: DisplayIdentifiedEntity | null = null;\r\n @Input() isBlurred = false;\r\n\r\n @Output() filterTextEmitter = new EventEmitter<string>();\r\n @Output() selectedOptionEmitter = new EventEmitter<DisplayIdentifiedEntity>();\r\n\r\n @ViewChild('filterInput') filterInput: HerumInputFieldComponent;\r\n @ViewChild('container') containerRef: ElementRef<HTMLDivElement>;\r\n\r\n @HostListener('window:click', ['$event'])\r\n onWindowClick(event: MouseEvent): void {\r\n if (!this.isDropdownOpen) return;\r\n\r\n const target = event.target as HTMLElement;\r\n const host = this.containerRef?.nativeElement;\r\n\r\n if (host && !host.contains(target))\r\n this.isDropdownOpen = false;\r\n }\r\n\r\n currentSearchedItem: string = '';\r\n filteredOptions: DisplayIdentifiedEntity[] = [];\r\n isDropdownOpen: boolean = false;\r\n isWaitingForResults = false;\r\n\r\n readonly skeletonRows: number[] = [1, 2, 3, 4, 5];\r\n readonly skeletonWidths: number[] = [200, 180, 160, 180, 170];\r\n\r\n constructor(@Optional() @Self() private ngControl: NgControl) {\r\n if (this.ngControl)\r\n this.ngControl.valueAccessor = this;\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['options']) {\r\n this.filterOptions(this.currentSearchedItem);\r\n this.isWaitingForResults = false;\r\n }\r\n\r\n if (changes['selectedOption'] && this.selectedOption) {\r\n const displayText = this.selectedOption?.[this.displayBy]?.toString() ?? '';\r\n this.currentSearchedItem = displayText;\r\n this.onChange(displayText);\r\n\r\n if (this.filterInput)\r\n this.filterInput.inputValue = displayText;\r\n }\r\n }\r\n\r\n _onInputClick(event: MouseEvent): void {\r\n event.stopPropagation();\r\n\r\n if (!this.disabled) this.isDropdownOpen = true;\r\n }\r\n\r\n _inputChange(rawText: string): void {\r\n if (!this.disabled) this.isDropdownOpen = true;\r\n\r\n const text = !!rawText ? rawText.toString().trim() : '';\r\n this.currentSearchedItem = text;\r\n\r\n this.isWaitingForResults = true;\r\n\r\n this.onChange(this.currentSearchedItem);\r\n this.filterTextEmitter.emit(text);\r\n this.filterOptions(text);\r\n }\r\n\r\n _onSelectOption(option: DisplayIdentifiedEntity): void {\r\n const selectedDisplayText = (option?.[this.displayBy] ?? '').toString();\r\n\r\n this.currentSearchedItem = '';\r\n\r\n this.onChange(this.currentSearchedItem);\r\n this.onTouched();\r\n\r\n this.selectedOptionEmitter.emit(option);\r\n this.isDropdownOpen = false;\r\n\r\n if (this.filterInput) this.filterInput!.inputValue = selectedDisplayText;\r\n }\r\n\r\n _getSkeletonWidth(index: number): number {\r\n return this.skeletonWidths[index % this.skeletonWidths.length];\r\n }\r\n\r\n onChange: (value: string) => void = () => { };\r\n\r\n onTouched: () => void = () => { };\r\n\r\n writeValue(value: string | null): void {\r\n this.currentSearchedItem = value || '';\r\n this.filterOptions(this.currentSearchedItem);\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n }\r\n\r\n private filterOptions(text: string): void {\r\n const options = Array.isArray(this.options) ? this.options : [];\r\n\r\n if (!options?.length) {\r\n this.filteredOptions = [];\r\n return;\r\n }\r\n\r\n if (!text) {\r\n this.filteredOptions = [...options];\r\n return;\r\n }\r\n\r\n const normalizedSearchText = (text || '').toString().toLocaleLowerCase();\r\n\r\n this.filteredOptions = options.filter(option => {\r\n const optionDisplayValue = option[this.displayBy];\r\n\r\n if (!optionDisplayValue) return false;\r\n\r\n const normalizedOptionText = optionDisplayValue.toString().toLowerCase();\r\n return normalizedOptionText.includes(normalizedSearchText);\r\n });\r\n }\r\n}\r\n","<div #container class=\"autocomplete-container\" dir=\"rtl\" [class.disabled]=\"disabled\">\r\n <herum-input-field #filterInput class=\"autocomplete-input internal\" \r\n [type]=\"isBlurred ? 'search-blur' : 'search'\" [placeholder]=\"placeholder\"\r\n [debounceTime]=\"debounceTime\" [disabled]=\"disabled\" [inputValue]=\"currentSearchedItem\"\r\n (click)=\"_onInputClick($event)\" (inputValueEmitter)=\"_inputChange($event)\">\r\n </herum-input-field>\r\n\r\n <div class=\"autocomplete-dropdown\" [@openClose]=\"isDropdownOpen ? 'openDown' : 'closeUp'\" \r\n [class.hidden]=\"!isDropdownOpen\" [class.glass]=\"isBlurred\">\r\n <ng-container *ngIf=\"isLoadingInput || isWaitingForResults; else optionsList\">\r\n <div *ngFor=\"let _ of skeletonRows; let i = index\" class=\"autocomplete-option loading-state\">\r\n <span class=\"skeleton-text skeleton\" [ngStyle]=\"{width: _getSkeletonWidth(i) + 'px'}\"> </span>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-template #optionsList>\r\n <ng-container *ngIf=\"filteredOptions?.length; else noResults\">\r\n <a class=\"autocomplete-option\" *ngFor=\"let option of filteredOptions\" (click)=\"_onSelectOption(option)\">\r\n <div class=\"option-main\">\r\n <ng-container *ngIf=\"option.iconUrl; else defaultLeadingIcon\">\r\n <img [src]=\"option.iconUrl\" class=\"option-icon-img\" />\r\n </ng-container>\r\n \r\n <ng-template #defaultLeadingIcon>\r\n <img src=\"assets/hadracha/general/plus.svg\" class=\"option-icon\">\r\n </ng-template>\r\n\r\n <span [highlightText]=\"option[displayBy]\" [herumHighlight]=\"currentSearchedItem\"></span>\r\n </div>\r\n\r\n <span class=\"option-subtitle\" *ngIf=\"subTitleBy && option[subTitleBy]\">\r\n {{ option[subTitleBy] }}\r\n </span>\r\n </a>\r\n </ng-container>\r\n\r\n <ng-template #noResults>\r\n <a *ngIf=\"!(isLoadingInput || isWaitingForResults)\"\r\n class=\"autocomplete-option text-center no-results-blurred\">\r\n {{ noResultsText }}\r\n </a>\r\n </ng-template>\r\n </ng-template>\r\n </div>\r\n</div>","import { Component, EventEmitter, forwardRef, Input, Output, SimpleChanges } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { CommonGraphqlRequestsService } from 'herum-shared/services';\r\nimport { ClosedList, IdentifiedEntity } from 'herum-shared/herum-types';\r\n\r\nconst CUSTOM_CLOSED_LIST_MULTI_SELECT_CONTROL_VALUE_ACCESSOR: any = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => HerumClosedListMultiSelectComponent),\r\n multi: true,\r\n};\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-closed-list-multi-select',\r\n templateUrl: './herum-closed-list-multi-select.component.html',\r\n styleUrls: ['./herum-closed-list-multi-select.component.scss'],\r\n providers: [CUSTOM_CLOSED_LIST_MULTI_SELECT_CONTROL_VALUE_ACCESSOR]\r\n})\r\nexport class HerumClosedListMultiSelectComponent {\r\n\r\n @Input() closedListName: string;\r\n @Input() placeholder: string = 'בחר/י...';\r\n @Input() disabled: boolean = false;\r\n @Input() isDropDownInPositionFixed: boolean = false;\r\n @Input() size: 'fit' | 'default' | 'big' | 'responsive' = 'default';\r\n @Input() dropDownDirection: 'upwards' | 'downwards' = 'downwards';\r\n @Input() selectedClosedListOptionalValues!: IdentifiedEntity[];\r\n\r\n @Output() selectedClosedListValueEmitter = new EventEmitter<IdentifiedEntity[]>();\r\n\r\n closedListValues: IdentifiedEntity[] = [];\r\n\r\n constructor(private commonGraphqlRequestsService: CommonGraphqlRequestsService) { }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['closedListName']?.currentValue)\r\n this.setClosedListValues();\r\n }\r\n\r\n private setClosedListValues() {\r\n this.commonGraphqlRequestsService.getClosedLists([this.closedListName])\r\n .subscribe((closedList: ClosedList) => {\r\n this.closedListValues = closedList[0].optionalValues?.map(optionalValue => ({ name: optionalValue.displayName, id: optionalValue.id }));\r\n this.syncIdsBetweenSelectedValuesToValues();\r\n });\r\n }\r\n\r\n _selectedOptionsEmitter(selectedClosedListValue: IdentifiedEntity[]) {\r\n this.selectedClosedListValueEmitter.emit(selectedClosedListValue);\r\n this.onChange(selectedClosedListValue);\r\n }\r\n\r\n onChange: (selectedClosedListValue: IdentifiedEntity[]) => void = () => { }\r\n\r\n onTouched: () => void = () => { }\r\n\r\n writeValue(selectedClosedListOptionalValues: IdentifiedEntity[]): void {\r\n if (!selectedClosedListOptionalValues)\r\n return;\r\n\r\n this.selectedClosedListOptionalValues = selectedClosedListOptionalValues;\r\n this.syncIdsBetweenSelectedValuesToValues();\r\n }\r\n\r\n private syncIdsBetweenSelectedValuesToValues() {\r\n if (!this.closedListValues?.length || !this.selectedClosedListOptionalValues)\r\n return;\r\n\r\n this.closedListValues.forEach(closedListValue => {\r\n const selectedClosedListOptionalValue = this.selectedClosedListOptionalValues.find(section => (section as IdentifiedEntity).name === closedListValue.name) as IdentifiedEntity;\r\n\r\n if (selectedClosedListOptionalValue)\r\n closedListValue.id = selectedClosedListOptionalValue.id;\r\n });\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n}","<herum-multi-select [placeholder]=\"placeholder\" [options]=\"closedListValues\"\r\n [selectedOptionsInput]=\"selectedClosedListOptionalValues\" [disabled]=\"disabled\"\r\n [isDropDownInPositionFixed]=\"isDropDownInPositionFixed\" [size]=\"size\" [dropDownDirection]=\"dropDownDirection\"\r\n (selectedOptions)=\"_selectedOptionsEmitter($event)\">\r\n</herum-multi-select>","import { Component, EventEmitter, Input, Output, SimpleChanges, forwardRef } from '@angular/core';\r\nimport { CommonGraphqlRequestsService } from 'herum-shared/services';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { ClosedList, IdentifiedEntity } from 'herum-shared/herum-types';\r\n\r\nconst CUSTOM_CLOSED_LIST_SELECT_CONTROL_VALUE_ACCESSOR: any = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => HerumClosedListSelectComponent),\r\n multi: true,\r\n};\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-closed-list-select',\r\n templateUrl: './herum-closed-list-select.component.html',\r\n providers: [CUSTOM_CLOSED_LIST_SELECT_CONTROL_VALUE_ACCESSOR]\r\n})\r\n\r\nexport class HerumClosedListSelectComponent implements ControlValueAccessor {\r\n\r\n @Input('formControlName') closedListName: string;\r\n @Input() placeholder: string = 'בחר/י...';\r\n @Input() closedListOptionalValueName!: string;\r\n @Input() disabled: boolean = false;\r\n @Input() isDropDownInPositionFixed: boolean = false;\r\n @Input() iconPath: string = '';\r\n @Input() isAutoComplete: boolean = false;\r\n @Input() title: string = '';\r\n @Input() size: 'fit' | 'default' | 'big' | 'responsive' = 'default';\r\n @Input() displayLoadingMode: boolean = false;\r\n @Input() isLoadingInput: boolean = false;\r\n @Input() dropDownDirection: 'upwards' | 'downwards' = 'downwards';\r\n @Input() filterPlaceholder = \"חפש/י...\"\r\n\r\n @Output() selectedClosedListValueEmitter = new EventEmitter<IdentifiedEntity>();\r\n @Output() filterTextEmitter = new EventEmitter<string>();\r\n\r\n closedListValues: IdentifiedEntity[] = [];\r\n selectedClosedListOptionalValue!: IdentifiedEntity;\r\n\r\n constructor(private commonGraphqlRequestsService: CommonGraphqlRequestsService) { }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['closedListName']?.currentValue)\r\n this.setClosedListValues();\r\n\r\n if (changes['closedListOptionalValueName']?.currentValue)\r\n this.handleClosedListValueId();\r\n }\r\n\r\n private setClosedListValues() {\r\n this.commonGraphqlRequestsService.getClosedLists([this.closedListName])\r\n .subscribe((closedList: ClosedList) => {\r\n this.closedListValues = closedList[0].optionalValues?.map(optionalValue => ({ name: optionalValue.displayName, id: optionalValue.id }));\r\n this.handleClosedListValueId();\r\n });\r\n }\r\n\r\n private handleClosedListValueId() {\r\n if (!this.closedListOptionalValueName) {\r\n this.selectedClosedListOptionalValue = undefined;\r\n return;\r\n }\r\n\r\n this.selectedClosedListOptionalValue = { name: this.closedListOptionalValueName, id: this.closedListValues?.find(closedListValue => closedListValue.name === this.closedListOptionalValueName)?.id };\r\n }\r\n\r\n _selectedOptionEmitter(selectedClosedListValue: IdentifiedEntity) {\r\n this.selectedClosedListValueEmitter.emit(selectedClosedListValue);\r\n this.onChange(selectedClosedListValue);\r\n }\r\n\r\n _filterTextEmitter(text: string) {\r\n this.filterTextEmitter.emit(text);\r\n }\r\n\r\n onChange: (selectedClosedListValue: IdentifiedEntity) => void = () => { }\r\n\r\n onTouched: () => void = () => { }\r\n\r\n writeValue(closedListOptionalValueName: string): void {\r\n if (!closedListOptionalValueName)\r\n return;\r\n\r\n this.closedListOptionalValueName = closedListOptionalValueName;\r\n this.handleClosedListValueId();\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n}","<herum-select\r\n[options]=\"closedListValues\"\r\n[placeholder]=\"placeholder\"\r\n[selectedOption]=\"selectedClosedListOptionalValue\"\r\n[disabled]=\"disabled\"\r\n[isDropDownInPositionFixed]=\"isDropDownInPositionFixed\"\r\n[iconPath]=\"iconPath\"\r\n[isAutoComplete]=\"isAutoComplete\"\r\n[title]=\"title\"\r\n[size]=\"size\"\r\n[displayLoadingMode]=\"displayLoadingMode\"\r\n[isLoadingInput]=\"isLoadingInput\"\r\n[dropDownDirection]=\"dropDownDirection\"\r\n[filterPlaceholder]=\"filterPlaceholder\"\r\n(selectedOptionEmitter)=\"_selectedOptionEmitter($event)\"\r\n(filterTextEmitter)=\"_filterTextEmitter($event)\"\r\n>\r\n</herum-select>","import { Component, EventEmitter, Input, Output, SimpleChanges } from '@angular/core';\r\nimport { DateRange } from '@angular/material/datepicker';\r\nimport { regexExpressions, startEndDateError, minDateError, formatError, timestampError } from \"herum-shared/constants\";\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-date-time-input',\r\n templateUrl: './herum-date-time-input.component.html'\r\n})\r\nexport class HerumDateTimeInputComponent {\r\n\r\n @Input() placeholder: string = '';\r\n @Input() inputValue: string = '';\r\n @Input() minDate: Date;\r\n @Input() showSeconds: boolean;\r\n @Input() rangeMode: boolean;\r\n\r\n @Output() dateChange = new EventEmitter<Date | DateRange<Date>>();\r\n @Output() timeChange = new EventEmitter<string>();\r\n @Output() disableChange = new EventEmitter<boolean>();\r\n\r\n errorMessage: string = '';\r\n isValid: boolean = true;\r\n debounceTime: number = 300;\r\n ltrMode: boolean = true;\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['inputValue']?.currentValue)\r\n this._valueChange(this.inputValue);\r\n }\r\n\r\n _valueChange(dateString: string) {\r\n this.isValid = true;\r\n\r\n if (this.rangeMode) {\r\n this.handleDateRangeTimeRangeMode(dateString);\r\n return;\r\n }\r\n\r\n this.handleDateTimeMode(dateString);\r\n }\r\n\r\n private handleDateRangeTimeRangeMode(dateString: string) {\r\n const pattern = this.showSeconds ? regexExpressions.fullRangeDateTime : regexExpressions.rangeDateTimeWithoutSeconds;\r\n this.isValid = this.patternValidation(dateString, pattern);\r\n\r\n if (!this.isValid) {\r\n this.disableChange.emit(true);\r\n return;\r\n }\r\n\r\n const splittedDate = dateString.split('-');\r\n const startDateString = splittedDate[0];\r\n const endDateString = splittedDate[1];\r\n\r\n this.handleDateRangeTimeRangeValidations(startDateString, endDateString);\r\n\r\n if (!this.isValid) {\r\n this.disableChange.emit(true);\r\n return;\r\n }\r\n\r\n const startDate = this.createDateTime(startDateString).date;\r\n const endDate = this.createDateTime(endDateString).date;\r\n\r\n const dateRange = new DateRange(startDate, endDate);\r\n this.dateChange.emit(dateRange);\r\n this.disableChange.emit(false);\r\n }\r\n\r\n private handleDateRangeTimeRangeValidations(startDateString: string, endDateString: string) {\r\n this.isValid = this.timestampValidation(startDateString) && this.timestampValidation(endDateString) &&\r\n this.minDateValidation(startDateString) && this.startEndDateValidation(startDateString, endDateString);\r\n };\r\n\r\n private startEndDateValidation(startDateString: string, endDateString: string) {\r\n const startDate = this.createDateTime(startDateString).date;\r\n const endDate = this.createDateTime(endDateString).date;\r\n const isStartEndDateValid = endDate.getTime() >= startDate.getTime();\r\n\r\n if (!isStartEndDateValid)\r\n this.errorMessage = startEndDateError;\r\n\r\n return isStartEndDateValid;\r\n }\r\n\r\n private handleDateTimeMode(dateString: string) {\r\n this.handleDateTimeValidations(dateString);\r\n\r\n if (!this.isValid) {\r\n this.disableChange.emit(true);\r\n return;\r\n }\r\n\r\n const { date, time } = this.createDateTime(dateString);\r\n\r\n this.dateChange.emit(date);\r\n this.timeChange.emit(time);\r\n this.disableChange.emit(false);\r\n }\r\n\r\n private createDateTime(dateString: string) {\r\n const dateParts = dateString.split(' ');\r\n const year = dateParts[0].split('/').reverse().join('-');\r\n const time = dateParts[1];\r\n\r\n const dateTime = `${year}T${time}`;\r\n const date = new Date(dateTime);\r\n\r\n return { date, time };\r\n }\r\n\r\n private handleDateTimeValidations(value: string) {\r\n const pattern = this.showSeconds ? regexExpressions.fullDateTime : regexExpressions.dateTimeWithoutSeconds;\r\n\r\n this.isValid = this.patternValidation(value, pattern) && this.timestampValidation(value) && this.minDateValidation(value);\r\n }\r\n\r\n private minDateValidation(value: string) {\r\n if (!this.minDate)\r\n return true;\r\n\r\n const parts = value.split(' ');\r\n const year = parts[0].split('/').reverse().join('-');\r\n const isDateValid = new Date(year).getTime() >= this.minDate.getTime();\r\n\r\n if (!isDateValid)\r\n this.errorMessage = minDateError;\r\n\r\n return isDateValid;\r\n }\r\n\r\n private patternValidation(value: string, pattern: RegExp) {\r\n const isPatternValid = pattern.test(value);\r\n\r\n if (!isPatternValid)\r\n this.errorMessage = formatError + ' ' + this.placeholder;\r\n\r\n return isPatternValid;\r\n }\r\n\r\n private timestampValidation(date: string) {\r\n const dateTimeParts = date.split(' ');\r\n const timeParts = dateTimeParts[1].split(':');\r\n const dateParts = dateTimeParts[0].split('/');\r\n\r\n const year = parseInt(dateParts[2]);\r\n const month = parseInt(dateParts[1]);\r\n const day = parseInt(dateParts[0]);\r\n const hours = parseInt(timeParts[0]);\r\n\r\n const minutes = parseInt(timeParts[1]);\r\n const seconds = timeParts[2] !== undefined ? parseInt(timeParts[2]) : 0;\r\n const lastDayInMonth = new Date(year, month, 0).getDate();\r\n\r\n const isValidDate = month >= 1 && month <= 12 && day >= 1 && day <= lastDayInMonth;\r\n const isValidTime = hours >= 0 && hours <= 24 && minutes >= 0 && minutes <= 60 && seconds >= 0 && seconds <= 60;\r\n\r\n if (!isValidDate || !isValidTime)\r\n this.errorMessage = timestampError;\r\n\r\n return isValidDate && isValidTime;\r\n }\r\n}","<herum-input-field [placeholder]=\"placeholder\" [errorMsg]=\"errorMessage\" [isValid]=\"isValid\" [isBlurred]=\"true\"\r\n [inputValue]=\"inputValue\" [debounceTime]=\"debounceTime\" [ltrMode]=\"ltrMode\"\r\n (inputValueEmitter)=\"_valueChange($event)\">\r\n</herum-input-field>","import { Component, ElementRef, EventEmitter, Input, Output, SimpleChanges } from '@angular/core';\r\nimport { DateRange } from '@angular/material/datepicker';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-date-time-picker',\r\n templateUrl: './herum-date-time-picker.component.html',\r\n styleUrls: ['./herum-date-time-picker.component.scss']\r\n})\r\nexport class HerumDateTimePickerComponent {\r\n\r\n @Input() showDatePicker: boolean = true;\r\n @Input() showTimePicker: boolean = true;\r\n @Input() showTimeSelect: boolean = false;\r\n\r\n @Input() selectedTime: string;\r\n @Input() selectedDate: Date | DateRange<Date>;\r\n @Input() rangeMode: boolean = false;\r\n @Input() minDate: Date;\r\n\r\n @Input() timePickerHoverColor: string = '';\r\n @Input() timePickerActiveColor: string = '';\r\n\r\n @Input() widthDatePicker: string = '';\r\n @Input() heightTimePicker: string = '';\r\n\r\n @Input() datePickerHoverColor: string = '';\r\n @Input() datePickerActiveColor: string = '';\r\n @Input() showSeconds: boolean = true;\r\n @Input() timePickerItemSize: string = '39px';\r\n\r\n @Output() timeChange = new EventEmitter<string>();\r\n @Output() dateChange = new EventEmitter<Date | DateRange<Date>>();\r\n\r\n hostElement!: HTMLElement;\r\n\r\n constructor(private elementRef: ElementRef) {\r\n this.hostElement = this.elementRef.nativeElement;\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (this.hostElement) {\r\n if (changes['widthDatePicker']?.currentValue)\r\n this.hostElement.style.setProperty('--width-date-picker', this.widthDatePicker);\r\n\r\n if (changes['heightTimePicker']?.currentValue)\r\n this.hostElement.style.setProperty('--height-time-picker', this.heightTimePicker);\r\n }\r\n }\r\n\r\n _timeChange(time: string) {\r\n this.timeChange.emit(time);\r\n }\r\n\r\n _dateChange(date: Date | DateRange<any>) {\r\n this.dateChange.emit(date);\r\n }\r\n}","<div class=\"date-time-picker\" [ngClass]=\"{'flex-column':showTimeSelect && rangeMode}\">\r\n <herum-date-picker *ngIf=\"showDatePicker\" [rangeMode]=\"rangeMode\" [minDate]=\"minDate\"\r\n [hoverColor]=\"datePickerHoverColor\" [activeColor]=\"datePickerActiveColor\" [selectedDate]=\"selectedDate\"\r\n (dateChange)=\"_dateChange($event)\"></herum-date-picker>\r\n\r\n <herum-time-picker *ngIf=\"showTimePicker\" [ngClass]=\"{'me-5':showDatePicker}\" [selectedTime]=\"selectedTime\"\r\n [showSeconds]=\"showSeconds\" [itemSize]=\"timePickerItemSize\" [hoverColor]=\"timePickerHoverColor\"\r\n [activeColor]=\"timePickerActiveColor\" (timeChange)=\"_timeChange($event)\"></herum-time-picker>\r\n</div>","import { Component, ElementRef, EventEmitter, Inject, Input, Output, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { svgsStrings, filesSuffixes, resourcesFilesSuffixes, anySubFileTypeWildCard } from 'herum-shared/constants';\r\nimport { EnvironmentConfig, HERUM_SHARED_CONFIG_TOKEN } from 'herum-shared/environment';\r\n\r\nconst iconsFolderPath: string = 'assets/files-icons/';\r\nconst defaultFileIconPath: string = iconsFolderPath + 'generic-file.svg';\r\nconst requiredFieldMessage = 'חובה לעלות קובץ';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-drop-zone',\r\n templateUrl: './herum-drop-zone.component.html',\r\n styleUrls: ['./herum-drop-zone.component.scss']\r\n})\r\nexport class HerumDropZoneComponent {\r\n\r\n @Input() selectedFiles: File[] = [];\r\n @Input() placeholder: string = 'העלה או גרור לכאן קובץ';\r\n @Input() numberOfAllowedFiles: number = 1;\r\n @Input() allowedFileTypes = [];\r\n @Input() supportedFilesMimes = [];\r\n @Input() supportedFilesTypes = [];\r\n @Input() requiredField = false;\r\n @Input() directionPreview: 'row' | 'column' = 'column';\r\n\r\n @Input() type: 'row' | 'column' = 'column';\r\n @Input() grow: boolean = false;\r\n @Input() fillContainer: boolean = false;\r\n @Input() uploadFileSvg: string = svgsStrings.greyUploadFile;\r\n @Input() previewImageUrl?: string;\r\n @Input() allowToDeleteImage: boolean = true;\r\n\r\n @Output() filesDataEvent = new EventEmitter<File[]>();\r\n\r\n @ViewChild('fileInput') fileInput: ElementRef<HTMLInputElement>;\r\n\r\n filesList: File[] = [];\r\n isLoading: boolean = false;\r\n isDownloadInProgress: boolean = false;\r\n hasExceededNumberOfAllowedFiles: boolean = false;\r\n filesSuffixes: { [key: string]: string } = resourcesFilesSuffixes;\r\n isValidUpload: boolean = true;\r\n isSupportedFileType: boolean = true;\r\n parsedAllowedFileTypes: string = '';\r\n\r\n errorMessages = [\r\n { condition: () => !this.isSupportedFileType && this.isValidUpload, message: 'סוג הקובץ אינו נתמך' },\r\n { condition: () => !this.isValidUpload, message: 'סוג הקובץ אינו תקין' },\r\n {\r\n condition: () => this.hasExceededNumberOfAllowedFiles && this.numberOfAllowedFiles > 1,\r\n message: `ניתן להעלות עד ${this.numberOfAllowedFiles} קבצים`\r\n },\r\n ];\r\n\r\n constructor(@Inject(HERUM_SHARED_CONFIG_TOKEN) private environmentConfig: EnvironmentConfig) {}\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['selectedFiles'] && Array.isArray(this.selectedFiles))\r\n this.filesList = this.selectedFiles;\r\n\r\n if (changes['requiredField'])\r\n this.addOrRemoveRequiredFieldError();\r\n\r\n if (changes['allowedFileTypes'])\r\n this.parsedAllowedFileTypes = this.parseAllowedFileTypes(this.allowedFileTypes);\r\n }\r\n\r\n _onRemoveFile(index: number, event: MouseEvent) {\r\n event.stopPropagation();\r\n this.filesList.splice(index, 1);\r\n if (this.filesList.length <= this.numberOfAllowedFiles)\r\n this.hasExceededNumberOfAllowedFiles = false;\r\n\r\n this.filesDataEvent.emit(this.filesList);\r\n }\r\n\r\n _onRemoveImage(): void {\r\n if (this.allowToDeleteImage) {\r\n this.filesDataEvent.emit([]);\r\n return;\r\n }\r\n\r\n this.fileInput.nativeElement.click();\r\n }\r\n\r\n _onUploadDroppedFiles(event: DragEvent): void {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n\r\n const files = Array.from(event.dataTransfer.files);\r\n this.uploadFiles(files);\r\n }\r\n\r\n _onPreventDefault(event: DragEvent): void {\r\n event.preventDefault();\r\n }\r\n\r\n _onDownloadMediaConvertor(event: MouseEvent) {\r\n event.stopPropagation();\r\n }\r\n\r\n _onUploadFiles(event: Event): void {\r\n event.preventDefault();\r\n\r\n const files = (event.target as HTMLInputElement).files;\r\n\r\n if (!files.length)\r\n return;\r\n\r\n this.uploadFiles(Array.from(files));\r\n }\r\n\r\n _onClickFileInput() {\r\n this.fileInput.nativeElement.click();\r\n }\r\n\r\n private uploadFiles(files: File[]) {\r\n if (this.allowedFileTypes?.length)\r\n this.isValidUpload = this.filesTypeValidation(files);\r\n\r\n if (this.supportedFilesMimes?.length)\r\n this.isSupportedFileType = this.supportedFilesValidation(files);\r\n\r\n if (!this.isValidUpload || !this.isSupportedFileType)\r\n return;\r\n\r\n this.isExceededFilesLength(files);\r\n\r\n if (this.filesList.length === this.numberOfAllowedFiles && files.length < this.numberOfAllowedFiles)\r\n this.filesList = [...files, ...this.filesList.slice(files.length)];\r\n else if (files.length === this.numberOfAllowedFiles)\r\n this.filesList = files;\r\n else if (files.length > this.numberOfAllowedFiles) {\r\n this.filesList = [];\r\n this.filesList.push(...files.slice(0, this.numberOfAllowedFiles));\r\n }\r\n else\r\n files.forEach((file) => this.filesList.push(file));\r\n\r\n this.filesDataEvent.emit(this.filesList);\r\n }\r\n\r\n private supportedFilesValidation(files: File[]) {\r\n return files.some((file) => this.supportedFilesMimes.some(supportedFileType => file.type.includes(supportedFileType)));\r\n }\r\n\r\n private filesTypeValidation(files: File[]) {\r\n if (files.some((file) => file.type === '' || file.type === undefined))\r\n return false;\r\n\r\n return files.some((file) => this.allowedFileTypes.some((splitFileType) => file.type.includes(splitFileType)));\r\n }\r\n\r\n private isExceededFilesLength(files: File[]) {\r\n if (files.length + this.filesList.length > this.numberOfAllowedFiles)\r\n this.hasExceededNumberOfAllowedFiles = true;\r\n else\r\n this.hasExceededNumberOfAllowedFiles = false;\r\n }\r\n\r\n getIconPath(file: File): string {\r\n let filePath: string = '';\r\n const uploadedFileSuffix: string = '.' + file?.name.split('.').pop();\r\n\r\n Object.values(resourcesFilesSuffixes).forEach(fileSuffix => {\r\n if (fileSuffix === uploadedFileSuffix)\r\n filePath = iconsFolderPath + fileSuffix + '.svg';\r\n })\r\n\r\n for (const [fileSuffixKey, fileSuffixValue] of Object.entries(filesSuffixes))\r\n if (fileSuffixValue.includes(uploadedFileSuffix.slice(1)))\r\n filePath = iconsFolderPath + '.' + fileSuffixKey + '.svg'\r\n\r\n return filePath ? filePath : defaultFileIconPath;\r\n }\r\n\r\n get convertorMediaPath() {\r\n return `${this.environmentConfig?.environment?.s3ServerPath}${this.environmentConfig?.buckets?.GeneralFiles}XMediaRecode.exe`;\r\n }\r\n\r\n private parseAllowedFileTypes(allowedFileTypes: string[]): string {\r\n if (!allowedFileTypes || !allowedFileTypes?.length)\r\n return '';\r\n\r\n return allowedFileTypes.map(allowedFileType => allowedFileType + anySubFileTypeWildCard).join(', ');\r\n }\r\n\r\n private addOrRemoveRequiredFieldError() {\r\n if (this.requiredField) {\r\n this.errorMessages.push(\r\n {\r\n condition: () => !this.filesList.length,\r\n message: requiredFieldMessage\r\n });\r\n\r\n return;\r\n }\r\n\r\n this.errorMessages = this.errorMessages.filter(errorMessage => errorMessage.message !== requiredFieldMessage);\r\n }\r\n}","<button class=\"dropzone\" [class.not-displayed]=\"previewImageUrl\" [class.fill-container]=\"fillContainer\"\r\n [style.height]=\"grow ? '100%' : ''\" (drop)=\"_onUploadDroppedFiles($event)\" (click)=\"_onClickFileInput()\"\r\n (dragover)=\"_onPreventDefault($event)\">\r\n <div svgOnHover class=\"dropzone-content upload-file-border\" [style.height]=\"grow ? '100%' : '130px'\"\r\n [ngClass]=\"{'row-dropzone':type=='row'}\"\r\n [ngStyle]=\"{'justify-content': (filesList?.length || type == 'row') ? 'start' : 'center'}\">\r\n <div class=\"center-icon\" [ngClass]=\"{'upload-file-row-preview':directionPreview==='row' }\"\r\n *ngIf=\"!filesList?.length\">\r\n <span class=\"upload-file-image mb-2\" [style.height]=\"grow ? '60px' : ''\" [style.width]=\"grow ? '60px' : ''\"\r\n [innerHTML]=\"uploadFileSvg | safeHtml\">\r\n </span>\r\n\r\n <div class=\"dropzone-text\" [style.fontSize]=\"grow ? 'large' : ''\"> {{ placeholder }} </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"filesList?.length > 0\">\r\n <div class=\"files-container\" *ngFor=\"let file of filesList; index as i\">\r\n <img [src]=\"getIconPath(file)\" alt=\"#{{i+1}} picture\" />\r\n\r\n <span class=\"file-name truncate\"> {{ file?.name }}</span>\r\n\r\n <div class=\"delete-container\" (click)=\"_onRemoveFile(i, $event)\">\r\n <img class=\"delete-button\" src=\"assets/general/secondary-x.svg\">\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div *ngFor=\"let error of errorMessages\">\r\n <span *ngIf=\"error.condition()\" class=\"error-msg\"\r\n [matTooltip]=\"!isSupportedFileType ? 'סוגי הקבצים הנתמכים: ' + supportedFilesTypes : ''\">\r\n {{ error.message }}\r\n </span>\r\n </div>\r\n\r\n <span (click)=\"$event.stopPropagation()\">\r\n <herum-download-file *ngIf=\"!isSupportedFileType\" [filePath]=\"convertorMediaPath\"\r\n linkText=\"להורדה תוכנת המרת מדיה\">\r\n </herum-download-file>\r\n </span>\r\n </div>\r\n</button>\r\n\r\n<div *ngIf=\"previewImageUrl\" class=\"preview-wrapper\">\r\n <div class=\"image-container\">\r\n <img [src]=\"previewImageUrl\" alt=\"Preview\" class=\"preview-image\">\r\n\r\n <button type=\"button\" class=\"remove-btn\" aria-label=\"Remove image\" (click)=\"_onRemoveImage()\">\r\n <img class=\"remove-icon\" src=\"assets/general/secondary-x.svg\" alt=Remove />\r\n </button>\r\n </div>\r\n</div>\r\n\r\n<input #fileInput class=\"d-none\" type=\"file\" [accept]=\"parsedAllowedFileTypes\" (change)=\"_onUploadFiles($event)\"\r\n multiple>","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-expendable-panel',\r\n templateUrl: './herum-expendable-panel.component.html',\r\n styleUrls: ['./herum-expendable-panel.component.scss']\r\n})\r\nexport class HerumExpendablePanelComponent {\r\n\r\n @Input() title!: string;\r\n @Input() isBoldTitle: boolean = false;\r\n\r\n isContentDisplayed: boolean = true;\r\n\r\n _onToggleContentDisplay(event: MouseEvent) {\r\n event.stopPropagation();\r\n this.isContentDisplayed = !this.isContentDisplayed;\r\n }\r\n}","<div class=\"collection-priority-expendable-panel-container\">\r\n <p class=\"expendable-panel-title m-0\"\r\n [ngClass]=\"{'displayed': isContentDisplayed, 'not-displayed': !isContentDisplayed,'bold': isBoldTitle}\"\r\n (click)=\"_onToggleContentDisplay($event)\">\r\n {{title}}\r\n </p>\r\n\r\n <ng-content *ngIf=\"isContentDisplayed\"></ng-content>\r\n</div>","import { Component, EventEmitter, Inject, Input, Output, SimpleChanges } from '@angular/core';\r\nimport { FileData } from 'herum-shared/herum-types';\r\nimport { EnvironmentConfig, HERUM_SHARED_CONFIG_TOKEN } from 'herum-shared/environment';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-files-viewer',\r\n templateUrl: './herum-files-viewer.component.html',\r\n styleUrls: ['./herum-files-viewer.component.scss']\r\n})\r\nexport class HerumFilesViewerComponent {\r\n\r\n @Input() fileData: FileData;\r\n @Input() showDeleteFileButton: boolean = false;\r\n\r\n @Output() downloadFile = new EventEmitter<FileData>();\r\n @Output() deleteFile = new EventEmitter<FileData>();\r\n\r\n srcPath!: string;\r\n fileType!: string;\r\n\r\n constructor(@Inject(HERUM_SHARED_CONFIG_TOKEN) private environmentConfig: EnvironmentConfig) { }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes['fileData']?.currentValue) {\r\n const fileToDisplay = this.fileData.file?.size === 0;\r\n\r\n if (this.fileData.file && !fileToDisplay) {\r\n const type = this.fileData.file.type;\r\n const typeIndex = type.includes('pdf') ? 1 : 0;\r\n this.fileType = type.split(\"/\")[typeIndex];\r\n this.srcPath = URL.createObjectURL(this.fileData.file);\r\n return;\r\n }\r\n\r\n const type = this.fileData.type;\r\n const typeIndex = type?.includes('pdf') ? 1 : 0;\r\n this.fileType = type?.split(\"/\")[typeIndex];\r\n this.srcPath = this.environmentConfig?.environment?.s3ServerPath + this.fileData.bucket + \"/\" + this.fileData.key;\r\n }\r\n }\r\n\r\n _onDeleteFile() {\r\n this.deleteFile.emit(this.fileData);\r\n }\r\n\r\n _downloadFile() {\r\n this.downloadFile.emit(this.fileData);\r\n }\r\n}\r\n","<ng-container [ngSwitch]=\"fileType\">\r\n <div class=\"image-container\" *ngSwitchCase=\"'image'\">\r\n <img [style.background-image]=\"'url(' + srcPath + ')'\" [class.image-hover]=\"showDeleteFileButton\">\r\n </div>\r\n\r\n <herum-video-player *ngSwitchCase=\"'video'\" [srcPath]=\"srcPath\" [isResourceInWideMode]=\"true\"></herum-video-player>\r\n\r\n <herum-pdf-viewer *ngSwitchCase=\"'pdf'\" [srcPath]=\"srcPath\" [isResourceInWideMode]=\"true\"></herum-pdf-viewer>\r\n\r\n <herum-audio-player *ngSwitchCase=\"'audio'\" [id]=\"fileData.key\" [bucketName]=\"fileData.bucket\"\r\n [audioFile]=\"fileData.file\">\r\n </herum-audio-player>\r\n\r\n <herum-download-file *ngSwitchDefault linkText=\"הקובץ אינו נתמך, ניתן להורדו\" (downloadFile)=\"_downloadFile()\">\r\n </herum-download-file>\r\n</ng-container>\r\n\r\n<button *ngIf=\"showDeleteFileButton\" class=\"delete-file-button\" (click)=\"_onDeleteFile()\">\r\n <img src=\"assets/general/secondary-x.svg\" />\r\n</button>","import { ChangeDetectorRef, Component, EventEmitter, Inject, Input, Output, SimpleChanges } from '@angular/core';\r\nimport { svgsStrings, system } from 'herum-shared/constants';\r\nimport { NodeMenuItem, SystemTreeNodeData, TreeNodeAssignmentsData } from 'herum-shared/herum-types';\r\nimport { EnvironmentConfig, HERUM_SHARED_CONFIG_TOKEN } from 'herum-shared/environment';\r\nimport { isTruncatedTitleElement } from 'herum-shared/utils';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-hierarchy-tree-node',\r\n templateUrl: './herum-hierarchy-tree-node.component.html',\r\n styleUrls: ['./herum-hierarchy-tree-node.component.scss'],\r\n})\r\nexport class HerumHierarchyTreeNodeComponent {\r\n\r\n @Input() treeNodeData: TreeNodeAssignmentsData;\r\n @Input() size: \"small\" | \"regular\" = 'regular';\r\n @Input() expandedMode: \"open\" | \"close\" | \"none\" = 'none';\r\n @Input() showArrow: boolean = true;\r\n @Input() showAssignmentsDetails: boolean = true;\r\n @Input() nodeMenuItems: NodeMenuItem<SystemTreeNodeData>[] = [];\r\n\r\n @Output() onNodeSelected = new EventEmitter<boolean>()\r\n @Output() onMenuItemSelected = new EventEmitter<NodeMenuItem<SystemTreeNodeData>>()\r\n @Output() onExpand = new EventEmitter<boolean>();\r\n\r\n isExpand: boolean = true\r\n\r\n constructor(private changeDetectorRef: ChangeDetectorRef, @Inject(HERUM_SHARED_CONFIG_TOKEN) private environmentConfig: EnvironmentConfig) { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['treeNodeData']?.currentValue)\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n _isTruncatedTitleElement(element: HTMLElement): boolean {\r\n return isTruncatedTitleElement(element);\r\n }\r\n\r\n _onExpand() {\r\n this.isExpand = !this.isExpand;\r\n this.onExpand.emit(this.isExpand);\r\n }\r\n\r\n _onNodeSelected() {\r\n this.onNodeSelected.emit(true);\r\n }\r\n\r\n _onMenuItemSelected(item: NodeMenuItem<SystemTreeNodeData>) {\r\n item.additionalData = this.treeNodeData;\r\n this.onMenuItemSelected.emit(item);\r\n }\r\n\r\n get toRPActualAssignmentsDisplayText() {\r\n return 'תקנים בפועל'\r\n }\r\n\r\n get expectedAssignmentsDisplayText() {\r\n return 'פוטנציאל אג\"תי'\r\n }\r\n\r\n get invalidAssignmentsDisplayText() {\r\n return 'תקנים אכ\"אים'\r\n }\r\n\r\n get negativePercentage() {\r\n if (!this.showAssignmentsDetails) return 0;\r\n return (this.treeNodeData.totals?.invalidAssignments / this.treeNodeData.totals?.toRPExpectedAssignments) * 100;\r\n }\r\n\r\n get smallChevronSvg() {\r\n return svgsStrings.smallChevron;\r\n }\r\n\r\n get systemIdentifier() {\r\n return this.environmentConfig?.environment?.systemIdentifier\r\n }\r\n\r\n get isHerum() {\r\n return this.environmentConfig?.environment?.systemIdentifier == system.herum;\r\n }\r\n\r\n get isHadracha() {\r\n return this.environmentConfig?.environment?.systemIdentifier == system.hadracha;\r\n }\r\n}","<div class=\"node-container\" [class]=\"systemIdentifier\" [id]=\"'tree-node-container-' + treeNodeData.id\"\r\n *ngIf=\"treeNodeData\" [ngClass]=\"treeNodeData.status + ' ' + size + ' ' + expandedMode\" #nodeTitle appHerumToolTip>\r\n <div class=\"decorative-line\"></div>\r\n\r\n <div class=\"menu-icon-container\" *ngIf=\"nodeMenuItems?.length > 0\">\r\n <img src=\"/assets/hadracha/general/menu-button.svg\" [matMenuTriggerFor]=\"menu\">\r\n <mat-menu #menu=\"matMenu\">\r\n <button mat-menu-item *ngFor=\"let nodeMenuItem of nodeMenuItems\"\r\n (click)=\"_onMenuItemSelected(nodeMenuItem)\">\r\n <img src=\"/assets/hadracha/structs/{{nodeMenuItem.iconName}}.svg\">\r\n {{ nodeMenuItem.displayText }}\r\n </button>\r\n </mat-menu>\r\n </div>\r\n\r\n <p #treeNodeDataTitle [id]=\"'tree-node-title-' + treeNodeData.id\"\r\n [matTooltip]=\"_isTruncatedTitleElement(nodeTitle) ? treeNodeData.title : ''\" (click)=\"_onNodeSelected()\">\r\n {{treeNodeData.title | ellipsis:treeNodeDataTitle }}\r\n </p>\r\n\r\n <p class=\"totals\" *ngIf=\"showAssignmentsDetails\">\r\n <ng-container *ngIf=\"isHerum\">\r\n <span [matTooltip]='toRPActualAssignmentsDisplayText'> {{this.treeNodeData.totals?.toRPActualAssignments}}\r\n </span> /\r\n <span [matTooltip]='expectedAssignmentsDisplayText'> {{this.treeNodeData.totals?.toRPExpectedAssignments}}\r\n </span>\r\n <span class=\"invalid-assignments\" [ngClass]=\"{'green':this.treeNodeData.totals?.invalidAssignments == 0}\"\r\n [matTooltip]='invalidAssignmentsDisplayText'>\r\n +{{this.treeNodeData.totals?.invalidAssignments}}\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"isHadracha\">\r\n <div class=\"total-value\">\r\n {{this.treeNodeData.totals.total}}\r\n </div>\r\n <p class=\"total-text\">חניכים</p>\r\n </ng-container>\r\n </p>\r\n\r\n <br *ngIf=\"!showAssignmentsDetails\">\r\n\r\n <div class=\"row\">\r\n <herum-progress-bar *ngIf=\"!isHadracha\" [percentage]=\"treeNodeData.percentage ? treeNodeData.percentage:0 \"\r\n [negativePercentage]=\"negativePercentage\" [type]=\"'solid'\" [size]=\"'tight'\">\r\n </herum-progress-bar>\r\n\r\n <span class=\"chevron\" *ngIf=\"showArrow\" [ngStyle]=\"{transform: isExpand ? 'rotate(180deg)' : 'none'}\"\r\n [innerHTML]=\"smallChevronSvg | safeHtml\" (click)=\"_onExpand()\">\r\n </span>\r\n </div>\r\n</div>","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-multi-progress-bar',\r\n templateUrl: './herum-multi-progress-bar.component.html',\r\n styleUrls: ['./herum-multi-progress-bar.component.scss']\r\n})\r\nexport class HerumMultiProgressBarComponent implements OnInit {\r\n\r\n @Input() progressBarsSections: {\r\n label: string,\r\n percentage: number,\r\n progressBars: {\r\n label: string,\r\n value: number,\r\n percentage: number,\r\n color: string,\r\n }[]\r\n }[]\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n getBorderRadius(sectionIndex: number, progressBarIndex: number) {\r\n if (this.progressBarsSections.length == 1 && this.progressBarsSections[0].progressBars.length == 1)\r\n return 'both';\r\n\r\n switch (sectionIndex) {\r\n case 0:\r\n return progressBarIndex == 0 ? 'left' : 'none';\r\n case this.progressBarsSections.length - 1:\r\n return progressBarIndex == this.progressBarsSections[sectionIndex].progressBars.length - 1 ? 'right' : 'none';\r\n default:\r\n return 'none';\r\n }\r\n }\r\n}","<div class=\"sections-bars-container\">\r\n <div class=\"progress-bars-container\" *ngFor=\"let section of progressBarsSections; let sectionIndex = index\"\r\n [ngStyle]=\"{'width':(section.percentage + '%')}\">\r\n <herum-progress-bar *ngFor=\"let progressBar of section.progressBars; let progressBarIndex = index\"\r\n [color]=\"progressBar.color\" [percentage]=\"progressBar.value\" [borderRadius]=\"getBorderRadius(sectionIndex,progressBarIndex)\"\r\n [ngStyle]=\"{'width':(progressBar.percentage + '%')}\"></herum-progress-bar>\r\n </div>\r\n</div>","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-navigator',\r\n templateUrl: './herum-navigator.component.html',\r\n styleUrls: ['./herum-navigator.component.scss']\r\n})\r\nexport class HerumNavigatorComponent {\r\n\r\n @Input() isFirstItem: boolean = false;\r\n @Input() isLastItem: boolean = false;\r\n\r\n @Input() nextButtonText: string = 'לשיעור הבא';\r\n @Input() previousButtonText: string = 'לשיעור הקודם';\r\n\r\n @Input() isNextButtonDisable: boolean = false;\r\n @Input() isBackButtonDisable: boolean = false;\r\n\r\n @Input() currentItemIndex!: number;\r\n\r\n @Output() updatedItemIndex = new EventEmitter<number>();\r\n\r\n _onPreviousItem(currentItemIndex: number) {\r\n this.updatedItemIndex.emit(--currentItemIndex);\r\n }\r\n\r\n _onNextItem(currentItemIndex: number) {\r\n this.updatedItemIndex.emit(++currentItemIndex);\r\n }\r\n}","<div class=\"buttons-container\">\r\n <herum-button *ngIf=\"!isFirstItem\" [size]=\"'medium'\" [type]=\"'ghost'\" [disabled]=\"isBackButtonDisable\" id=\"prev\"\r\n (click)=\"_onPreviousItem(currentItemIndex)\">\r\n {{previousButtonText}}\r\n </herum-button>\r\n\r\n <herum-button *ngIf=\"!isLastItem\" [size]=\"'medium'\" [disabled]=\"isNextButtonDisable\" id=\"next\"\r\n (click)=\"_onNextItem(currentItemIndex)\">\r\n {{nextButtonText}}\r\n </herum-button>\r\n</div>","import { Component, Input } from '@angular/core';\r\nimport { Step } from 'herum-shared/herum-types';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-step-navigator',\r\n templateUrl: './herum-step-navigator.component.html',\r\n styleUrls: ['./herum-step-navigator.component.scss']\r\n})\r\nexport class HerumStepNavigatorComponent {\r\n\r\n @Input() steps: Step[];\r\n}","<div class=\"steps\">\r\n <div *ngFor=\"let step of steps\" class=\"stepper-item\"\r\n [ngClass]=\"{'completed-step': step.status === 0, 'active-step': step.status === 1}\">\r\n <herum-radio-button [options]=\"[{id:step.index, name:step.label}]\" [selectedOption]=\"step.index\"\r\n [isBlocked]=\"true\" [type]=\"step.status === 0 ? 'completed' : step.status === 2 ? 'disabled' :'checked'\">\r\n </herum-radio-button>\r\n </div>\r\n</div>","import { Component, Input } from '@angular/core';\r\nimport { Step, StepStatus } from 'herum-shared/herum-types';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-stepper',\r\n templateUrl: './herum-stepper.component.html',\r\n styleUrls: ['./herum-stepper.component.scss']\r\n})\r\nexport class HerumStepperComponent {\r\n\r\n @Input() color: 'primary' | 'white' = 'primary';\r\n @Input() useDymanicSize: boolean = false;\r\n @Input() steps: Step[] = [\r\n {\r\n index: 1,\r\n label: \"פרטים\",\r\n status: StepStatus.Complete,\r\n },\r\n {\r\n index: 2,\r\n label: \"שיוך מארזים\",\r\n status: StepStatus.Complete,\r\n },\r\n {\r\n index: 1,\r\n label: \"הנוכחי\",\r\n status: StepStatus.Current,\r\n },\r\n {\r\n index: 1,\r\n label: \"סיכום\",\r\n status: StepStatus.Incomplete,\r\n }\r\n ];\r\n @Input() current: number = this.steps.length;\r\n\r\n getStepItemStyle(index: number) {\r\n if (!this.useDymanicSize)\r\n return null;\r\n\r\n if (index > this.current)\r\n return { 'opacity': Math.max((1 - (index - this.current) / index) + 0.1, 1 - (index / this.steps.length)) };\r\n\r\n if (index < this.current)\r\n return { 'opacity': Math.max((index / this.current) + 0.1, (index / this.steps.length)) };\r\n }\r\n}","<div class=\"stepper-wrapper\" [ngStyle]=\"{'gap': color=='white' ? '24px' : '0', 'margin-bottom': color=='white' ? '0' : '20px'}\">\r\n <ng-container *ngFor=\"let step of steps; let i = index\">\r\n <ng-container *ngIf=\"!step.iconPath\">\r\n <ng-container [ngSwitch]=\"step.status\">\r\n <div *ngSwitchCase=\"0\" class=\"stepper-item completed\">\r\n <div class=\"step-counter\">\r\n <img src=\"assets/shared/icons/stepper/white-v.svg\" width=\"15px\" alt=\"checked\" />\r\n </div>\r\n <div class=\"step-name\">{{step.label}}</div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"1\" class=\"stepper-item active\">\r\n <div class=\"step-counter\">\r\n <div class=\"current-inner-circle\"></div>\r\n </div>\r\n <div class=\"step-name\">{{step.label}}</div>\r\n </div>\r\n\r\n <div *ngSwitchCase=\"2\" class=\"stepper-item\">\r\n <div class=\"step-counter\">\r\n <div class=\"current-inner-circle\"></div>\r\n </div>\r\n <div class=\"step-name\">{{step.label}}</div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"step.iconPath\">\r\n <div class=\"stepper-item white\" [ngStyle]=\"getStepItemStyle(i)\">\r\n <div class=\"step-counter\" [ngStyle]=\"{ 'transform': i == current ? 'scale(1.5)' : '' }\">\r\n <img [src]=\"step.iconPath\">\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n</div>","import { Component, EventEmitter, Input, Output, SimpleChanges } from '@angular/core';\r\nimport { IdentifiedEntity } from 'herum-shared/herum-types';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-time-select',\r\n templateUrl: './herum-time-select.component.html',\r\n styleUrls: ['./herum-time-select.component.scss']\r\n})\r\nexport class HerumTimeSelectComponent {\r\n\r\n @Input() showSeconds: boolean = true;\r\n @Input() minutesPlaceholder: string = 'דקות';\r\n @Input() secondsPlaceholder: string = 'שניות';\r\n @Input() hoursPlaceholder: string = 'שעות';\r\n @Input() selectedTime: string = '00:00:00';\r\n @Input() label: string = '';\r\n\r\n @Output() timeChange = new EventEmitter<string>();\r\n\r\n selectedHour!: IdentifiedEntity;\r\n selectedMinute!: IdentifiedEntity;\r\n selectedSecond!: IdentifiedEntity;\r\n\r\n hours: IdentifiedEntity[] = this.generateIdentifiedEntityTimeArray(24);\r\n minutes: IdentifiedEntity[] = this.generateIdentifiedEntityTimeArray(60);\r\n seconds: IdentifiedEntity[] = this.generateIdentifiedEntityTimeArray(60);\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['selectedTime'].currentValue)\r\n this.selectedTimeToSelectedIdentifiedEntities(this.selectedTime);\r\n }\r\n\r\n _selectedSecondOptionChange(updatedSecond: IdentifiedEntity) {\r\n this.selectedSecond = updatedSecond;\r\n this.emitSelectedTime();\r\n }\r\n\r\n _selectedMinuteOptionChange(updatedMinute: IdentifiedEntity) {\r\n this.selectedMinute = updatedMinute;\r\n this.emitSelectedTime();\r\n }\r\n\r\n _selectedHourOptionChange(updatedHour: IdentifiedEntity) {\r\n this.selectedHour = updatedHour;\r\n this.emitSelectedTime();\r\n }\r\n\r\n private emitSelectedTime() {\r\n const formattedTime = this.formatTime(this.selectedHour.name, this.selectedMinute.name, this.selectedSecond?.name);\r\n this.selectedTime = formattedTime;\r\n this.timeChange.emit(formattedTime);\r\n }\r\n\r\n private formatTime(hours: string, minutes: string, seconds: string | undefined): string {\r\n const hoursAndMinutes = `${hours.padStart(2, '0')}:${minutes.padStart(2, '0')}`;\r\n\r\n return !this.showSeconds ? hoursAndMinutes : hoursAndMinutes + `:${seconds?.padStart(2, '0')}`;\r\n }\r\n\r\n private selectedTimeToSelectedIdentifiedEntities(selectedTime: string) {\r\n [this.selectedHour, this.selectedMinute, this.selectedSecond] = selectedTime.split(':').map((value) => ({ id: value, name: value }));\r\n }\r\n\r\n private generateIdentifiedEntityTimeArray(length: number): IdentifiedEntity[] {\r\n return Array.from({ length }, (_, index) => ({\r\n id: String(index).padStart(2, '0'),\r\n name: String(index).padStart(2, '0')\r\n }));\r\n }\r\n}","<div>\r\n <label class=\"input-title\">{{label}}</label>\r\n\r\n <div class=\"time-container\">\r\n <ng-container *ngIf=\"showSeconds\">\r\n <herum-select [options]=\"seconds\" [selectedOption]=\"selectedSecond\" size='min'\r\n [placeholder]=\"secondsPlaceholder\" [label]=\"start\"\r\n (selectedOptionEmitter)=\"_selectedSecondOptionChange($event)\"></herum-select>\r\n\r\n <span class=\"seperator\">:</span>\r\n </ng-container>\r\n\r\n <herum-select [options]=\"minutes\" size='min' [selectedOption]=\"selectedMinute\"\r\n [placeholder]=\"minutesPlaceholder\"\r\n (selectedOptionEmitter)=\"_selectedMinuteOptionChange($event)\"></herum-select>\r\n\r\n <span class=\"seperator\">:</span>\r\n\r\n <herum-select [options]=\"hours\" size='min' [selectedOption]=\"selectedHour\" [placeholder]=\"hoursPlaceholder\"\r\n (selectedOptionEmitter)=\"_selectedHourOptionChange($event)\"></herum-select>\r\n </div>\r\n</div>","import { Component, Input } from '@angular/core';\r\nimport { User } from 'herum-shared/herum-types';\r\nimport { getAssignmentStateDisplayName } from 'herum-shared/utils';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'herum-user-profile',\r\n templateUrl: './herum-user-profile.component.html',\r\n styleUrls: ['./herum-user-profile.component.scss']\r\n})\r\nexport class HerumUserProfileComponent {\r\n\r\n @Input() userData: User;\r\n @Input() mode: 'vertical' | 'horizontal' = 'vertical';\r\n @Input() titleSize: 'big' | 'medium' | 'small' = 'big';\r\n @Input() imageSize: 'image-default-size' | 'image-small-size' = 'image-default-size';\r\n\r\n get userFullName() {\r\n return this.userData?.firstName + ' ' + this.userData?.lastName;\r\n }\r\n\r\n get fullHierarchyName() {\r\n if (!this.userData.assignments || !this.userData.assignments.length)\r\n return this.userData.profession;\r\n\r\n return this.userData.assignments[0].structPreview.fullHierarchyName;\r\n }\r\n\r\n get assignmentStateDisplayName() {\r\n if (!this.userData.assignments || this.userData.assignments.length == 0) return ''\r\n return getAssignmentStateDisplayName(this.userData.assignments[0].assignmentMetadata.state);\r\n }\r\n}","<div class=\"profile-top-conatiner\" [ngClass]=\"mode\" *ngIf=\"userData\">\r\n <user-profile-image [user]=\"userData\" [imageSize]=\"imageSize\" [mode]=\"mode\"></user-profile-image>\r\n\r\n <div class=\"profile-name-container\">\r\n <p\r\n [ngClass]=\"{'section-header-title': titleSize === 'medium','profile-title': titleSize === 'big','section-title': titleSize === 'small'}\">\r\n {{userFullName}}\r\n\r\n <herum-chip *ngIf=\"userData.assignments?.length > 0\"\r\n [type]=\"userData.assignments[0].assignmentMetadata?.state == 2 ? 'negative':'positive'\"\r\n [title]=\"assignmentStateDisplayName\" [isDeleteButtonNeeded]=\"false\"></herum-chip>\r\n </p>\r\n <p class=\"profile-subtitle\">{{fullHierarchyName}}</p>\r\n <p class=\"profile-description\" *ngIf=\"mode=='horizontal'\">{{userData.profession}}</p>\r\n </div>\r\n</div>","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'app-herum-user-progress',\r\n templateUrl: './herum-user-progress.component.html',\r\n styleUrls: ['./herum-user-progress.component.scss']\r\n})\r\nexport class HerumUserProgressComponent {\r\n\r\n @Input() title: string = 'מדד כשירות כללי';\r\n @Input() percentage: number = 65;\r\n @Input() type: 'gradient' | 'solid' = 'gradient';\r\n\r\n get percentageLabel() {\r\n return this.percentage < 40 ?\r\n 'כשירות נמוכה' : this.percentage < 80 ?\r\n 'כשירות בינונית' : this.percentage < 99 ?\r\n 'כשירות טובה מאוד' : 'כשירות מושלמת! כל הכבוד!';\r\n }\r\n}","<div class=\"user-progress-container\" [ngClass]=\"{'p-0':type == 'solid'}\">\r\n <div class=\"mb-2 row\">\r\n <div class=\"col-7 section-title\">{{ title }}</div>\r\n <div class=\"col-5 section-title left\">{{ percentageLabel }}</div>\r\n </div>\r\n\r\n <herum-progress-bar [percentage]=\"percentage\" [type]=\"'solid'\"></herum-progress-bar>\r\n</div>","import { Component, Input } from '@angular/core';\r\nimport { KeyValue } from 'herum-shared/herum-types';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'key-value-list',\r\n templateUrl: './key-value-list.component.html',\r\n styleUrls: ['./key-value-list.component.scss']\r\n})\r\nexport class KeyValueListComponent {\r\n\r\n @Input() items: KeyValue[] = [];\r\n}","\r\n<div class=\"item-contianer mb-1\" *ngFor=\"let item of items\">\r\n <div *ngIf=\"item.iconPath\" class=\"col-1\">\r\n <img *ngIf=\"item.iconPath\" [src]=\"item.iconPath\">\r\n </div>\r\n <div class=\"key col-4 bold\">{{item.key}}</div>\r\n <div class=\"value col-7 truncate\" [matTooltip]=\"item.value\">{{item.value}}</div>\r\n</div>","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'labels-with-icons-list',\r\n templateUrl: './labels-with-icons-list.component.html',\r\n styleUrls: ['./labels-with-icons-list.component.scss']\r\n})\r\nexport class LabelsWithIconsListComponent {\r\n\r\n @Input() items: { iconPath: string, label: string }[] = [];\r\n}","<div class=\"label-item\" *ngFor=\"let item of items\">\r\n <img [src]=\"item.iconPath\" alt=\" \" />\r\n <p>{{ item.label }}</p>\r\n</div>","import { Component, Input } from '@angular/core';\r\nimport { ProgressOverView } from 'herum-shared/herum-types';\r\n\r\n@Component({\r\n standalone: false,\r\n selector: 'progresses-over-view',\r\n templateUrl: './progresses-over-view.component.html',\r\n styleUrls: ['./progresses-over-view.component.scss']\r\n})\r\nexport class ProgressesOverViewComponent {\r\n\r\n @Input() titleSize: 'section-title' | 'section-header-title' = 'section-header-title';\r\n @Input() circularProgressSize: 'default-size' | 'big-size' = 'big-size';\r\n @Input() progressesOverView: ProgressOverView[] = [];\r\n @Input() progressOverViewDirection: 'column' | 'row' = 'row';\r\n @Input() containerProgressesOverViewDirection: 'column' | 'row' = 'column';\r\n}","<div class=\"layout\">\r\n <div class=\"progresses-container\"\r\n [ngClass]=\"{'row-progresses-container':containerProgressesOverViewDirection === 'row'}\">\r\n <div class=\"progress-over-view\" [ngClass]=\"{'flex-direction-column':progressOverViewDirection === 'column'}\"\r\n *ngFor=\"let progressOverView of progressesOverView\">\r\n <herum-circular-progress-bar [fill]=\"false\" [showPercentage]=\"progressOverView.showPercentage\"\r\n [percentage]=\"progressOverView.progress\" [displayedContent]=\"progressOverView.displayedContent\"\r\n [displayedContentColorMatchesGradientColor]=\"progressOverView.displayedContentColorMatchesGradientColor\"\r\n [firstGradient]=\"progressOverView.firstGradient\" [size]=\"circularProgressSize\">\r\n </herum-circular-progress-bar>\r\n\r\n <div class=\"progress-labels\" [ngClass]=\"{'align-items-center':progressOverViewDirection === 'column'}\">\r\n <h2 class=\"section-header-title m-0 p-0\" [ngClass]=\"[titleSize]\">\r\n {{ progressOverView.title }}\r\n </h2>\r\n\r\n <span *ngIf=\"progressOverView.description\" class=\"w-100 text-align-right\">\r\n {{ progressOverView.description }}\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule } from '@angular/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { ClipboardModule } from '@angular/cdk/clipboard';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSliderModule } from '@angular/material/slider';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { PipesModule } from 'herum-shared/pipes';\r\nimport { AtomsModule } from 'herum-shared/atoms';\r\n\r\nimport { HerumActiveLinkComponent } from './herum-active-link/herum-active-link.component';\r\nimport { HerumActiveMenuComponent } from './herum-active-menu/herum-active-menu.component';\r\nimport { HerumAutocompleteComponent } from './herum-autocomplete/herum-autocomplete.component';\r\nimport { HerumClosedListMultiSelectComponent } from './herum-closed-list-multi-select/herum-closed-list-multi-select.component';\r\nimport { HerumClosedListSelectComponent } from './herum-closed-list-select/herum-closed-list-select.component';\r\nimport { HerumDateTimeInputComponent } from './herum-date-time-input/herum-date-time-input.component';\r\nimport { HerumDateTimePickerComponent } from './herum-date-time-picker/herum-date-time-picker.component';\r\nimport { HerumDropZoneComponent } from './herum-drop-zone/herum-drop-zone.component';\r\nimport { HerumExpendablePanelComponent } from './herum-expendable-panel/herum-expendable-panel.component';\r\nimport { HerumFilesViewerComponent } from './herum-files-viewer/herum-files-viewer.component';\r\nimport { HerumHierarchyTreeNodeComponent } from './herum-hierarchy-tree-node/herum-hierarchy-tree-node.component';\r\nimport { HerumMultiProgressBarComponent } from './herum-multi-progress-bar/herum-multi-progress-bar.component';\r\nimport { HerumNavigatorComponent } from './herum-navigator/herum-navigator.component';\r\nimport { HerumStepNavigatorComponent } from './herum-step-navigator/herum-step-navigator.component';\r\nimport { HerumStepperComponent } from './herum-stepper/herum-stepper.component';\r\nimport { HerumTimeSelectComponent } from './herum-time-select/herum-time-select.component';\r\nimport { HerumUserProfileComponent } from './herum-user-profile/herum-user-profile.component';\r\nimport { HerumUserProgressComponent } from './herum-user-progress/herum-user-progress.component';\r\nimport { KeyValueListComponent } from './key-value-list/key-value-list.component';\r\nimport { LabelsWithIconsListComponent } from './labels-with-icons-list/labels-with-icons-list.component';\r\nimport { ProgressesOverViewComponent } from './progresses-over-view/progresses-over-view.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n HerumActiveLinkComponent,\r\n HerumActiveMenuComponent,\r\n HerumAutocompleteComponent,\r\n HerumClosedListMultiSelectComponent,\r\n HerumClosedListSelectComponent,\r\n HerumDateTimeInputComponent,\r\n HerumDateTimePickerComponent,\r\n HerumDropZoneComponent,\r\n HerumExpendablePanelComponent,\r\n HerumFilesViewerComponent,\r\n HerumHierarchyTreeNodeComponent,\r\n HerumMultiProgressBarComponent,\r\n HerumNavigatorComponent,\r\n HerumStepNavigatorComponent,\r\n HerumStepperComponent,\r\n HerumTimeSelectComponent,\r\n HerumUserProfileComponent,\r\n HerumUserProgressComponent,\r\n KeyValueListComponent,\r\n LabelsWithIconsListComponent,\r\n ProgressesOverViewComponent\r\n ],\r\n exports: [\r\n HerumActiveLinkComponent,\r\n HerumActiveMenuComponent,\r\n HerumAutocompleteComponent,\r\n HerumClosedListMultiSelectComponent,\r\n HerumClosedListSelectComponent,\r\n HerumDateTimeInputComponent,\r\n HerumDateTimePickerComponent,\r\n HerumDropZoneComponent,\r\n HerumExpendablePanelComponent,\r\n HerumFilesViewerComponent,\r\n HerumHierarchyTreeNodeComponent,\r\n HerumMultiProgressBarComponent,\r\n HerumNavigatorComponent,\r\n HerumStepNavigatorComponent,\r\n HerumStepperComponent,\r\n HerumTimeSelectComponent,\r\n HerumUserProfileComponent,\r\n HerumUserProgressComponent,\r\n KeyValueListComponent,\r\n LabelsWithIconsListComponent,\r\n ProgressesOverViewComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n MatMenuModule,\r\n ClipboardModule,\r\n MatAutocompleteModule,\r\n MatChipsModule,\r\n MatFormFieldModule,\r\n MatTooltipModule,\r\n MatInputModule,\r\n MatSelectModule,\r\n MatIconModule,\r\n MatCheckboxModule,\r\n MatSliderModule,\r\n DragDropModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n PipesModule,\r\n AtomsModule\r\n ],\r\n providers: [\r\n { provide: MAT_DATE_LOCALE, useValue: 'he-IL' },\r\n ]\r\n})\r\nexport class MoleculesModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i1","i2","i4"],"mappings":"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"}
|