@indigina/ui-kit 1.1.544 → 1.1.546

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.
@@ -6738,14 +6738,15 @@ class KitSelectableCardComponent {
6738
6738
  this.selectedId.set(null);
6739
6739
  }
6740
6740
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitSelectableCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6741
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitSelectableCardComponent, isStandalone: true, selector: "kit-selectable-card", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, selectedId: { classPropertyName: "selectedId", publicName: "selectedId", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedId: "selectedIdChange", cardClick: "cardClick" }, ngImport: i0, template: "<div class=\"kit-selectable-card-group\">\n @for (item of items(); track item.id) {\n <div class=\"kit-selectable-card\"\n [class.selected]=\"isSelected(item.id)\"\n (click)=\"handleCardClick(item)\">\n <div class=\"kit-selectable-card-header\">\n <kit-radio-button [value]=\"item.id\"\n [label]=\"item.title\"\n [checked]=\"isSelected(item.id)\">\n </kit-radio-button>\n @if (item.statusLabel) {\n <kit-status-label [color]=\"item.statusLabelColor ?? kitStatusLabelColor.WHITE\">\n {{ item.statusLabel }}\n </kit-status-label>\n }\n </div>\n @if (item.captions?.length) {\n <div class=\"kit-selectable-card-captions\">\n @for (caption of item.captions!; track caption.key) {\n <div class=\"kit-selectable-card-caption\">\n <span class=\"kit-selectable-card-caption-key\">{{ caption.key }}</span>\n <span class=\"kit-selectable-card-caption-value\">{{ caption.value }}</span>\n </div>\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".kit-selectable-card-group{display:flex;gap:15px}.kit-selectable-card-group .kit-selectable-card{cursor:pointer;padding:20px;min-width:300px;background-color:var(--ui-kit-color-white);color:var(--ui-kit-color-grey-10);border:1px solid var(--ui-kit-color-grey-11);border-radius:10px}.kit-selectable-card-group .kit-selectable-card.selected{border-color:var(--ui-kit-color-main);background-color:color-mix(in srgb,var(--ui-kit-color-main) 20%,transparent)}.kit-selectable-card-group .kit-selectable-card:hover:not(.selected){border-color:var(--ui-kit-color-hover);opacity:.8}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions{display:flex;flex-direction:column;gap:5px;margin-top:10px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption{display:flex;justify-content:space-between;font-size:14px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption-key{color:var(--ui-kit-color-main)}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption-value{text-align:right;max-width:200px}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button{pointer-events:none}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button-item{height:auto}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button-item .k-label{font-size:16px;font-weight:500;cursor:pointer;line-height:22px}\n"], dependencies: [{ kind: "component", type: KitRadioButtonComponent, selector: "kit-radio-button", inputs: ["items", "label", "name", "readonly", "type", "value", "checked", "icon", "disabled"], outputs: ["checkedChange", "disabledChange", "changed"] }, { kind: "component", type: KitStatusLabelComponent, selector: "kit-status-label", inputs: ["color", "size", "tooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6741
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitSelectableCardComponent, isStandalone: true, selector: "kit-selectable-card", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, selectedId: { classPropertyName: "selectedId", publicName: "selectedId", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedId: "selectedIdChange", cardClick: "cardClick" }, ngImport: i0, template: "<div class=\"kit-selectable-card-group\">\n @for (item of items(); track item.id) {\n <div class=\"kit-selectable-card\"\n [class.selected]=\"isSelected(item.id)\"\n (click)=\"handleCardClick(item)\">\n <div class=\"kit-selectable-card-header\">\n <kit-radio-button [value]=\"item.id\"\n [label]=\"item.title\"\n [checked]=\"isSelected(item.id)\">\n </kit-radio-button>\n @if (item.statusLabel) {\n <kit-status-label class=\"kit-selectable-card-status-label\"\n [color]=\"item.statusLabelColor ?? kitStatusLabelColor.WHITE\">\n {{ item.statusLabel }}\n </kit-status-label>\n }\n </div>\n @if (item.captions?.length) {\n <div class=\"kit-selectable-card-captions\">\n @for (caption of item.captions!; track caption.key) {\n <div class=\"kit-selectable-card-caption\">\n <span class=\"kit-selectable-card-caption-key\">{{ caption.key }}</span>\n <span class=\"kit-selectable-card-caption-value\">\n <kit-truncate-text>{{ caption.value }}</kit-truncate-text>\n </span>\n </div>\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".kit-selectable-card-group{display:flex;gap:15px}.kit-selectable-card-group .kit-selectable-card{cursor:pointer;padding:20px;min-width:300px;background-color:var(--ui-kit-color-white);color:var(--ui-kit-color-grey-10);border:1px solid var(--ui-kit-color-grey-11);border-radius:10px}.kit-selectable-card-group .kit-selectable-card.selected{border-color:var(--ui-kit-color-main);background-color:color-mix(in srgb,var(--ui-kit-color-main) 20%,transparent)}.kit-selectable-card-group .kit-selectable-card:hover:not(.selected){border-color:var(--ui-kit-color-hover);opacity:.8}.kit-selectable-card-group .kit-selectable-card-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.kit-selectable-card-group .kit-selectable-card-status-label{overflow:hidden;min-width:0}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions{display:flex;flex-direction:column;gap:5px;margin-top:10px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption{display:flex;justify-content:space-between;font-size:14px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption-key{color:var(--ui-kit-color-main)}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption-value{text-align:right;max-width:200px}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-selectable-card-status-label .kit-status-label{width:100%;box-sizing:border-box}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button{pointer-events:none}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button-item{height:auto}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button-item .k-label{font-size:16px;font-weight:500;cursor:pointer;line-height:22px}\n"], dependencies: [{ kind: "component", type: KitRadioButtonComponent, selector: "kit-radio-button", inputs: ["items", "label", "name", "readonly", "type", "value", "checked", "icon", "disabled"], outputs: ["checkedChange", "disabledChange", "changed"] }, { kind: "component", type: KitStatusLabelComponent, selector: "kit-status-label", inputs: ["color", "size", "tooltip"] }, { kind: "component", type: KitTruncateTextComponent, selector: "kit-truncate-text", inputs: ["tooltipText"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6742
6742
  }
6743
6743
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitSelectableCardComponent, decorators: [{
6744
6744
  type: Component,
6745
6745
  args: [{ selector: 'kit-selectable-card', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
6746
6746
  KitRadioButtonComponent,
6747
6747
  KitStatusLabelComponent,
6748
- ], template: "<div class=\"kit-selectable-card-group\">\n @for (item of items(); track item.id) {\n <div class=\"kit-selectable-card\"\n [class.selected]=\"isSelected(item.id)\"\n (click)=\"handleCardClick(item)\">\n <div class=\"kit-selectable-card-header\">\n <kit-radio-button [value]=\"item.id\"\n [label]=\"item.title\"\n [checked]=\"isSelected(item.id)\">\n </kit-radio-button>\n @if (item.statusLabel) {\n <kit-status-label [color]=\"item.statusLabelColor ?? kitStatusLabelColor.WHITE\">\n {{ item.statusLabel }}\n </kit-status-label>\n }\n </div>\n @if (item.captions?.length) {\n <div class=\"kit-selectable-card-captions\">\n @for (caption of item.captions!; track caption.key) {\n <div class=\"kit-selectable-card-caption\">\n <span class=\"kit-selectable-card-caption-key\">{{ caption.key }}</span>\n <span class=\"kit-selectable-card-caption-value\">{{ caption.value }}</span>\n </div>\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".kit-selectable-card-group{display:flex;gap:15px}.kit-selectable-card-group .kit-selectable-card{cursor:pointer;padding:20px;min-width:300px;background-color:var(--ui-kit-color-white);color:var(--ui-kit-color-grey-10);border:1px solid var(--ui-kit-color-grey-11);border-radius:10px}.kit-selectable-card-group .kit-selectable-card.selected{border-color:var(--ui-kit-color-main);background-color:color-mix(in srgb,var(--ui-kit-color-main) 20%,transparent)}.kit-selectable-card-group .kit-selectable-card:hover:not(.selected){border-color:var(--ui-kit-color-hover);opacity:.8}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions{display:flex;flex-direction:column;gap:5px;margin-top:10px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption{display:flex;justify-content:space-between;font-size:14px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption-key{color:var(--ui-kit-color-main)}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption-value{text-align:right;max-width:200px}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button{pointer-events:none}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button-item{height:auto}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button-item .k-label{font-size:16px;font-weight:500;cursor:pointer;line-height:22px}\n"] }]
6748
+ KitTruncateTextComponent,
6749
+ ], template: "<div class=\"kit-selectable-card-group\">\n @for (item of items(); track item.id) {\n <div class=\"kit-selectable-card\"\n [class.selected]=\"isSelected(item.id)\"\n (click)=\"handleCardClick(item)\">\n <div class=\"kit-selectable-card-header\">\n <kit-radio-button [value]=\"item.id\"\n [label]=\"item.title\"\n [checked]=\"isSelected(item.id)\">\n </kit-radio-button>\n @if (item.statusLabel) {\n <kit-status-label class=\"kit-selectable-card-status-label\"\n [color]=\"item.statusLabelColor ?? kitStatusLabelColor.WHITE\">\n {{ item.statusLabel }}\n </kit-status-label>\n }\n </div>\n @if (item.captions?.length) {\n <div class=\"kit-selectable-card-captions\">\n @for (caption of item.captions!; track caption.key) {\n <div class=\"kit-selectable-card-caption\">\n <span class=\"kit-selectable-card-caption-key\">{{ caption.key }}</span>\n <span class=\"kit-selectable-card-caption-value\">\n <kit-truncate-text>{{ caption.value }}</kit-truncate-text>\n </span>\n </div>\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".kit-selectable-card-group{display:flex;gap:15px}.kit-selectable-card-group .kit-selectable-card{cursor:pointer;padding:20px;min-width:300px;background-color:var(--ui-kit-color-white);color:var(--ui-kit-color-grey-10);border:1px solid var(--ui-kit-color-grey-11);border-radius:10px}.kit-selectable-card-group .kit-selectable-card.selected{border-color:var(--ui-kit-color-main);background-color:color-mix(in srgb,var(--ui-kit-color-main) 20%,transparent)}.kit-selectable-card-group .kit-selectable-card:hover:not(.selected){border-color:var(--ui-kit-color-hover);opacity:.8}.kit-selectable-card-group .kit-selectable-card-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.kit-selectable-card-group .kit-selectable-card-status-label{overflow:hidden;min-width:0}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions{display:flex;flex-direction:column;gap:5px;margin-top:10px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption{display:flex;justify-content:space-between;font-size:14px}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption-key{color:var(--ui-kit-color-main)}.kit-selectable-card-group .kit-selectable-card .kit-selectable-card-captions .kit-selectable-card-caption-value{text-align:right;max-width:200px}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-selectable-card-status-label .kit-status-label{width:100%;box-sizing:border-box}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button{pointer-events:none}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button-item{height:auto}.kit-selectable-card-group .kit-selectable-card ::ng-deep .kit-radio-button-item .k-label{font-size:16px;font-weight:500;cursor:pointer;line-height:22px}\n"] }]
6749
6750
  }], propDecorators: { items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }], selectedId: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedId", required: false }] }, { type: i0.Output, args: ["selectedIdChange"] }], cardClick: [{ type: i0.Output, args: ["cardClick"] }] } });
6750
6751
 
6751
6752
  class KitBreadcrumbsComponent {
@@ -12112,6 +12113,7 @@ class KitGridViewsSaveComponent {
12112
12113
  this.viewGroup = input.required(...(ngDevMode ? [{ debugName: "viewGroup" }] : /* istanbul ignore next */ []));
12113
12114
  this.views = input.required(...(ngDevMode ? [{ debugName: "views" }] : /* istanbul ignore next */ []));
12114
12115
  this.viewsAutocompleteItems = input.required(...(ngDevMode ? [{ debugName: "viewsAutocompleteItems" }] : /* istanbul ignore next */ []));
12116
+ this.preserveReadonlyFilters = input(false, ...(ngDevMode ? [{ debugName: "preserveReadonlyFilters" }] : /* istanbul ignore next */ []));
12115
12117
  this.resetQueryParams = output();
12116
12118
  this.anchor = viewChild.required('toggleButton', { read: ElementRef });
12117
12119
  this.popup = viewChild('popup', { ...(ngDevMode ? { debugName: "popup" } : /* istanbul ignore next */ {}), read: KitPopupComponent });
@@ -12155,13 +12157,16 @@ class KitGridViewsSaveComponent {
12155
12157
  onViewSave() {
12156
12158
  const { filter, sort, columns } = this.store.selectSnapshot(KIT_GRID_STATE_TOKEN);
12157
12159
  const views = this.store.selectSnapshot(KIT_GRID_VIEWS_STATE_TOKEN).data.views;
12160
+ const shouldPreserveReadonly = this.preserveReadonlyFilters();
12161
+ const processedFilter = hasOverriddenSystemView(this.viewName(), views) && filter ||
12162
+ (shouldPreserveReadonly ? filter : removeReadonlyPropertyFromFilters(filter));
12158
12163
  const view = {
12159
12164
  title: this.viewName(),
12160
12165
  group: this.viewGroup(),
12161
12166
  type: KitGridViewType.USER,
12162
12167
  hidden: false,
12163
12168
  viewState: {
12164
- filter: hasOverriddenSystemView(this.viewName(), views) && filter || removeReadonlyPropertyFromFilters(filter),
12169
+ filter: processedFilter,
12165
12170
  sort,
12166
12171
  columns: buildGridViewColumns(columns),
12167
12172
  },
@@ -12185,7 +12190,7 @@ class KitGridViewsSaveComponent {
12185
12190
  this.viewName.set(value);
12186
12191
  }
12187
12192
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitGridViewsSaveComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12188
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.4", type: KitGridViewsSaveComponent, isStandalone: true, selector: "kit-grid-views-save", inputs: { viewGroup: { classPropertyName: "viewGroup", publicName: "viewGroup", isSignal: true, isRequired: true, transformFunction: null }, views: { classPropertyName: "views", publicName: "views", isSignal: true, isRequired: true, transformFunction: null }, viewsAutocompleteItems: { classPropertyName: "viewsAutocompleteItems", publicName: "viewsAutocompleteItems", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { resetQueryParams: "resetQueryParams" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["toggleButton"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "popup", first: true, predicate: ["popup"], descendants: true, read: KitPopupComponent, isSignal: true }], ngImport: i0, template: "<kit-button #toggleButton\n kitTooltip\n class=\"grid-views-save-btn\"\n kitTooltipFilter=\".grid-views-save-btn\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"hasUnsavedChanges() ? ('kit.views.saveView' | translate) : ('kit.views.noUnsavedChanges' | translate)\"\n [active]=\"popup.isPopupOpen\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"kitSvgIcon.DISKETTE\"\n [disabled]=\"!hasUnsavedChanges()\"\n (clicked)=\"onPopupToggle()\"\n></kit-button>\n\n<kit-popup #popup\n [anchor]=\"anchor()\"\n [content]=\"content\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"grid-views-save\">\n <kit-autocomplete class=\"grid-views-save-input\"\n [placeholder]=\"'kit.views.enterText' | translate\"\n [allowCustom]=\"true\"\n [items]=\"viewsAutocompleteItems() ?? []\"\n [closePopupIfDataNotFound]=\"true\"\n [invalid]=\"!isViewNameValid\"\n [messageText]=\"inputMessage\"\n (filterChanged)=\"onValueChange($event)\"\n (valueChanged)=\"viewName.set($event)\"\n (selectionChanged)=\"onValueChange($event)\"\n ></kit-autocomplete>\n <kit-button [label]=\"'kit.views.save' | translate\"\n [disabled]=\"!viewName() || !isViewNameValid || isViewSaving()\"\n (clicked)=\"onViewSave()\"\n ></kit-button>\n </div>\n</ng-template>\n", styles: [".grid-views-save{display:flex;flex-direction:row;gap:12px;width:352px}.grid-views-save-input{flex:1}\n"], dependencies: [{ kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "component", type: KitPopupComponent, selector: "kit-popup", inputs: ["anchor", "content", "closeOnOutsideClick", "showFooter", "cancelButtonLabel", "applyButtonLabel", "isApplyButtonDisabled", "positionMode", "popupClass", "closePopupOnCancel", "extraInsideSelectors"], outputs: ["cancelAction", "applyAction", "opened", "closed"] }, { kind: "component", type: KitAutocompleteComponent, selector: "kit-autocomplete", inputs: ["label", "placeholder", "items", "selectedValue", "disabled", "loaderVisible", "messageIcon", "messageText", "invalid", "allowCustom", "closePopupIfDataNotFound", "appendTo", "suggest", "readonly"], outputs: ["selectedValueChange", "disabledChange", "filterChanged", "valueChanged", "selectionChanged", "blured", "focused"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible", "kitTooltipOffset"] }, { kind: "pipe", type: i1$e.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12193
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.4", type: KitGridViewsSaveComponent, isStandalone: true, selector: "kit-grid-views-save", inputs: { viewGroup: { classPropertyName: "viewGroup", publicName: "viewGroup", isSignal: true, isRequired: true, transformFunction: null }, views: { classPropertyName: "views", publicName: "views", isSignal: true, isRequired: true, transformFunction: null }, viewsAutocompleteItems: { classPropertyName: "viewsAutocompleteItems", publicName: "viewsAutocompleteItems", isSignal: true, isRequired: true, transformFunction: null }, preserveReadonlyFilters: { classPropertyName: "preserveReadonlyFilters", publicName: "preserveReadonlyFilters", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { resetQueryParams: "resetQueryParams" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["toggleButton"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "popup", first: true, predicate: ["popup"], descendants: true, read: KitPopupComponent, isSignal: true }], ngImport: i0, template: "<kit-button #toggleButton\n kitTooltip\n class=\"grid-views-save-btn\"\n kitTooltipFilter=\".grid-views-save-btn\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"hasUnsavedChanges() ? ('kit.views.saveView' | translate) : ('kit.views.noUnsavedChanges' | translate)\"\n [active]=\"popup.isPopupOpen\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"kitSvgIcon.DISKETTE\"\n [disabled]=\"!hasUnsavedChanges()\"\n (clicked)=\"onPopupToggle()\"\n></kit-button>\n\n<kit-popup #popup\n [anchor]=\"anchor()\"\n [content]=\"content\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"grid-views-save\">\n <kit-autocomplete class=\"grid-views-save-input\"\n [placeholder]=\"'kit.views.enterText' | translate\"\n [allowCustom]=\"true\"\n [items]=\"viewsAutocompleteItems() ?? []\"\n [closePopupIfDataNotFound]=\"true\"\n [invalid]=\"!isViewNameValid\"\n [messageText]=\"inputMessage\"\n (filterChanged)=\"onValueChange($event)\"\n (valueChanged)=\"viewName.set($event)\"\n (selectionChanged)=\"onValueChange($event)\"\n ></kit-autocomplete>\n <kit-button [label]=\"'kit.views.save' | translate\"\n [disabled]=\"!viewName() || !isViewNameValid || isViewSaving()\"\n (clicked)=\"onViewSave()\"\n ></kit-button>\n </div>\n</ng-template>\n", styles: [".grid-views-save{display:flex;flex-direction:row;gap:12px;width:352px}.grid-views-save-input{flex:1}\n"], dependencies: [{ kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "component", type: KitPopupComponent, selector: "kit-popup", inputs: ["anchor", "content", "closeOnOutsideClick", "showFooter", "cancelButtonLabel", "applyButtonLabel", "isApplyButtonDisabled", "positionMode", "popupClass", "closePopupOnCancel", "extraInsideSelectors"], outputs: ["cancelAction", "applyAction", "opened", "closed"] }, { kind: "component", type: KitAutocompleteComponent, selector: "kit-autocomplete", inputs: ["label", "placeholder", "items", "selectedValue", "disabled", "loaderVisible", "messageIcon", "messageText", "invalid", "allowCustom", "closePopupIfDataNotFound", "appendTo", "suggest", "readonly"], outputs: ["selectedValueChange", "disabledChange", "filterChanged", "valueChanged", "selectionChanged", "blured", "focused"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible", "kitTooltipOffset"] }, { kind: "pipe", type: i1$e.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12189
12194
  }
12190
12195
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitGridViewsSaveComponent, decorators: [{
12191
12196
  type: Component,
@@ -12196,7 +12201,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
12196
12201
  TranslateModule,
12197
12202
  KitTooltipDirective,
12198
12203
  ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<kit-button #toggleButton\n kitTooltip\n class=\"grid-views-save-btn\"\n kitTooltipFilter=\".grid-views-save-btn\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"hasUnsavedChanges() ? ('kit.views.saveView' | translate) : ('kit.views.noUnsavedChanges' | translate)\"\n [active]=\"popup.isPopupOpen\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"kitSvgIcon.DISKETTE\"\n [disabled]=\"!hasUnsavedChanges()\"\n (clicked)=\"onPopupToggle()\"\n></kit-button>\n\n<kit-popup #popup\n [anchor]=\"anchor()\"\n [content]=\"content\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"grid-views-save\">\n <kit-autocomplete class=\"grid-views-save-input\"\n [placeholder]=\"'kit.views.enterText' | translate\"\n [allowCustom]=\"true\"\n [items]=\"viewsAutocompleteItems() ?? []\"\n [closePopupIfDataNotFound]=\"true\"\n [invalid]=\"!isViewNameValid\"\n [messageText]=\"inputMessage\"\n (filterChanged)=\"onValueChange($event)\"\n (valueChanged)=\"viewName.set($event)\"\n (selectionChanged)=\"onValueChange($event)\"\n ></kit-autocomplete>\n <kit-button [label]=\"'kit.views.save' | translate\"\n [disabled]=\"!viewName() || !isViewNameValid || isViewSaving()\"\n (clicked)=\"onViewSave()\"\n ></kit-button>\n </div>\n</ng-template>\n", styles: [".grid-views-save{display:flex;flex-direction:row;gap:12px;width:352px}.grid-views-save-input{flex:1}\n"] }]
12199
- }], propDecorators: { viewGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewGroup", required: true }] }], views: [{ type: i0.Input, args: [{ isSignal: true, alias: "views", required: true }] }], viewsAutocompleteItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewsAutocompleteItems", required: true }] }], resetQueryParams: [{ type: i0.Output, args: ["resetQueryParams"] }], anchor: [{ type: i0.ViewChild, args: ['toggleButton', { ...{ read: ElementRef }, isSignal: true }] }], popup: [{ type: i0.ViewChild, args: ['popup', { ...{ read: KitPopupComponent }, isSignal: true }] }] } });
12204
+ }], propDecorators: { viewGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewGroup", required: true }] }], views: [{ type: i0.Input, args: [{ isSignal: true, alias: "views", required: true }] }], viewsAutocompleteItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewsAutocompleteItems", required: true }] }], preserveReadonlyFilters: [{ type: i0.Input, args: [{ isSignal: true, alias: "preserveReadonlyFilters", required: false }] }], resetQueryParams: [{ type: i0.Output, args: ["resetQueryParams"] }], anchor: [{ type: i0.ViewChild, args: ['toggleButton', { ...{ read: ElementRef }, isSignal: true }] }], popup: [{ type: i0.ViewChild, args: ['popup', { ...{ read: KitPopupComponent }, isSignal: true }] }] } });
12200
12205
 
