{ "version": 3, "sources": ["src/app/cards/bulk-operations/bulk-operations.component.ts", "src/app/cards/bulk-operations/bulk-operations.component.html"], "sourcesContent": ["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n inject,\n Input,\n OnInit\n} from '@angular/core';\nimport { Action, ActionFactoryService, ActionItem } from 'src/app/_services/action-factory.service';\nimport { BulkSelectionService } from '../bulk-selection.service';\nimport {takeUntilDestroyed} from \"@angular/core/rxjs-interop\";\nimport {AsyncPipe, CommonModule} from \"@angular/common\";\nimport {TranslocoModule} from \"@ngneat/transloco\";\nimport {NgbTooltip} from \"@ng-bootstrap/ng-bootstrap\";\nimport {CardActionablesComponent} from \"../../_single-module/card-actionables/card-actionables.component\";\n\n@Component({\n selector: 'app-bulk-operations',\n standalone: true,\n imports: [\n CommonModule,\n AsyncPipe,\n CardActionablesComponent,\n TranslocoModule,\n NgbTooltip\n ],\n templateUrl: './bulk-operations.component.html',\n styleUrls: ['./bulk-operations.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class BulkOperationsComponent implements OnInit {\n\n @Input({required: true}) actionCallback!: (action: ActionItem, data: any) => void;\n /**\n * Modal mode means don't fix to the top\n */\n @Input() modalMode = false;\n @Input() topOffset: number = 56;\n hasMarkAsRead: boolean = false;\n hasMarkAsUnread: boolean = false;\n actions: Array> = [];\n\n private readonly destroyRef = inject(DestroyRef);\n private readonly cdRef = inject(ChangeDetectorRef);\n private readonly actionFactoryService = inject(ActionFactoryService);\n public readonly bulkSelectionService = inject(BulkSelectionService);\n protected readonly Action = Action;\n\n constructor() { }\n\n ngOnInit(): void {\n this.bulkSelectionService.actions$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(actions => {\n // We need to do a recursive callback apply\n this.actions = this.actionFactoryService.applyCallbackToList(actions, this.actionCallback.bind(this));\n this.hasMarkAsRead = this.actionFactoryService.hasAction(this.actions, Action.MarkAsRead);\n this.hasMarkAsUnread = this.actionFactoryService.hasAction(this.actions, Action.MarkAsUnread);\n this.cdRef.markForCheck();\n });\n }\n\n performAction(action: ActionItem) {\n this.actionCallback(action, null);\n }\n\n executeAction(action: Action) {\n const foundActions = this.actions.filter(act => act.action === action);\n if (foundActions.length > 0) {\n this.performAction(foundActions[0]);\n }\n }\n}\n", "\n \n
0\" class=\"bulk-select mb-3 {{modalMode ? '' : 'fixed-top'}}\" [ngStyle]=\"{'margin-top': topOffset + 'px'}\">\n
\n\n \n \n {{t('items-selected',{num: selectionCount | number})}}\n \n\n \n \n \n \n \n\n Bulk Actions\n\n \n
\n
\n
\n
\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"] }