@indigina/ui-kit 1.1.305 → 1.1.307

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.
@@ -6430,15 +6430,16 @@ const kitTranslations = {
6430
6430
  cancel: 'Cancel',
6431
6431
  apply: 'Apply',
6432
6432
  },
6433
- archive: {
6434
- title: 'Switch To Archive',
6435
- },
6436
6433
  multiselect: {
6437
6434
  all: 'All',
6438
6435
  },
6439
6436
  grid: {
6440
6437
  pagerItemsText: 'items',
6441
6438
  view: 'View',
6439
+ actions: {
6440
+ archive: 'Switch To Archive',
6441
+ refresh: 'Refresh',
6442
+ },
6442
6443
  },
6443
6444
  routePath: {
6444
6445
  tbc: 'TBC',
@@ -6550,15 +6551,16 @@ const kitTranslations = {
6550
6551
  cancel: 'Отмена',
6551
6552
  apply: 'Применить',
6552
6553
  },
6553
- archive: {
6554
- title: 'Перейти к архиву',
6555
- },
6556
6554
  multiselect: {
6557
6555
  all: 'Все',
6558
6556
  },
6559
6557
  grid: {
6560
6558
  pagerItemsText: 'элементов',
6561
6559
  view: 'Вид',
6560
+ actions: {
6561
+ archive: 'Перейти к архиву',
6562
+ refresh: 'Обновить',
6563
+ },
6562
6564
  },
6563
6565
  routePath: {
6564
6566
  tbc: 'Уточняется',
@@ -6649,6 +6651,9 @@ class UpdateGridFilter extends KitAbstractPayloadAction {
6649
6651
  class SetGridFilters extends KitAbstractPayloadAction {
6650
6652
  static { this.type = '[Grid] SetFilters'; }
6651
6653
  }
6654
+ class SetGridArchive extends KitAbstractPayloadAction {
6655
+ static { this.type = '[Grid] SetArchive'; }
6656
+ }
6652
6657
 
6653
6658
  const KIT_GRID_STATE_TOKEN = new StateToken('grid');
6654
6659
  let KitGridState = class KitGridState {
@@ -6704,6 +6709,11 @@ let KitGridState = class KitGridState {
6704
6709
  filter: filters,
6705
6710
  }))));
6706
6711
  }
6712
+ setGridArchive(ctx, action) {
6713
+ ctx.setState(patch({
6714
+ archive: action.payload,
6715
+ }));
6716
+ }
6707
6717
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridState, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6708
6718
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridState }); }
6709
6719
  };
@@ -6737,6 +6747,9 @@ __decorate([
6737
6747
  __decorate([
6738
6748
  Action(SetGridFilters)
6739
6749
  ], KitGridState.prototype, "setGridFilters", null);
6750
+ __decorate([
6751
+ Action(SetGridArchive)
6752
+ ], KitGridState.prototype, "setGridArchive", null);
6740
6753
  KitGridState = __decorate([
6741
6754
  State({
6742
6755
  name: KIT_GRID_STATE_TOKEN,
@@ -6751,68 +6764,7 @@ KitGridState = __decorate([
6751
6764
  ], KitGridState);
6752
6765
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridState, decorators: [{
6753
6766
  type: Injectable
6754
- }], propDecorators: { setGridSkip: [], setGridTake: [], setGridSearch: [], removeGridSearch: [], setGridSort: [], setGridColumns: [], addGridFilter: [], removeGridFilter: [], updateGridFilter: [], setGridFilters: [] } });
6755
-
6756
- const kitBuildGridColumn = (field, title, type, sortable = true, hidden = false, width, filterType, excelFormat) => ({
6757
- field,
6758
- title,
6759
- sortable,
6760
- hidden,
6761
- width,
6762
- filterType,
6763
- type,
6764
- excelFormat,
6765
- });
6766
- const kitBuildGridDataResults = (data, loading, total) => ({
6767
- results: {
6768
- data,
6769
- total: total ?? 0,
6770
- },
6771
- loading,
6772
- });
6773
- const kitBuildSortString = (sort) => {
6774
- const sortString = sort?.filter(({ dir }) => dir)
6775
- .map(({ field, dir }) => `${field.split('.').join('/')} ${dir}`).join(', ');
6776
- return sortString !== '' && sortString || undefined;
6777
- };
6778
-
6779
- class KitGridUrlStateService {
6780
- constructor() {
6781
- this.activatedRoute = inject(ActivatedRoute);
6782
- this.router = inject(Router);
6783
- }
6784
- getGridStateFromUrl() {
6785
- const params = this.activatedRoute.snapshot.queryParams;
6786
- return {
6787
- skip: params?.skip && Number(params.skip),
6788
- take: params?.take && Number(params.take),
6789
- sort: params?.sort && JSON.parse(params.sort),
6790
- filter: params?.filter && JSON.parse(params.filter),
6791
- search: params?.search,
6792
- columns: params?.columns && JSON.parse(params.columns),
6793
- };
6794
- }
6795
- setGridStateToUrl(state) {
6796
- const queryParams = {
6797
- skip: state.skip,
6798
- take: state.take,
6799
- search: state.search,
6800
- sort: JSON.stringify(state.sort),
6801
- filter: JSON.stringify(state.filter),
6802
- columns: JSON.stringify(state.columns),
6803
- };
6804
- this.router.navigate([], {
6805
- relativeTo: this.activatedRoute,
6806
- queryParams,
6807
- queryParamsHandling: 'merge',
6808
- });
6809
- }
6810
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridUrlStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6811
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridUrlStateService }); }
6812
- }
6813
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridUrlStateService, decorators: [{
6814
- type: Injectable
6815
- }] });
6767
+ }], propDecorators: { setGridSkip: [], setGridTake: [], setGridSearch: [], removeGridSearch: [], setGridSort: [], setGridColumns: [], addGridFilter: [], removeGridFilter: [], updateGridFilter: [], setGridFilters: [], setGridArchive: [] } });
6816
6768
 
6817
6769
  var KitFilterType;
6818
6770
  (function (KitFilterType) {
@@ -6899,6 +6851,92 @@ const kitBuildFilters = (filters) => ({
6899
6851
  filters: filters.map(filter => filterEmptyValues(filter.value) ?? []),
6900
6852
  });
6901
6853
 
6854
+ const kitFormatStringForSearch = (inputString) => {
6855
+ return inputString
6856
+ .split(/\s+/)
6857
+ .filter(text => !!text)
6858
+ .map(text => text + '*')
6859
+ .join(' ');
6860
+ };
6861
+
6862
+ const kitBuildGridColumn = (field, title, type, sortable = true, hidden = false, width, filterType, excelFormat) => ({
6863
+ field,
6864
+ title,
6865
+ sortable,
6866
+ hidden,
6867
+ width,
6868
+ filterType,
6869
+ type,
6870
+ excelFormat,
6871
+ });
6872
+ const kitBuildGridDataResults = (data, loading, total) => ({
6873
+ results: {
6874
+ data,
6875
+ total: total ?? 0,
6876
+ },
6877
+ loading,
6878
+ });
6879
+ const kitBuildSortString = (sort) => {
6880
+ const sortString = sort?.filter(({ dir }) => dir)
6881
+ .map(({ field, dir }) => `${field.split('.').join('/')} ${dir}`).join(', ');
6882
+ return sortString !== '' && sortString || undefined;
6883
+ };
6884
+ const kitFetchGridData = ({ store, destroyRef, isLoading, fetchAction, fetchFromIndexAction, hasArchiveToggle, }) => {
6885
+ isLoading.set(true);
6886
+ const { skip, take, sort, filter, search, archive } = store.selectSnapshot(KIT_GRID_STATE_TOKEN);
6887
+ const gridState = {
6888
+ take,
6889
+ skip,
6890
+ sort,
6891
+ filter: kitBuildFilters(filter),
6892
+ };
6893
+ const isArchive = hasArchiveToggle && archive || false;
6894
+ const isSearchMode = hasArchiveToggle && !isArchive || !!search;
6895
+ const searchTerm = search && kitFormatStringForSearch(search) || undefined;
6896
+ const action = isSearchMode && fetchFromIndexAction({ ...gridState, searchTerm }) || fetchAction(gridState);
6897
+ store.dispatch(action).pipe(takeUntilDestroyed(destroyRef)).subscribe(() => isLoading.set(false));
6898
+ };
6899
+
6900
+ class KitGridUrlStateService {
6901
+ constructor() {
6902
+ this.activatedRoute = inject(ActivatedRoute);
6903
+ this.router = inject(Router);
6904
+ }
6905
+ getGridStateFromUrl() {
6906
+ const params = this.activatedRoute.snapshot.queryParams;
6907
+ return {
6908
+ skip: params?.skip && Number(params.skip),
6909
+ take: params?.take && Number(params.take),
6910
+ sort: params?.sort && JSON.parse(params.sort),
6911
+ filter: params?.filter && JSON.parse(params.filter),
6912
+ search: params?.search,
6913
+ columns: params?.columns && JSON.parse(params.columns),
6914
+ archive: params?.archive === 'true',
6915
+ };
6916
+ }
6917
+ setGridStateToUrl(state) {
6918
+ const queryParams = {
6919
+ skip: state.skip,
6920
+ take: state.take,
6921
+ search: state.search,
6922
+ sort: JSON.stringify(state.sort),
6923
+ filter: JSON.stringify(state.filter),
6924
+ columns: JSON.stringify(state.columns),
6925
+ archive: state.archive,
6926
+ };
6927
+ this.router.navigate([], {
6928
+ relativeTo: this.activatedRoute,
6929
+ queryParams,
6930
+ queryParamsHandling: 'merge',
6931
+ });
6932
+ }
6933
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridUrlStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
6934
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridUrlStateService }); }
6935
+ }
6936
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridUrlStateService, decorators: [{
6937
+ type: Injectable
6938
+ }] });
6939
+
6902
6940
  class FetchGridViews extends KitAbstractPayloadAction {
6903
6941
  static { this.type = '[GridViews] Fetch'; }
6904
6942
  }