12201
12206
  class KitGridViewsComponent {
12202
12207
  constructor() {
@@ -12214,6 +12219,7 @@ class KitGridViewsComponent {
12214
12219
  this.defaultViewName = input.required(...(ngDevMode ? [{ debugName: "defaultViewName" }] : /* istanbul ignore next */ []));
12215
12220
  this.defaultSorting = input.required(...(ngDevMode ? [{ debugName: "defaultSorting" }] : /* istanbul ignore next */ []));
12216
12221
  this.systemViews = input.required(...(ngDevMode ? [{ debugName: "systemViews" }] : /* istanbul ignore next */ []));
12222
+ this.preserveReadonlyFilters = input(false, ...(ngDevMode ? [{ debugName: "preserveReadonlyFilters" }] : /* istanbul ignore next */ []));
12217
12223
  this.viewChanged = output();
12218
12224
  this.viewSelectionChanged = output();
12219
12225
  this.anchor = viewChild('toggleButton', { ...(ngDevMode ? { debugName: "anchor" } : /* istanbul ignore next */ {}), read: ElementRef });
@@ -12304,23 +12310,32 @@ class KitGridViewsComponent {
12304
12310
  });
12305
12311
  }
12306
12312
  onViewCreate() {
12307
- const defaultColumns = buildGridViewColumns(this.defaultColumns());
12313
+ const { filter } = this.store.selectSnapshot(KIT_GRID_STATE_TOKEN);
12314
+ const shouldPreserveReadonly = this.preserveReadonlyFilters();
12315
+ const readonlyFilters = filter.filter(item => !!item.readonly);
12316
+ const processedFilter = shouldPreserveReadonly
12317
+ ? readonlyFilters
12318
+ : [];
12319
+ const gridViewColumns = buildGridViewColumns(this.defaultColumns());
12308
12320
  const view = {
12309
12321
  title: this.createNewViewName(),
12310
12322
  group: this.viewGroup(),
12311
12323
  type: KitGridViewType.USER,
12312
12324
  hidden: false,
12313
12325
  viewState: {
12314
- filter: [],
12326
+ filter: processedFilter,
12315
12327
  sort: [],
12316
- columns: defaultColumns,
12328
+ columns: gridViewColumns,
12317
12329
  },
12318
12330
  };
12319
12331
  this.isViewSaving.set(true);
12320
12332
  this.store.dispatch(new AddGridView(view)).subscribe(() => {
12321
12333
  this.resetQueryParams();
12322
12334
  this.createNewViewPopup()?.close();
12323
- this.navigateToView(this.createNewViewName(), KitGridViewType.USER, { columns: JSON.stringify(defaultColumns) }).then(() => {
12335
+ this.navigateToView(this.createNewViewName(), KitGridViewType.USER, {
12336
+ filter: JSON.stringify(processedFilter),
12337
+ columns: JSON.stringify(gridViewColumns),
12338
+ }).then(() => {
12324
12339
  this.isViewSaving.set(false);
12325
12340
  this.store.dispatch(new SetSelectedView(view));
12326
12341
  });
@@ -12465,10 +12480,10 @@ class KitGridViewsComponent {
12465
12480
  return JSON.stringify(updatedState) !== JSON.stringify(this.gridState()) || !isFirstChange;
12466
12481
  }
12467
12482
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitGridViewsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12468
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitGridViewsComponent, isStandalone: true, selector: "kit-grid-views", inputs: { viewGroup: { classPropertyName: "viewGroup", publicName: "viewGroup", isSignal: true, isRequired: true, transformFunction: null }, viewConfigGroup: { classPropertyName: "viewConfigGroup", publicName: "viewConfigGroup", isSignal: true, isRequired: true, transformFunction: null }, defaultColumns: { classPropertyName: "defaultColumns", publicName: "defaultColumns", isSignal: true, isRequired: true, transformFunction: null }, defaultViewName: { classPropertyName: "defaultViewName", publicName: "defaultViewName", isSignal: true, isRequired: true, transformFunction: null }, defaultSorting: { classPropertyName: "defaultSorting", publicName: "defaultSorting", isSignal: true, isRequired: true, transformFunction: null }, systemViews: { classPropertyName: "systemViews", publicName: "systemViews", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { viewChanged: "viewChanged", viewSelectionChanged: "viewSelectionChanged" }, providers: [
12483
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitGridViewsComponent, isStandalone: true, selector: "kit-grid-views", inputs: { viewGroup: { classPropertyName: "viewGroup", publicName: "viewGroup", isSignal: true, isRequired: true, transformFunction: null }, viewConfigGroup: { classPropertyName: "viewConfigGroup", publicName: "viewConfigGroup", isSignal: true, isRequired: true, transformFunction: null }, defaultColumns: { classPropertyName: "defaultColumns", publicName: "defaultColumns", isSignal: true, isRequired: true, transformFunction: null }, defaultViewName: { classPropertyName: "defaultViewName", publicName: "defaultViewName", isSignal: true, isRequired: true, transformFunction: null }, defaultSorting: { classPropertyName: "defaultSorting", publicName: "defaultSorting", isSignal: true, isRequired: true, transformFunction: null }, systemViews: { classPropertyName: "systemViews", publicName: "systemViews", isSignal: true, isRequired: true, transformFunction: null }, preserveReadonlyFilters: { classPropertyName: "preserveReadonlyFilters", publicName: "preserveReadonlyFilters", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { viewChanged: "viewChanged", viewSelectionChanged: "viewSelectionChanged" }, providers: [
12469
12484
  TitleCasePipe,
12470
12485
  KitGridUrlStateService,
12471
- ], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["toggleButton"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "collapsedList", first: true, predicate: (KitCollapsedListComponent), descendants: true, isSignal: true }, { propertyName: "createNewViewPopup", first: true, predicate: ["popup"], descendants: true, read: KitPopupComponent, isSignal: true }], ngImport: i0, template: "<div class=\"kit-grid-views\">\n @if (viewsState$ | async; as viewsState) {\n @if (!viewsState.loading) {\n <div class=\"views-actions\">\n <kit-button #toggleButton\n kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.views.addView' | translate\"\n [icon]=\"kitSvgIcon.PLUS\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [active]=\"popup.isPopupOpen\"\n [type]=\"kitButtonType.GHOST\"\n (clicked)=\"onCreateViewPopupToggle()\"\n ></kit-button>\n <kit-grid-views-save [viewGroup]=\"viewGroup()\"\n [views]=\"views()\"\n [viewsAutocompleteItems]=\"viewsAutocompleteItems$ | async\"\n (resetQueryParams)=\"resetQueryParams()\"\n ></kit-grid-views-save>\n <kit-button kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.views.manageViews' | translate\"\n [icon]=\"kitSvgIcon.VIEWS\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [type]=\"kitButtonType.GHOST\"\n [disabled]=\"views().length < 2\"\n (clicked)=\"openViewsManagerModal()\"\n ></kit-button>\n </div>\n <div class=\"views-list\">\n <kit-collapsed-list [itemList]=\"collapsedListItems()\"\n [dropdownDefaultValueText]=\"collapsedListDropdownText()\"\n [lineHeight]=\"32\"\n [gap]=\"0\"\n [itemTemplate]=\"collapsedListItem\"\n [dropdownAlign]=\"kitCollapsedListDropdownAlign.INLINE\"\n (selectItem)=\"onSelectView($event)\"/>\n </div>\n } @else {\n <kit-skeleton [width]=\"200\"\n [height]=\"32\"\n ></kit-skeleton>\n }\n }\n</div>\n\n<ng-template #collapsedListItem let-item>\n <kit-button class=\"views-item\"\n [ngClass]=\"item.type\"\n [active]=\"item.title === selectedView()?.title && item.type === selectedView()?.type\"\n [label]=\"item.title | titlecase\"\n [type]=\"item.title === selectedView()?.title && item.type === selectedView()?.type &&\n kitButtonType.GHOST || kitButtonType.LINK\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [iconType]=\"item.type === gridViewType.SYSTEM && kitSvgIconType.STROKE || kitSvgIconType.FILL\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"/>\n</ng-template>\n\n<kit-popup #popup\n popupClass=\"kit-grid-new-view-popup\"\n [anchor]=\"$any(anchor())\"\n [content]=\"content\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"new-view\">\n <kit-textbox class=\"new-view-input\"\n [defaultValue]=\"createNewViewName()\"\n [placeholder]=\"'kit.views.enterText' | translate\"\n [state]=\"isViewNameValid && kitTextboxState.DEFAULT || kitTextboxState.ERROR\"\n [messageText]=\"inputMessage\"\n (changed)=\"createNewViewName.set($event)\"\n ></kit-textbox>\n <kit-button [label]=\"'kit.views.save' | translate\"\n [disabled]=\"!createNewViewName() || !isViewNameValid || isViewSaving()\"\n (clicked)=\"onViewCreate()\"\n ></kit-button>\n </div>\n</ng-template>\n", styles: [".kit-grid-views{display:flex;gap:16px}.kit-grid-views .views-actions{display:flex;gap:16px;padding-right:16px;border-right:1px solid var(--ui-kit-color-grey-11)}.kit-grid-views .views-list{width:100%;min-width:0}::ng-deep .views-list .views-item.system .k-button{color:var(--ui-kit-color-blue)}::ng-deep .views-list .views-item:hover .k-button{color:var(--ui-kit-color-main)}::ng-deep .views-list .views-item .k-button.active{color:var(--ui-kit-color-main)}::ng-deep .views-list .collapsed-list-dropdown .dropdown .k-input-inner{padding:0 16px}::ng-deep .views-list .collapsed-list-dropdown .dropdown .k-input-inner .value-icon{margin-left:5px}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown:focus-within .dropdown{box-shadow:none}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown{border-color:transparent;background-color:transparent}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .k-input-value-text span{color:var(--ui-kit-color-main)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .k-input-value-text svg{stroke:var(--ui-kit-color-main)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown.selected .dropdown{color:var(--ui-kit-color-main);border-color:var(--ui-kit-color-main);background:var(--ui-kit-color-background)}::ng-deep .kit-dropdown-popup.k-popup.collapsed-list-popup{width:360px}::ng-deep .kit-popup.kit-grid-new-view-popup{width:400px}::ng-deep .kit-popup.kit-grid-new-view-popup .new-view{display:flex;flex-direction:row;gap:12px}::ng-deep .kit-popup.kit-grid-new-view-popup .new-view-input{flex:1}\n"], dependencies: [{ kind: "component", type: KitSkeletonComponent, selector: "kit-skeleton", inputs: ["width", "height", "shape", "animation"] }, { kind: "component", type: KitGridViewsSaveComponent, selector: "kit-grid-views-save", inputs: ["viewGroup", "views", "viewsAutocompleteItems"], outputs: ["resetQueryParams"] }, { kind: "component", type: KitCollapsedListComponent, selector: "kit-collapsed-list", inputs: ["itemList", "lineHeight", "dropdownDefaultValueText", "gap", "disableActions", "itemTemplate", "dropdownFooterTemplate", "dropdownItemTemplate", "dropdownNoDataTemplate", "appendTo", "alwaysShowDropdown", "dropdownAlign"], outputs: ["selectItem"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: KitPopupComponent, selector: "kit-popup", inputs: ["anchor", "content", "closeOnOutsideClick", "showFooter", "cancelButtonLabel", "applyButtonLabel", "isApplyButtonDisabled", "positionMode", "popupClass", "closePopupOnCancel", "extraInsideSelectors"], outputs: ["cancelAction", "applyAction", "opened", "closed"] }, { kind: "component", type: KitTextboxComponent, selector: "kit-textbox", inputs: ["placeholder", "label", "labelTooltip", "defaultValue", "messageIcon", "messageText", "messageTemplate", "disabled", "maxlength", "state", "size", "icon", "clearButton", "showStateIcon", "readonly", "customStateIcon", "type"], outputs: ["defaultValueChange", "disabledChange", "blured", "focused", "changed"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible", "kitTooltipOffset"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i1$e.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12486
+ ], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["toggleButton"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "collapsedList", first: true, predicate: (KitCollapsedListComponent), descendants: true, isSignal: true }, { propertyName: "createNewViewPopup", first: true, predicate: ["popup"], descendants: true, read: KitPopupComponent, isSignal: true }], ngImport: i0, template: "<div class=\"kit-grid-views\">\n @if (viewsState$ | async; as viewsState) {\n @if (!viewsState.loading) {\n <div class=\"views-actions\">\n <kit-button #toggleButton\n kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.views.addView' | translate\"\n [icon]=\"kitSvgIcon.PLUS\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [active]=\"popup.isPopupOpen\"\n [type]=\"kitButtonType.GHOST\"\n (clicked)=\"onCreateViewPopupToggle()\"\n ></kit-button>\n <kit-grid-views-save [viewGroup]=\"viewGroup()\"\n [views]=\"views()\"\n [viewsAutocompleteItems]=\"viewsAutocompleteItems$ | async\"\n [preserveReadonlyFilters]=\"preserveReadonlyFilters()\"\n (resetQueryParams)=\"resetQueryParams()\"\n ></kit-grid-views-save>\n <kit-button kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.views.manageViews' | translate\"\n [icon]=\"kitSvgIcon.VIEWS\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [type]=\"kitButtonType.GHOST\"\n [disabled]=\"views().length < 2\"\n (clicked)=\"openViewsManagerModal()\"\n ></kit-button>\n </div>\n <div class=\"views-list\">\n <kit-collapsed-list [itemList]=\"collapsedListItems()\"\n [dropdownDefaultValueText]=\"collapsedListDropdownText()\"\n [lineHeight]=\"32\"\n [gap]=\"0\"\n [itemTemplate]=\"collapsedListItem\"\n [dropdownAlign]=\"kitCollapsedListDropdownAlign.INLINE\"\n (selectItem)=\"onSelectView($event)\"/>\n </div>\n } @else {\n <kit-skeleton [width]=\"200\"\n [height]=\"32\"\n ></kit-skeleton>\n }\n }\n</div>\n\n<ng-template #collapsedListItem let-item>\n <kit-button class=\"views-item\"\n [ngClass]=\"item.type\"\n [active]=\"item.title === selectedView()?.title && item.type === selectedView()?.type\"\n [label]=\"item.title | titlecase\"\n [type]=\"item.title === selectedView()?.title && item.type === selectedView()?.type &&\n kitButtonType.GHOST || kitButtonType.LINK\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [iconType]=\"item.type === gridViewType.SYSTEM && kitSvgIconType.STROKE || kitSvgIconType.FILL\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"/>\n</ng-template>\n\n<kit-popup #popup\n popupClass=\"kit-grid-new-view-popup\"\n [anchor]=\"$any(anchor())\"\n [content]=\"content\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"new-view\">\n <kit-textbox class=\"new-view-input\"\n [defaultValue]=\"createNewViewName()\"\n [placeholder]=\"'kit.views.enterText' | translate\"\n [state]=\"isViewNameValid && kitTextboxState.DEFAULT || kitTextboxState.ERROR\"\n [messageText]=\"inputMessage\"\n (changed)=\"createNewViewName.set($event)\"\n ></kit-textbox>\n <kit-button [label]=\"'kit.views.save' | translate\"\n [disabled]=\"!createNewViewName() || !isViewNameValid || isViewSaving()\"\n (clicked)=\"onViewCreate()\"\n ></kit-button>\n </div>\n</ng-template>\n", styles: [".kit-grid-views{display:flex;gap:16px}.kit-grid-views .views-actions{display:flex;gap:16px;padding-right:16px;border-right:1px solid var(--ui-kit-color-grey-11)}.kit-grid-views .views-list{width:100%;min-width:0}::ng-deep .views-list .views-item.system .k-button{color:var(--ui-kit-color-blue)}::ng-deep .views-list .views-item:hover .k-button{color:var(--ui-kit-color-main)}::ng-deep .views-list .views-item .k-button.active{color:var(--ui-kit-color-main)}::ng-deep .views-list .collapsed-list-dropdown .dropdown .k-input-inner{padding:0 16px}::ng-deep .views-list .collapsed-list-dropdown .dropdown .k-input-inner .value-icon{margin-left:5px}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown:focus-within .dropdown{box-shadow:none}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown{border-color:transparent;background-color:transparent}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .k-input-value-text span{color:var(--ui-kit-color-main)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .k-input-value-text svg{stroke:var(--ui-kit-color-main)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .value-icon{fill:transparent}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown.selected .dropdown{color:var(--ui-kit-color-main);border-color:var(--ui-kit-color-main);background:var(--ui-kit-color-background)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown.selected .dropdown .value-icon{fill:var(--ui-kit-color-background)}::ng-deep .kit-dropdown-popup.k-popup.collapsed-list-popup{width:360px}::ng-deep .kit-popup.kit-grid-new-view-popup{width:400px}::ng-deep .kit-popup.kit-grid-new-view-popup .new-view{display:flex;flex-direction:row;gap:12px}::ng-deep .kit-popup.kit-grid-new-view-popup .new-view-input{flex:1}\n"], dependencies: [{ kind: "component", type: KitSkeletonComponent, selector: "kit-skeleton", inputs: ["width", "height", "shape", "animation"] }, { kind: "component", type: KitGridViewsSaveComponent, selector: "kit-grid-views-save", inputs: ["viewGroup", "views", "viewsAutocompleteItems", "preserveReadonlyFilters"], outputs: ["resetQueryParams"] }, { kind: "component", type: KitCollapsedListComponent, selector: "kit-collapsed-list", inputs: ["itemList", "lineHeight", "dropdownDefaultValueText", "gap", "disableActions", "itemTemplate", "dropdownFooterTemplate", "dropdownItemTemplate", "dropdownNoDataTemplate", "appendTo", "alwaysShowDropdown", "dropdownAlign"], outputs: ["selectItem"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: KitPopupComponent, selector: "kit-popup", inputs: ["anchor", "content", "closeOnOutsideClick", "showFooter", "cancelButtonLabel", "applyButtonLabel", "isApplyButtonDisabled", "positionMode", "popupClass", "closePopupOnCancel", "extraInsideSelectors"], outputs: ["cancelAction", "applyAction", "opened", "closed"] }, { kind: "component", type: KitTextboxComponent, selector: "kit-textbox", inputs: ["placeholder", "label", "labelTooltip", "defaultValue", "messageIcon", "messageText", "messageTemplate", "disabled", "maxlength", "state", "size", "icon", "clearButton", "showStateIcon", "readonly", "customStateIcon", "type"], outputs: ["defaultValueChange", "disabledChange", "blured", "focused", "changed"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible", "kitTooltipOffset"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i1$e.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12472
12487
  }
12473
12488
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitGridViewsComponent, decorators: [{
12474
12489
  type: Component,
@@ -12487,8 +12502,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
12487
12502
  ], providers: [
12488
12503
  TitleCasePipe,
12489
12504
  KitGridUrlStateService,
12490
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"kit-grid-views\">\n @if (viewsState$ | async; as viewsState) {\n @if (!viewsState.loading) {\n <div class=\"views-actions\">\n <kit-button #toggleButton\n kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.views.addView' | translate\"\n [icon]=\"kitSvgIcon.PLUS\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [active]=\"popup.isPopupOpen\"\n [type]=\"kitButtonType.GHOST\"\n (clicked)=\"onCreateViewPopupToggle()\"\n ></kit-button>\n <kit-grid-views-save [viewGroup]=\"viewGroup()\"\n [views]=\"views()\"\n [viewsAutocompleteItems]=\"viewsAutocompleteItems$ | async\"\n (resetQueryParams)=\"resetQueryParams()\"\n ></kit-grid-views-save>\n <kit-button kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.views.manageViews' | translate\"\n [icon]=\"kitSvgIcon.VIEWS\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [type]=\"kitButtonType.GHOST\"\n [disabled]=\"views().length < 2\"\n (clicked)=\"openViewsManagerModal()\"\n ></kit-button>\n </div>\n <div class=\"views-list\">\n <kit-collapsed-list [itemList]=\"collapsedListItems()\"\n [dropdownDefaultValueText]=\"collapsedListDropdownText()\"\n [lineHeight]=\"32\"\n [gap]=\"0\"\n [itemTemplate]=\"collapsedListItem\"\n [dropdownAlign]=\"kitCollapsedListDropdownAlign.INLINE\"\n (selectItem)=\"onSelectView($event)\"/>\n </div>\n } @else {\n <kit-skeleton [width]=\"200\"\n [height]=\"32\"\n ></kit-skeleton>\n }\n }\n</div>\n\n<ng-template #collapsedListItem let-item>\n <kit-button class=\"views-item\"\n [ngClass]=\"item.type\"\n [active]=\"item.title === selectedView()?.title && item.type === selectedView()?.type\"\n [label]=\"item.title | titlecase\"\n [type]=\"item.title === selectedView()?.title && item.type === selectedView()?.type &&\n kitButtonType.GHOST || kitButtonType.LINK\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [iconType]=\"item.type === gridViewType.SYSTEM && kitSvgIconType.STROKE || kitSvgIconType.FILL\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"/>\n</ng-template>\n\n<kit-popup #popup\n popupClass=\"kit-grid-new-view-popup\"\n [anchor]=\"$any(anchor())\"\n [content]=\"content\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"new-view\">\n <kit-textbox class=\"new-view-input\"\n [defaultValue]=\"createNewViewName()\"\n [placeholder]=\"'kit.views.enterText' | translate\"\n [state]=\"isViewNameValid && kitTextboxState.DEFAULT || kitTextboxState.ERROR\"\n [messageText]=\"inputMessage\"\n (changed)=\"createNewViewName.set($event)\"\n ></kit-textbox>\n <kit-button [label]=\"'kit.views.save' | translate\"\n [disabled]=\"!createNewViewName() || !isViewNameValid || isViewSaving()\"\n (clicked)=\"onViewCreate()\"\n ></kit-button>\n </div>\n</ng-template>\n", styles: [".kit-grid-views{display:flex;gap:16px}.kit-grid-views .views-actions{display:flex;gap:16px;padding-right:16px;border-right:1px solid var(--ui-kit-color-grey-11)}.kit-grid-views .views-list{width:100%;min-width:0}::ng-deep .views-list .views-item.system .k-button{color:var(--ui-kit-color-blue)}::ng-deep .views-list .views-item:hover .k-button{color:var(--ui-kit-color-main)}::ng-deep .views-list .views-item .k-button.active{color:var(--ui-kit-color-main)}::ng-deep .views-list .collapsed-list-dropdown .dropdown .k-input-inner{padding:0 16px}::ng-deep .views-list .collapsed-list-dropdown .dropdown .k-input-inner .value-icon{margin-left:5px}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown:focus-within .dropdown{box-shadow:none}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown{border-color:transparent;background-color:transparent}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .k-input-value-text span{color:var(--ui-kit-color-main)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .k-input-value-text svg{stroke:var(--ui-kit-color-main)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown.selected .dropdown{color:var(--ui-kit-color-main);border-color:var(--ui-kit-color-main);background:var(--ui-kit-color-background)}::ng-deep .kit-dropdown-popup.k-popup.collapsed-list-popup{width:360px}::ng-deep .kit-popup.kit-grid-new-view-popup{width:400px}::ng-deep .kit-popup.kit-grid-new-view-popup .new-view{display:flex;flex-direction:row;gap:12px}::ng-deep .kit-popup.kit-grid-new-view-popup .new-view-input{flex:1}\n"] }]
12491
- }], propDecorators: { viewGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewGroup", required: true }] }], viewConfigGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewConfigGroup", required: true }] }], defaultColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultColumns", required: true }] }], defaultViewName: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultViewName", required: true }] }], defaultSorting: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultSorting", required: true }] }], systemViews: [{ type: i0.Input, args: [{ isSignal: true, alias: "systemViews", required: true }] }], viewChanged: [{ type: i0.Output, args: ["viewChanged"] }], viewSelectionChanged: [{ type: i0.Output, args: ["viewSelectionChanged"] }], anchor: [{ type: i0.ViewChild, args: ['toggleButton', { ...{ read: ElementRef }, isSignal: true }] }], collapsedList: [{ type: i0.ViewChild, args: [i0.forwardRef(() => KitCollapsedListComponent), { isSignal: true }] }], createNewViewPopup: [{ type: i0.ViewChild, args: ['popup', { ...{ read: KitPopupComponent }, isSignal: true }] }] } });
12505
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"kit-grid-views\">\n @if (viewsState$ | async; as viewsState) {\n @if (!viewsState.loading) {\n <div class=\"views-actions\">\n <kit-button #toggleButton\n kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.views.addView' | translate\"\n [icon]=\"kitSvgIcon.PLUS\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [active]=\"popup.isPopupOpen\"\n [type]=\"kitButtonType.GHOST\"\n (clicked)=\"onCreateViewPopupToggle()\"\n ></kit-button>\n <kit-grid-views-save [viewGroup]=\"viewGroup()\"\n [views]=\"views()\"\n [viewsAutocompleteItems]=\"viewsAutocompleteItems$ | async\"\n [preserveReadonlyFilters]=\"preserveReadonlyFilters()\"\n (resetQueryParams)=\"resetQueryParams()\"\n ></kit-grid-views-save>\n <kit-button kitTooltip\n kitTooltipFilter=\"kit-button\"\n [kitTooltipPosition]=\"kitTooltipPosition.TOP\"\n [title]=\"'kit.views.manageViews' | translate\"\n [icon]=\"kitSvgIcon.VIEWS\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [type]=\"kitButtonType.GHOST\"\n [disabled]=\"views().length < 2\"\n (clicked)=\"openViewsManagerModal()\"\n ></kit-button>\n </div>\n <div class=\"views-list\">\n <kit-collapsed-list [itemList]=\"collapsedListItems()\"\n [dropdownDefaultValueText]=\"collapsedListDropdownText()\"\n [lineHeight]=\"32\"\n [gap]=\"0\"\n [itemTemplate]=\"collapsedListItem\"\n [dropdownAlign]=\"kitCollapsedListDropdownAlign.INLINE\"\n (selectItem)=\"onSelectView($event)\"/>\n </div>\n } @else {\n <kit-skeleton [width]=\"200\"\n [height]=\"32\"\n ></kit-skeleton>\n }\n }\n</div>\n\n<ng-template #collapsedListItem let-item>\n <kit-button class=\"views-item\"\n [ngClass]=\"item.type\"\n [active]=\"item.title === selectedView()?.title && item.type === selectedView()?.type\"\n [label]=\"item.title | titlecase\"\n [type]=\"item.title === selectedView()?.title && item.type === selectedView()?.type &&\n kitButtonType.GHOST || kitButtonType.LINK\"\n [kind]=\"kitButtonKind.MEDIUM\"\n [iconType]=\"item.type === gridViewType.SYSTEM && kitSvgIconType.STROKE || kitSvgIconType.FILL\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"/>\n</ng-template>\n\n<kit-popup #popup\n popupClass=\"kit-grid-new-view-popup\"\n [anchor]=\"$any(anchor())\"\n [content]=\"content\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"new-view\">\n <kit-textbox class=\"new-view-input\"\n [defaultValue]=\"createNewViewName()\"\n [placeholder]=\"'kit.views.enterText' | translate\"\n [state]=\"isViewNameValid && kitTextboxState.DEFAULT || kitTextboxState.ERROR\"\n [messageText]=\"inputMessage\"\n (changed)=\"createNewViewName.set($event)\"\n ></kit-textbox>\n <kit-button [label]=\"'kit.views.save' | translate\"\n [disabled]=\"!createNewViewName() || !isViewNameValid || isViewSaving()\"\n (clicked)=\"onViewCreate()\"\n ></kit-button>\n </div>\n</ng-template>\n", styles: [".kit-grid-views{display:flex;gap:16px}.kit-grid-views .views-actions{display:flex;gap:16px;padding-right:16px;border-right:1px solid var(--ui-kit-color-grey-11)}.kit-grid-views .views-list{width:100%;min-width:0}::ng-deep .views-list .views-item.system .k-button{color:var(--ui-kit-color-blue)}::ng-deep .views-list .views-item:hover .k-button{color:var(--ui-kit-color-main)}::ng-deep .views-list .views-item .k-button.active{color:var(--ui-kit-color-main)}::ng-deep .views-list .collapsed-list-dropdown .dropdown .k-input-inner{padding:0 16px}::ng-deep .views-list .collapsed-list-dropdown .dropdown .k-input-inner .value-icon{margin-left:5px}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown:focus-within .dropdown{box-shadow:none}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown{border-color:transparent;background-color:transparent}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .k-input-value-text span{color:var(--ui-kit-color-main)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .k-input-value-text svg{stroke:var(--ui-kit-color-main)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown .dropdown .value-icon{fill:transparent}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown.selected .dropdown{color:var(--ui-kit-color-main);border-color:var(--ui-kit-color-main);background:var(--ui-kit-color-background)}::ng-deep .kit-grid-views .views-list .wrapper-inner .collapsed-list-dropdown.selected .dropdown .value-icon{fill:var(--ui-kit-color-background)}::ng-deep .kit-dropdown-popup.k-popup.collapsed-list-popup{width:360px}::ng-deep .kit-popup.kit-grid-new-view-popup{width:400px}::ng-deep .kit-popup.kit-grid-new-view-popup .new-view{display:flex;flex-direction:row;gap:12px}::ng-deep .kit-popup.kit-grid-new-view-popup .new-view-input{flex:1}\n"] }]
12506
+ }], propDecorators: { viewGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewGroup", required: true }] }], viewConfigGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewConfigGroup", required: true }] }], defaultColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultColumns", required: true }] }], defaultViewName: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultViewName", required: true }] }], defaultSorting: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultSorting", required: true }] }], systemViews: [{ type: i0.Input, args: [{ isSignal: true, alias: "systemViews", required: true }] }], preserveReadonlyFilters: [{ type: i0.Input, args: [{ isSignal: true, alias: "preserveReadonlyFilters", required: false }] }], viewChanged: [{ type: i0.Output, args: ["viewChanged"] }], viewSelectionChanged: [{ type: i0.Output, args: ["viewSelectionChanged"] }], anchor: [{ type: i0.ViewChild, args: ['toggleButton', { ...{ read: ElementRef }, isSignal: true }] }], collapsedList: [{ type: i0.ViewChild, args: [i0.forwardRef(() => KitCollapsedListComponent), { isSignal: true }] }], createNewViewPopup: [{ type: i0.ViewChild, args: ['popup', { ...{ read: KitPopupComponent }, isSignal: true }] }] } });
12492
12507
 
