{ "version": 3, "sources": ["src/app/_single-module/card-actionables/_pipes/dynamic-list.pipe.ts", "src/app/_single-module/actionable-modal/actionable-modal.component.ts", "src/app/_single-module/actionable-modal/actionable-modal.component.html", "src/app/_single-module/card-actionables/card-actionables.component.ts", "src/app/_single-module/card-actionables/card-actionables.component.html"], "sourcesContent": ["import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'dynamicList',\n pure: true,\n standalone: true\n})\nexport class DynamicListPipe implements PipeTransform {\n\n transform(value: any): Array<{title: string, data: any}> {\n if (value === undefined || value === null) return [];\n return value as {title: string, data: any}[];\n }\n\n}\n", "import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component, DestroyRef,\n EventEmitter,\n inject,\n Input,\n OnInit,\n Output\n} from '@angular/core';\nimport {NgClass} from \"@angular/common\";\nimport {translate, TranslocoDirective} from \"@jsverse/transloco\";\nimport {Breakpoint, UtilityService} from \"../../shared/_services/utility.service\";\nimport {NgbActiveModal} from \"@ng-bootstrap/ng-bootstrap\";\nimport {Action, ActionItem} from \"../../_services/action-factory.service\";\nimport {AccountService} from \"../../_services/account.service\";\nimport {tap} from \"rxjs\";\nimport {User} from \"../../_models/user\";\nimport {takeUntilDestroyed} from \"@angular/core/rxjs-interop\";\n\n@Component({\n selector: 'app-actionable-modal',\n standalone: true,\n imports: [\n TranslocoDirective\n ],\n templateUrl: './actionable-modal.component.html',\n styleUrl: './actionable-modal.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ActionableModalComponent implements OnInit {\n\n protected readonly utilityService = inject(UtilityService);\n protected readonly modal = inject(NgbActiveModal);\n protected readonly accountService = inject(AccountService);\n protected readonly cdRef = inject(ChangeDetectorRef);\n protected readonly destroyRef = inject(DestroyRef);\n protected readonly Breakpoint = Breakpoint;\n\n @Input() actions: ActionItem[] = [];\n @Input() willRenderAction!: (action: ActionItem) => boolean;\n @Input() shouldRenderSubMenu!: (action: ActionItem, dynamicList: null | Array) => boolean;\n @Output() actionPerformed = new EventEmitter>();\n\n currentLevel: string[] = [];\n currentItems: ActionItem[] = [];\n user!: User | undefined;\n\n ngOnInit() {\n this.currentItems = this.translateOptions(this.actions);\n\n this.accountService.currentUser$.pipe(tap(user => {\n this.user = user;\n this.cdRef.markForCheck();\n }), takeUntilDestroyed(this.destroyRef)).subscribe();\n }\n\n handleItemClick(item: ActionItem) {\n if (item.children && item.children.length > 0) {\n this.currentLevel.push(item.title);\n\n if (item.children.length === 1 && item.children[0].dynamicList) {\n item.children[0].dynamicList.subscribe(dynamicItems => {\n this.currentItems = dynamicItems.map(di => ({\n ...item,\n children: [], // Required as dynamic list is only one deep\n title: di.title,\n _extra: di,\n action: item.children[0].action // override action to be correct from child\n }));\n });\n } else {\n this.currentItems = this.translateOptions(item.children);\n }\n }\n else {\n this.actionPerformed.emit(item);\n this.modal.close(item);\n }\n this.cdRef.markForCheck();\n }\n\n handleBack() {\n if (this.currentLevel.length > 0) {\n this.currentLevel.pop();\n\n let items = this.actions;\n for (let level of this.currentLevel) {\n items = items.find(item => item.title === level)?.children || [];\n }\n\n this.currentItems = this.translateOptions(items);\n this.cdRef.markForCheck();\n }\n }\n\n translateOptions(opts: Array>) {\n return opts.map(a => {\n return {...a, title: translate('actionable.' + a.title)};\n })\n }\n\n}\n", "\n
\n
\n

{{t('title')}}

\n \n
\n
\n @if (currentLevel.length > 0) {\n \n }\n\n
\n\n\n @for (action of currentItems; track action.title) {\n @if (willRenderAction(action)) {\n \n }\n }\n
\n
\n
\n
\n", "import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component, DestroyRef,\n EventEmitter,\n inject,\n Input,\n OnInit,\n Output\n} from '@angular/core';\nimport {NgbDropdown, NgbDropdownItem, NgbDropdownMenu, NgbDropdownToggle, NgbModal} from '@ng-bootstrap/ng-bootstrap';\nimport { AccountService } from 'src/app/_services/account.service';\nimport { Action, ActionItem } from 'src/app/_services/action-factory.service';\nimport {AsyncPipe, NgTemplateOutlet} from \"@angular/common\";\nimport {TranslocoDirective} from \"@jsverse/transloco\";\nimport {DynamicListPipe} from \"./_pipes/dynamic-list.pipe\";\nimport {takeUntilDestroyed} from \"@angular/core/rxjs-interop\";\nimport {Breakpoint, UtilityService} from \"../../shared/_services/utility.service\";\nimport {ActionableModalComponent} from \"../actionable-modal/actionable-modal.component\";\n\n@Component({\n selector: 'app-card-actionables',\n standalone: true,\n imports: [NgbDropdown, NgbDropdownToggle, NgbDropdownMenu, NgbDropdownItem, DynamicListPipe, TranslocoDirective, AsyncPipe, NgTemplateOutlet],\n templateUrl: './card-actionables.component.html',\n styleUrls: ['./card-actionables.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CardActionablesComponent implements OnInit {\n\n private readonly cdRef = inject(ChangeDetectorRef);\n private readonly accountService = inject(AccountService);\n private readonly destroyRef = inject(DestroyRef);\n protected readonly utilityService = inject(UtilityService);\n protected readonly modalService = inject(NgbModal);\n\n protected readonly Breakpoint = Breakpoint;\n\n @Input() iconClass = 'fa-ellipsis-v';\n @Input() btnClass = '';\n @Input() actions: ActionItem[] = [];\n @Input() labelBy = 'card';\n /**\n * Text to display as if actionable was a button\n */\n @Input() label = '';\n @Input() disabled: boolean = false;\n @Output() actionHandler = new EventEmitter>();\n\n\n isAdmin: boolean = false;\n canDownload: boolean = false;\n canPromote: boolean = false;\n submenu: {[key: string]: NgbDropdown} = {};\n\n\n ngOnInit(): void {\n this.accountService.currentUser$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((user) => {\n if (!user) return;\n this.isAdmin = this.accountService.hasAdminRole(user);\n this.canDownload = this.accountService.hasDownloadRole(user);\n this.canPromote = this.accountService.hasPromoteRole(user);\n\n // We want to avoid an empty menu when user doesn't have access to anything\n if (!this.isAdmin && this.actions.filter(a => !a.requiresAdmin).length === 0) {\n this.actions = [];\n }\n\n this.cdRef.markForCheck();\n });\n }\n\n preventEvent(event: any) {\n event.stopPropagation();\n event.preventDefault();\n }\n\n performAction(event: any, action: ActionItem) {\n this.preventEvent(event);\n\n if (typeof action.callback === 'function') {\n this.actionHandler.emit(action);\n }\n }\n\n willRenderAction(action: ActionItem) {\n return (action.requiresAdmin && this.isAdmin)\n || (action.action === Action.Download && (this.canDownload || this.isAdmin))\n || (!action.requiresAdmin && action.action !== Action.Download)\n || (action.action === Action.Promote && (this.canPromote || this.isAdmin))\n || (action.action === Action.UnPromote && (this.canPromote || this.isAdmin))\n ;\n }\n\n shouldRenderSubMenu(action: ActionItem, dynamicList: null | Array) {\n return (action.children[0].dynamicList === undefined || action.children[0].dynamicList === null) || (dynamicList !== null && dynamicList.length > 0);\n }\n\n openSubmenu(actionTitle: string, subMenu: NgbDropdown) {\n // We keep track when we open and when we get a request to open, if we have other keys, we close them and clear their keys\n if (Object.keys(this.submenu).length > 0) {\n const keys = Object.keys(this.submenu).filter(k => k !== actionTitle);\n keys.forEach(key => {\n this.submenu[key].close();\n delete this.submenu[key];\n });\n }\n this.submenu[actionTitle] = subMenu;\n subMenu.open();\n }\n\n closeAllSubmenus() {\n Object.keys(this.submenu).forEach(key => {\n this.submenu[key].close();\n delete this.submenu[key];\n });\n }\n\n performDynamicClick(event: any, action: ActionItem, dynamicItem: any) {\n action._extra = dynamicItem;\n this.performAction(event, action);\n }\n\n openMobileActionableMenu(event: any) {\n this.preventEvent(event);\n\n const ref = this.modalService.open(ActionableModalComponent, {fullscreen: true, centered: true});\n ref.componentInstance.actions = this.actions;\n ref.componentInstance.willRenderAction = this.willRenderAction.bind(this);\n ref.componentInstance.shouldRenderSubMenu = this.shouldRenderSubMenu.bind(this);\n ref.componentInstance.actionPerformed.subscribe((action: ActionItem) => {\n this.performAction(event, action);\n });\n }\n}\n", "\n @if (actions.length > 0) {\n @if ((utilityService.activeBreakpoint$ | async)! <= Breakpoint.Tablet) {\n \n } @else {\n
\n \n
\n \n
\n
\n \n @for(action of list; track action.title) {\n \n @if (action.children === undefined || action?.children?.length === 0 || action.dynamicList !== undefined) {\n @if (action.dynamicList !== undefined && (action.dynamicList | async | dynamicList); as dList) {\n @for(dynamicItem of dList; track dynamicItem.title) {\n \n }\n } @else if (willRenderAction(action)) {\n \n }\n } @else {\n @if (shouldRenderSubMenu(action, action.children?.[0].dynamicList | async)) {\n \n
\n @if (willRenderAction(action)) {\n \n }\n
\n \n
\n
\n }\n }\n }\n
\n }\n }\n
\n"], "mappings": "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", "names": ["DynamicListPipe", "transform", "value", "pure", "standalone", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r3", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "handleBack", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "t_r4", "\u0275\u0275pureFunction1", "_c0", "currentLevel", "length", "_r5", "action_r6", "$implicit", "handleItemClick", "\u0275\u0275template", "ActionableModalComponent_ng_container_0_For_10_Conditional_0_Conditional_2_Template", "title", "\u0275\u0275conditional", "children", "dynamicList", "ActionableModalComponent_ng_container_0_For_10_Conditional_0_Template", "willRenderAction", "\u0275\u0275elementContainerStart", "_r1", "modal", "close", "ActionableModalComponent_ng_container_0_Conditional_7_Template", "\u0275\u0275repeaterCreate", "ActionableModalComponent_ng_container_0_For_10_Template", "_forTrack0", "\u0275\u0275textInterpolate", "\u0275\u0275repeater", "currentItems", "ActionableModalComponent", "constructor", "utilityService", "inject", "UtilityService", "NgbActiveModal", "accountService", "AccountService", "cdRef", "ChangeDetectorRef", "destroyRef", "DestroyRef", "Breakpoint", "actions", "actionPerformed", "EventEmitter", "ngOnInit", "translateOptions", "currentUser$", "pipe", "tap", "user", "markForCheck", "takeUntilDestroyed", "subscribe", "item", "push", "dynamicItems", "map", "di", "__spreadProps", "__spreadValues", "_extra", "action", "emit", "pop", "items", "level", "find", "opts", "a", "translate", "selectors", "inputs", "shouldRenderSubMenu", "outputs", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "ActionableModalComponent_ng_container_0_Template", "\u0275\u0275property", "TranslocoDirective", "changeDetection", "\u0275\u0275elementStart", "\u0275\u0275listener", "$event", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "openMobileActionableMenu", "\u0275\u0275text", "\u0275\u0275element", "\u0275\u0275elementEnd", "\u0275\u0275classMapInterpolate1", "btnClass", "\u0275\u0275propertyInterpolate1", "labelBy", "\u0275\u0275property", "disabled", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "label", "iconClass", "\u0275\u0275elementContainer", "dynamicItem_r5", "_r4", "$implicit", "action_r6", "performDynamicClick", "\u0275\u0275textInterpolate", "title", "\u0275\u0275repeaterCreate", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Conditional_0_Conditional_0_For_1_Template", "_forTrack0", "\u0275\u0275repeater", "ctx", "_r7", "performAction", "closeAllSubmenus", "t_r8", "\u0275\u0275template", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Conditional_0_Conditional_0_Template", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Conditional_0_Conditional_3_Template", "\u0275\u0275conditional", "tmp_18_0", "dynamicList", "undefined", "\u0275\u0275pipeBind1", "willRenderAction", "_r9", "subMenuHover_r10", "\u0275\u0275reference", "preventEvent", "openSubmenu", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Conditional_1_Conditional_0_Conditional_2_Template", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Conditional_1_Conditional_0_ng_container_4_Template", "\u0275\u0275attributeInterpolate1", "submenu_r11", "\u0275\u0275pureFunction1", "_c0", "children", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Conditional_1_Conditional_0_Template", "shouldRenderSubMenu", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Conditional_0_Template", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Conditional_1_Template", "length", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_For_1_Template", "list_r12", "_r3", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_container_5_Template", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_ng_template_6_Template", "\u0275\u0275templateRefExtractor", "actions", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_0_Template", "CardActionablesComponent_ng_container_0_Conditional_1_Conditional_2_Template", "utilityService", "activeBreakpoint$", "Breakpoint", "Tablet", "\u0275\u0275elementContainerStart", "CardActionablesComponent_ng_container_0_Conditional_1_Template", "CardActionablesComponent", "constructor", "cdRef", "inject", "ChangeDetectorRef", "accountService", "AccountService", "destroyRef", "DestroyRef", "UtilityService", "modalService", "NgbModal", "actionHandler", "EventEmitter", "isAdmin", "canDownload", "canPromote", "submenu", "ngOnInit", "currentUser$", "pipe", "takeUntilDestroyed", "subscribe", "user", "hasAdminRole", "hasDownloadRole", "hasPromoteRole", "filter", "a", "requiresAdmin", "markForCheck", "event", "stopPropagation", "preventDefault", "action", "callback", "emit", "Action", "Download", "Promote", "UnPromote", "actionTitle", "subMenu", "Object", "keys", "k", "forEach", "key", "close", "open", "dynamicItem", "_extra", "ref", "ActionableModalComponent", "fullscreen", "centered", "componentInstance", "bind", "actionPerformed", "selectors", "inputs", "outputs", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "CardActionablesComponent_ng_container_0_Template", "NgbDropdown", "NgbDropdownToggle", "NgbDropdownMenu", "NgbDropdownItem", "DynamicListPipe", "TranslocoDirective", "AsyncPipe", "NgTemplateOutlet", "styles", "changeDetection"] }