@@ -7516,6 +7554,7 @@ class KitGridViewsComponent {
7516
7554
  new SetGridSkip(state.skip),
7517
7555
  new SetGridTake(state.take),
7518
7556
  new SetGridSearch(state.search),
7557
+ new SetGridArchive(state.archive),
7519
7558
  ]).subscribe(() => {
7520
7559
  if (urlState?.skip === undefined) {
7521
7560
  this.skipQueryParamsUpdate.set(true);
@@ -7553,6 +7592,7 @@ class KitGridViewsComponent {
7553
7592
  filter: convertFilterStringDate(useViewState ? viewState.filter ?? [] : urlState.filter ?? []),
7554
7593
  columns: reset ? defaultColumns : (urlState.columns ?? defaultColumns),
7555
7594
  search: urlState.search,
7595
+ archive: urlState.archive,
7556
7596
  };
7557
7597
  if (reset) {
7558
7598
  this.needToResetQueryParams.set(false);
@@ -8753,9 +8793,10 @@ class KitGridSearchComponent {
8753
8793
  this.kitSearchBarComponent = viewChild.required(KitSearchBarComponent);
8754
8794
  this.toggleSearch = output();
8755
8795
  this.gridState$ = this.store.select(KIT_GRID_STATE_TOKEN);
8796
+ this.lastSearch = signal('', ...(ngDevMode ? [{ debugName: "lastSearch" }] : []));
8756
8797
  }
8757
8798
  ngAfterViewInit() {
8758
- this.kitSearchBarComponent().changed.pipe(debounceTime(500), map(value => value.trim()), switchMap(value => value && this.store.dispatch(new SetGridSearch(value)) || this.store.dispatch(new RemoveGridSearch()))).subscribe(() => {
8799
+ this.kitSearchBarComponent().changed.pipe(debounceTime(500), map(value => value.trim()), switchMap(value => this.handleSearchChange(value))).subscribe(() => {
8759
8800
  this.kitGridUrlStateService.setGridStateToUrl(this.store.selectSnapshot(KIT_GRID_STATE_TOKEN));
8760
8801
  });
8761
8802
  }
@@ -8768,6 +8809,15 @@ class KitGridSearchComponent {
8768
8809
  closeSearch() {
8769
8810
  this.kitSearchBarComponent().onCloseButtonClick();
8770
8811
  }
8812
+ handleSearchChange(value) {
8813
+ const previousSearch = this.lastSearch();
8814
+ this.lastSearch.set(value);
8815
+ const shouldResetSkip = !!value !== !!previousSearch || (value !== previousSearch);
8816
+ return this.store.dispatch([
8817
+ ...(shouldResetSkip ? [new SetGridSkip(0)] : []),
8818
+ value ? new SetGridSearch(value) : new RemoveGridSearch(),
8819
+ ]);
8820
+ }
8771
8821
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8772
8822
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.1.3", type: KitGridSearchComponent, isStandalone: true, selector: "kit-grid-search", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggleSearch: "toggleSearch" }, 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 [disabled]=\"disabled()\"\n (closeButtonClick)=\"closeButtonClick()\"\n (searchButtonClick)=\"this.toggleSearch.emit(true)\"\n></kit-search-bar>\n", dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "component", type: KitSearchBarComponent, selector: "kit-search-bar", inputs: ["placeholder", "searchButtonLabel", "closeButtonLabel", "searchString", "disabled"], outputs: ["changed", "searchButtonClick", "closeButtonClick"] }, { kind: "pipe", type: i1$c.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8773
8823
  }
@@ -8892,15 +8942,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
8892
8942
 
8893
8943
  class KitGridArchiveToggle {
8894
8944
  constructor() {
8945
+ this.store = inject(Store);
8946
+ this.kitGridUrlStateService = inject(KitGridUrlStateService);
8895
8947
  this.valueChange = output();
8896
8948
  this.kitToggleSize = KitToggleSize;
8897
8949
  this.kitTooltipPosition = KitTooltipPosition;
8950
+ this.gridState = this.store.selectSignal(KIT_GRID_STATE_TOKEN);
8898
8951
  }
8899
8952
  onChange(value) {
8900
8953
  this.valueChange.emit(value);
8954
+ this.store.dispatch([
8955
+ new SetGridArchive(value),
8956
+ new SetGridSkip(0),
8957
+ ...(value && [new RemoveGridSearch()] || []),
8958
+ ]).subscribe(() => {
8959
+ this.kitGridUrlStateService.setGridStateToUrl(this.store.selectSnapshot(KIT_GRID_STATE_TOKEN));
8960
+ });
8901
8961
  }
8902
8962
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridArchiveToggle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8903
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: KitGridArchiveToggle, isStandalone: true, selector: "kit-grid-archive-toggle", outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<kit-toggle class=\"kit-grid-archive-toggle\"\n kitTooltip\n kitTooltipFilter=\".kit-grid-archive-toggle\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.archive.title' | translate\"\n [size]=\"kitToggleSize.SMALL\"\n (changed)=\"onChange($event)\"\n></kit-toggle>\n", dependencies: [{ kind: "component", type: KitToggleComponent, selector: "kit-toggle", inputs: ["label", "disabled", "readonly", "defaultChecked", "leftLabel", "rightLabel", "messageIcon", "messageText", "size"], outputs: ["disabledChange", "defaultCheckedChange", "changed"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8963
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.3", type: KitGridArchiveToggle, isStandalone: true, selector: "kit-grid-archive-toggle", outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<kit-toggle class=\"kit-grid-archive-toggle\"\n kitTooltip\n kitTooltipFilter=\".kit-grid-archive-toggle\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.grid.actions.archive' | translate\"\n [defaultChecked]=\"gridState()?.archive ?? false\"\n [size]=\"kitToggleSize.SMALL\"\n (changed)=\"onChange($event)\"\n></kit-toggle>\n", dependencies: [{ kind: "component", type: KitToggleComponent, selector: "kit-toggle", inputs: ["label", "disabled", "readonly", "defaultChecked", "leftLabel", "rightLabel", "messageIcon", "messageText", "size"], outputs: ["disabledChange", "defaultCheckedChange", "changed"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8904
8964
  }
8905
8965
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitGridArchiveToggle, decorators: [{
8906
8966
  type: Component,
@@ -8908,7 +8968,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
8908
8968
  KitToggleComponent,
8909
8969
  KitTooltipDirective,
8910
8970
  TranslatePipe,
8911
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<kit-toggle class=\"kit-grid-archive-toggle\"\n kitTooltip\n kitTooltipFilter=\".kit-grid-archive-toggle\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.archive.title' | translate\"\n [size]=\"kitToggleSize.SMALL\"\n (changed)=\"onChange($event)\"\n></kit-toggle>\n" }]
8971
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<kit-toggle class=\"kit-grid-archive-toggle\"\n kitTooltip\n kitTooltipFilter=\".kit-grid-archive-toggle\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.grid.actions.archive' | translate\"\n [defaultChecked]=\"gridState()?.archive ?? false\"\n [size]=\"kitToggleSize.SMALL\"\n (changed)=\"onChange($event)\"\n></kit-toggle>\n" }]
8912
8972
  }] });
8913
8973
 
8914
8974
  class KitEntityGridComponent {
@@ -8937,8 +8997,10 @@ class KitEntityGridComponent {
8937
8997
  this.pageSizes = input(...(ngDevMode ? [undefined, { debugName: "pageSizes" }] : []));
8938
8998
  this.rowClassFn = input(...(ngDevMode ? [undefined, { debugName: "rowClassFn" }] : []));
8939
8999
  this.showArchiveToggle = input(false, ...(ngDevMode ? [{ debugName: "showArchiveToggle" }] : []));
9000
+ this.showRefreshButton = input(false, ...(ngDevMode ? [{ debugName: "showRefreshButton" }] : []));
8940
9001
  this.gridViewChanged = output();
8941
9002
  this.archiveModeChanged = output();
9003
+ this.refreshButtonClicked = output();
8942
9004
  this.search = viewChild('search', ...(ngDevMode ? [{ debugName: "search", read: KitGridSearchComponent }] : [{ read: KitGridSearchComponent }]));
8943
9005
  this.kitTooltipPosition = KitTooltipPosition;
8944
9006
  this.searchIsOpen = signal(false, ...(ngDevMode ? [{ debugName: "searchIsOpen" }] : []));
@@ -8950,7 +9012,7 @@ class KitEntityGridComponent {
8950
9012
  }]));
8951
9013
  this.drawPdf = computed(() => this.kitGridComponent()?.gridComponent?.drawPDF.bind(this.kitGridComponent()?.gridComponent), ...(ngDevMode ? [{ debugName: "drawPdf" }] : []));
8952
9014
  this.filters$ = this.store.select(KIT_GRID_STATE_TOKEN).pipe(map(gridData => gridData.filter));
8953
- this.gridState$ = this.store.select(KIT_GRID_STATE_TOKEN);
9015
+ this.gridState = this.store.selectSignal(KIT_GRID_STATE_TOKEN);
8954
9016
  this.pageSize = 10;
8955
9017
  this.sortable = {
8956
9018
  mode: KitGridSortSettingsMode.MULTIPLE,
@@ -8962,16 +9024,15 @@ class KitEntityGridComponent {
8962
9024
  this.kitButtonKind = KitButtonKind;
8963
9025
  this.kitButtonIconPosition = KitButtonIconPosition;
8964
9026
  this.kitBadgeTheme = KitBadgeTheme;
8965
- this.gridState = this.store.selectSignal(KIT_GRID_STATE_TOKEN);
8966
9027
  this.isExporting = signal(false, ...(ngDevMode ? [{ debugName: "isExporting" }] : []));
8967
9028
  this.archiveModeEnabled = signal(false, ...(ngDevMode ? [{ debugName: "archiveModeEnabled" }] : []));
8968
9029
  effect(() => {
8969
9030
  this.isExporting.set(!!this.gridExportComponent()?.isGridExporting());
8970
9031
  this.kitGridComponent()?.columns.set(this.columns());
9032
+ this.archiveModeEnabled.set(this.gridState().archive ?? false);
8971
9033
  });
8972
9034
  }
8973
9035
  onPageSizeChanged(event) {
8974
- this.store.dispatch(new SetGridSkip(event.skip));
8975
9036
  this.pageSize = event.take;
8976
9037
  }
8977
9038
  onFiltersToggle() {
@@ -8998,11 +9059,14 @@ class KitEntityGridComponent {
8998
9059
  isSearchDisabled() {
8999
9060
  return this.showArchiveToggle() && this.archiveModeEnabled();
9000
9061
  }
9062
+ onRefreshButtonClick() {
9063
+ this.refreshButtonClicked.emit();
9064
+ }
9001
9065
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitEntityGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9002
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: KitEntityGridComponent, isStandalone: true, selector: "kit-entity-grid", inputs: { gridData: { classPropertyName: "gridData", publicName: "gridData", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, gridColumns: { classPropertyName: "gridColumns", publicName: "gridColumns", isSignal: true, isRequired: true, transformFunction: null }, defaultViewName: { classPropertyName: "defaultViewName", publicName: "defaultViewName", isSignal: true, isRequired: true, transformFunction: null }, viewGroup: { classPropertyName: "viewGroup", publicName: "viewGroup", isSignal: true, isRequired: true, transformFunction: null }, viewGroupConfig: { classPropertyName: "viewGroupConfig", publicName: "viewGroupConfig", isSignal: true, isRequired: true, transformFunction: null }, pdfOptions: { classPropertyName: "pdfOptions", publicName: "pdfOptions", isSignal: true, isRequired: true, transformFunction: null }, getExportedData: { classPropertyName: "getExportedData", publicName: "getExportedData", isSignal: true, isRequired: true, transformFunction: null }, defaultSorting: { classPropertyName: "defaultSorting", publicName: "defaultSorting", isSignal: true, isRequired: false, transformFunction: null }, filterExcludedColumns: { classPropertyName: "filterExcludedColumns", publicName: "filterExcludedColumns", isSignal: true, isRequired: false, transformFunction: null }, systemViews: { classPropertyName: "systemViews", publicName: "systemViews", isSignal: true, isRequired: false, transformFunction: null }, translationMap: { classPropertyName: "translationMap", publicName: "translationMap", isSignal: true, isRequired: false, transformFunction: null }, isDetailTemplateVisible: { classPropertyName: "isDetailTemplateVisible", publicName: "isDetailTemplateVisible", isSignal: true, isRequired: false, transformFunction: null }, detailTemplateExpandDisableIf: { classPropertyName: "detailTemplateExpandDisableIf", publicName: "detailTemplateExpandDisableIf", isSignal: true, isRequired: false, transformFunction: null }, gridHasData: { classPropertyName: "gridHasData", publicName: "gridHasData", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, pagerInfoText: { classPropertyName: "pagerInfoText", publicName: "pagerInfoText", isSignal: true, isRequired: false, transformFunction: null }, showBreadcrumbs: { classPropertyName: "showBreadcrumbs", publicName: "showBreadcrumbs", isSignal: true, isRequired: false, transformFunction: null }, pageSizes: { classPropertyName: "pageSizes", publicName: "pageSizes", isSignal: true, isRequired: false, transformFunction: null }, rowClassFn: { classPropertyName: "rowClassFn", publicName: "rowClassFn", isSignal: true, isRequired: false, transformFunction: null }, showArchiveToggle: { classPropertyName: "showArchiveToggle", publicName: "showArchiveToggle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { gridViewChanged: "gridViewChanged", archiveModeChanged: "archiveModeChanged" }, providers: [
9066
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: KitEntityGridComponent, isStandalone: true, selector: "kit-entity-grid", inputs: { gridData: { classPropertyName: "gridData", publicName: "gridData", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, gridColumns: { classPropertyName: "gridColumns", publicName: "gridColumns", isSignal: true, isRequired: true, transformFunction: null }, defaultViewName: { classPropertyName: "defaultViewName", publicName: "defaultViewName", isSignal: true, isRequired: true, transformFunction: null }, viewGroup: { classPropertyName: "viewGroup", publicName: "viewGroup", isSignal: true, isRequired: true, transformFunction: null }, viewGroupConfig: { classPropertyName: "viewGroupConfig", publicName: "viewGroupConfig", isSignal: true, isRequired: true, transformFunction: null }, pdfOptions: { classPropertyName: "pdfOptions", publicName: "pdfOptions", isSignal: true, isRequired: true, transformFunction: null }, getExportedData: { classPropertyName: "getExportedData", publicName: "getExportedData", isSignal: true, isRequired: true, transformFunction: null }, defaultSorting: { classPropertyName: "defaultSorting", publicName: "defaultSorting", isSignal: true, isRequired: false, transformFunction: null }, filterExcludedColumns: { classPropertyName: "filterExcludedColumns", publicName: "filterExcludedColumns", isSignal: true, isRequired: false, transformFunction: null }, systemViews: { classPropertyName: "systemViews", publicName: "systemViews", isSignal: true, isRequired: false, transformFunction: null }, translationMap: { classPropertyName: "translationMap", publicName: "translationMap", isSignal: true, isRequired: false, transformFunction: null }, isDetailTemplateVisible: { classPropertyName: "isDetailTemplateVisible", publicName: "isDetailTemplateVisible", isSignal: true, isRequired: false, transformFunction: null }, detailTemplateExpandDisableIf: { classPropertyName: "detailTemplateExpandDisableIf", publicName: "detailTemplateExpandDisableIf", isSignal: true, isRequired: false, transformFunction: null }, gridHasData: { classPropertyName: "gridHasData", publicName: "gridHasData", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, pagerInfoText: { classPropertyName: "pagerInfoText", publicName: "pagerInfoText", isSignal: true, isRequired: false, transformFunction: null }, showBreadcrumbs: { classPropertyName: "showBreadcrumbs", publicName: "showBreadcrumbs", isSignal: true, isRequired: false, transformFunction: null }, pageSizes: { classPropertyName: "pageSizes", publicName: "pageSizes", isSignal: true, isRequired: false, transformFunction: null }, rowClassFn: { classPropertyName: "rowClassFn", publicName: "rowClassFn", isSignal: true, isRequired: false, transformFunction: null }, showArchiveToggle: { classPropertyName: "showArchiveToggle", publicName: "showArchiveToggle", isSignal: true, isRequired: false, transformFunction: null }, showRefreshButton: { classPropertyName: "showRefreshButton", publicName: "showRefreshButton", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { gridViewChanged: "gridViewChanged", archiveModeChanged: "archiveModeChanged", refreshButtonClicked: "refreshButtonClicked" }, providers: [
9003
9067
  KitBreadcrumbsService,
9004
9068
  KitGridUrlStateService,
9005
- ], queries: [{ propertyName: "columns", predicate: KitGridColumnComponent, isSignal: true }, { propertyName: "gridDetailTemplate", first: true, predicate: KitGridDetailTemplateDirective, descendants: true, read: TemplateRef, isSignal: true }], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true, read: KitGridSearchComponent, isSignal: true }, { propertyName: "kitGridComponent", first: true, predicate: (KitGridComponent), descendants: true, isSignal: true }, { propertyName: "gridExportComponent", first: true, predicate: KitGridExportComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"kit-entity-grid\">\n @if (showBreadcrumbs()) {\n <kit-breadcrumbs [items]=\"breadcrumbs()\"></kit-breadcrumbs>\n }\n <kit-entity-title>{{ title() }}</kit-entity-title>\n <div class=\"grid-header\">\n <div class=\"grid-header-content\">\n <kit-grid-views class=\"grid-header-views\"\n [viewGroup]=\"viewGroup()\"\n [viewConfigGroup]=\"viewGroupConfig()\"\n [systemViews]=\"systemViews()\"\n [defaultColumns]=\"gridColumns()\"\n [defaultViewName]=\"defaultViewName()\"\n [defaultSorting]=\"defaultSorting()\"\n (viewChanged)=\"onGridViewChange()\"\n ></kit-grid-views>\n <div class=\"grid-header-actions\">\n <ng-content select=\"[actions]\"></ng-content>\n @if (showArchiveToggle()) {\n <kit-grid-archive-toggle (valueChange)=\"onArchiveToggle($event)\"\n ></kit-grid-archive-toggle>\n }\n <kit-grid-export [gridHasData]=\"gridHasData()\"\n [exportedFileName]=\"pdfOptions().fileName ?? ''\"\n [getExportedData]=\"getExportedData()\"\n [translationMap]=\"translationMap()\"\n [drawPdf]=\"drawPdf()\" />\n @if (filters$ | async; as filters) {\n <kit-button kitBadge\n kitTooltip\n kitTooltipFilter=\"kit-button\"\n [title]=\"'kit.filters.title' | translate\"\n [kitTooltipVisible]=\"searchIsOpen()\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [kitBadgeText]=\"filters.length\"\n [kitBadgeTheme]=\"kitBadgeTheme.DANGER\"\n [kitBadgeVisible]=\"filters.length > 0\"\n [label]=\"searchIsOpen() ? '' : ('kit.filters.title' | translate)\"\n [type]=\"kitButtonType.GHOST\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [icon]=\"kitSvgIcon.FILTER\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [active]=\"filtersVisible()\"\n (clicked)=\"onFiltersToggle()\"\n ></kit-button>\n <kit-grid-column-manager [showLabel]=\"!searchIsOpen()\" />\n }\n </div>\n <div class=\"grid-header-search\">\n <kit-grid-search #search\n [disabled]=\"isSearchDisabled()\"\n (toggleSearch)=\"searchIsOpen.set($event)\" />\n </div>\n </div>\n @if (filtersVisible()) {\n <ng-content select=\"[filters]\"></ng-content>\n }\n </div>\n <ng-content select=\"[post-header-content]\"></ng-content>\n @if (gridData(); as data) {\n @if (!data.loading) {\n <kit-grid class=\"grid\"\n [data]=\"data.results\"\n [pageable]=\"true\"\n [pageSize]=\"(gridState$ | async)?.take ?? pageSize\"\n [sort]=\"(gridState$ | async)?.sort ?? defaultSorting()\"\n [sortable]=\"sortable\"\n [detailTemplateShowIf]=\"isDetailTemplateVisible()\"\n [detailTemplateExpandDisableIf]=\"detailTemplateExpandDisableIf()\"\n [pdfOptions]=\"pdfOptions()\"\n [loading]=\"isExporting() || isLoading()\"\n [skip]=\"(gridState$ | async)?.skip ?? 0\"\n [pagerInfoText]=\"pagerInfoText()\"\n [pageSizes]=\"pageSizes()\"\n [rowClassFn]=\"rowClassFn()\"\n [gridDetailTemplate]=\"gridDetailTemplate()\"\n (pageChanged)=\"onPageSizeChanged($event)\"\n (dataStateChanged)=\"onDataStateChange($event)\"\n ></kit-grid>\n } @else {\n <kit-skeleton-grid\n ></kit-skeleton-grid>\n }\n }\n <ng-content select=\"[actions]\"></ng-content>\n</div>\n\n", styles: [".kit-entity-grid{display:flex;flex-direction:column;gap:25px;height:calc(100vh - var(--ui-kit-header-height) - 40px)}.kit-entity-grid .grid{overflow:auto}.grid-header{display:flex;flex-direction:column;gap:16px;container-type:inline-size}.grid-header-content{display:flex;gap:16px;width:100%}@container (max-width: 780px){.grid-header-content{display:grid;gap:10px;grid-template-areas:\"views .\" \"actions search\";grid-template-columns:repeat(2,1fr)}}.grid-header-views{min-width:0;flex:1;grid-area:views;grid-column:1/3}.grid-header-actions{display:flex;gap:16px;grid-area:actions}.grid-header-search{grid-area:search}@container (max-width: 780px){.grid-header-search{border:none;padding:0;display:flex;justify-content:flex-end}}.grid-header-filters{width:100%}::ng-deep .k-loading-pdf-mask{display:none}::ng-deep .k-pdf-export tbody>tr>td>a{display:none}\n"], dependencies: [{ kind: "component", type: KitBreadcrumbsComponent, selector: "kit-breadcrumbs", inputs: ["items"] }, { kind: "component", type: KitEntityTitleComponent, selector: "kit-entity-title" }, { kind: "component", type: KitGridViewsComponent, selector: "kit-grid-views", inputs: ["viewGroup", "viewConfigGroup", "defaultColumns", "defaultViewName", "defaultSorting", "systemViews"], outputs: ["viewChanged"] }, { kind: "component", type: KitGridExportComponent, selector: "kit-grid-export", inputs: ["getExportedData", "translationMap", "exportedFileName", "drawPdf", "gridHasData", "visibleColumns"] }, { kind: "directive", type: KitBadgeDirective, selector: "[kitBadge]", inputs: ["kitBadgeText", "kitBadgeTheme", "kitBadgeVisible"] }, { kind: "component", type: KitGridColumnManagerComponent, selector: "kit-grid-column-manager", inputs: ["showLabel"] }, { kind: "component", type: KitGridSearchComponent, selector: "kit-grid-search", inputs: ["disabled"], outputs: ["toggleSearch"] }, { kind: "component", type: KitGridComponent, selector: "kit-grid", inputs: ["data", "gridDataBinding", "sortable", "sort", "pageable", "pageSize", "skip", "loading", "detailTemplateShowIf", "detailTemplateExpandDisableIf", "showFooter", "footerTitle", "footerData", "pdfOptions", "pagerButtonCount", "pageSizes", "pagerInfoText", "resizable", "gridDetailTemplate", "rowClassFn"], outputs: ["pageChanged", "sortChanged", "dataStateChanged", "detailExpanded", "detailCollapsed", "cellClicked", "excelExport"] }, { kind: "component", type: KitSkeletonGridComponent, selector: "kit-skeleton-grid", inputs: ["itemsCount"] }, { kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible"] }, { kind: "component", type: KitGridArchiveToggle, selector: "kit-grid-archive-toggle", outputs: ["valueChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9069
+ ], queries: [{ propertyName: "columns", predicate: KitGridColumnComponent, isSignal: true }, { propertyName: "gridDetailTemplate", first: true, predicate: KitGridDetailTemplateDirective, descendants: true, read: TemplateRef, isSignal: true }], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true, read: KitGridSearchComponent, isSignal: true }, { propertyName: "kitGridComponent", first: true, predicate: (KitGridComponent), descendants: true, isSignal: true }, { propertyName: "gridExportComponent", first: true, predicate: KitGridExportComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"kit-entity-grid\">\n @if (showBreadcrumbs()) {\n <kit-breadcrumbs [items]=\"breadcrumbs()\"></kit-breadcrumbs>\n }\n <kit-entity-title>{{ title() }}</kit-entity-title>\n <div class=\"grid-header\">\n <div class=\"grid-header-content\">\n <kit-grid-views class=\"grid-header-views\"\n [viewGroup]=\"viewGroup()\"\n [viewConfigGroup]=\"viewGroupConfig()\"\n [systemViews]=\"systemViews()\"\n [defaultColumns]=\"gridColumns()\"\n [defaultViewName]=\"defaultViewName()\"\n [defaultSorting]=\"defaultSorting()\"\n (viewChanged)=\"onGridViewChange()\"\n ></kit-grid-views>\n <div class=\"grid-header-actions\">\n <ng-content select=\"[actions]\"></ng-content>\n @if (showRefreshButton()) {\n <kit-button kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.grid.actions.refresh' | translate\"\n [type]=\"kitButtonType.GHOST\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [icon]=\"kitSvgIcon.RESET\"\n (clicked)=\"onRefreshButtonClick()\"\n ></kit-button>\n }\n @if (showArchiveToggle()) {\n <kit-grid-archive-toggle (valueChange)=\"onArchiveToggle($event)\"\n ></kit-grid-archive-toggle>\n }\n <kit-grid-export [gridHasData]=\"gridHasData()\"\n [exportedFileName]=\"pdfOptions().fileName ?? ''\"\n [getExportedData]=\"getExportedData()\"\n [translationMap]=\"translationMap()\"\n [drawPdf]=\"drawPdf()\" />\n @if (filters$ | async; as filters) {\n <kit-button kitBadge\n kitTooltip\n kitTooltipFilter=\"kit-button\"\n [title]=\"'kit.filters.title' | translate\"\n [kitTooltipVisible]=\"searchIsOpen()\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [kitBadgeText]=\"filters.length\"\n [kitBadgeTheme]=\"kitBadgeTheme.DANGER\"\n [kitBadgeVisible]=\"filters.length > 0\"\n [label]=\"searchIsOpen() ? '' : ('kit.filters.title' | translate)\"\n [type]=\"kitButtonType.GHOST\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [icon]=\"kitSvgIcon.FILTER\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [active]=\"filtersVisible()\"\n (clicked)=\"onFiltersToggle()\"\n ></kit-button>\n <kit-grid-column-manager [showLabel]=\"!searchIsOpen()\" />\n }\n </div>\n <div class=\"grid-header-search\">\n <kit-grid-search #search\n [disabled]=\"isSearchDisabled()\"\n (toggleSearch)=\"searchIsOpen.set($event)\" />\n </div>\n </div>\n @if (filtersVisible()) {\n <ng-content select=\"[filters]\"></ng-content>\n }\n </div>\n <ng-content select=\"[post-header-content]\"></ng-content>\n @if (gridData(); as data) {\n @if (!data.loading) {\n <kit-grid class=\"grid\"\n [data]=\"data.results\"\n [pageable]=\"true\"\n [pageSize]=\"gridState().take\"\n [sort]=\"gridState().sort\"\n [sortable]=\"sortable\"\n [detailTemplateShowIf]=\"isDetailTemplateVisible()\"\n [detailTemplateExpandDisableIf]=\"detailTemplateExpandDisableIf()\"\n [pdfOptions]=\"pdfOptions()\"\n [loading]=\"isExporting() || isLoading()\"\n [skip]=\"gridState().skip\"\n [pagerInfoText]=\"pagerInfoText()\"\n [pageSizes]=\"pageSizes()\"\n [rowClassFn]=\"rowClassFn()\"\n [gridDetailTemplate]=\"gridDetailTemplate()\"\n (pageChanged)=\"onPageSizeChanged($event)\"\n (dataStateChanged)=\"onDataStateChange($event)\"\n ></kit-grid>\n } @else {\n <kit-skeleton-grid\n ></kit-skeleton-grid>\n }\n }\n <ng-content select=\"[actions]\"></ng-content>\n</div>\n\n", styles: [".kit-entity-grid{display:flex;flex-direction:column;gap:25px;height:calc(100vh - var(--ui-kit-header-height) - 40px)}.kit-entity-grid .grid{overflow:auto}.grid-header{display:flex;flex-direction:column;gap:16px;container-type:inline-size}.grid-header-content{display:flex;gap:16px;width:100%}@container (max-width: 780px){.grid-header-content{display:grid;gap:10px;grid-template-areas:\"views .\" \"actions search\";grid-template-columns:repeat(2,1fr)}}.grid-header-views{min-width:0;flex:1;grid-area:views;grid-column:1/3}.grid-header-actions{display:flex;gap:16px;grid-area:actions}.grid-header-search{grid-area:search}@container (max-width: 780px){.grid-header-search{border:none;padding:0;display:flex;justify-content:flex-end}}.grid-header-filters{width:100%}::ng-deep .k-loading-pdf-mask{display:none}::ng-deep .k-pdf-export tbody>tr>td>a{display:none}\n"], dependencies: [{ kind: "component", type: KitBreadcrumbsComponent, selector: "kit-breadcrumbs", inputs: ["items"] }, { kind: "component", type: KitEntityTitleComponent, selector: "kit-entity-title" }, { kind: "component", type: KitGridViewsComponent, selector: "kit-grid-views", inputs: ["viewGroup", "viewConfigGroup", "defaultColumns", "defaultViewName", "defaultSorting", "systemViews"], outputs: ["viewChanged"] }, { kind: "component", type: KitGridExportComponent, selector: "kit-grid-export", inputs: ["getExportedData", "translationMap", "exportedFileName", "drawPdf", "gridHasData", "visibleColumns"] }, { kind: "directive", type: KitBadgeDirective, selector: "[kitBadge]", inputs: ["kitBadgeText", "kitBadgeTheme", "kitBadgeVisible"] }, { kind: "component", type: KitGridColumnManagerComponent, selector: "kit-grid-column-manager", inputs: ["showLabel"] }, { kind: "component", type: KitGridSearchComponent, selector: "kit-grid-search", inputs: ["disabled"], outputs: ["toggleSearch"] }, { kind: "component", type: KitGridComponent, selector: "kit-grid", inputs: ["data", "gridDataBinding", "sortable", "sort", "pageable", "pageSize", "skip", "loading", "detailTemplateShowIf", "detailTemplateExpandDisableIf", "showFooter", "footerTitle", "footerData", "pdfOptions", "pagerButtonCount", "pageSizes", "pagerInfoText", "resizable", "gridDetailTemplate", "rowClassFn"], outputs: ["pageChanged", "sortChanged", "dataStateChanged", "detailExpanded", "detailCollapsed", "cellClicked", "excelExport"] }, { kind: "component", type: KitSkeletonGridComponent, selector: "kit-skeleton-grid", inputs: ["itemsCount"] }, { kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible"] }, { kind: "component", type: KitGridArchiveToggle, selector: "kit-grid-archive-toggle", outputs: ["valueChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9006
9070
  }
9007
9071
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitEntityGridComponent, decorators: [{
9008
9072
  type: Component,
@@ -9024,7 +9088,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
9024
9088
  ], providers: [
9025
9089
  KitBreadcrumbsService,
9026
9090
  KitGridUrlStateService,
9027
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"kit-entity-grid\">\n @if (showBreadcrumbs()) {\n <kit-breadcrumbs [items]=\"breadcrumbs()\"></kit-breadcrumbs>\n }\n <kit-entity-title>{{ title() }}</kit-entity-title>\n <div class=\"grid-header\">\n <div class=\"grid-header-content\">\n <kit-grid-views class=\"grid-header-views\"\n [viewGroup]=\"viewGroup()\"\n [viewConfigGroup]=\"viewGroupConfig()\"\n [systemViews]=\"systemViews()\"\n [defaultColumns]=\"gridColumns()\"\n [defaultViewName]=\"defaultViewName()\"\n [defaultSorting]=\"defaultSorting()\"\n (viewChanged)=\"onGridViewChange()\"\n ></kit-grid-views>\n <div class=\"grid-header-actions\">\n <ng-content select=\"[actions]\"></ng-content>\n @if (showArchiveToggle()) {\n <kit-grid-archive-toggle (valueChange)=\"onArchiveToggle($event)\"\n ></kit-grid-archive-toggle>\n }\n <kit-grid-export [gridHasData]=\"gridHasData()\"\n [exportedFileName]=\"pdfOptions().fileName ?? ''\"\n [getExportedData]=\"getExportedData()\"\n [translationMap]=\"translationMap()\"\n [drawPdf]=\"drawPdf()\" />\n @if (filters$ | async; as filters) {\n <kit-button kitBadge\n kitTooltip\n kitTooltipFilter=\"kit-button\"\n [title]=\"'kit.filters.title' | translate\"\n [kitTooltipVisible]=\"searchIsOpen()\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [kitBadgeText]=\"filters.length\"\n [kitBadgeTheme]=\"kitBadgeTheme.DANGER\"\n [kitBadgeVisible]=\"filters.length > 0\"\n [label]=\"searchIsOpen() ? '' : ('kit.filters.title' | translate)\"\n [type]=\"kitButtonType.GHOST\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [icon]=\"kitSvgIcon.FILTER\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [active]=\"filtersVisible()\"\n (clicked)=\"onFiltersToggle()\"\n ></kit-button>\n <kit-grid-column-manager [showLabel]=\"!searchIsOpen()\" />\n }\n </div>\n <div class=\"grid-header-search\">\n <kit-grid-search #search\n [disabled]=\"isSearchDisabled()\"\n (toggleSearch)=\"searchIsOpen.set($event)\" />\n </div>\n </div>\n @if (filtersVisible()) {\n <ng-content select=\"[filters]\"></ng-content>\n }\n </div>\n <ng-content select=\"[post-header-content]\"></ng-content>\n @if (gridData(); as data) {\n @if (!data.loading) {\n <kit-grid class=\"grid\"\n [data]=\"data.results\"\n [pageable]=\"true\"\n [pageSize]=\"(gridState$ | async)?.take ?? pageSize\"\n [sort]=\"(gridState$ | async)?.sort ?? defaultSorting()\"\n [sortable]=\"sortable\"\n [detailTemplateShowIf]=\"isDetailTemplateVisible()\"\n [detailTemplateExpandDisableIf]=\"detailTemplateExpandDisableIf()\"\n [pdfOptions]=\"pdfOptions()\"\n [loading]=\"isExporting() || isLoading()\"\n [skip]=\"(gridState$ | async)?.skip ?? 0\"\n [pagerInfoText]=\"pagerInfoText()\"\n [pageSizes]=\"pageSizes()\"\n [rowClassFn]=\"rowClassFn()\"\n [gridDetailTemplate]=\"gridDetailTemplate()\"\n (pageChanged)=\"onPageSizeChanged($event)\"\n (dataStateChanged)=\"onDataStateChange($event)\"\n ></kit-grid>\n } @else {\n <kit-skeleton-grid\n ></kit-skeleton-grid>\n }\n }\n <ng-content select=\"[actions]\"></ng-content>\n</div>\n\n", styles: [".kit-entity-grid{display:flex;flex-direction:column;gap:25px;height:calc(100vh - var(--ui-kit-header-height) - 40px)}.kit-entity-grid .grid{overflow:auto}.grid-header{display:flex;flex-direction:column;gap:16px;container-type:inline-size}.grid-header-content{display:flex;gap:16px;width:100%}@container (max-width: 780px){.grid-header-content{display:grid;gap:10px;grid-template-areas:\"views .\" \"actions search\";grid-template-columns:repeat(2,1fr)}}.grid-header-views{min-width:0;flex:1;grid-area:views;grid-column:1/3}.grid-header-actions{display:flex;gap:16px;grid-area:actions}.grid-header-search{grid-area:search}@container (max-width: 780px){.grid-header-search{border:none;padding:0;display:flex;justify-content:flex-end}}.grid-header-filters{width:100%}::ng-deep .k-loading-pdf-mask{display:none}::ng-deep .k-pdf-export tbody>tr>td>a{display:none}\n"] }]
9091
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"kit-entity-grid\">\n @if (showBreadcrumbs()) {\n <kit-breadcrumbs [items]=\"breadcrumbs()\"></kit-breadcrumbs>\n }\n <kit-entity-title>{{ title() }}</kit-entity-title>\n <div class=\"grid-header\">\n <div class=\"grid-header-content\">\n <kit-grid-views class=\"grid-header-views\"\n [viewGroup]=\"viewGroup()\"\n [viewConfigGroup]=\"viewGroupConfig()\"\n [systemViews]=\"systemViews()\"\n [defaultColumns]=\"gridColumns()\"\n [defaultViewName]=\"defaultViewName()\"\n [defaultSorting]=\"defaultSorting()\"\n (viewChanged)=\"onGridViewChange()\"\n ></kit-grid-views>\n <div class=\"grid-header-actions\">\n <ng-content select=\"[actions]\"></ng-content>\n @if (showRefreshButton()) {\n <kit-button kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.grid.actions.refresh' | translate\"\n [type]=\"kitButtonType.GHOST\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [icon]=\"kitSvgIcon.RESET\"\n (clicked)=\"onRefreshButtonClick()\"\n ></kit-button>\n }\n @if (showArchiveToggle()) {\n <kit-grid-archive-toggle (valueChange)=\"onArchiveToggle($event)\"\n ></kit-grid-archive-toggle>\n }\n <kit-grid-export [gridHasData]=\"gridHasData()\"\n [exportedFileName]=\"pdfOptions().fileName ?? ''\"\n [getExportedData]=\"getExportedData()\"\n [translationMap]=\"translationMap()\"\n [drawPdf]=\"drawPdf()\" />\n @if (filters$ | async; as filters) {\n <kit-button kitBadge\n kitTooltip\n kitTooltipFilter=\"kit-button\"\n [title]=\"'kit.filters.title' | translate\"\n [kitTooltipVisible]=\"searchIsOpen()\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [kitBadgeText]=\"filters.length\"\n [kitBadgeTheme]=\"kitBadgeTheme.DANGER\"\n [kitBadgeVisible]=\"filters.length > 0\"\n [label]=\"searchIsOpen() ? '' : ('kit.filters.title' | translate)\"\n [type]=\"kitButtonType.GHOST\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [icon]=\"kitSvgIcon.FILTER\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [active]=\"filtersVisible()\"\n (clicked)=\"onFiltersToggle()\"\n ></kit-button>\n <kit-grid-column-manager [showLabel]=\"!searchIsOpen()\" />\n }\n </div>\n <div class=\"grid-header-search\">\n <kit-grid-search #search\n [disabled]=\"isSearchDisabled()\"\n (toggleSearch)=\"searchIsOpen.set($event)\" />\n </div>\n </div>\n @if (filtersVisible()) {\n <ng-content select=\"[filters]\"></ng-content>\n }\n </div>\n <ng-content select=\"[post-header-content]\"></ng-content>\n @if (gridData(); as data) {\n @if (!data.loading) {\n <kit-grid class=\"grid\"\n [data]=\"data.results\"\n [pageable]=\"true\"\n [pageSize]=\"gridState().take\"\n [sort]=\"gridState().sort\"\n [sortable]=\"sortable\"\n [detailTemplateShowIf]=\"isDetailTemplateVisible()\"\n [detailTemplateExpandDisableIf]=\"detailTemplateExpandDisableIf()\"\n [pdfOptions]=\"pdfOptions()\"\n [loading]=\"isExporting() || isLoading()\"\n [skip]=\"gridState().skip\"\n [pagerInfoText]=\"pagerInfoText()\"\n [pageSizes]=\"pageSizes()\"\n [rowClassFn]=\"rowClassFn()\"\n [gridDetailTemplate]=\"gridDetailTemplate()\"\n (pageChanged)=\"onPageSizeChanged($event)\"\n (dataStateChanged)=\"onDataStateChange($event)\"\n ></kit-grid>\n } @else {\n <kit-skeleton-grid\n ></kit-skeleton-grid>\n }\n }\n <ng-content select=\"[actions]\"></ng-content>\n</div>\n\n", styles: [".kit-entity-grid{display:flex;flex-direction:column;gap:25px;height:calc(100vh - var(--ui-kit-header-height) - 40px)}.kit-entity-grid .grid{overflow:auto}.grid-header{display:flex;flex-direction:column;gap:16px;container-type:inline-size}.grid-header-content{display:flex;gap:16px;width:100%}@container (max-width: 780px){.grid-header-content{display:grid;gap:10px;grid-template-areas:\"views .\" \"actions search\";grid-template-columns:repeat(2,1fr)}}.grid-header-views{min-width:0;flex:1;grid-area:views;grid-column:1/3}.grid-header-actions{display:flex;gap:16px;grid-area:actions}.grid-header-search{grid-area:search}@container (max-width: 780px){.grid-header-search{border:none;padding:0;display:flex;justify-content:flex-end}}.grid-header-filters{width:100%}::ng-deep .k-loading-pdf-mask{display:none}::ng-deep .k-pdf-export tbody>tr>td>a{display:none}\n"] }]
9028
9092
  }], ctorParameters: () => [] });
9029
9093
 
9030
9094
  class KitMenuBuilderService {
@@ -9757,7 +9821,7 @@ class KitCardDetailsComponent {
9757
9821
  this.isLoading.set(true);
9758
9822
  this.cardData.set(this.cardData().filter(card => card.id.toString() !== cardId.toString()));
9759
9823
  this.total.set(this.total() - 1);
9760
- const skip = (this.dataState().skip ?? 0) + 1;
9824
+ const loadedCards = (this.dataState().take ?? this.pageSize()) + (this.dataState().skip ?? 0);
9761
9825
  if (this.newCreatedCards().some(card => card.id.toString() === cardId.toString())) {
9762
9826
  this.newCreatedCards.set(this.newCreatedCards().filter(card => card.id.toString() !== cardId.toString()));
9763
9827
  this.dataState.update(state => ({
@@ -9767,12 +9831,12 @@ class KitCardDetailsComponent {
9767
9831
  this.isLoading.set(false);
9768
9832
  return;
9769
9833
  }
9770
- if (skip >= this.total()) {
9834
+ if (loadedCards >= this.total()) {
9771
9835
  this.isLoading.set(false);
9772
9836
  return;
9773
9837
  }
9774
9838
  this.shouldAppendFetchedData = true;
9775
- this.dataStateChanged.emit({ skip, take: 1, filters: this.skipNewCreatedCardFilter, search: this.dataState().search });
9839
+ this.dataStateChanged.emit({ skip: loadedCards - 1, take: 1, filters: this.skipNewCreatedCardFilter, search: this.dataState().search });
9776
9840
  }
9777
9841
  updateSpecificCardData(cardData) {
9778
9842
  this.cardData.set(this.cardData().map(card => {
@@ -9782,11 +9846,16 @@ class KitCardDetailsComponent {
9782
9846
  return card;
9783
9847
  }));
9784
9848
  }
9849
+ scrollToCardById(id) {
9850
+ const cardsEl = this.host.nativeElement.querySelector('.kit-card-details .cards');
9851
+ const el = cardsEl?.querySelector(`[data-card-id="${id}"]`) ?? null;
9852
+ el?.scrollIntoView({ behavior: 'smooth', block: 'center', inline: 'nearest' });
9853
+ }
9785
9854
  initSearchSubscription() {
9786
9855
  outputToObservable(this.kitTextboxComponent().changed).pipe(filter(() => !this.isLoading()), debounceTime(500), takeUntilDestroyed(this.destroyRef), map((value) => value.trim())).subscribe((searchValue) => {
9787
9856
  this.cardData.set([]);
9788
9857
  this.newCreatedCards.set([]);
9789
- this.dataState.set({ skip: 0, take: this.pageSize(), search: searchValue || undefined });
9858
+ this.dataState.set({ skip: 0, take: this.pageSize(), search: searchValue || undefined, activeId: undefined });
9790
9859
  this.shouldAppendFetchedData = true;
9791
9860
  this.updateData();
9792
9861
  });
@@ -9813,8 +9882,7 @@ class KitCardDetailsComponent {
9813
9882
  this.updateData();
9814
9883
  }
9815
9884
  initCardDataSubscription() {
9816
- const { activeId } = this.getStateFromUrl();
9817
- let handledInitialActiveId = false;
9885
+ let { activeId } = this.getStateFromUrl();
9818
9886
  this.cardData$().pipe(takeUntilDestroyed(this.destroyRef), filter(({ loading }) => !loading)).subscribe(data => {
9819
9887
  if (this.shouldAppendFetchedData) {
9820
9888
  this.cardData.set([
@@ -9824,15 +9892,22 @@ class KitCardDetailsComponent {
9824
9892
  this.total.set(data.results.total + this.newCreatedCards().length);
9825
9893
  this.shouldAppendFetchedData = false;
9826
9894
  }
9827
- if (!handledInitialActiveId
9828
- && activeId
9829
- && !this.dataState().activeId
9830
- && this.cardData().some(item => item.id.toString() === activeId)) {
9831
- this.onCardClick(activeId);
9832
- requestAnimationFrame(() => {
9833
- this.scrollToCardById(activeId);
9834
- handledInitialActiveId = true;
9835
- });
9895
+ if (!activeId && this.cardData()?.[0]) {
9896
+ activeId = this.cardData()[0].id.toString();
9897
+ }
9898
+ if (activeId) {
9899
+ if (!this.dataState().activeId && this.cardData().length) {
9900
+ activeId = this.cardData().some(item => item.id.toString() === activeId)
9901
+ ? activeId : this.cardData()[0].id.toString();
9902
+ this.onCardClick(activeId);
9903
+ this.isLoading.set(false);
9904
+ requestAnimationFrame(() => {
9905
+ activeId && this.scrollToCardById(activeId);
9906
+ });
9907
+ }
9908
+ else {
9909
+ activeId = this.dataState().activeId;
9910
+ }
9836
9911
  }
9837
9912
  this.isLoading.set(false);
9838
9913
  });
@@ -9842,11 +9917,6 @@ class KitCardDetailsComponent {
9842
9917
  this.setStateToUrl(this.dataState());
9843
9918
  this.dataStateChanged.emit(this.dataState());
9844
9919
  }
9845
- scrollToCardById(id) {
9846
- const cardsEl = this.host.nativeElement.querySelector('.kit-card-details .cards');
9847
- const el = cardsEl?.querySelector(`[data-card-id="${id}"]`) ?? null;
9848
- el?.scrollIntoView({ behavior: 'smooth', block: 'center', inline: 'nearest' });
9849
- }
9850
9920
  getStateFromUrl() {
9851
9921
  const params = this.activatedRoute.snapshot.queryParams;
9852
9922
  return {
@@ -9871,7 +9941,7 @@ class KitCardDetailsComponent {
9871
9941
  });
9872
9942
  }
9873
9943
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitCardDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9874
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: KitCardDetailsComponent, isStandalone: true, selector: "kit-card-details", inputs: { cardData$: { classPropertyName: "cardData$", publicName: "cardData$", isSignal: true, isRequired: true, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { dataStateChanged: "dataStateChanged", cardClicked: "cardClicked" }, queries: [{ propertyName: "cardElement", first: true, predicate: ["cardElement"], descendants: true, isSignal: true }, { propertyName: "headerActions", first: true, predicate: ["headerActions"], descendants: true, isSignal: true }], viewQueries: [{ propertyName: "kitTextboxComponent", first: true, predicate: KitTextboxComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"kit-card-details\">\n <div class=\"header\">\n <kit-entity-title class=\"title\">\n {{ title() }}\n </kit-entity-title>\n <ng-container *ngTemplateOutlet=\"headerActions()\" />\n </div>\n\n <div class=\"content\">\n <div class=\"left-panel\">\n <div class=\"textbox-wrapper\">\n <kit-textbox class=\"search-textbox\"\n [placeholder]=\"'kit.search.placeholder' | translate\"\n [icon]=\"kitSvgIcon.SEARCH\"\n [disabled]=\"isLoading()\"\n [clearButton]=\"true\"\n [showStateIcon]=\"false\" />\n </div>\n\n <div class=\"cards\">\n @if (cardData$() | async; as cards) {\n @if (cards.loading) {\n @for (skeleton of [1, 2, 3]; track $index) {\n <kit-skeleton [width]=\"'100%'\" [height]=\"'200px'\"/>\n }\n } @else {\n @if (cards.results.data?.length === 0) {\n <kit-empty-section [text]=\"'kit.common.noData' | translate\"/>\n } @else {\n @for (card of cardData(); track $index) {\n <div class=\"card\"\n [attr.data-card-id]=\"card.id\"\n [class.active]=\"dataState().activeId === (card.id).toString()\"\n (click)=\"onCardClick(card.id)\">\n <ng-container *ngTemplateOutlet=\"cardElement(); context: { $implicit: card }\" />\n </div>\n }\n\n @if (total() > cardData().length) {\n <kit-button class=\"load-more-btn\"\n [label]=\"'kit.common.loadMore' | translate\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"isLoading() ? kitSvgIcon.RELOAD : kitSvgIcon.CHEVRON_DOWN\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [disabled]=\"isLoading()\"\n (clicked)=\"loadMoreData()\" />\n }\n }\n }\n }\n </div>\n </div>\n\n <div class=\"details\">\n <ng-content select=\"[details]\"/>\n </div>\n </div>\n</div>\n", styles: [".kit-card-details{height:calc(100vh - var(--ui-kit-header-height) - 50px)}.kit-card-details .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.kit-card-details .content{display:flex;gap:10px;height:calc(100% - 50px)}.kit-card-details .left-panel{width:30%}.kit-card-details .left-panel .textbox-wrapper{margin-right:10px;margin-bottom:20px}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox-input .kit-svg-icon{stroke:var(--ui-kit-color-grey-10);fill:none}.kit-card-details .left-panel .cards{overflow:hidden auto;padding-right:10px;display:flex;flex-direction:column;gap:10px;height:calc(100% - 60px)}.kit-card-details .left-panel .cards .card{background-color:var(--ui-kit-color-white);border:2px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:8px 10px;cursor:pointer}.kit-card-details .left-panel .cards .card.active{border-color:var(--ui-kit-color-main)}.kit-card-details .left-panel .cards .load-more-btn{margin:10px auto auto}.kit-card-details .details{overflow:hidden auto;flex:1;min-width:0;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:20px}\n"], dependencies: [{ kind: "component", type: KitSkeletonComponent, selector: "kit-skeleton", inputs: ["width", "height", "shape", "animation"] }, { kind: "component", type: KitEmptySectionComponent, selector: "kit-empty-section", inputs: ["text"] }, { kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "component", type: KitTextboxComponent, selector: "kit-textbox", inputs: ["placeholder", "label", "labelTooltip", "defaultValue", "messageIcon", "messageText", "messageTemplate", "disabled", "maxlength", "state", "size", "icon", "clearButton", "showStateIcon"], outputs: ["defaultValueChange", "disabledChange", "blured", "focused", "changed"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: KitEntityTitleComponent, selector: "kit-entity-title" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9944
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.3", type: KitCardDetailsComponent, isStandalone: true, selector: "kit-card-details", inputs: { cardData$: { classPropertyName: "cardData$", publicName: "cardData$", isSignal: true, isRequired: true, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { dataStateChanged: "dataStateChanged", cardClicked: "cardClicked" }, queries: [{ propertyName: "cardElement", first: true, predicate: ["cardElement"], descendants: true, isSignal: true }, { propertyName: "headerActions", first: true, predicate: ["headerActions"], descendants: true, isSignal: true }], viewQueries: [{ propertyName: "kitTextboxComponent", first: true, predicate: KitTextboxComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"kit-card-details\">\n <div class=\"header\">\n <kit-entity-title class=\"title\">\n {{ title() }}\n </kit-entity-title>\n <ng-container *ngTemplateOutlet=\"headerActions()\" />\n </div>\n\n <div class=\"content\">\n <div class=\"left-panel\">\n <div class=\"textbox-wrapper\">\n <kit-textbox class=\"search-textbox\"\n [placeholder]=\"'kit.search.placeholder' | translate\"\n [icon]=\"kitSvgIcon.SEARCH\"\n [disabled]=\"isLoading()\"\n [clearButton]=\"true\"\n [showStateIcon]=\"false\" />\n </div>\n\n <div class=\"cards\">\n @if (cardData$() | async; as cards) {\n @if (cards.loading) {\n @for (skeleton of [1, 2, 3]; track $index) {\n <kit-skeleton [width]=\"'100%'\" [height]=\"'200px'\"/>\n }\n } @else {\n @if (cards.results.data?.length === 0 && newCreatedCards().length === 0) {\n <kit-empty-section [text]=\"'kit.common.noData' | translate\"/>\n } @else {\n @for (card of cardData(); track $index) {\n <div class=\"card\"\n [attr.data-card-id]=\"card.id\"\n [class.active]=\"dataState().activeId === (card.id).toString()\"\n (click)=\"onCardClick(card.id)\">\n <ng-container *ngTemplateOutlet=\"cardElement(); context: { $implicit: card }\" />\n </div>\n }\n\n @if (total() > cardData().length) {\n <kit-button class=\"load-more-btn\"\n [label]=\"'kit.common.loadMore' | translate\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"isLoading() ? kitSvgIcon.RELOAD : kitSvgIcon.CHEVRON_DOWN\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [disabled]=\"isLoading()\"\n (clicked)=\"loadMoreData()\" />\n }\n }\n }\n }\n </div>\n </div>\n\n <div class=\"details\">\n <ng-content select=\"[details]\"/>\n </div>\n </div>\n</div>\n", styles: [".kit-card-details{height:calc(100vh - var(--ui-kit-header-height) - 50px)}.kit-card-details .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.kit-card-details .content{display:flex;gap:10px;height:calc(100% - 50px)}.kit-card-details .left-panel{width:30%}.kit-card-details .left-panel .textbox-wrapper{margin-right:10px;margin-bottom:20px}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox-input .kit-svg-icon{stroke:var(--ui-kit-color-grey-10);fill:none}.kit-card-details .left-panel .cards{overflow:hidden auto;padding-right:10px;display:flex;flex-direction:column;gap:10px;height:calc(100% - 60px)}.kit-card-details .left-panel .cards .card{background-color:var(--ui-kit-color-white);border:2px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:8px 10px;cursor:pointer}.kit-card-details .left-panel .cards .card.active{border-color:var(--ui-kit-color-main)}.kit-card-details .left-panel .cards .load-more-btn{margin:10px auto auto}.kit-card-details .details{overflow:hidden auto;flex:1;min-width:0;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:20px}\n"], dependencies: [{ kind: "component", type: KitSkeletonComponent, selector: "kit-skeleton", inputs: ["width", "height", "shape", "animation"] }, { kind: "component", type: KitEmptySectionComponent, selector: "kit-empty-section", inputs: ["text"] }, { kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "component", type: KitTextboxComponent, selector: "kit-textbox", inputs: ["placeholder", "label", "labelTooltip", "defaultValue", "messageIcon", "messageText", "messageTemplate", "disabled", "maxlength", "state", "size", "icon", "clearButton", "showStateIcon"], outputs: ["defaultValueChange", "disabledChange", "blured", "focused", "changed"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: KitEntityTitleComponent, selector: "kit-entity-title" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9875
9945
  }
9876
9946
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: KitCardDetailsComponent, decorators: [{
9877
9947
  type: Component,
@@ -9884,7 +9954,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
9884
9954
  KitTextboxComponent,
9885
9955
  NgTemplateOutlet,
9886
9956
  KitEntityTitleComponent,
9887
- ], template: "<div class=\"kit-card-details\">\n <div class=\"header\">\n <kit-entity-title class=\"title\">\n {{ title() }}\n </kit-entity-title>\n <ng-container *ngTemplateOutlet=\"headerActions()\" />\n </div>\n\n <div class=\"content\">\n <div class=\"left-panel\">\n <div class=\"textbox-wrapper\">\n <kit-textbox class=\"search-textbox\"\n [placeholder]=\"'kit.search.placeholder' | translate\"\n [icon]=\"kitSvgIcon.SEARCH\"\n [disabled]=\"isLoading()\"\n [clearButton]=\"true\"\n [showStateIcon]=\"false\" />\n </div>\n\n <div class=\"cards\">\n @if (cardData$() | async; as cards) {\n @if (cards.loading) {\n @for (skeleton of [1, 2, 3]; track $index) {\n <kit-skeleton [width]=\"'100%'\" [height]=\"'200px'\"/>\n }\n } @else {\n @if (cards.results.data?.length === 0) {\n <kit-empty-section [text]=\"'kit.common.noData' | translate\"/>\n } @else {\n @for (card of cardData(); track $index) {\n <div class=\"card\"\n [attr.data-card-id]=\"card.id\"\n [class.active]=\"dataState().activeId === (card.id).toString()\"\n (click)=\"onCardClick(card.id)\">\n <ng-container *ngTemplateOutlet=\"cardElement(); context: { $implicit: card }\" />\n </div>\n }\n\n @if (total() > cardData().length) {\n <kit-button class=\"load-more-btn\"\n [label]=\"'kit.common.loadMore' | translate\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"isLoading() ? kitSvgIcon.RELOAD : kitSvgIcon.CHEVRON_DOWN\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [disabled]=\"isLoading()\"\n (clicked)=\"loadMoreData()\" />\n }\n }\n }\n }\n </div>\n </div>\n\n <div class=\"details\">\n <ng-content select=\"[details]\"/>\n </div>\n </div>\n</div>\n", styles: [".kit-card-details{height:calc(100vh - var(--ui-kit-header-height) - 50px)}.kit-card-details .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.kit-card-details .content{display:flex;gap:10px;height:calc(100% - 50px)}.kit-card-details .left-panel{width:30%}.kit-card-details .left-panel .textbox-wrapper{margin-right:10px;margin-bottom:20px}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox-input .kit-svg-icon{stroke:var(--ui-kit-color-grey-10);fill:none}.kit-card-details .left-panel .cards{overflow:hidden auto;padding-right:10px;display:flex;flex-direction:column;gap:10px;height:calc(100% - 60px)}.kit-card-details .left-panel .cards .card{background-color:var(--ui-kit-color-white);border:2px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:8px 10px;cursor:pointer}.kit-card-details .left-panel .cards .card.active{border-color:var(--ui-kit-color-main)}.kit-card-details .left-panel .cards .load-more-btn{margin:10px auto auto}.kit-card-details .details{overflow:hidden auto;flex:1;min-width:0;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:20px}\n"] }]
9957
+ ], template: "<div class=\"kit-card-details\">\n <div class=\"header\">\n <kit-entity-title class=\"title\">\n {{ title() }}\n </kit-entity-title>\n <ng-container *ngTemplateOutlet=\"headerActions()\" />\n </div>\n\n <div class=\"content\">\n <div class=\"left-panel\">\n <div class=\"textbox-wrapper\">\n <kit-textbox class=\"search-textbox\"\n [placeholder]=\"'kit.search.placeholder' | translate\"\n [icon]=\"kitSvgIcon.SEARCH\"\n [disabled]=\"isLoading()\"\n [clearButton]=\"true\"\n [showStateIcon]=\"false\" />\n </div>\n\n <div class=\"cards\">\n @if (cardData$() | async; as cards) {\n @if (cards.loading) {\n @for (skeleton of [1, 2, 3]; track $index) {\n <kit-skeleton [width]=\"'100%'\" [height]=\"'200px'\"/>\n }\n } @else {\n @if (cards.results.data?.length === 0 && newCreatedCards().length === 0) {\n <kit-empty-section [text]=\"'kit.common.noData' | translate\"/>\n } @else {\n @for (card of cardData(); track $index) {\n <div class=\"card\"\n [attr.data-card-id]=\"card.id\"\n [class.active]=\"dataState().activeId === (card.id).toString()\"\n (click)=\"onCardClick(card.id)\">\n <ng-container *ngTemplateOutlet=\"cardElement(); context: { $implicit: card }\" />\n </div>\n }\n\n @if (total() > cardData().length) {\n <kit-button class=\"load-more-btn\"\n [label]=\"'kit.common.loadMore' | translate\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"isLoading() ? kitSvgIcon.RELOAD : kitSvgIcon.CHEVRON_DOWN\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [disabled]=\"isLoading()\"\n (clicked)=\"loadMoreData()\" />\n }\n }\n }\n }\n </div>\n </div>\n\n <div class=\"details\">\n <ng-content select=\"[details]\"/>\n </div>\n </div>\n</div>\n", styles: [".kit-card-details{height:calc(100vh - var(--ui-kit-header-height) - 50px)}.kit-card-details .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.kit-card-details .content{display:flex;gap:10px;height:calc(100% - 50px)}.kit-card-details .left-panel{width:30%}.kit-card-details .left-panel .textbox-wrapper{margin-right:10px;margin-bottom:20px}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox-input .kit-svg-icon{stroke:var(--ui-kit-color-grey-10);fill:none}.kit-card-details .left-panel .cards{overflow:hidden auto;padding-right:10px;display:flex;flex-direction:column;gap:10px;height:calc(100% - 60px)}.kit-card-details .left-panel .cards .card{background-color:var(--ui-kit-color-white);border:2px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:8px 10px;cursor:pointer}.kit-card-details .left-panel .cards .card.active{border-color:var(--ui-kit-color-main)}.kit-card-details .left-panel .cards .load-more-btn{margin:10px auto auto}.kit-card-details .details{overflow:hidden auto;flex:1;min-width:0;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:20px}\n"] }]
9888
9958
  }] });
9889
9959
 
9890
9960
  class KitListComponent {
@@ -9989,14 +10059,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
9989
10059
  ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"kit-split-container\">\n <div class=\"kit-split-container-content\">\n <ng-container *ngTemplateOutlet=\"contentTemplateRef()\" />\n </div>\n\n @if (sidebarTemplateRef()) {\n <div class=\"kit-split-container-sidebar\"\n [class.collapsed]=\"isSidebarCollapsed()\">\n <div class=\"kit-split-container-sidebar-actions\">\n <kit-button class=\"kit-split-container-collapsed-btn\"\n [type]=\"kitButtonType.GHOST\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [icon]=\"isSidebarCollapsed() && kitSvgIcon.CHEVRON_LEFT || kitSvgIcon.CHEVRON_RIGHT\"\n (clicked)=\"isSidebarCollapsed.set(!isSidebarCollapsed())\"\n ></kit-button>\n \n @if (actionsTemplateRef()) {\n <div class=\"kit-split-container-sidebar-custom-actions\">\n <ng-container *ngTemplateOutlet=\"actionsTemplateRef()\" />\n </div>\n }\n </div>\n \n <div class=\"kit-split-container-sidebar-content\">\n <ng-container *ngTemplateOutlet=\"sidebarTemplateRef()\" />\n </div>\n \n <div class=\"kit-split-container-sidebar-title\"\n (click)=\"isSidebarCollapsed.set(false)\">\n {{ sidebarTitle() }}\n </div>\n </div>\n }\n</div>", styles: [":host{display:block;height:100%;min-height:0}.kit-split-container{width:100%;height:100%;box-sizing:border-box;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:100%;overflow:hidden}.kit-split-container-content{width:100%;height:100%;padding:20px;border-right:1px solid var(--ui-kit-color-grey-11);box-sizing:border-box;overflow:auto}.kit-split-container-content::-webkit-scrollbar{height:8px;width:8px}.kit-split-container-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-12);border-radius:4px}.kit-split-container-content::-webkit-scrollbar-thumb:hover{background-color:var(--ui-kit-color-grey-18)}.kit-split-container-sidebar{height:100%;padding:20px;box-sizing:border-box;width:360px;transition:.3s width;display:flex;flex-direction:column;gap:35px;align-items:center}.kit-split-container-sidebar-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%}.kit-split-container-sidebar-title{display:none;cursor:pointer;font-size:18px;line-height:24px;font-weight:500;writing-mode:vertical-rl;color:var(--ui-kit-color-grey-12)}.kit-split-container-sidebar-content{width:100%;height:calc(100% - 67px)}.kit-split-container-sidebar.collapsed{width:86px;gap:15px}.kit-split-container-sidebar.collapsed .kit-split-container-sidebar-actions{width:max-content}.kit-split-container-sidebar.collapsed .kit-split-container-sidebar-custom-actions,.kit-split-container-sidebar.collapsed .kit-split-container-sidebar-content{display:none}.kit-split-container-sidebar.collapsed .kit-split-container-sidebar-title{display:block}\n"] }]
9990
10060
  }] });
9991
10061
 
9992
- const kitFormatStringForSearch = (inputString) => {
9993
- return inputString
9994
- .split(/\s+/)
9995
- .filter(text => !!text)
9996
- .map(text => text + '*')
9997
- .join(' ');
9998
- };
9999
-
10000
10062
  class KitAbstractIdPayloadAction {
10001
10063
  constructor(id, payload) {
10002
10064
  this.id = id;
@@ -10056,5 +10118,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.3", ngImpor
10056
10118
  * Generated bundle index. Do not edit.
10057
10119
  */
10058
10120
 
10059
- export { AbstractKitCtaPanelConfirmationComponent, AddGridFilter, FetchUser, FetchUserIdentities, FetchUserPermissions, FetchUserSettings, HighlightPipe, KIT_BASE_PATH, KIT_DATETIME_FORMAT_LONG, KIT_DATE_FORMAT, KIT_GRID_CELL_DATE_FORMAT_CONFIG, KIT_GRID_COLUMN_WIDTH, KIT_GRID_PAGE_SIZE, KIT_GRID_STATE_TOKEN, KIT_USER_APPLICATIONS_PATH, KIT_USER_IDENTITIES_STATE_TOKEN, KIT_USER_PATH, KIT_USER_PERMISSIONS_PATH, KIT_USER_PERMISSIONS_STATE_TOKEN, KIT_USER_STATE_TOKEN, KitAbstractIdPayloadAction, KitAbstractPayloadAction, KitAccountService, KitAutocompleteComponent, KitAutocompleteDirective, KitAvatarComponent, KitAvatarSize, KitBadgeDirective, KitBadgeTheme, KitBreadcrumbsComponent, KitBreadcrumbsService, KitButtonComponent, KitButtonIconPosition, KitButtonKind, KitButtonState, KitButtonType, KitCardComponent, KitCardDetailsComponent, KitCardTheme, KitCheckboxComponent, KitCheckboxState, KitCollapsedListComponent, KitCollapsedListDropdownAlign, KitCopyTextComponent, KitCtaPanelAbstractConfirmationComponent, KitCtaPanelActionComponent, KitCtaPanelConfirmationComponent, KitCtaPanelItemComponent, KitCtaPanelItemType, KitDataFieldComponent, KitDataFieldState, KitDatepickerComponent, KitDatepickerSize, KitDaterangeComponent, KitDaterangeType, KitDatetimepickerComponent, KitDialogActionsComponent, KitDialogComponent, KitDialogService, KitDialogTitlebarComponent, KitDialogType, KitDropdownComponent, KitDropdownItemTemplateDirective, KitDropdownSize, KitEmptySectionComponent, KitEntityGridComponent, KitEntitySectionComponent, KitEntitySectionContainerComponent, KitEntityTitleComponent, KitFileCardComponent, KitFileCardMessagesComponent, KitFileUploadComponent, KitFilterCheckboxComponent, KitFilterLogic, KitFilterOperator, KitFilterType, KitForbiddenComponent, KitGlobalSearchComponent, KitGridArchiveToggle, KitGridCellComponent, KitGridCellService, KitGridCellTemplateDirective, KitGridColumnComponent, KitGridColumnManagerComponent, KitGridComponent, KitGridDetailTemplateDirective, KitGridDetailsButtonComponent, KitGridExportComponent, KitGridFiltersComponent, KitGridLiveUpdatesControlComponent, KitGridSearchComponent, KitGridSortSettingsMode, KitGridState, KitGridUrlStateService, KitGridViewType, KitGridViewsComponent, KitGridViewsState, KitInputLabelComponent, KitInputMessageComponent, KitListComponent, KitLoaderComponent, KitLocationStepperComponent, KitMobileHeaderComponent, KitMobileMenuComponent, KitMobileMenuState, KitMultiselectComponent, KitNavigationMenuComponent, KitNavigationMenuService, KitNavigationMenuSubmenuComponent, KitNavigationTabsComponent, KitNavigationTabsType, KitNotFoundComponent, KitNoteComponent, KitNotificationComponent, KitNotificationService, KitNotificationType, KitNumericTextboxComponent, KitNumericTextboxSize, KitNumericTextboxState, KitOptionToggleComponent, KitPageLayoutComponent, KitPermissionDirective, KitPillComponent, KitPillTheme, KitPillType, KitPopupAlignHorizontal, KitPopupAlignVertical, KitPopupComponent, KitPopupPositionMode, KitProfileMenuComponent, KitQueryParamsName, KitQueryParamsService, KitRadioButtonComponent, KitRadioButtonType, KitRoutePathComponent, KitSchedulerComponent, KitSchedulerMonthEventTemplateDirective, KitSchedulerWeekEventTemplateDirective, KitScrollNavigationComponent, KitScrollNavigationSectionComponent, KitSearchBarComponent, KitSidebarComponent, KitSkeletonAnimation, KitSkeletonComponent, KitSkeletonGridComponent, KitSkeletonShape, KitSortDirection, KitSortableComponent, KitSplitContainerComponent, KitStatusLabelColor, KitStatusLabelComponent, KitStatusLabelSize, KitSvgIcon, KitSvgIconComponent, KitSvgIconType, KitSvgSpriteComponent, KitSwitchComponent, KitSwitchMode, KitSwitchState, KitTabComponent, KitTabContentDirective, KitTabsComponent, KitTabsSize, KitTabsType, KitTextLabelComponent, KitTextLabelState, KitTextareaAutoresizeDirective, KitTextareaComponent, KitTextareaState, KitTextboxActionsComponent, KitTextboxComponent, KitTextboxSize, KitTextboxState, KitThemeService, KitThemes, KitTileLayoutComponent, KitTileLayoutItemComponent, KitTimelineCardComponent, KitTimelineComponent, KitTimelineTheme, KitTimelineType, KitTimepickerComponent, KitTitleTemplateDirective, KitToastrModule, KitToastrPosition, KitToastrService, KitToastrType, KitToggleComponent, KitToggleSize, KitTooltipDirective, KitTooltipPosition, KitTopBarComponent, KitTrackingCardComponent, KitTrackingTimelineComponent, KitTranslateLoader, KitTranslateService, KitTruncateTextComponent, KitUnitsTextboxComponent, KitUnitsTextboxDropdownPosition, KitUnitsTextboxType, KitUserApplicationsState, KitUserIdentitiesInterceptor, KitUserIdentitiesSelector, KitUserIdentitiesState, KitUserPermissionsState, KitUserSettingsComponent, KitUserSettingsKeys, KitUserSettingsState, KitUserState, KitUserType, RemoveGridFilter, SetGridColumns, SetGridFilters, SetGridSearch, SetGridSkip, SetGridSort, SetGridTake, SetUserIdentity, UpdateGridFilter, buildRandomUUID, changeFilterField, createDataFetcherFactory, findMatches, kitApiResponseDefaultEntities, kitBuildFilterBooleanOptions, kitBuildFilterListOptions, kitBuildFilters, kitBuildGridColumn, kitBuildGridDataResults, kitBuildOdataFilter, kitBuildSortString, kitDataStateToODataString, kitEncodeViewNameToUrl, kitExportExcel, kitFilterBy, kitFormatStringForSearch, kitGetFormControlErrors, kitGetPermissionTypesByCategory, kitHasPermission, kitTranslations, kitUserPermissionsGuard, mapGlobalSearchResult, trimTrailingSlash };
10121
+ export { AbstractKitCtaPanelConfirmationComponent, AddGridFilter, FetchUser, FetchUserIdentities, FetchUserPermissions, FetchUserSettings, HighlightPipe, KIT_BASE_PATH, KIT_DATETIME_FORMAT_LONG, KIT_DATE_FORMAT, KIT_GRID_CELL_DATE_FORMAT_CONFIG, KIT_GRID_COLUMN_WIDTH, KIT_GRID_PAGE_SIZE, KIT_GRID_STATE_TOKEN, KIT_USER_APPLICATIONS_PATH, KIT_USER_IDENTITIES_STATE_TOKEN, KIT_USER_PATH, KIT_USER_PERMISSIONS_PATH, KIT_USER_PERMISSIONS_STATE_TOKEN, KIT_USER_STATE_TOKEN, KitAbstractIdPayloadAction, KitAbstractPayloadAction, KitAccountService, KitAutocompleteComponent, KitAutocompleteDirective, KitAvatarComponent, KitAvatarSize, KitBadgeDirective, KitBadgeTheme, KitBreadcrumbsComponent, KitBreadcrumbsService, KitButtonComponent, KitButtonIconPosition, KitButtonKind, KitButtonState, KitButtonType, KitCardComponent, KitCardDetailsComponent, KitCardTheme, KitCheckboxComponent, KitCheckboxState, KitCollapsedListComponent, KitCollapsedListDropdownAlign, KitCopyTextComponent, KitCtaPanelAbstractConfirmationComponent, KitCtaPanelActionComponent, KitCtaPanelConfirmationComponent, KitCtaPanelItemComponent, KitCtaPanelItemType, KitDataFieldComponent, KitDataFieldState, KitDatepickerComponent, KitDatepickerSize, KitDaterangeComponent, KitDaterangeType, KitDatetimepickerComponent, KitDialogActionsComponent, KitDialogComponent, KitDialogService, KitDialogTitlebarComponent, KitDialogType, KitDropdownComponent, KitDropdownItemTemplateDirective, KitDropdownSize, KitEmptySectionComponent, KitEntityGridComponent, KitEntitySectionComponent, KitEntitySectionContainerComponent, KitEntityTitleComponent, KitFileCardComponent, KitFileCardMessagesComponent, KitFileUploadComponent, KitFilterCheckboxComponent, KitFilterLogic, KitFilterOperator, KitFilterType, KitForbiddenComponent, KitGlobalSearchComponent, KitGridArchiveToggle, KitGridCellComponent, KitGridCellService, KitGridCellTemplateDirective, KitGridColumnComponent, KitGridColumnManagerComponent, KitGridComponent, KitGridDetailTemplateDirective, KitGridDetailsButtonComponent, KitGridExportComponent, KitGridFiltersComponent, KitGridLiveUpdatesControlComponent, KitGridSearchComponent, KitGridSortSettingsMode, KitGridState, KitGridUrlStateService, KitGridViewType, KitGridViewsComponent, KitGridViewsState, KitInputLabelComponent, KitInputMessageComponent, KitListComponent, KitLoaderComponent, KitLocationStepperComponent, KitMobileHeaderComponent, KitMobileMenuComponent, KitMobileMenuState, KitMultiselectComponent, KitNavigationMenuComponent, KitNavigationMenuService, KitNavigationMenuSubmenuComponent, KitNavigationTabsComponent, KitNavigationTabsType, KitNotFoundComponent, KitNoteComponent, KitNotificationComponent, KitNotificationService, KitNotificationType, KitNumericTextboxComponent, KitNumericTextboxSize, KitNumericTextboxState, KitOptionToggleComponent, KitPageLayoutComponent, KitPermissionDirective, KitPillComponent, KitPillTheme, KitPillType, KitPopupAlignHorizontal, KitPopupAlignVertical, KitPopupComponent, KitPopupPositionMode, KitProfileMenuComponent, KitQueryParamsName, KitQueryParamsService, KitRadioButtonComponent, KitRadioButtonType, KitRoutePathComponent, KitSchedulerComponent, KitSchedulerMonthEventTemplateDirective, KitSchedulerWeekEventTemplateDirective, KitScrollNavigationComponent, KitScrollNavigationSectionComponent, KitSearchBarComponent, KitSidebarComponent, KitSkeletonAnimation, KitSkeletonComponent, KitSkeletonGridComponent, KitSkeletonShape, KitSortDirection, KitSortableComponent, KitSplitContainerComponent, KitStatusLabelColor, KitStatusLabelComponent, KitStatusLabelSize, KitSvgIcon, KitSvgIconComponent, KitSvgIconType, KitSvgSpriteComponent, KitSwitchComponent, KitSwitchMode, KitSwitchState, KitTabComponent, KitTabContentDirective, KitTabsComponent, KitTabsSize, KitTabsType, KitTextLabelComponent, KitTextLabelState, KitTextareaAutoresizeDirective, KitTextareaComponent, KitTextareaState, KitTextboxActionsComponent, KitTextboxComponent, KitTextboxSize, KitTextboxState, KitThemeService, KitThemes, KitTileLayoutComponent, KitTileLayoutItemComponent, KitTimelineCardComponent, KitTimelineComponent, KitTimelineTheme, KitTimelineType, KitTimepickerComponent, KitTitleTemplateDirective, KitToastrModule, KitToastrPosition, KitToastrService, KitToastrType, KitToggleComponent, KitToggleSize, KitTooltipDirective, KitTooltipPosition, KitTopBarComponent, KitTrackingCardComponent, KitTrackingTimelineComponent, KitTranslateLoader, KitTranslateService, KitTruncateTextComponent, KitUnitsTextboxComponent, KitUnitsTextboxDropdownPosition, KitUnitsTextboxType, KitUserApplicationsState, KitUserIdentitiesInterceptor, KitUserIdentitiesSelector, KitUserIdentitiesState, KitUserPermissionsState, KitUserSettingsComponent, KitUserSettingsKeys, KitUserSettingsState, KitUserState, KitUserType, RemoveGridFilter, SetGridColumns, SetGridFilters, SetGridSearch, SetGridSkip, SetGridSort, SetGridTake, SetUserIdentity, UpdateGridFilter, buildRandomUUID, changeFilterField, createDataFetcherFactory, findMatches, kitApiResponseDefaultEntities, kitBuildFilterBooleanOptions, kitBuildFilterListOptions, kitBuildFilters, kitBuildGridColumn, kitBuildGridDataResults, kitBuildOdataFilter, kitBuildSortString, kitDataStateToODataString, kitEncodeViewNameToUrl, kitExportExcel, kitFetchGridData, kitFilterBy, kitFormatStringForSearch, kitGetFormControlErrors, kitGetPermissionTypesByCategory, kitHasPermission, kitTranslations, kitUserPermissionsGuard, mapGlobalSearchResult, trimTrailingSlash };
10060
10122
  //# sourceMappingURL=indigina-ui-kit.mjs.map