12493
12508
  class FetchUserSettings {
12494
12509
  static { this.type = '[UserSettings] FetchUserSettings'; }
@@ -14280,6 +14295,7 @@ class KitEntityGridComponent {
14280
14295
  this.defaultSorting = input([], ...(ngDevMode ? [{ debugName: "defaultSorting" }] : /* istanbul ignore next */ []));
14281
14296
  this.filterExcludedColumns = input([], ...(ngDevMode ? [{ debugName: "filterExcludedColumns" }] : /* istanbul ignore next */ []));
14282
14297
  this.systemViews = input([], ...(ngDevMode ? [{ debugName: "systemViews" }] : /* istanbul ignore next */ []));
14298
+ this.preserveReadonlyFilters = input(false, ...(ngDevMode ? [{ debugName: "preserveReadonlyFilters" }] : /* istanbul ignore next */ []));
14283
14299
  this.translationMap = input({}, ...(ngDevMode ? [{ debugName: "translationMap" }] : /* istanbul ignore next */ []));
14284
14300
  this.isDetailTemplateVisible = input(() => false, ...(ngDevMode ? [{ debugName: "isDetailTemplateVisible" }] : /* istanbul ignore next */ []));
14285
14301
  this.detailTemplateExpandDisableIf = input(() => false, ...(ngDevMode ? [{ debugName: "detailTemplateExpandDisableIf" }] : /* istanbul ignore next */ []));
@@ -14401,10 +14417,10 @@ class KitEntityGridComponent {
14401
14417
  return JSON.stringify(kitBuildFilters(filtersWithoutNullValue));
14402
14418
  }
14403
14419
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitEntityGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14404
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitEntityGridComponent, isStandalone: true, selector: "kit-entity-grid", inputs: { statesToReset: { classPropertyName: "statesToReset", publicName: "statesToReset", isSignal: true, isRequired: false, transformFunction: null }, 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 }, pageable: { classPropertyName: "pageable", publicName: "pageable", isSignal: true, isRequired: false, transformFunction: null }, searchVisible: { classPropertyName: "searchVisible", publicName: "searchVisible", isSignal: true, isRequired: false, transformFunction: null }, selectedKeys: { classPropertyName: "selectedKeys", publicName: "selectedKeys", isSignal: true, isRequired: false, transformFunction: null }, gridCellValueTransformMap: { classPropertyName: "gridCellValueTransformMap", publicName: "gridCellValueTransformMap", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { gridViewChanged: "gridViewChanged", archiveModeChanged: "archiveModeChanged", refreshButtonClicked: "refreshButtonClicked", selectionChanged: "selectionChanged", resetSelectedKeys: "resetSelectedKeys" }, providers: [
14420
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitEntityGridComponent, isStandalone: true, selector: "kit-entity-grid", inputs: { statesToReset: { classPropertyName: "statesToReset", publicName: "statesToReset", isSignal: true, isRequired: false, transformFunction: null }, 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 }, preserveReadonlyFilters: { classPropertyName: "preserveReadonlyFilters", publicName: "preserveReadonlyFilters", 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 }, pageable: { classPropertyName: "pageable", publicName: "pageable", isSignal: true, isRequired: false, transformFunction: null }, searchVisible: { classPropertyName: "searchVisible", publicName: "searchVisible", isSignal: true, isRequired: false, transformFunction: null }, selectedKeys: { classPropertyName: "selectedKeys", publicName: "selectedKeys", isSignal: true, isRequired: false, transformFunction: null }, gridCellValueTransformMap: { classPropertyName: "gridCellValueTransformMap", publicName: "gridCellValueTransformMap", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { gridViewChanged: "gridViewChanged", archiveModeChanged: "archiveModeChanged", refreshButtonClicked: "refreshButtonClicked", selectionChanged: "selectionChanged", resetSelectedKeys: "resetSelectedKeys" }, providers: [
14405
14421
  KitBreadcrumbsService,
14406
14422
  KitGridUrlStateService,
14407
- ], queries: [{ propertyName: "columnMarkers", predicate: KIT_GRID_COLUMN_MARKER, descendants: true, 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 (viewSelectionChanged)=\"resetSelectedKeys.emit()\"\n ></kit-grid-views>\n <div class=\"grid-header-actions\">\n <ng-content select=\"[headerActions]\"></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 [gridCellValueTransformMap]=\"gridCellValueTransformMap()\" />\n @if (filters$ | async; as filters) {\n <kit-grid-filters-toggle [filters]=\"filters\"\n [hasTooltip]=\"searchIsOpen()\"\n [active]=\"filtersVisible()\"\n (clicked)=\"onFiltersToggle()\" />\n <kit-grid-column-manager class=\"grid-column-manager\"\n [showLabel]=\"!searchIsOpen()\" />\n }\n </div>\n @if (searchVisible()) {\n <div class=\"grid-header-search\">\n <kit-grid-search #search\n [disabled]=\"isSearchDisabled()\"\n (toggleSearch)=\"searchIsOpen.set($event)\" />\n </div>\n }\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]=\"pageable()\"\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 [selectedKeys]=\"selectedKeys()\"\n (selectionChanged)=\"onSelectionChange($event)\"\n (pageChanged)=\"onPageSizeChanged($event)\"\n (dataStateChanged)=\"onDataStateChange($event)\"\n ></kit-grid>\n } @else {\n <kit-skeleton-grid class=\"kit-skeleton-grid\"\n ></kit-skeleton-grid>\n }\n }\n <ng-content select=\"[footerActions]\"></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", "viewSelectionChanged"] }, { kind: "component", type: KitGridExportComponent, selector: "kit-grid-export", inputs: ["getExportedData", "translationMap", "exportedFileName", "drawPdf", "gridHasData", "gridCellValueTransformMap", "visibleColumns"] }, { 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", "noRecordsText", "resizable", "gridDetailTemplate", "rowClassFn", "rowReorderable", "selectedKeys"], outputs: ["skipChange", "loadingChange", "rowReordered", "selectionChanged", "pageChanged", "sortChanged", "dataStateChanged", "detailExpanded", "detailCollapsed", "cellClicked", "excelExport", "selectedKeysChange"] }, { 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", "kitTooltipOffset"] }, { kind: "component", type: KitGridArchiveToggle, selector: "kit-grid-archive-toggle", outputs: ["valueChange"] }, { kind: "component", type: KitGridFiltersToggleComponent, selector: "kit-grid-filters-toggle", inputs: ["filters", "hasTooltip", "active"], outputs: ["clicked"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14423
+ ], queries: [{ propertyName: "columnMarkers", predicate: KIT_GRID_COLUMN_MARKER, descendants: true, 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 [preserveReadonlyFilters]=\"preserveReadonlyFilters()\"\n (viewChanged)=\"onGridViewChange()\"\n (viewSelectionChanged)=\"resetSelectedKeys.emit()\"\n ></kit-grid-views>\n <div class=\"grid-header-actions\">\n <ng-content select=\"[headerActions]\"></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 [gridCellValueTransformMap]=\"gridCellValueTransformMap()\" />\n @if (filters$ | async; as filters) {\n <kit-grid-filters-toggle [filters]=\"filters\"\n [hasTooltip]=\"searchIsOpen()\"\n [active]=\"filtersVisible()\"\n (clicked)=\"onFiltersToggle()\" />\n <kit-grid-column-manager class=\"grid-column-manager\"\n [showLabel]=\"!searchIsOpen()\" />\n }\n </div>\n @if (searchVisible()) {\n <div class=\"grid-header-search\">\n <kit-grid-search #search\n [disabled]=\"isSearchDisabled()\"\n (toggleSearch)=\"searchIsOpen.set($event)\" />\n </div>\n }\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]=\"pageable()\"\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 [selectedKeys]=\"selectedKeys()\"\n (selectionChanged)=\"onSelectionChange($event)\"\n (pageChanged)=\"onPageSizeChanged($event)\"\n (dataStateChanged)=\"onDataStateChange($event)\"\n ></kit-grid>\n } @else {\n <kit-skeleton-grid class=\"kit-skeleton-grid\"\n ></kit-skeleton-grid>\n }\n }\n <ng-content select=\"[footerActions]\"></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", "preserveReadonlyFilters"], outputs: ["viewChanged", "viewSelectionChanged"] }, { kind: "component", type: KitGridExportComponent, selector: "kit-grid-export", inputs: ["getExportedData", "translationMap", "exportedFileName", "drawPdf", "gridHasData", "gridCellValueTransformMap", "visibleColumns"] }, { 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", "noRecordsText", "resizable", "gridDetailTemplate", "rowClassFn", "rowReorderable", "selectedKeys"], outputs: ["skipChange", "loadingChange", "rowReordered", "selectionChanged", "pageChanged", "sortChanged", "dataStateChanged", "detailExpanded", "detailCollapsed", "cellClicked", "excelExport", "selectedKeysChange"] }, { 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", "kitTooltipOffset"] }, { kind: "component", type: KitGridArchiveToggle, selector: "kit-grid-archive-toggle", outputs: ["valueChange"] }, { kind: "component", type: KitGridFiltersToggleComponent, selector: "kit-grid-filters-toggle", inputs: ["filters", "hasTooltip", "active"], outputs: ["clicked"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14408
14424
  }
14409
14425
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitEntityGridComponent, decorators: [{
14410
14426
  type: Component,
@@ -14426,8 +14442,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
14426
14442
  ], providers: [
14427
14443
  KitBreadcrumbsService,
14428
14444
  KitGridUrlStateService,
14429
- ], 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 (viewSelectionChanged)=\"resetSelectedKeys.emit()\"\n ></kit-grid-views>\n <div class=\"grid-header-actions\">\n <ng-content select=\"[headerActions]\"></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 [gridCellValueTransformMap]=\"gridCellValueTransformMap()\" />\n @if (filters$ | async; as filters) {\n <kit-grid-filters-toggle [filters]=\"filters\"\n [hasTooltip]=\"searchIsOpen()\"\n [active]=\"filtersVisible()\"\n (clicked)=\"onFiltersToggle()\" />\n <kit-grid-column-manager class=\"grid-column-manager\"\n [showLabel]=\"!searchIsOpen()\" />\n }\n </div>\n @if (searchVisible()) {\n <div class=\"grid-header-search\">\n <kit-grid-search #search\n [disabled]=\"isSearchDisabled()\"\n (toggleSearch)=\"searchIsOpen.set($event)\" />\n </div>\n }\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]=\"pageable()\"\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 [selectedKeys]=\"selectedKeys()\"\n (selectionChanged)=\"onSelectionChange($event)\"\n (pageChanged)=\"onPageSizeChanged($event)\"\n (dataStateChanged)=\"onDataStateChange($event)\"\n ></kit-grid>\n } @else {\n <kit-skeleton-grid class=\"kit-skeleton-grid\"\n ></kit-skeleton-grid>\n }\n }\n <ng-content select=\"[footerActions]\"></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"] }]
14430
- }], ctorParameters: () => [], propDecorators: { statesToReset: [{ type: i0.Input, args: [{ isSignal: true, alias: "statesToReset", required: false }] }], gridData: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridData", required: true }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], gridColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridColumns", required: true }] }], defaultViewName: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultViewName", required: true }] }], viewGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewGroup", required: true }] }], viewGroupConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewGroupConfig", required: true }] }], pdfOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "pdfOptions", required: true }] }], getExportedData: [{ type: i0.Input, args: [{ isSignal: true, alias: "getExportedData", required: true }] }], defaultSorting: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultSorting", required: false }] }], filterExcludedColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "filterExcludedColumns", required: false }] }], systemViews: [{ type: i0.Input, args: [{ isSignal: true, alias: "systemViews", required: false }] }], translationMap: [{ type: i0.Input, args: [{ isSignal: true, alias: "translationMap", required: false }] }], isDetailTemplateVisible: [{ type: i0.Input, args: [{ isSignal: true, alias: "isDetailTemplateVisible", required: false }] }], detailTemplateExpandDisableIf: [{ type: i0.Input, args: [{ isSignal: true, alias: "detailTemplateExpandDisableIf", required: false }] }], gridHasData: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridHasData", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], pagerInfoText: [{ type: i0.Input, args: [{ isSignal: true, alias: "pagerInfoText", required: false }] }], showBreadcrumbs: [{ type: i0.Input, args: [{ isSignal: true, alias: "showBreadcrumbs", required: false }] }], pageSizes: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSizes", required: false }] }], rowClassFn: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowClassFn", required: false }] }], showArchiveToggle: [{ type: i0.Input, args: [{ isSignal: true, alias: "showArchiveToggle", required: false }] }], showRefreshButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showRefreshButton", required: false }] }], pageable: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageable", required: false }] }], searchVisible: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchVisible", required: false }] }], selectedKeys: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedKeys", required: false }] }], gridCellValueTransformMap: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridCellValueTransformMap", required: false }] }], gridViewChanged: [{ type: i0.Output, args: ["gridViewChanged"] }], archiveModeChanged: [{ type: i0.Output, args: ["archiveModeChanged"] }], refreshButtonClicked: [{ type: i0.Output, args: ["refreshButtonClicked"] }], selectionChanged: [{ type: i0.Output, args: ["selectionChanged"] }], resetSelectedKeys: [{ type: i0.Output, args: ["resetSelectedKeys"] }], search: [{ type: i0.ViewChild, args: ['search', { ...{ read: KitGridSearchComponent }, isSignal: true }] }], kitGridComponent: [{ type: i0.ViewChild, args: [i0.forwardRef(() => KitGridComponent), { isSignal: true }] }], gridExportComponent: [{ type: i0.ViewChild, args: [i0.forwardRef(() => KitGridExportComponent), { isSignal: true }] }], columnMarkers: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => KIT_GRID_COLUMN_MARKER), { ...{ descendants: true }, isSignal: true }] }], gridDetailTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => KitGridDetailTemplateDirective), { ...{
14445
+ ], 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 [preserveReadonlyFilters]=\"preserveReadonlyFilters()\"\n (viewChanged)=\"onGridViewChange()\"\n (viewSelectionChanged)=\"resetSelectedKeys.emit()\"\n ></kit-grid-views>\n <div class=\"grid-header-actions\">\n <ng-content select=\"[headerActions]\"></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 [gridCellValueTransformMap]=\"gridCellValueTransformMap()\" />\n @if (filters$ | async; as filters) {\n <kit-grid-filters-toggle [filters]=\"filters\"\n [hasTooltip]=\"searchIsOpen()\"\n [active]=\"filtersVisible()\"\n (clicked)=\"onFiltersToggle()\" />\n <kit-grid-column-manager class=\"grid-column-manager\"\n [showLabel]=\"!searchIsOpen()\" />\n }\n </div>\n @if (searchVisible()) {\n <div class=\"grid-header-search\">\n <kit-grid-search #search\n [disabled]=\"isSearchDisabled()\"\n (toggleSearch)=\"searchIsOpen.set($event)\" />\n </div>\n }\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]=\"pageable()\"\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 [selectedKeys]=\"selectedKeys()\"\n (selectionChanged)=\"onSelectionChange($event)\"\n (pageChanged)=\"onPageSizeChanged($event)\"\n (dataStateChanged)=\"onDataStateChange($event)\"\n ></kit-grid>\n } @else {\n <kit-skeleton-grid class=\"kit-skeleton-grid\"\n ></kit-skeleton-grid>\n }\n }\n <ng-content select=\"[footerActions]\"></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"] }]
14446
+ }], ctorParameters: () => [], propDecorators: { statesToReset: [{ type: i0.Input, args: [{ isSignal: true, alias: "statesToReset", required: false }] }], gridData: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridData", required: true }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], gridColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridColumns", required: true }] }], defaultViewName: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultViewName", required: true }] }], viewGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewGroup", required: true }] }], viewGroupConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewGroupConfig", required: true }] }], pdfOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "pdfOptions", required: true }] }], getExportedData: [{ type: i0.Input, args: [{ isSignal: true, alias: "getExportedData", required: true }] }], defaultSorting: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultSorting", required: false }] }], filterExcludedColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "filterExcludedColumns", required: false }] }], systemViews: [{ type: i0.Input, args: [{ isSignal: true, alias: "systemViews", required: false }] }], preserveReadonlyFilters: [{ type: i0.Input, args: [{ isSignal: true, alias: "preserveReadonlyFilters", required: false }] }], translationMap: [{ type: i0.Input, args: [{ isSignal: true, alias: "translationMap", required: false }] }], isDetailTemplateVisible: [{ type: i0.Input, args: [{ isSignal: true, alias: "isDetailTemplateVisible", required: false }] }], detailTemplateExpandDisableIf: [{ type: i0.Input, args: [{ isSignal: true, alias: "detailTemplateExpandDisableIf", required: false }] }], gridHasData: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridHasData", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], pagerInfoText: [{ type: i0.Input, args: [{ isSignal: true, alias: "pagerInfoText", required: false }] }], showBreadcrumbs: [{ type: i0.Input, args: [{ isSignal: true, alias: "showBreadcrumbs", required: false }] }], pageSizes: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSizes", required: false }] }], rowClassFn: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowClassFn", required: false }] }], showArchiveToggle: [{ type: i0.Input, args: [{ isSignal: true, alias: "showArchiveToggle", required: false }] }], showRefreshButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showRefreshButton", required: false }] }], pageable: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageable", required: false }] }], searchVisible: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchVisible", required: false }] }], selectedKeys: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedKeys", required: false }] }], gridCellValueTransformMap: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridCellValueTransformMap", required: false }] }], gridViewChanged: [{ type: i0.Output, args: ["gridViewChanged"] }], archiveModeChanged: [{ type: i0.Output, args: ["archiveModeChanged"] }], refreshButtonClicked: [{ type: i0.Output, args: ["refreshButtonClicked"] }], selectionChanged: [{ type: i0.Output, args: ["selectionChanged"] }], resetSelectedKeys: [{ type: i0.Output, args: ["resetSelectedKeys"] }], search: [{ type: i0.ViewChild, args: ['search', { ...{ read: KitGridSearchComponent }, isSignal: true }] }], kitGridComponent: [{ type: i0.ViewChild, args: [i0.forwardRef(() => KitGridComponent), { isSignal: true }] }], gridExportComponent: [{ type: i0.ViewChild, args: [i0.forwardRef(() => KitGridExportComponent), { isSignal: true }] }], columnMarkers: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => KIT_GRID_COLUMN_MARKER), { ...{ descendants: true }, isSignal: true }] }], gridDetailTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => KitGridDetailTemplateDirective), { ...{
14431
14447
  read: TemplateRef,
14432
14448
  }, isSignal: true }] }] } });
14433
14449