@indigina/ui-kit 1.1.156 → 1.1.157
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/fesm2022/indigina-ui-kit.mjs +66 -48
- package/fesm2022/indigina-ui-kit.mjs.map +1 -1
- package/lib/widgets/kit-grid-management/kit-grid-filters/kit-grid-filters.component.d.ts +2 -3
- package/lib/widgets/kit-grid-management/kit-grid-search/kit-grid-search.component.d.ts +2 -3
- package/lib/widgets/kit-grid-management/kit-grid-views/kit-grid-views.component.d.ts +5 -3
- package/lib/widgets/kit-grid-management/kit-grid-views/kit-grid-views.util.d.ts +2 -2
- package/package.json +1 -1
|
@@ -23,7 +23,7 @@ import * as i1$6 from 'ngx-toastr';
|
|
|
23
23
|
import { ToastrModule, TOAST_CONFIG, DefaultGlobalConfig } from 'ngx-toastr';
|
|
24
24
|
import * as i1$7 from '@angular/router';
|
|
25
25
|
import { RouterModule, NavigationEnd, RouterLink } from '@angular/router';
|
|
26
|
-
import { BehaviorSubject, filter, Subject, startWith, pairwise, takeUntil, of, tap, map,
|
|
26
|
+
import { BehaviorSubject, filter, Subject, startWith, pairwise, takeUntil, of, tap, map, debounceTime, switchMap } from 'rxjs';
|
|
27
27
|
import { v4 } from 'uuid';
|
|
28
28
|
import * as i1$8 from '@progress/kendo-angular-dialog';
|
|
29
29
|
import { KENDO_DIALOGS, DialogActionsComponent, DialogContentBase, DialogCloseResult, DialogRef } from '@progress/kendo-angular-dialog';
|
|
@@ -6770,7 +6770,7 @@ class KitGridUrlStateService {
|
|
|
6770
6770
|
take: params?.take && Number(params.take),
|
|
6771
6771
|
sort: params?.sort && JSON.parse(params.sort),
|
|
6772
6772
|
filter: params?.filter && JSON.parse(params.filter),
|
|
6773
|
-
search: params?.search
|
|
6773
|
+
search: params?.search,
|
|
6774
6774
|
columns: [],
|
|
6775
6775
|
};
|
|
6776
6776
|
}
|
|
@@ -6786,6 +6786,7 @@ class KitGridUrlStateService {
|
|
|
6786
6786
|
relativeTo: this.activatedRoute,
|
|
6787
6787
|
queryParams,
|
|
6788
6788
|
queryParamsHandling: 'merge',
|
|
6789
|
+
replaceUrl: true,
|
|
6789
6790
|
});
|
|
6790
6791
|
}
|
|
6791
6792
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: KitGridUrlStateService, deps: [{ token: i1$7.ActivatedRoute }, { token: i1$7.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -6806,9 +6807,13 @@ const filterDuplicateGridViews = (views) => views.filter((item, index, arr) => {
|
|
|
6806
6807
|
const duplicateItems = arr.filter(i => i.title === item.title);
|
|
6807
6808
|
return duplicateItems.length <= 1 || item.type !== KitGridViewType.SYSTEM;
|
|
6808
6809
|
});
|
|
6809
|
-
const findGridViewByName = (views, name) =>
|
|
6810
|
-
views.
|
|
6811
|
-
|
|
6810
|
+
const findGridViewByName = (views, name, type) => {
|
|
6811
|
+
const matches = views.filter(view => view.title === name && !view.hidden);
|
|
6812
|
+
if (type) {
|
|
6813
|
+
return matches.find(view => view.type === type) ?? matches[0] ?? null;
|
|
6814
|
+
}
|
|
6815
|
+
return matches.find(view => view.type === KitGridViewType.USER) ?? matches[0] ?? null;
|
|
6816
|
+
};
|
|
6812
6817
|
const buildGridViewColumns = (columns) => columns.map(column => ({
|
|
6813
6818
|
field: column.field,
|
|
6814
6819
|
hidden: column.hidden,
|
|
@@ -7317,10 +7322,6 @@ class KitGridViewsComponent {
|
|
|
7317
7322
|
this.collapsedList = viewChild((KitCollapsedListComponent));
|
|
7318
7323
|
this.createNewViewPopup = viewChild('popup', { read: KitPopupComponent });
|
|
7319
7324
|
this.createNewViewName = signal('');
|
|
7320
|
-
this.currentViewName$ = combineLatest([
|
|
7321
|
-
this.activatedRoute.params.pipe(map(params => params['view'] && decodeViewNameFromUrl(params['view']))),
|
|
7322
|
-
this.activatedRoute.data.pipe(map(data => data['view'])),
|
|
7323
|
-
]).pipe(map(([viewParam, viewData,]) => viewParam ?? viewData));
|
|
7324
7325
|
this.viewsState$ = this.store.select(KIT_GRID_VIEWS_STATE_TOKEN);
|
|
7325
7326
|
this.views$ = this.store.select(KitGridViewsState.getViews());
|
|
7326
7327
|
this.views = this.store.selectSignal(KitGridViewsState.getViews());
|
|
@@ -7338,21 +7339,16 @@ class KitGridViewsComponent {
|
|
|
7338
7339
|
this.kitTextboxState = KitTextboxState;
|
|
7339
7340
|
this.selectedView = this.store.selectSignal(KitGridViewsState.selectedView);
|
|
7340
7341
|
this.collapsedListDropdownText = signal(this.translateService.instant('kit.views.newView'));
|
|
7342
|
+
this.skipQueryParamsUpdate = signal(false);
|
|
7341
7343
|
effect(() => {
|
|
7342
7344
|
this.collapsedListDropdownText.set(this.translateService.instant(this.collapsedList()?.dropdownItems().length ? 'kit.views.moreViews' : 'kit.views.newView'));
|
|
7343
7345
|
});
|
|
7344
7346
|
}
|
|
7345
7347
|
ngOnInit() {
|
|
7346
7348
|
this.fetchViews();
|
|
7347
|
-
this.
|
|
7348
|
-
this.
|
|
7349
|
-
|
|
7350
|
-
item && this.collapsedList()?.setSelectedItem(item);
|
|
7351
|
-
this.updateGridState(view);
|
|
7352
|
-
});
|
|
7353
|
-
this.views$.subscribe((views) => {
|
|
7354
|
-
this.collapsedListItems.set(views.filter(view => !view.hidden).map(view => this.getCollapsedListItem(view)));
|
|
7355
|
-
});
|
|
7349
|
+
this.handleViewsOnRouteChange();
|
|
7350
|
+
this.handelCollapsedListItems();
|
|
7351
|
+
this.handleSelectedView();
|
|
7356
7352
|
}
|
|
7357
7353
|
ngOnDestroy() {
|
|
7358
7354
|
this.store.dispatch(new StateReset(KitGridViewsState));
|
|
@@ -7365,7 +7361,7 @@ class KitGridViewsComponent {
|
|
|
7365
7361
|
return messageKey && this.translateService.instant(messageKey) || '';
|
|
7366
7362
|
}
|
|
7367
7363
|
onSelectView(selectedView) {
|
|
7368
|
-
this.navigateToView(selectedView.title
|
|
7364
|
+
this.navigateToView(selectedView.title, selectedView.type);
|
|
7369
7365
|
}
|
|
7370
7366
|
openViewsManagerModal() {
|
|
7371
7367
|
this.kitDialogService.openDialog({
|
|
@@ -7383,7 +7379,7 @@ class KitGridViewsComponent {
|
|
|
7383
7379
|
}
|
|
7384
7380
|
else {
|
|
7385
7381
|
const defaultView = findGridViewByName(views, this.defaultViewName());
|
|
7386
|
-
this.navigateToView(this.defaultViewName()).then(() => {
|
|
7382
|
+
this.navigateToView(this.defaultViewName(), this.selectedView()?.type).then(() => {
|
|
7387
7383
|
defaultView && this.store.dispatch(new SetSelectedView(defaultView));
|
|
7388
7384
|
});
|
|
7389
7385
|
}
|
|
@@ -7420,24 +7416,50 @@ class KitGridViewsComponent {
|
|
|
7420
7416
|
defaultItems: this.systemViews(),
|
|
7421
7417
|
}),
|
|
7422
7418
|
new FetchGridViewsConfig(this.viewConfigGroup()),
|
|
7423
|
-
])
|
|
7419
|
+
]).subscribe(() => {
|
|
7420
|
+
const views = this.store.selectSnapshot(KitGridViewsState.getViews());
|
|
7421
|
+
const viewName = this.activatedRoute.snapshot.params['view'] ?? this.activatedRoute.snapshot.data['view'];
|
|
7422
|
+
this.handleViewChange(viewName, views);
|
|
7423
|
+
});
|
|
7424
|
+
}
|
|
7425
|
+
handleViewsOnRouteChange() {
|
|
7426
|
+
this.router.events.pipe(filter(event => event instanceof NavigationEnd), takeUntilDestroyed(this.destroyRef)).subscribe(() => {
|
|
7427
|
+
if (this.skipQueryParamsUpdate()) {
|
|
7428
|
+
this.skipQueryParamsUpdate.set(false);
|
|
7429
|
+
return;
|
|
7430
|
+
}
|
|
7431
|
+
const views = this.store.selectSnapshot(KitGridViewsState.getViews());
|
|
7432
|
+
const viewName = decodeViewNameFromUrl(this.activatedRoute.snapshot.params['view'])
|
|
7433
|
+
?? this.activatedRoute.snapshot.data['view'];
|
|
7434
|
+
this.handleViewChange(viewName, views);
|
|
7435
|
+
});
|
|
7424
7436
|
}
|
|
7425
|
-
|
|
7426
|
-
this.
|
|
7437
|
+
handelCollapsedListItems() {
|
|
7438
|
+
this.views$.subscribe((views) => {
|
|
7439
|
+
this.collapsedListItems.set(views.filter(view => !view.hidden).map(view => this.getCollapsedListItem(view)));
|
|
7440
|
+
});
|
|
7441
|
+
}
|
|
7442
|
+
handleSelectedView() {
|
|
7443
|
+
this.store.select(KitGridViewsState.selectedView).pipe(filter(Boolean), takeUntilDestroyed(this.destroyRef)).subscribe(view => {
|
|
7444
|
+
const item = this.collapsedListItems().find(item => item.value === this.getCollapsedListItem(view).value);
|
|
7445
|
+
item && this.collapsedList()?.setSelectedItem(item);
|
|
7446
|
+
});
|
|
7427
7447
|
}
|
|
7428
7448
|
handleViewChange(viewName, views) {
|
|
7429
7449
|
if (viewName !== viewName.toLowerCase()) {
|
|
7430
|
-
this.navigateToView(viewName);
|
|
7450
|
+
this.navigateToView(viewName, this.selectedView()?.type);
|
|
7431
7451
|
return;
|
|
7432
7452
|
}
|
|
7433
|
-
const
|
|
7453
|
+
const queryType = this.activatedRoute.snapshot.queryParams['type'];
|
|
7454
|
+
const preferredType = queryType ?? KitGridViewType.USER;
|
|
7455
|
+
const currentView = findGridViewByName(views, viewName, preferredType);
|
|
7434
7456
|
if (!currentView) {
|
|
7435
|
-
this.navigateToView(this.defaultViewName());
|
|
7457
|
+
this.navigateToView(this.defaultViewName(), this.selectedView()?.type);
|
|
7436
7458
|
return;
|
|
7437
7459
|
}
|
|
7438
|
-
|
|
7439
|
-
this.
|
|
7440
|
-
}
|
|
7460
|
+
this.store.dispatch(new SetSelectedView(currentView)).subscribe(() => {
|
|
7461
|
+
this.updateGridState(currentView);
|
|
7462
|
+
});
|
|
7441
7463
|
}
|
|
7442
7464
|
updateGridState(view) {
|
|
7443
7465
|
const urlState = this.kitGridUrlStateService.getGridStateFromUrl();
|
|
@@ -7448,7 +7470,13 @@ class KitGridViewsComponent {
|
|
|
7448
7470
|
new SetGridSkip(urlState.skip ?? 0),
|
|
7449
7471
|
new SetGridTake(urlState.take ?? 10),
|
|
7450
7472
|
new SetGridSearch(urlState.search),
|
|
7451
|
-
]).subscribe(() =>
|
|
7473
|
+
]).subscribe(() => {
|
|
7474
|
+
if (urlState?.skip === undefined) {
|
|
7475
|
+
this.skipQueryParamsUpdate.set(true);
|
|
7476
|
+
this.kitGridUrlStateService.setGridStateToUrl(this.store.selectSnapshot(KIT_GRID_STATE_TOKEN));
|
|
7477
|
+
}
|
|
7478
|
+
this.viewChanged.emit();
|
|
7479
|
+
});
|
|
7452
7480
|
}
|
|
7453
7481
|
getCollapsedListItem(view) {
|
|
7454
7482
|
return {
|
|
@@ -7457,9 +7485,13 @@ class KitGridViewsComponent {
|
|
|
7457
7485
|
value: `${view.title}_${view.group}_${view.type}`,
|
|
7458
7486
|
};
|
|
7459
7487
|
}
|
|
7460
|
-
navigateToView(viewName) {
|
|
7488
|
+
navigateToView(viewName, type = KitGridViewType.USER) {
|
|
7461
7489
|
const routePath = kitEncodeViewNameToUrl(viewName.toLowerCase());
|
|
7462
|
-
return this.router.navigate([`../${routePath}`], {
|
|
7490
|
+
return this.router.navigate([`../${routePath}`], {
|
|
7491
|
+
relativeTo: this.activatedRoute,
|
|
7492
|
+
queryParams: { type },
|
|
7493
|
+
queryParamsHandling: 'merge',
|
|
7494
|
+
});
|
|
7463
7495
|
}
|
|
7464
7496
|
;
|
|
7465
7497
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: KitGridViewsComponent, deps: [{ token: i1$d.Store }, { token: i1$7.ActivatedRoute }, { token: i1$7.Router }, { token: i0.DestroyRef }, { token: i1$1.TitleCasePipe }, { token: KitDialogService }, { token: i1$a.TranslateService }, { token: i0.ViewContainerRef }, { token: KitGridUrlStateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -8037,7 +8069,6 @@ class KitGridFiltersComponent {
|
|
|
8037
8069
|
this.excludedColumns = input.required();
|
|
8038
8070
|
this.columns = input.required();
|
|
8039
8071
|
this.filterListConfig = input.required();
|
|
8040
|
-
this.filterChanged = output();
|
|
8041
8072
|
this.kitFilterType = KitFilterType;
|
|
8042
8073
|
this.filters = toSignal(this.store.select(KIT_GRID_STATE_TOKEN).pipe(map(gridData => gridData.filter)), { initialValue: [] });
|
|
8043
8074
|
this.filterSelectorItems = computed(() => this.columns()
|
|
@@ -8056,7 +8087,6 @@ class KitGridFiltersComponent {
|
|
|
8056
8087
|
removeFilter(field) {
|
|
8057
8088
|
this.store.dispatch(new RemoveGridFilter(field)).subscribe(() => {
|
|
8058
8089
|
this.kitGridUrlStateService.setGridStateToUrl(this.store.selectSnapshot(KIT_GRID_STATE_TOKEN));
|
|
8059
|
-
this.filterChanged.emit();
|
|
8060
8090
|
});
|
|
8061
8091
|
}
|
|
8062
8092
|
applyFilter(filter, values) {
|
|
@@ -8068,7 +8098,6 @@ class KitGridFiltersComponent {
|
|
|
8068
8098
|
new SetGridSkip(0),
|
|
8069
8099
|
]).subscribe(() => {
|
|
8070
8100
|
this.kitGridUrlStateService.setGridStateToUrl(this.store.selectSnapshot(KIT_GRID_STATE_TOKEN));
|
|
8071
|
-
this.filterChanged.emit();
|
|
8072
8101
|
});
|
|
8073
8102
|
}
|
|
8074
8103
|
buildFilterSelectorItem(item, filters) {
|
|
@@ -8084,9 +8113,7 @@ class KitGridFiltersComponent {
|
|
|
8084
8113
|
return filters.some(filter => filter.field === item.field);
|
|
8085
8114
|
}
|
|
8086
8115
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: KitGridFiltersComponent, deps: [{ token: i1$d.Store }, { token: KitGridUrlStateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8087
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: KitGridFiltersComponent, isStandalone: true, selector: "kit-grid-filters", inputs: { excludedColumns: { classPropertyName: "excludedColumns", publicName: "excludedColumns", isSignal: true, isRequired: true, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: true, transformFunction: null }, filterListConfig: { classPropertyName: "filterListConfig", publicName: "filterListConfig", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { filterChanged: "filterChanged" },
|
|
8088
|
-
KitGridUrlStateService,
|
|
8089
|
-
], ngImport: i0, template: "<div class=\"kit-grid-filters\">\n @for (item of filters(); track item) {\n @switch (item.type) {\n @case (kitFilterType.CHECKBOX) {\n <kit-filter-checkbox [filter]=\"item\"\n [items]=\"filterListConfig()[item.field].items\"\n [translateKeyPrefix]=\"filterListConfig()[item.field].translateKeyPrefix\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-checkbox>\n }\n @case (kitFilterType.RADIO) {\n <kit-filter-radio [filter]=\"item\"\n [items]=\"filterListConfig()?.[item.field].items\"\n [translateKeyPrefix]=\"filterListConfig()?.[item.field].translateKeyPrefix\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-radio>\n }\n @case (kitFilterType.DATE) {\n <kit-filter-date [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-date>\n }\n @case (kitFilterType.TEXT) {\n <kit-filter-input [filterInputType]=\"kitFilterType.TEXT\"\n [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-input>\n }\n @case (kitFilterType.NUMERIC) {\n <kit-filter-input [filterInputType]=\"kitFilterType.NUMERIC\"\n [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-input>\n }\n }\n }\n\n <kit-filter-selector [items]=\"filterSelectorItems()\"\n (itemSelected)=\"addFilter($event)\"\n ></kit-filter-selector>\n</div>\n", styles: [".kit-grid-filters{display:flex;flex-wrap:wrap;gap:10px}\n"], dependencies: [{ kind: "component", type: KitFilterSelectorComponent, selector: "kit-filter-selector", inputs: ["items"], outputs: ["itemSelected"] }, { kind: "component", type: KitFilterCheckboxComponent, selector: "kit-filter-checkbox", inputs: ["filter", "translateKeyPrefix", "items", "showPopupOnInit"], outputs: ["itemsChange", "filterRemoved", "filterChanged"] }, { kind: "component", type: KitFilterDateComponent, selector: "kit-filter-date", inputs: ["filter"], outputs: ["filterRemoved", "filterChanged"] }, { kind: "component", type: KitFilterRadioComponent, selector: "kit-filter-radio", inputs: ["filter", "translateKeyPrefix", "items"], outputs: ["itemsChange", "filterRemoved", "filterChanged"] }, { kind: "component", type: KitFilterInputComponent, selector: "kit-filter-input", inputs: ["filter", "filterInputType"], outputs: ["filterRemoved", "filterChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: KitGridFiltersComponent, isStandalone: true, selector: "kit-grid-filters", inputs: { excludedColumns: { classPropertyName: "excludedColumns", publicName: "excludedColumns", isSignal: true, isRequired: true, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: true, transformFunction: null }, filterListConfig: { classPropertyName: "filterListConfig", publicName: "filterListConfig", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"kit-grid-filters\">\n @for (item of filters(); track item) {\n @switch (item.type) {\n @case (kitFilterType.CHECKBOX) {\n <kit-filter-checkbox [filter]=\"item\"\n [items]=\"filterListConfig()[item.field].items\"\n [translateKeyPrefix]=\"filterListConfig()[item.field].translateKeyPrefix\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-checkbox>\n }\n @case (kitFilterType.RADIO) {\n <kit-filter-radio [filter]=\"item\"\n [items]=\"filterListConfig()?.[item.field].items\"\n [translateKeyPrefix]=\"filterListConfig()?.[item.field].translateKeyPrefix\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-radio>\n }\n @case (kitFilterType.DATE) {\n <kit-filter-date [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-date>\n }\n @case (kitFilterType.TEXT) {\n <kit-filter-input [filterInputType]=\"kitFilterType.TEXT\"\n [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-input>\n }\n @case (kitFilterType.NUMERIC) {\n <kit-filter-input [filterInputType]=\"kitFilterType.NUMERIC\"\n [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-input>\n }\n }\n }\n\n <kit-filter-selector [items]=\"filterSelectorItems()\"\n (itemSelected)=\"addFilter($event)\"\n ></kit-filter-selector>\n</div>\n", styles: [".kit-grid-filters{display:flex;flex-wrap:wrap;gap:10px}\n"], dependencies: [{ kind: "component", type: KitFilterSelectorComponent, selector: "kit-filter-selector", inputs: ["items"], outputs: ["itemSelected"] }, { kind: "component", type: KitFilterCheckboxComponent, selector: "kit-filter-checkbox", inputs: ["filter", "translateKeyPrefix", "items", "showPopupOnInit"], outputs: ["itemsChange", "filterRemoved", "filterChanged"] }, { kind: "component", type: KitFilterDateComponent, selector: "kit-filter-date", inputs: ["filter"], outputs: ["filterRemoved", "filterChanged"] }, { kind: "component", type: KitFilterRadioComponent, selector: "kit-filter-radio", inputs: ["filter", "translateKeyPrefix", "items"], outputs: ["itemsChange", "filterRemoved", "filterChanged"] }, { kind: "component", type: KitFilterInputComponent, selector: "kit-filter-input", inputs: ["filter", "filterInputType"], outputs: ["filterRemoved", "filterChanged"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8090
8117
|
}
|
|
8091
8118
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: KitGridFiltersComponent, decorators: [{
|
|
8092
8119
|
type: Component,
|
|
@@ -8096,8 +8123,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
|
|
|
8096
8123
|
KitFilterDateComponent,
|
|
8097
8124
|
KitFilterRadioComponent,
|
|
8098
8125
|
KitFilterInputComponent,
|
|
8099
|
-
], providers: [
|
|
8100
|
-
KitGridUrlStateService,
|
|
8101
8126
|
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"kit-grid-filters\">\n @for (item of filters(); track item) {\n @switch (item.type) {\n @case (kitFilterType.CHECKBOX) {\n <kit-filter-checkbox [filter]=\"item\"\n [items]=\"filterListConfig()[item.field].items\"\n [translateKeyPrefix]=\"filterListConfig()[item.field].translateKeyPrefix\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-checkbox>\n }\n @case (kitFilterType.RADIO) {\n <kit-filter-radio [filter]=\"item\"\n [items]=\"filterListConfig()?.[item.field].items\"\n [translateKeyPrefix]=\"filterListConfig()?.[item.field].translateKeyPrefix\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-radio>\n }\n @case (kitFilterType.DATE) {\n <kit-filter-date [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-date>\n }\n @case (kitFilterType.TEXT) {\n <kit-filter-input [filterInputType]=\"kitFilterType.TEXT\"\n [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-input>\n }\n @case (kitFilterType.NUMERIC) {\n <kit-filter-input [filterInputType]=\"kitFilterType.NUMERIC\"\n [filter]=\"item\"\n (filterRemoved)=\"removeFilter(item.field)\"\n (filterChanged)=\"applyFilter(item, $event)\"\n ></kit-filter-input>\n }\n }\n }\n\n <kit-filter-selector [items]=\"filterSelectorItems()\"\n (itemSelected)=\"addFilter($event)\"\n ></kit-filter-selector>\n</div>\n", styles: [".kit-grid-filters{display:flex;flex-wrap:wrap;gap:10px}\n"] }]
|
|
8102
8127
|
}], ctorParameters: () => [{ type: i1$d.Store }, { type: KitGridUrlStateService }] });
|
|
8103
8128
|
|
|
@@ -8379,29 +8404,24 @@ class KitGridSearchComponent {
|
|
|
8379
8404
|
constructor(store, kitGridUrlStateService) {
|
|
8380
8405
|
this.store = store;
|
|
8381
8406
|
this.kitGridUrlStateService = kitGridUrlStateService;
|
|
8382
|
-
this.onSearchChanged = output();
|
|
8383
8407
|
this.kitSearchBarComponent = viewChild.required(KitSearchBarComponent);
|
|
8384
8408
|
this.gridState$ = this.store.select(KIT_GRID_STATE_TOKEN);
|
|
8385
8409
|
}
|
|
8386
8410
|
ngAfterViewInit() {
|
|
8387
8411
|
this.kitSearchBarComponent().changed.pipe(debounceTime(500), switchMap(value => value && this.store.dispatch(new SetGridSearch(value)) || this.store.dispatch(new RemoveGridSearch()))).subscribe(() => {
|
|
8388
8412
|
this.kitGridUrlStateService.setGridStateToUrl(this.store.selectSnapshot(KIT_GRID_STATE_TOKEN));
|
|
8389
|
-
this.onSearchChanged.emit();
|
|
8390
8413
|
});
|
|
8391
8414
|
}
|
|
8392
8415
|
closeButtonClick() {
|
|
8393
8416
|
this.store.dispatch(new RemoveGridSearch()).subscribe(() => {
|
|
8394
8417
|
this.kitGridUrlStateService.setGridStateToUrl(this.store.selectSnapshot(KIT_GRID_STATE_TOKEN));
|
|
8395
|
-
this.onSearchChanged.emit();
|
|
8396
8418
|
});
|
|
8397
8419
|
}
|
|
8398
8420
|
closeSearch() {
|
|
8399
8421
|
this.kitSearchBarComponent().onCloseButtonClick();
|
|
8400
8422
|
}
|
|
8401
8423
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: KitGridSearchComponent, deps: [{ token: i1$d.Store }, { token: KitGridUrlStateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8402
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.1.4", type: KitGridSearchComponent, isStandalone: true, selector: "kit-grid-search", outputs: {
|
|
8403
|
-
KitGridUrlStateService,
|
|
8404
|
-
], viewQueries: [{ propertyName: "kitSearchBarComponent", first: true, predicate: KitSearchBarComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<kit-search-bar [placeholder]=\"'kit.search.placeholder' | translate\"\n [searchButtonLabel]=\"'kit.search.searchButtonLabel' | translate\"\n [searchString]=\"(gridState$ | async)?.search\"\n [closeButtonLabel]=\"'kit.search.closeButtonLabel' | translate\"\n (closeButtonClick)=\"closeButtonClick()\"\n></kit-search-bar>\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$a.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: KitSearchBarModule }, { kind: "component", type: KitSearchBarComponent, selector: "kit-search-bar", inputs: ["placeholder", "searchButtonLabel", "closeButtonLabel", "searchString"], outputs: ["changed", "searchButtonClick", "closeButtonClick"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8424
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.1.4", type: KitGridSearchComponent, isStandalone: true, selector: "kit-grid-search", viewQueries: [{ propertyName: "kitSearchBarComponent", first: true, predicate: KitSearchBarComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<kit-search-bar [placeholder]=\"'kit.search.placeholder' | translate\"\n [searchButtonLabel]=\"'kit.search.searchButtonLabel' | translate\"\n [searchString]=\"(gridState$ | async)?.search\"\n [closeButtonLabel]=\"'kit.search.closeButtonLabel' | translate\"\n (closeButtonClick)=\"closeButtonClick()\"\n></kit-search-bar>\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$a.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: KitSearchBarModule }, { kind: "component", type: KitSearchBarComponent, selector: "kit-search-bar", inputs: ["placeholder", "searchButtonLabel", "closeButtonLabel", "searchString"], outputs: ["changed", "searchButtonClick", "closeButtonClick"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8405
8425
|
}
|
|
8406
8426
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: KitGridSearchComponent, decorators: [{
|
|
8407
8427
|
type: Component,
|
|
@@ -8409,8 +8429,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
|
|
|
8409
8429
|
TranslateModule,
|
|
8410
8430
|
KitSearchBarModule,
|
|
8411
8431
|
AsyncPipe,
|
|
8412
|
-
], providers: [
|
|
8413
|
-
KitGridUrlStateService,
|
|
8414
8432
|
], template: "<kit-search-bar [placeholder]=\"'kit.search.placeholder' | translate\"\n [searchButtonLabel]=\"'kit.search.searchButtonLabel' | translate\"\n [searchString]=\"(gridState$ | async)?.search\"\n [closeButtonLabel]=\"'kit.search.closeButtonLabel' | translate\"\n (closeButtonClick)=\"closeButtonClick()\"\n></kit-search-bar>\n" }]
|
|
8415
8433
|
}], ctorParameters: () => [{ type: i1$d.Store }, { type: KitGridUrlStateService }] });
|
|
8416
8434
|
|