{ "version": 3, "sources": ["libs/crm/static/src/lib/shared-components/filter-view/filter-view.component.ts", "libs/crm/static/src/lib/shared-components/filter-view/filter-view.component.html"], "sourcesContent": ["import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n computed,\n effect,\n inject,\n signal,\n} from '@angular/core';\nimport {\n AbstractControl,\n FormControl,\n ReactiveFormsModule,\n ValidationErrors,\n ValidatorFn,\n Validators,\n} from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { GalaxyFilterInterface } from '@vendasta/galaxy/filter/chips';\nimport { GalaxyFormFieldModule } from '@vendasta/galaxy/form-field';\nimport { GalaxyPopoverModule, PopoverComponent, PopoverPositions } from '@vendasta/galaxy/popover';\nimport { GalaxyEmptyStateModule } from '@vendasta/galaxy/empty-state';\nimport { PresetFilter, PresetFilters, SavedFilter, SavedFilters } from './interfaces';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { GalaxyButtonGroupModule } from '@vendasta/galaxy/button-group';\nimport { OpenConfirmationModalService } from '@vendasta/galaxy/confirmation-modal';\nimport { firstValueFrom } from 'rxjs';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { BREAKPOINT_WIDTH } from '../../constants';\n\ntype Mode = 'list' | 'create';\n\n@Component({\n selector: 'crm-filter-view',\n templateUrl: './filter-view.component.html',\n styleUrls: ['./filter-view.component.scss'],\n standalone: true,\n imports: [\n CommonModule,\n GalaxyButtonGroupModule,\n GalaxyFormFieldModule,\n GalaxyPopoverModule,\n GalaxyEmptyStateModule,\n MatButtonModule,\n MatIconModule,\n MatMenuModule,\n ReactiveFormsModule,\n TranslateModule,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FilterViewComponent {\n private _filters = signal([]);\n @Input({ required: true })\n set filters(value: GalaxyFilterInterface[]) {\n const currentFilters = this._filters();\n this._filters.set(value);\n if (!this.filterAreEqual(currentFilters, value)) {\n this.selectedFilter.set(undefined);\n }\n }\n @Output() filtersChange = new EventEmitter();\n\n private _keys = signal([]);\n @Input({ required: true })\n set keys(value: string[]) {\n this._keys.set(value);\n }\n\n private _presetFilters = signal([]);\n @Input() set presetFilters(value: PresetFilters) {\n const filters = value?.map((f) => ({ ...f, preset: true } as PresetFilter));\n this._presetFilters.set(filters ?? []);\n }\n\n @ViewChild('viewsMenu') viewsMenu?: PopoverComponent;\n\n private readonly snackbarService = inject(SnackbarService);\n private readonly confirmationModalService = inject(OpenConfirmationModalService);\n private readonly translateService = inject(TranslateService);\n\n private readonly i18n = {\n views: toSignal(this.translateService.stream('VIEWS.VIEWS')),\n };\n\n protected mode: Mode = 'list';\n protected readonly savedFilters = signal([]);\n protected readonly allFilters = computed(() => [\n ...this.sortFilters(this.savedFilters()),\n ...this.sortFilters(this._presetFilters()),\n ]);\n protected readonly hasFilters = computed(() => Object.keys(this.allFilters()).length > 0);\n protected readonly newViewNameCtrl = new FormControl('', {\n validators: [Validators.required, this.nameExistsValidator(), this.nameLengthValidator()],\n });\n protected readonly mobileWidth = BREAKPOINT_WIDTH.MOBILE;\n protected readonly popoverPosition = [\n PopoverPositions['BottomRight'],\n PopoverPositions['BottomLeft'],\n PopoverPositions['Right'],\n PopoverPositions['Left'],\n ];\n protected readonly selectedFilter = signal(undefined);\n protected readonly selectedFilterName = computed(() => this.selectedFilter() ?? this.i18n.views());\n\n constructor() {\n effect(\n () => {\n this.loadSavedFilters(this._keys());\n },\n { allowSignalWrites: true },\n );\n }\n\n protected handleCancelClick(): void {\n this.mode = 'list';\n }\n\n protected handleCreateViewClick(): void {\n if (this._filters().length > 0) {\n this.newViewNameCtrl.setValue('');\n this.newViewNameCtrl.markAsUntouched();\n this.mode = 'create';\n } else {\n this.snackbarService.openErrorSnack('VIEWS.ERRORS.NO_FILTERS');\n }\n }\n\n protected async handleDeleteFilterClick(filter: SavedFilter): Promise {\n const confirm = await firstValueFrom(\n this.confirmationModalService.openModal({\n title: 'VIEWS.DELETE_CONFIRMATION.TITLE',\n cancelOnEscapeKeyOrBackgroundClick: true,\n message: this.translateService.instant('VIEWS.DELETE_CONFIRMATION.MESSAGE', { viewName: filter.name }),\n type: 'warn',\n confirmButtonText: 'ACTIONS.DELETE',\n }),\n );\n if (confirm) {\n if (this.selectedFilter() === filter.name) {\n this.selectedFilter.set(undefined);\n }\n const savedFilters = this.savedFilters().filter((f) => f.name !== filter.name);\n this.savedFilters.set(savedFilters);\n localStorage.setItem(this._keys()[0], JSON.stringify(savedFilters));\n }\n }\n\n protected handleSaveClick(): void {\n this.newViewNameCtrl.markAsTouched();\n if (this.newViewNameCtrl.valid) {\n const name = this.newViewNameCtrl.value!;\n const savedFilter: SavedFilter = { name, filters: this._filters() };\n const savedFilters = this.sortFilters(this.savedFilters().concat(savedFilter));\n if (this._keys()[0]) {\n localStorage.setItem(this._keys()[0], JSON.stringify(savedFilters));\n }\n this.savedFilters.set(savedFilters);\n this.selectedFilter.set(name);\n this.viewsMenu?.close();\n }\n }\n\n protected handleSelectFilterClick(filter: PresetFilter | SavedFilter): void {\n this.selectedFilter.set(filter.name);\n this._filters.set(filter.filters);\n this.filtersChange.emit(filter.filters);\n this.viewsMenu?.close();\n }\n\n protected handleViewsClick(): void {\n this.viewsMenu?.open();\n this.mode = 'list';\n }\n\n private filterAreEqual(a: GalaxyFilterInterface[], b: GalaxyFilterInterface[]): boolean {\n return JSON.stringify(a) === JSON.stringify(b);\n }\n\n private loadSavedFilters(keys: string[]): void {\n for (const key of keys) {\n const savedFilters = key ? localStorage.getItem(key) : undefined;\n if (savedFilters) {\n try {\n const filters = JSON.parse(savedFilters);\n this.savedFilters.set(this.sortFilters(filters));\n break;\n } catch {\n this.savedFilters.set([]);\n localStorage.removeItem(key);\n }\n }\n }\n }\n\n private nameExistsValidator(): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const value = control.value as string;\n const exists = Boolean(this.allFilters().find((f) => f.name === value));\n return exists ? { presetName: true } : null;\n };\n }\n\n private nameLengthValidator(): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const value = control.value as string;\n if (value.length > 36) {\n return { nameLength: true };\n }\n return null;\n };\n }\n\n private sortFilters(filters: SavedFilters): SavedFilters {\n return filters.sort((a, b) => a.name.toLocaleLowerCase().localeCompare(b.name.toLocaleLowerCase()));\n }\n}\n", "\n\n\n \n {{ 'VIEWS.VIEWS' | translate }}\n \n \n \n \n \n\n\n\n
\n
\n \n \n delete\n \n
\n
\n
\n\n \n\n\n\n \n \n filter_list\n \n

{{ 'VIEWS.EMPTY' | translate }}

\n
\n
\n\n\n \n {{ 'VIEWS.VIEW_NAME' | translate }}\n \n \n \n {{ 'VIEWS.ERRORS.VIEW_NAME_REQUIRED' | translate }}\n \n \n {{ 'VIEWS.ERRORS.EQUAL_TO_PRESET_NAME' | translate }}\n \n \n {{ 'VIEWS.ERRORS.VIEW_NAME_TOO_LONG' | translate }}\n \n \n \n\n\n \n \n\n"], "mappings": "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", "names": ["\u0275\u0275elementContainer", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r5", "filter_r3", "\u0275\u0275nextContext", "$implicit", "ctx_r3", "\u0275\u0275resetView", "handleDeleteFilterClick", "\u0275\u0275text", "\u0275\u0275elementEnd", "_r2", "handleSelectFilterClick", "\u0275\u0275template", "FilterViewComponent_ng_template_12_div_0_div_1_button_3_Template", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "name", "\u0275\u0275property", "preset", "FilterViewComponent_ng_template_12_div_0_div_1_Template", "allFilters", "FilterViewComponent_ng_template_12_div_0_Template", "hasFilters", "noViews_r6", "_r7", "handleCreateViewClick", "\u0275\u0275pipeBind1", "\u0275\u0275textInterpolate", "\u0275\u0275elementContainerStart", "FilterViewComponent_ng_template_18_ng_container_5_glxy_error_1_Template", "FilterViewComponent_ng_template_18_ng_container_5_glxy_error_2_Template", "FilterViewComponent_ng_template_18_ng_container_5_glxy_error_3_Template", "newViewNameCtrl", "errors", "\u0275\u0275element", "FilterViewComponent_ng_template_18_ng_container_5_Template", "touched", "_r8", "handleSaveClick", "handleCancelClick", "FilterViewComponent", "filters", "value", "currentFilters", "_filters", "set", "filterAreEqual", "selectedFilter", "undefined", "keys", "_keys", "presetFilters", "map", "f", "__spreadProps", "__spreadValues", "_presetFilters", "constructor", "signal", "filtersChange", "EventEmitter", "snackbarService", "inject", "SnackbarService", "confirmationModalService", "OpenConfirmationModalService", "translateService", "TranslateService", "i18n", "views", "toSignal", "stream", "mode", "savedFilters", "computed", "sortFilters", "Object", "length", "FormControl", "validators", "Validators", "required", "nameExistsValidator", "nameLengthValidator", "mobileWidth", "popoverPosition", "PopoverPositions", "selectedFilterName", "effect", "loadSavedFilters", "allowSignalWrites", "setValue", "markAsUntouched", "openErrorSnack", "filter", "__async", "firstValueFrom", "openModal", "title", "cancelOnEscapeKeyOrBackgroundClick", "message", "instant", "viewName", "type", "confirmButtonText", "localStorage", "setItem", "JSON", "stringify", "markAsTouched", "valid", "savedFilter", "concat", "viewsMenu", "close", "emit", "handleViewsClick", "open", "a", "b", "key", "getItem", "parse", "removeItem", "control", "Boolean", "find", "presetName", "nameLength", "sort", "toLocaleLowerCase", "localeCompare", "selectors", "viewQuery", "rf", "ctx", "i0", "_r1", "FilterViewComponent_ng_container_9_Template", "FilterViewComponent_ng_container_11_Template", "FilterViewComponent_ng_template_12_Template", "\u0275\u0275templateRefExtractor", "FilterViewComponent_ng_template_14_Template", "FilterViewComponent_ng_template_16_Template", "FilterViewComponent_ng_template_18_Template", "FilterViewComponent_ng_template_20_Template", "viewsMenu_r9", "listTemplate_r10", "saveTemplate_r12", "listActions_r11", "saveActions_r13", "CommonModule", "NgForOf", "NgIf", "GalaxyButtonGroupModule", "GalaxyFormFieldModule", "FormFieldComponent", "LabelDirective", "ErrorDirective", "GalaxyPopoverModule", "PopoverComponent", "PopoverTitleDirective", "PopoverActionsDirective", "GalaxyPopoverDirective", "GalaxyEmptyStateModule", "EmptyStateComponent", "EmptyStateHeroDirective", "MatButtonModule", "MatButton", "MatIconModule", "MatIcon", "MatMenuModule", "ReactiveFormsModule", "DefaultValueAccessor", "NgControlStatus", "FormControlDirective", "TranslateModule", "TranslatePipe", "styles", "changeDetection", "_FilterViewComponent"] }