{ "version": 3, "sources": ["src/app/cards/bulk-operations/bulk-operations.component.ts", "src/app/cards/bulk-operations/bulk-operations.component.html"], "sourcesContent": ["import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n DestroyRef,\r\n inject,\r\n Input,\r\n OnInit\r\n} from '@angular/core';\r\nimport { Action, ActionFactoryService, ActionItem } from 'src/app/_services/action-factory.service';\r\nimport { BulkSelectionService } from '../bulk-selection.service';\r\nimport {takeUntilDestroyed} from \"@angular/core/rxjs-interop\";\r\nimport {AsyncPipe, CommonModule} from \"@angular/common\";\r\nimport {TranslocoModule} from \"@ngneat/transloco\";\r\nimport {NgbTooltip} from \"@ng-bootstrap/ng-bootstrap\";\r\nimport {CardActionablesComponent} from \"../../_single-module/card-actionables/card-actionables.component\";\r\n\r\n@Component({\r\n selector: 'app-bulk-operations',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n AsyncPipe,\r\n CardActionablesComponent,\r\n TranslocoModule,\r\n NgbTooltip\r\n ],\r\n templateUrl: './bulk-operations.component.html',\r\n styleUrls: ['./bulk-operations.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class BulkOperationsComponent implements OnInit {\r\n\r\n @Input({required: true}) actionCallback!: (action: ActionItem, data: any) => void;\r\n /**\r\n * Modal mode means don't fix to the top\r\n */\r\n @Input() modalMode = false;\r\n @Input() topOffset: number = 56;\r\n hasMarkAsRead: boolean = false;\r\n hasMarkAsUnread: boolean = false;\r\n actions: Array> = [];\r\n\r\n private readonly destroyRef = inject(DestroyRef);\r\n private readonly cdRef = inject(ChangeDetectorRef);\r\n private readonly actionFactoryService = inject(ActionFactoryService);\r\n public readonly bulkSelectionService = inject(BulkSelectionService);\r\n protected readonly Action = Action;\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.bulkSelectionService.actions$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(actions => {\r\n // We need to do a recursive callback apply\r\n this.actions = this.actionFactoryService.applyCallbackToList(actions, this.actionCallback.bind(this));\r\n this.hasMarkAsRead = this.actionFactoryService.hasAction(this.actions, Action.MarkAsRead);\r\n this.hasMarkAsUnread = this.actionFactoryService.hasAction(this.actions, Action.MarkAsUnread);\r\n this.cdRef.markForCheck();\r\n });\r\n }\r\n\r\n performAction(action: ActionItem) {\r\n this.actionCallback(action, null);\r\n }\r\n\r\n executeAction(action: Action) {\r\n const foundActions = this.actions.filter(act => act.action === action);\r\n if (foundActions.length > 0) {\r\n this.performAction(foundActions[0]);\r\n }\r\n }\r\n}\r\n", "\r\n \r\n
0\" class=\"bulk-select mb-3 {{modalMode ? '' : 'fixed-top'}}\" [ngStyle]=\"{'margin-top': topOffset + 'px'}\">\r\n
\r\n\r\n \r\n \r\n {{t('items-selected',{num: selectionCount | number})}}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n Bulk Actions\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n"], "mappings": "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", "names": ["\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r8", "ctx_r7", "\u0275\u0275nextContext", "\u0275\u0275resetView", "executeAction", "Action", "MarkAsUnread", "\u0275\u0275element", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275property", "t_r1", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "_r11", "ctx_r10", "MarkAsRead", "\u0275\u0275template", "BulkOperationsComponent_ng_container_0_ng_container_1_div_1_button_7_Template", "BulkOperationsComponent_ng_container_0_ng_container_1_div_1_button_8_Template", "$event", "_r14", "ctx_r13", "performAction", "ctx_r15", "bulkSelectionService", "deselectAll", "\u0275\u0275classMapInterpolate1", "ctx_r4", "modalMode", "\u0275\u0275pureFunction1", "_c0", "topOffset", "\u0275\u0275textInterpolate1", "_c1", "\u0275\u0275pipeBind1", "selectionCount_r3", "hasMarkAsUnread", "hasMarkAsRead", "actions", "\u0275\u0275elementContainerStart", "BulkOperationsComponent_ng_container_0_ng_container_1_div_1_Template", "\u0275\u0275elementContainerEnd", "BulkOperationsComponent_ng_container_0_ng_container_1_Template", "ctx_r0", "selections$", "BulkOperationsComponent", "constructor", "destroyRef", "inject", "DestroyRef", "cdRef", "ChangeDetectorRef", "actionFactoryService", "ActionFactoryService", "BulkSelectionService", "ngOnInit", "actions$", "pipe", "takeUntilDestroyed", "subscribe", "applyCallbackToList", "actionCallback", "bind", "hasAction", "markForCheck", "action", "foundActions", "filter", "act", "length", "selectors", "inputs", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "BulkOperationsComponent_ng_container_0_Template", "CommonModule", "NgIf", "NgStyle", "AsyncPipe", "DecimalPipe", "CardActionablesComponent", "TranslocoModule", "TranslocoDirective", "NgbTooltip", "styles", "changeDetection", "_BulkOperationsComponent"] }