@indigina/ui-kit 1.1.506 → 1.1.508
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/indigina-ui-kit.mjs +241 -157
- package/fesm2022/indigina-ui-kit.mjs.map +1 -1
- package/package.json +1 -1
- package/types/indigina-ui-kit.d.ts +27 -16
|
@@ -2693,6 +2693,10 @@ class KitCheckboxComponent {
|
|
|
2693
2693
|
* Defines a particular state for the component
|
|
2694
2694
|
*/
|
|
2695
2695
|
this.state = KitCheckboxState.REGULAR;
|
|
2696
|
+
/**
|
|
2697
|
+
* Puts the checkbox into indeterminate (partially-selected) visual state
|
|
2698
|
+
*/
|
|
2699
|
+
this.indeterminate = input(false, ...(ngDevMode ? [{ debugName: "indeterminate" }] : /* istanbul ignore next */ []));
|
|
2696
2700
|
/**
|
|
2697
2701
|
* Occurs as soon as input checked state is changed
|
|
2698
2702
|
*/
|
|
@@ -2738,14 +2742,15 @@ class KitCheckboxComponent {
|
|
|
2738
2742
|
'checked': checkbox.checked,
|
|
2739
2743
|
'disabled': this.disabled,
|
|
2740
2744
|
'readonly': this.readonly,
|
|
2745
|
+
'indeterminate': this.indeterminate(),
|
|
2741
2746
|
};
|
|
2742
2747
|
}
|
|
2743
2748
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitCheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2744
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitCheckboxComponent, isStandalone: true, selector: "kit-checkbox", inputs: { label: "label", disabled: "disabled", checked: "checked", readonly: "readonly", state: "state", messageIcon: "messageIcon", messageText: "messageText" }, outputs: { changed: "changed" }, providers: [{
|
|
2749
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitCheckboxComponent, isStandalone: true, selector: "kit-checkbox", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: false, isRequired: false, transformFunction: null }, messageIcon: { classPropertyName: "messageIcon", publicName: "messageIcon", isSignal: false, isRequired: false, transformFunction: null }, messageText: { classPropertyName: "messageText", publicName: "messageText", isSignal: false, isRequired: false, transformFunction: null }, indeterminate: { classPropertyName: "indeterminate", publicName: "indeterminate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { changed: "changed" }, providers: [{
|
|
2745
2750
|
provide: NG_VALUE_ACCESSOR,
|
|
2746
2751
|
useExisting: forwardRef(() => KitCheckboxComponent),
|
|
2747
2752
|
multi: true,
|
|
2748
|
-
}], ngImport: i0, template: "<div class=\"kit-checkbox\">\n <label class=\"kit-checkbox-item {{ state }}\"\n [ngClass]=\"setCssClasses(checkbox)\"\n (click)=\"handleClick($event)\">\n <div class=\"kit-checkbox-input\">\n <input #checkbox\n kendoCheckBox\n type=\"checkbox\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"checked\"\n (change)=\"onInputStateChange($event)\" />\n <kit-svg-icon class=\"kit-checkbox-icon\"\n [icon]=\"checkIcon\"\n ></kit-svg-icon>\n </div>\n @if (label) {\n <span class=\"kit-checkbox-label\">{{ label }}</span>\n }\n </label>\n\n @if (messageText) {\n <kit-form-message [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-form-message>\n }\n</div>\n", styles: [".kit-checkbox-item{display:flex;align-items:center;cursor:pointer}.kit-checkbox-item.readonly{pointer-events:none;cursor:default}.kit-checkbox-item.disabled{cursor:default}.kit-checkbox-item.disabled .kit-checkbox-label{color:var(--ui-kit-color-grey-12)}.kit-checkbox-item.disabled.checked .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-13)}.kit-checkbox-item.disabled.checked .kit-checkbox-icon{stroke:var(--ui-kit-color-grey-12)}.kit-checkbox-item.checked .kit-checkbox-input{border-color:var(--ui-kit-color-main);background-color:var(--ui-kit-color-main)}.kit-checkbox-item.checked .kit-checkbox-input .kit-checkbox-icon{opacity:1}.kit-checkbox-item.danger .kit-checkbox-input{border-color:var(--ui-kit-color-red);background-color:var(--ui-kit-color-red-20)}.kit-checkbox-item.danger:hover .kit-checkbox-input{background-color:var(--ui-kit-color-red-20);border-color:var(--ui-kit-color-red)}.kit-checkbox-item.danger.disabled .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11)}.kit-checkbox-item.danger.checked .kit-checkbox-icon{stroke:var(--ui-kit-color-red)}.kit-checkbox-item.danger.checked.disabled .kit-checkbox-input{background-color:var(--ui-kit-color-red-20)}.kit-checkbox-item.danger.checked.disabled .kit-checkbox-icon{stroke:var(--ui-kit-color-grey-12)}.kit-checkbox-item.danger:focus-within .kit-checkbox-input{box-shadow:0 0 0 2px var(--ui-kit-color-red-20)}.kit-checkbox-item:hover:not(.readonly):not(.disabled) .kit-checkbox-input{border-color:var(--ui-kit-color-main)}.kit-checkbox-item:focus-within .kit-checkbox-input{box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-checkbox-input{display:flex;align-items:center;justify-content:center;border-radius:4px;background-color:var(--ui-kit-color-grey-13);border:1px solid var(--ui-kit-color-grey-11);width:16px;height:16px}.kit-checkbox-label{margin-left:8px;font-size:14px;color:var(--ui-kit-color-grey-10)}.kit-checkbox-icon{width:14px;height:14px;opacity:0;fill:none;stroke:var(--ui-kit-color-white)}.kit-checkbox .k-checkbox{opacity:0;width:auto;height:auto;border:none}\n"], dependencies: [{ kind: "ngmodule", type: LabelModule }, { kind: "ngmodule", type: CheckBoxModule }, { kind: "directive", type: i1$4.CheckBoxDirective, selector: "input[kendoCheckBox]", inputs: ["size", "rounded"] }, { kind: "component", type: KitFormMessageComponent, selector: "kit-form-message", inputs: ["icon", "message"] }, { kind: "component", type: KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$8.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2753
|
+
}], ngImport: i0, template: "<div class=\"kit-checkbox\">\n <label class=\"kit-checkbox-item {{ state }}\"\n [ngClass]=\"setCssClasses(checkbox)\"\n (click)=\"handleClick($event)\">\n <div class=\"kit-checkbox-input\">\n <input #checkbox\n kendoCheckBox\n type=\"checkbox\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"checked\"\n (change)=\"onInputStateChange($event)\" />\n <kit-svg-icon class=\"kit-checkbox-icon\"\n [icon]=\"checkIcon\"\n ></kit-svg-icon>\n </div>\n @if (label) {\n <span class=\"kit-checkbox-label\">{{ label }}</span>\n }\n </label>\n\n @if (messageText) {\n <kit-form-message [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-form-message>\n }\n</div>\n", styles: [".kit-checkbox-item{display:flex;align-items:center;cursor:pointer}.kit-checkbox-item.readonly{pointer-events:none;cursor:default}.kit-checkbox-item.disabled{cursor:default}.kit-checkbox-item.disabled .kit-checkbox-label{color:var(--ui-kit-color-grey-12)}.kit-checkbox-item.disabled.checked .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-13)}.kit-checkbox-item.disabled.checked .kit-checkbox-icon{stroke:var(--ui-kit-color-grey-12)}.kit-checkbox-item.checked .kit-checkbox-input{border-color:var(--ui-kit-color-main);background-color:var(--ui-kit-color-main)}.kit-checkbox-item.checked .kit-checkbox-input .kit-checkbox-icon{opacity:1}.kit-checkbox-item.indeterminate .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-checkbox-item.indeterminate .kit-checkbox-input:before{content:\"\";width:10px;height:2px;background-color:var(--ui-kit-color-main)}.kit-checkbox-item.indeterminate .kit-checkbox-input .kit-checkbox-icon{display:none}.kit-checkbox-item.danger .kit-checkbox-input{border-color:var(--ui-kit-color-red);background-color:var(--ui-kit-color-red-20)}.kit-checkbox-item.danger:hover .kit-checkbox-input{background-color:var(--ui-kit-color-red-20);border-color:var(--ui-kit-color-red)}.kit-checkbox-item.danger.disabled .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11)}.kit-checkbox-item.danger.checked .kit-checkbox-icon{stroke:var(--ui-kit-color-red)}.kit-checkbox-item.danger.checked.disabled .kit-checkbox-input{background-color:var(--ui-kit-color-red-20)}.kit-checkbox-item.danger.checked.disabled .kit-checkbox-icon{stroke:var(--ui-kit-color-grey-12)}.kit-checkbox-item.danger:focus-within .kit-checkbox-input{box-shadow:0 0 0 2px var(--ui-kit-color-red-20)}.kit-checkbox-item:hover:not(.readonly):not(.disabled) .kit-checkbox-input{border-color:var(--ui-kit-color-main)}.kit-checkbox-item:focus-within .kit-checkbox-input{box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-checkbox-input{display:flex;align-items:center;justify-content:center;border-radius:4px;background-color:var(--ui-kit-color-grey-13);border:1px solid var(--ui-kit-color-grey-11);width:16px;height:16px}.kit-checkbox-label{margin-left:8px;font-size:14px;color:var(--ui-kit-color-grey-10)}.kit-checkbox-icon{width:14px;height:14px;opacity:0;fill:none;stroke:var(--ui-kit-color-white)}.kit-checkbox .k-checkbox{opacity:0;width:auto;height:auto;border:none}\n"], dependencies: [{ kind: "ngmodule", type: LabelModule }, { kind: "ngmodule", type: CheckBoxModule }, { kind: "directive", type: i1$4.CheckBoxDirective, selector: "input[kendoCheckBox]", inputs: ["size", "rounded"] }, { kind: "component", type: KitFormMessageComponent, selector: "kit-form-message", inputs: ["icon", "message"] }, { kind: "component", type: KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$8.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
2749
2754
|
}
|
|
2750
2755
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitCheckboxComponent, decorators: [{
|
|
2751
2756
|
type: Component,
|
|
@@ -2760,7 +2765,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
|
|
|
2760
2765
|
KitSvgIconComponent,
|
|
2761
2766
|
FormsModule,
|
|
2762
2767
|
NgClass,
|
|
2763
|
-
], template: "<div class=\"kit-checkbox\">\n <label class=\"kit-checkbox-item {{ state }}\"\n [ngClass]=\"setCssClasses(checkbox)\"\n (click)=\"handleClick($event)\">\n <div class=\"kit-checkbox-input\">\n <input #checkbox\n kendoCheckBox\n type=\"checkbox\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"checked\"\n (change)=\"onInputStateChange($event)\" />\n <kit-svg-icon class=\"kit-checkbox-icon\"\n [icon]=\"checkIcon\"\n ></kit-svg-icon>\n </div>\n @if (label) {\n <span class=\"kit-checkbox-label\">{{ label }}</span>\n }\n </label>\n\n @if (messageText) {\n <kit-form-message [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-form-message>\n }\n</div>\n", styles: [".kit-checkbox-item{display:flex;align-items:center;cursor:pointer}.kit-checkbox-item.readonly{pointer-events:none;cursor:default}.kit-checkbox-item.disabled{cursor:default}.kit-checkbox-item.disabled .kit-checkbox-label{color:var(--ui-kit-color-grey-12)}.kit-checkbox-item.disabled.checked .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-13)}.kit-checkbox-item.disabled.checked .kit-checkbox-icon{stroke:var(--ui-kit-color-grey-12)}.kit-checkbox-item.checked .kit-checkbox-input{border-color:var(--ui-kit-color-main);background-color:var(--ui-kit-color-main)}.kit-checkbox-item.checked .kit-checkbox-input .kit-checkbox-icon{opacity:1}.kit-checkbox-item.danger .kit-checkbox-input{border-color:var(--ui-kit-color-red);background-color:var(--ui-kit-color-red-20)}.kit-checkbox-item.danger:hover .kit-checkbox-input{background-color:var(--ui-kit-color-red-20);border-color:var(--ui-kit-color-red)}.kit-checkbox-item.danger.disabled .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11)}.kit-checkbox-item.danger.checked .kit-checkbox-icon{stroke:var(--ui-kit-color-red)}.kit-checkbox-item.danger.checked.disabled .kit-checkbox-input{background-color:var(--ui-kit-color-red-20)}.kit-checkbox-item.danger.checked.disabled .kit-checkbox-icon{stroke:var(--ui-kit-color-grey-12)}.kit-checkbox-item.danger:focus-within .kit-checkbox-input{box-shadow:0 0 0 2px var(--ui-kit-color-red-20)}.kit-checkbox-item:hover:not(.readonly):not(.disabled) .kit-checkbox-input{border-color:var(--ui-kit-color-main)}.kit-checkbox-item:focus-within .kit-checkbox-input{box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-checkbox-input{display:flex;align-items:center;justify-content:center;border-radius:4px;background-color:var(--ui-kit-color-grey-13);border:1px solid var(--ui-kit-color-grey-11);width:16px;height:16px}.kit-checkbox-label{margin-left:8px;font-size:14px;color:var(--ui-kit-color-grey-10)}.kit-checkbox-icon{width:14px;height:14px;opacity:0;fill:none;stroke:var(--ui-kit-color-white)}.kit-checkbox .k-checkbox{opacity:0;width:auto;height:auto;border:none}\n"] }]
|
|
2768
|
+
], template: "<div class=\"kit-checkbox\">\n <label class=\"kit-checkbox-item {{ state }}\"\n [ngClass]=\"setCssClasses(checkbox)\"\n (click)=\"handleClick($event)\">\n <div class=\"kit-checkbox-input\">\n <input #checkbox\n kendoCheckBox\n type=\"checkbox\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [(ngModel)]=\"checked\"\n (change)=\"onInputStateChange($event)\" />\n <kit-svg-icon class=\"kit-checkbox-icon\"\n [icon]=\"checkIcon\"\n ></kit-svg-icon>\n </div>\n @if (label) {\n <span class=\"kit-checkbox-label\">{{ label }}</span>\n }\n </label>\n\n @if (messageText) {\n <kit-form-message [icon]=\"messageIcon\"\n [message]=\"messageText\"\n ></kit-form-message>\n }\n</div>\n", styles: [".kit-checkbox-item{display:flex;align-items:center;cursor:pointer}.kit-checkbox-item.readonly{pointer-events:none;cursor:default}.kit-checkbox-item.disabled{cursor:default}.kit-checkbox-item.disabled .kit-checkbox-label{color:var(--ui-kit-color-grey-12)}.kit-checkbox-item.disabled.checked .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-13)}.kit-checkbox-item.disabled.checked .kit-checkbox-icon{stroke:var(--ui-kit-color-grey-12)}.kit-checkbox-item.checked .kit-checkbox-input{border-color:var(--ui-kit-color-main);background-color:var(--ui-kit-color-main)}.kit-checkbox-item.checked .kit-checkbox-input .kit-checkbox-icon{opacity:1}.kit-checkbox-item.indeterminate .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-checkbox-item.indeterminate .kit-checkbox-input:before{content:\"\";width:10px;height:2px;background-color:var(--ui-kit-color-main)}.kit-checkbox-item.indeterminate .kit-checkbox-input .kit-checkbox-icon{display:none}.kit-checkbox-item.danger .kit-checkbox-input{border-color:var(--ui-kit-color-red);background-color:var(--ui-kit-color-red-20)}.kit-checkbox-item.danger:hover .kit-checkbox-input{background-color:var(--ui-kit-color-red-20);border-color:var(--ui-kit-color-red)}.kit-checkbox-item.danger.disabled .kit-checkbox-input{border-color:var(--ui-kit-color-grey-11)}.kit-checkbox-item.danger.checked .kit-checkbox-icon{stroke:var(--ui-kit-color-red)}.kit-checkbox-item.danger.checked.disabled .kit-checkbox-input{background-color:var(--ui-kit-color-red-20)}.kit-checkbox-item.danger.checked.disabled .kit-checkbox-icon{stroke:var(--ui-kit-color-grey-12)}.kit-checkbox-item.danger:focus-within .kit-checkbox-input{box-shadow:0 0 0 2px var(--ui-kit-color-red-20)}.kit-checkbox-item:hover:not(.readonly):not(.disabled) .kit-checkbox-input{border-color:var(--ui-kit-color-main)}.kit-checkbox-item:focus-within .kit-checkbox-input{box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-checkbox-input{display:flex;align-items:center;justify-content:center;border-radius:4px;background-color:var(--ui-kit-color-grey-13);border:1px solid var(--ui-kit-color-grey-11);width:16px;height:16px}.kit-checkbox-label{margin-left:8px;font-size:14px;color:var(--ui-kit-color-grey-10)}.kit-checkbox-icon{width:14px;height:14px;opacity:0;fill:none;stroke:var(--ui-kit-color-white)}.kit-checkbox .k-checkbox{opacity:0;width:auto;height:auto;border:none}\n"] }]
|
|
2764
2769
|
}], propDecorators: { label: [{
|
|
2765
2770
|
type: Input
|
|
2766
2771
|
}], disabled: [{
|
|
@@ -2775,7 +2780,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
|
|
|
2775
2780
|
type: Input
|
|
2776
2781
|
}], messageText: [{
|
|
2777
2782
|
type: Input
|
|
2778
|
-
}], changed: [{
|
|
2783
|
+
}], indeterminate: [{ type: i0.Input, args: [{ isSignal: true, alias: "indeterminate", required: false }] }], changed: [{
|
|
2779
2784
|
type: Output
|
|
2780
2785
|
}] } });
|
|
2781
2786
|
|
|
@@ -3596,7 +3601,7 @@ class KitCtaPanelConfirmationComponent {
|
|
|
3596
3601
|
this.confirmClicked.emit(this.form.value);
|
|
3597
3602
|
}
|
|
3598
3603
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitCtaPanelConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3599
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitCtaPanelConfirmationComponent, isStandalone: true, selector: "kit-cta-panel-confirmation", inputs: { data: "data", confirmButtonDisabled: "confirmButtonDisabled", dropdownListHeight: "dropdownListHeight", quitText: "quitText", confirmText: "confirmText" }, outputs: { quitClicked: "quitClicked", confirmClicked: "confirmClicked" }, ngImport: i0, template: "<div class=\"kit-cta-panel-confirmation\">\n <div class=\"confirmation-head\">\n @if (data?.icon) {\n <kit-svg-icon class=\"head-icon\"\n [icon]=\"data?.icon\"\n ></kit-svg-icon>\n }\n <div class=\"head-text\">\n <div class=\"head-title\">{{ data?.title }}</div>\n @if (data?.description) {\n <div class=\"head-description\">\n {{ data?.description }}\n </div>\n }\n </div>\n </div>\n <div class=\"confirmation-main\">\n <form class=\"confirmation-main-form\"\n [formGroup]=\"form\">\n @if (data?.dropdownItems) {\n <kit-dropdown\n formControlName=\"reason\"\n [defaultItem]=\"data?.defaultDropdownItem\"\n [label]=\"data?.dropdownLabel\"\n [items]=\"data?.dropdownItems\"\n [listHeight]=\"dropdownListHeight\"\n ></kit-dropdown>\n }\n\n @if (data?.checkboxLabel) {\n <kit-checkbox formControlName=\"checkbox\"\n [label]=\"data?.checkboxLabel\"\n ></kit-checkbox>\n }\n </form>\n </div>\n <kit-cta-panel-action [disabled]=\"data?.dropdownItems && form.invalid\"\n [quitText]=\"quitText\"\n [confirmText]=\"confirmText\"\n (quitClicked)=\"quitClicked.emit()\"\n (confirmClicked)=\"onConfirmButtonClick()\"\n ></kit-cta-panel-action>\n</div>\n", styles: [".display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}:root{--ui-kit-header-height: 86px;--ui-kit-sidebar-collapsed-width: 56px;--ui-kit-sidebar-expanded-width: 256px;--ui-kit-layout-gap: 25px}.kit-cta-panel-confirmation{padding:15px 20px;border:2px solid #00b0ad;background:#f8f9fe;line-height:1.26}.kit-cta-panel-confirmation .confirmation-head{display:flex;margin-bottom:24px}.kit-cta-panel-confirmation .head-icon{width:24px;height:24px;margin-right:20px;flex-shrink:0;stroke:#00b0ad;fill:none}.kit-cta-panel-confirmation .head-icon .reset-icon{stroke:none;fill:#00b0ad}.kit-cta-panel-confirmation .head-title{color:#002a3a;font-weight:700}.kit-cta-panel-confirmation .head-description{margin-top:24px;color:#000}.kit-cta-panel-confirmation .confirmation-main{margin-bottom:24px}.kit-cta-panel-confirmation .confirmation-main-form{display:flex;flex-direction:column;gap:8px}\n"], dependencies: [{ kind: "component", type: KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "component", type: KitDropdownComponent, selector: "kit-dropdown", inputs: ["items", "selectedItem", "label", "disabled", "messageIcon", "messageText", "invalid", "defaultItem", "listHeight", "hideDefaultItem", "toggleIcon", "popupSettings", "isValuePrimitive", "footerTemplate", "noDataTemplate", "readonly", "size"], outputs: ["selectedItemChange", "disabledChange", "selected"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: KitCtaPanelActionComponent, selector: "kit-cta-panel-action", inputs: ["disabled", "confirmText", "quitText"], outputs: ["quitClicked", "confirmClicked"] }, { kind: "component", type: KitCheckboxComponent, selector: "kit-checkbox", inputs: ["label", "disabled", "checked", "readonly", "state", "messageIcon", "messageText"], outputs: ["changed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
3604
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitCtaPanelConfirmationComponent, isStandalone: true, selector: "kit-cta-panel-confirmation", inputs: { data: "data", confirmButtonDisabled: "confirmButtonDisabled", dropdownListHeight: "dropdownListHeight", quitText: "quitText", confirmText: "confirmText" }, outputs: { quitClicked: "quitClicked", confirmClicked: "confirmClicked" }, ngImport: i0, template: "<div class=\"kit-cta-panel-confirmation\">\n <div class=\"confirmation-head\">\n @if (data?.icon) {\n <kit-svg-icon class=\"head-icon\"\n [icon]=\"data?.icon\"\n ></kit-svg-icon>\n }\n <div class=\"head-text\">\n <div class=\"head-title\">{{ data?.title }}</div>\n @if (data?.description) {\n <div class=\"head-description\">\n {{ data?.description }}\n </div>\n }\n </div>\n </div>\n <div class=\"confirmation-main\">\n <form class=\"confirmation-main-form\"\n [formGroup]=\"form\">\n @if (data?.dropdownItems) {\n <kit-dropdown\n formControlName=\"reason\"\n [defaultItem]=\"data?.defaultDropdownItem\"\n [label]=\"data?.dropdownLabel\"\n [items]=\"data?.dropdownItems\"\n [listHeight]=\"dropdownListHeight\"\n ></kit-dropdown>\n }\n\n @if (data?.checkboxLabel) {\n <kit-checkbox formControlName=\"checkbox\"\n [label]=\"data?.checkboxLabel\"\n ></kit-checkbox>\n }\n </form>\n </div>\n <kit-cta-panel-action [disabled]=\"data?.dropdownItems && form.invalid\"\n [quitText]=\"quitText\"\n [confirmText]=\"confirmText\"\n (quitClicked)=\"quitClicked.emit()\"\n (confirmClicked)=\"onConfirmButtonClick()\"\n ></kit-cta-panel-action>\n</div>\n", styles: [".display-flex{display:flex}.flex-align-items-center{align-items:center}.flex-justify-content-center{justify-content:center}.flex-justify-content-end{justify-content:flex-end}.display-block{display:block}div[kendowatermarkoverlay]{display:none}:root{--ui-kit-header-height: 86px;--ui-kit-sidebar-collapsed-width: 56px;--ui-kit-sidebar-expanded-width: 256px;--ui-kit-layout-gap: 25px}.kit-cta-panel-confirmation{padding:15px 20px;border:2px solid #00b0ad;background:#f8f9fe;line-height:1.26}.kit-cta-panel-confirmation .confirmation-head{display:flex;margin-bottom:24px}.kit-cta-panel-confirmation .head-icon{width:24px;height:24px;margin-right:20px;flex-shrink:0;stroke:#00b0ad;fill:none}.kit-cta-panel-confirmation .head-icon .reset-icon{stroke:none;fill:#00b0ad}.kit-cta-panel-confirmation .head-title{color:#002a3a;font-weight:700}.kit-cta-panel-confirmation .head-description{margin-top:24px;color:#000}.kit-cta-panel-confirmation .confirmation-main{margin-bottom:24px}.kit-cta-panel-confirmation .confirmation-main-form{display:flex;flex-direction:column;gap:8px}\n"], dependencies: [{ kind: "component", type: KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "component", type: KitDropdownComponent, selector: "kit-dropdown", inputs: ["items", "selectedItem", "label", "disabled", "messageIcon", "messageText", "invalid", "defaultItem", "listHeight", "hideDefaultItem", "toggleIcon", "popupSettings", "isValuePrimitive", "footerTemplate", "noDataTemplate", "readonly", "size"], outputs: ["selectedItemChange", "disabledChange", "selected"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: KitCtaPanelActionComponent, selector: "kit-cta-panel-action", inputs: ["disabled", "confirmText", "quitText"], outputs: ["quitClicked", "confirmClicked"] }, { kind: "component", type: KitCheckboxComponent, selector: "kit-checkbox", inputs: ["label", "disabled", "checked", "readonly", "state", "messageIcon", "messageText", "indeterminate"], outputs: ["changed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
3600
3605
|
}
|
|
3601
3606
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitCtaPanelConfirmationComponent, decorators: [{
|
|
3602
3607
|
type: Component,
|
|
@@ -5644,6 +5649,29 @@ class KitGridComponent {
|
|
|
5644
5649
|
};
|
|
5645
5650
|
}, ...(ngDevMode ? [{ debugName: "selectableSettings" }] : /* istanbul ignore next */ []));
|
|
5646
5651
|
this.isRadioColumn = computed(() => this.checkboxColumn()?.type() === KitGridCheckboxColumnType.RADIO, ...(ngDevMode ? [{ debugName: "isRadioColumn" }] : /* istanbul ignore next */ []));
|
|
5652
|
+
this.currentPageVisibleRowKeys = computed(() => {
|
|
5653
|
+
const items = this.getCurrentPageItems();
|
|
5654
|
+
return new Set(items
|
|
5655
|
+
.filter((item) => !this.isCheckboxHidden(item))
|
|
5656
|
+
.map((item) => this.getRowKey(item)));
|
|
5657
|
+
}, ...(ngDevMode ? [{ debugName: "currentPageVisibleRowKeys" }] : /* istanbul ignore next */ []));
|
|
5658
|
+
this.isHeaderCheckboxDisabled = computed(() => this.currentPageVisibleRowKeys().size === 0, ...(ngDevMode ? [{ debugName: "isHeaderCheckboxDisabled" }] : /* istanbul ignore next */ []));
|
|
5659
|
+
this.headerCheckboxState = computed(() => {
|
|
5660
|
+
if (this.isHeaderCheckboxDisabled()) {
|
|
5661
|
+
return 'unchecked';
|
|
5662
|
+
}
|
|
5663
|
+
const visibleRowsCount = this.currentPageVisibleRowKeys().size;
|
|
5664
|
+
const selectedKeys = this.selectedKeys();
|
|
5665
|
+
const selectedVisibleRowsCount = selectedKeys.filter((key) => this.currentPageVisibleRowKeys().has(key)).length;
|
|
5666
|
+
const hasSelectionOutsideCurrentPage = selectedKeys.some((key) => !this.currentPageVisibleRowKeys().has(key));
|
|
5667
|
+
if (selectedVisibleRowsCount === visibleRowsCount) {
|
|
5668
|
+
return 'checked';
|
|
5669
|
+
}
|
|
5670
|
+
if (selectedVisibleRowsCount > 0 || hasSelectionOutsideCurrentPage) {
|
|
5671
|
+
return 'indeterminate';
|
|
5672
|
+
}
|
|
5673
|
+
return 'unchecked';
|
|
5674
|
+
}, ...(ngDevMode ? [{ debugName: "headerCheckboxState" }] : /* istanbul ignore next */ []));
|
|
5647
5675
|
this.expandedRows = [];
|
|
5648
5676
|
this.getCssRowClass = (context) => {
|
|
5649
5677
|
const expanded = this.expandedRows.includes(context.dataItem);
|
|
@@ -5703,6 +5731,53 @@ class KitGridComponent {
|
|
|
5703
5731
|
onCellClick(event) {
|
|
5704
5732
|
this.cellClicked.emit(event);
|
|
5705
5733
|
}
|
|
5734
|
+
onHeaderCheckboxChanged(checked) {
|
|
5735
|
+
const visibleRows = this.getVisiblePageRows();
|
|
5736
|
+
if (!visibleRows.length) {
|
|
5737
|
+
return;
|
|
5738
|
+
}
|
|
5739
|
+
const previousSelectedSet = new Set(this.selectedKeys());
|
|
5740
|
+
const nextSelectedSet = new Set(previousSelectedSet);
|
|
5741
|
+
for (const row of visibleRows) {
|
|
5742
|
+
if (checked) {
|
|
5743
|
+
nextSelectedSet.add(row.key);
|
|
5744
|
+
}
|
|
5745
|
+
else {
|
|
5746
|
+
nextSelectedSet.delete(row.key);
|
|
5747
|
+
}
|
|
5748
|
+
}
|
|
5749
|
+
const nextSelectedKeys = this.limitSelectedKeys(Array.from(nextSelectedSet));
|
|
5750
|
+
const limitedSelectedSet = new Set(nextSelectedKeys);
|
|
5751
|
+
this.selectedKeys.set(nextSelectedKeys);
|
|
5752
|
+
const selectionRows = visibleRows.reduce((accumulator, row) => {
|
|
5753
|
+
const wasSelected = previousSelectedSet.has(row.key);
|
|
5754
|
+
const isSelected = limitedSelectedSet.has(row.key);
|
|
5755
|
+
if (!wasSelected && isSelected) {
|
|
5756
|
+
accumulator.selectedRows.push({
|
|
5757
|
+
dataItem: row.dataItem,
|
|
5758
|
+
index: row.index,
|
|
5759
|
+
});
|
|
5760
|
+
}
|
|
5761
|
+
else if (wasSelected && !isSelected) {
|
|
5762
|
+
accumulator.deselectedRows.push({
|
|
5763
|
+
dataItem: row.dataItem,
|
|
5764
|
+
index: row.index,
|
|
5765
|
+
});
|
|
5766
|
+
}
|
|
5767
|
+
return accumulator;
|
|
5768
|
+
}, {
|
|
5769
|
+
selectedRows: [],
|
|
5770
|
+
deselectedRows: [],
|
|
5771
|
+
});
|
|
5772
|
+
if (selectionRows.selectedRows.length || selectionRows.deselectedRows.length) {
|
|
5773
|
+
this.selectionChanged.emit({
|
|
5774
|
+
selectedRows: selectionRows.selectedRows,
|
|
5775
|
+
deselectedRows: selectionRows.deselectedRows,
|
|
5776
|
+
ctrlKey: false,
|
|
5777
|
+
shiftKey: false,
|
|
5778
|
+
});
|
|
5779
|
+
}
|
|
5780
|
+
}
|
|
5706
5781
|
isRowSelectable(context) {
|
|
5707
5782
|
if (this.isCheckboxHidden(context.dataItem)) {
|
|
5708
5783
|
return false;
|
|
@@ -5810,6 +5885,35 @@ class KitGridComponent {
|
|
|
5810
5885
|
}
|
|
5811
5886
|
return keys.filter((key) => !hiddenKeys.has(key));
|
|
5812
5887
|
}
|
|
5888
|
+
getCurrentPageItems() {
|
|
5889
|
+
const dataBindingItems = this.renderedGridDataBinding();
|
|
5890
|
+
if (dataBindingItems) {
|
|
5891
|
+
return this.getCurrentPageItemsFromCollection(dataBindingItems);
|
|
5892
|
+
}
|
|
5893
|
+
const dataItems = this.renderedData();
|
|
5894
|
+
if (!dataItems) {
|
|
5895
|
+
return [];
|
|
5896
|
+
}
|
|
5897
|
+
if (Array.isArray(dataItems)) {
|
|
5898
|
+
return this.getCurrentPageItemsFromCollection(dataItems);
|
|
5899
|
+
}
|
|
5900
|
+
return dataItems.data;
|
|
5901
|
+
}
|
|
5902
|
+
getCurrentPageItemsFromCollection(items) {
|
|
5903
|
+
if (!this.pageable || !this.pageSize) {
|
|
5904
|
+
return items;
|
|
5905
|
+
}
|
|
5906
|
+
return items.slice(this.skip(), this.skip() + this.pageSize);
|
|
5907
|
+
}
|
|
5908
|
+
getVisiblePageRows() {
|
|
5909
|
+
return this.getCurrentPageItems()
|
|
5910
|
+
.filter((item) => !this.isCheckboxHidden(item))
|
|
5911
|
+
.map((item, pageIndex) => ({
|
|
5912
|
+
dataItem: item,
|
|
5913
|
+
key: this.getRowKey(item),
|
|
5914
|
+
index: this.skip() + pageIndex,
|
|
5915
|
+
}));
|
|
5916
|
+
}
|
|
5813
5917
|
getDataCollection() {
|
|
5814
5918
|
const gridDataBinding = this.renderedGridDataBinding();
|
|
5815
5919
|
if (gridDataBinding) {
|
|
@@ -5950,13 +6054,14 @@ class KitGridComponent {
|
|
|
5950
6054
|
{ provide: L10N_PREFIX, useValue: '' },
|
|
5951
6055
|
PagerContextService,
|
|
5952
6056
|
PagerNavigationService,
|
|
5953
|
-
], queries: [{ propertyName: "columnMarkersContent", predicate: KIT_GRID_COLUMN_MARKER, isSignal: true }], viewQueries: [{ propertyName: "dragTargetContainer", first: true, predicate: DragTargetContainerDirective, descendants: true, isSignal: true }, { propertyName: "dropTargetContainer", first: true, predicate: DropTargetContainerDirective, descendants: true, isSignal: true }, { propertyName: "gridComponent", first: true, predicate: GridComponent, descendants: true }], ngImport: i0, template: "@if (data()) {\n <div class=\"kit-grid\"\n kendoDragTargetContainer\n kendoDropTargetContainer\n dragTargetFilter=\".k-master-row\"\n dropTargetFilter=\".k-master-row\"\n dragHandle=\"tr\"\n [dragDisabled]=\"!rowReorderable()\"\n [dropDisabled]=\"!rowReorderable()\"\n [dragData]=\"dragData\"\n [hint]=\"{ hintClass: 'kit-grid-row-hint' }\"\n (onDragOver)=\"onRowDragOver($event)\"\n (onRelease)=\"dropIndicator.set(null)\"\n (onDrop)=\"onDrop($event)\">\n <kendo-grid kendoGridExpandDetailsBy\n [class.kit-grid--radio]=\"isRadioColumn()\"\n [data]=\"renderedData()\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [skip]=\"skip()\"\n [loading]=\"loading()\"\n [resizable]=\"resizable()\"\n [(expandedDetailKeys)]=\"expandedRows\"\n [kendoGridSelectBy]=\"selectByField() || ''\"\n [isRowSelectable]=\"isRowSelectable.bind(this)\"\n [selectable]=\"selectableSettings()\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (sortChange)=\"onSortChange($event)\"\n (pageChange)=\"onPageChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\"\n [selectedKeys]=\"selectedKeys()\"\n (selectedKeysChange)=\"selectedKeys.set(limitSelectedKeys($event))\"\n (selectionChange)=\"selectionChanged.emit($event)\"\n (excelExport)=\"excelExport.emit($event)\">\n @for (column of columnMarkers(); track $index) {\n @if (isCheckboxColumn(column)) {\n <kendo-grid-checkbox-column [width]=\"column.width()\"\n [showSelectAll]=\"!isRadioColumn() && column.showSelectAll()\">\n </kendo-grid-checkbox-column>\n } @else {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate\n let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (gridDetailTemplate()) {\n <ng-template kendoGridDetailTemplate\n let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"gridDetailTemplate(); context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n }\n <kendo-grid-excel [fileName]=\"pdfOptions.fileName\" />\n <kendo-grid-pdf [fileName]=\"pdfOptions.fileName\"\n [allPages]=\"pdfOptions.allPages\"\n [paperSize]=\"pdfOptions.paperSize\"\n [scale]=\"pdfOptions.scale\"\n [landscape]=\"pdfOptions.landscape\"\n [repeatHeaders]=\"true\" />\n\n <ng-container *ngTemplateOutlet=\"pagerTemplate\" />\n <kendo-grid-messages [pagerItems]=\"pagerInfoText()\"\n [pagerOf]=\"'of'\"\n [noRecords]=\"noRecordsText()\">\n </kendo-grid-messages>\n </kendo-grid>\n </div>\n}\n\n@if (gridDataBinding()) {\n <div class=\"kit-grid\"\n kendoDragTargetContainer\n kendoDropTargetContainer\n dragTargetFilter=\".k-master-row\"\n dropTargetFilter=\".k-master-row\"\n dragHandle=\"tr\"\n [dragDisabled]=\"!rowReorderable()\"\n [dropDisabled]=\"!rowReorderable()\"\n [dragData]=\"dragData\"\n [hint]=\"{ hintClass: 'kit-grid-row-hint' }\"\n (onDragOver)=\"onRowDragOver($event)\"\n (onRelease)=\"dropIndicator.set(null)\"\n (onDrop)=\"onDrop($event)\">\n <kendo-grid kendoGridExpandDetailsBy\n [class.kit-grid--radio]=\"isRadioColumn()\"\n [kendoGridBinding]=\"renderedGridDataBinding()\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [skip]=\"skip()\"\n [loading]=\"loading()\"\n [resizable]=\"resizable()\"\n [(expandedDetailKeys)]=\"expandedRows\"\n [kendoGridSelectBy]=\"selectByField() || ''\"\n [isRowSelectable]=\"isRowSelectable.bind(this)\"\n [selectable]=\"selectableSettings()\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (pageChange)=\"onPageChange($event)\"\n (sortChange)=\"onSortChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\"\n [selectedKeys]=\"selectedKeys()\"\n (selectedKeysChange)=\"selectedKeys.set(limitSelectedKeys($event))\"\n (selectionChange)=\"selectionChanged.emit($event)\"\n (excelExport)=\"excelExport.emit($event)\">\n @for (column of columnMarkers(); track $index) {\n @if (isCheckboxColumn(column)) {\n <kendo-grid-checkbox-column [width]=\"column.width()\"\n [showSelectAll]=\"!isRadioColumn() && column.showSelectAll()\">\n </kendo-grid-checkbox-column>\n } @else {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate\n let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (gridDetailTemplate()) {\n <ng-template kendoGridDetailTemplate\n let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"gridDetailTemplate(); context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n }\n <kendo-grid-excel [fileName]=\"pdfOptions.fileName\" />\n <kendo-grid-pdf [fileName]=\"pdfOptions.fileName\"\n [allPages]=\"pdfOptions.allPages\"\n [paperSize]=\"pdfOptions.paperSize\"\n [scale]=\"pdfOptions.scale\"\n [landscape]=\"pdfOptions.landscape\"\n [repeatHeaders]=\"true\" />\n\n <ng-container *ngTemplateOutlet=\"pagerTemplate\" />\n <kendo-grid-messages pagerOf=\"of\"\n [pagerItems]=\"pagerInfoText()\"\n [noRecords]=\"noRecordsText()\">\n </kendo-grid-messages>\n </kendo-grid>\n </div>\n}\n\n<ng-template #columnHeaderTemplate\n let-column>\n <div class=\"grid-title\"\n [class.sortable]=\"isColumnSortable(column)\">\n @if (column.titleIcon) {\n <kit-svg-icon class=\"grid-title-icon\"\n [icon]=\"column.titleIcon\"\n [ngClass]=\"column.titleIconType\"\n ></kit-svg-icon>\n }\n\n <div class=\"grid-title-text\">\n {{ column.title }}\n </div>\n\n @if (sortable && column.sortable) {\n @switch (getSortingDirection(column.field)) {\n @case (kitSortDirection.ASC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"kitSvgIcon.SORT_ASCENDING\"\n ></kit-svg-icon>\n }\n @case (kitSortDirection.DESC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"kitSvgIcon.SORT_DESCENDING\"\n ></kit-svg-icon>\n }\n }\n }\n </div>\n</ng-template>\n\n<ng-template #footerTemplate\n let-column>\n @if (columns(); as columns) {\n @if (footerTitle && column === columns[0]) {\n {{ footerTitle }}\n } @else {\n {{ footerData?.[column.field] || '' }}\n }\n }\n</ng-template>\n\n<ng-template #pagerTemplate\n kendoPagerTemplate>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n</ng-template>\n", styles: [".kit-grid{height:100%}.kit-grid .grid-title{display:flex;align-items:center;gap:8px;flex:1;line-height:1;min-width:0}.kit-grid .grid-title-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-grid .grid-title-icon.fill{fill:var(--ui-kit-color-grey-12);stroke:none}.kit-grid .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-grid .grid-title-text{font-weight:500;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid .grid-title-sort-icon{display:block;margin-left:auto;width:16px;height:16px;fill:var(--ui-kit-color-grey-12)}.kit-grid .grid-title.sortable{cursor:pointer}.kit-grid ::ng-deep .k-grid{border:none;background:none;max-height:100%}.kit-grid ::ng-deep .k-grid-table{color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400}.kit-grid ::ng-deep .k-grid-header{padding:0!important;border:none}.kit-grid ::ng-deep .k-grid-footer{padding:0!important}.kit-grid ::ng-deep .k-grid-content{overflow-y:auto}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar{height:8px;width:8px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-12);border-radius:4px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb:hover{background-color:var(--ui-kit-color-grey-18)}.kit-grid ::ng-deep .k-table{margin:0}.kit-grid ::ng-deep .k-table-th{padding:8px 0;border:none;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-15);box-shadow:none}.kit-grid ::ng-deep .k-table-th .k-cell-inner{margin:0}.kit-grid ::ng-deep .k-table-th .k-cell-inner .k-link{padding:0 8px;border-right:1px solid var(--ui-kit-color-grey-11);cursor:default}.kit-grid ::ng-deep .k-table-th .k-sort-icon{display:none}.kit-grid ::ng-deep .k-table-th .k-sort-order{margin-left:2px;color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted{color:var(--ui-kit-color-main);border-bottom:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.fill{fill:var(--ui-kit-color-main);stroke:none}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-sort-icon{fill:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-row:not(.k-detail-row):hover,.kit-grid ::ng-deep .k-table-row:hover{background:none}.kit-grid ::ng-deep .k-table-row.k-state-selected,.kit-grid ::ng-deep .k-table-row.k-selected{background:none}.kit-grid ::ng-deep .k-table-row.k-state-selected .k-table-td,.kit-grid ::ng-deep .k-table-row.k-selected .k-table-td{background:none;box-shadow:none}.kit-grid ::ng-deep .k-table-row .k-table-td{border-bottom-width:1px;box-shadow:none}.kit-grid ::ng-deep .k-table-alt-row{background:none}.kit-grid ::ng-deep .k-table-td{padding:12px 8px;border-color:var(--ui-kit-color-grey-11);border-bottom-width:1px;background:var(--ui-kit-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid ::ng-deep .k-table-td:first-child{border-inline-start-width:1px}.kit-grid ::ng-deep .k-checkbox-wrap{display:flex;align-items:center;justify-content:center}.kit-grid ::ng-deep .k-checkbox{width:16px;height:16px;border-radius:4px;border:1px solid var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-checkbox.k-indeterminate{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:hover:not(:disabled){border-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:focus,.kit-grid ::ng-deep .k-checkbox.k-focus{box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-grid ::ng-deep .k-checkbox:checked,.kit-grid ::ng-deep .k-checkbox.k-checked{border-color:var(--ui-kit-color-main);background-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:checked:disabled,.kit-grid ::ng-deep .k-checkbox.k-checked:disabled{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-checkbox:disabled{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-master-row .k-hierarchy-cell{padding:12px 8px}.kit-grid ::ng-deep .k-master-row.drag-insert-before .k-table-td{box-shadow:inset 0 2px 0 0 var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-master-row.drag-insert-after .k-table-td{box-shadow:inset 0 -2px 0 0 var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-master-row.expanded .k-table-td{color:var(--ui-kit-color-main);border-bottom-color:var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-master-row.expanded .k-icon:before{color:var(--ui-kit-color-main);transform:rotate(90deg)}.kit-grid ::ng-deep .k-detail-row>.k-table-td{border-bottom:1px solid var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-detail-row .k-detail-cell{padding:0}.kit-grid ::ng-deep .k-detail-row .k-pager{margin:0;padding:20px 0;justify-content:flex-start;background:var(--ui-kit-color-white)}.kit-grid ::ng-deep .k-grid-norecords{text-align:left}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon{display:flex;align-items:center;justify-content:center;font-family:WebComponentsIcons,sans-serif;font-size:22px}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:before{content:\"\\e005\";color:var(--ui-kit-color-grey-14);transform:rotate(0);transition:transform .2s ease}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:hover:before{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon svg{display:none}.kit-grid ::ng-deep .k-pager{display:flex;justify-content:flex-end;margin-top:20px;padding:2px 0;color:var(--ui-kit-color-grey-10);border:none;background:none}.kit-grid ::ng-deep .k-pager:focus{box-shadow:none}.kit-grid ::ng-deep .k-pager-numbers{gap:8px}.kit-grid ::ng-deep .k-pager-numbers-wrap{gap:8px}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button{width:32px;height:32px;color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400;border-radius:6px;transition:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:before{opacity:1;background:none;transition:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:after,.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:before{display:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-selected{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-selected:before{border:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:not(.k-selected):hover{background-color:var(--ui-kit-color-grey-11)!important}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-disabled{color:var(--ui-kit-color-grey-12)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button-icon:before{content:\"\";display:flex;width:14px;height:14px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;background-color:currentcolor}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-left:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.99976 10.3596L8.99976 9.48071C8.99976 9.42094 8.97046 9.36469 8.92241 9.32954L4.33335 6.00024L8.92241 2.67094C8.97046 2.63579 8.99976 2.57954 8.99976 2.51977L8.99976 1.64086C8.99976 1.56469 8.91304 1.52016 8.85093 1.56469L3.15444 5.69672C2.94819 5.84673 2.94819 6.15376 3.15444 6.30258L8.85093 10.4346C8.91304 10.4803 8.99976 10.4358 8.99976 10.3596Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.99976 10.3596L8.99976 9.48071C8.99976 9.42094 8.97046 9.36469 8.92241 9.32954L4.33335 6.00024L8.92241 2.67094C8.97046 2.63579 8.99976 2.57954 8.99976 2.51977L8.99976 1.64086C8.99976 1.56469 8.91304 1.52016 8.85093 1.56469L3.15444 5.69672C2.94819 5.84673 2.94819 6.15376 3.15444 6.30258L8.85093 10.4346C8.91304 10.4803 8.99976 10.4358 8.99976 10.3596Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-right:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99976 1.64041L2.99976 2.51932C2.99976 2.57909 3.02905 2.63534 3.0771 2.67049L7.66616 5.99979L3.0771 9.32909C3.02905 9.36424 2.99976 9.42049 2.99976 9.48026L2.99976 10.3592C2.99976 10.4353 3.08647 10.4799 3.14858 10.4353L8.84507 6.30331C9.05132 6.15331 9.05132 5.84627 8.84507 5.69745L3.14858 1.56541C3.08647 1.51971 2.99976 1.56424 2.99976 1.64041Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99976 1.64041L2.99976 2.51932C2.99976 2.57909 3.02905 2.63534 3.0771 2.67049L7.66616 5.99979L3.0771 9.32909C3.02905 9.36424 2.99976 9.42049 2.99976 9.48026L2.99976 10.3592C2.99976 10.4353 3.08647 10.4799 3.14858 10.4353L8.84507 6.30331C9.05132 6.15331 9.05132 5.84627 8.84507 5.69745L3.14858 1.56541C3.08647 1.51971 2.99976 1.56424 2.99976 1.64041Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-to-left:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1' y1='1' x2='1' y2='11' stroke='black' stroke-width='1'/%3E%3Cpath d='M9 10.36L9 9.48C9 9.42 8.97 9.36 8.92 9.33L4.33 6L8.92 2.67C8.97 2.64 9 2.58 9 2.52L9 1.64C9 1.56 8.91 1.52 8.85 1.56L3.15 5.7C2.95 5.85 2.95 6.15 3.15 6.3L8.85 10.43C8.91 10.48 9 10.44 9 10.36Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1' y1='1' x2='1' y2='11' stroke='black' stroke-width='1'/%3E%3Cpath d='M9 10.36L9 9.48C9 9.42 8.97 9.36 8.92 9.33L4.33 6L8.92 2.67C8.97 2.64 9 2.58 9 2.52L9 1.64C9 1.56 8.91 1.52 8.85 1.56L3.15 5.7C2.95 5.85 2.95 6.15 3.15 6.3L8.85 10.43C8.91 10.48 9 10.44 9 10.36Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-to-right:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 1.64L3 2.52C3 2.58 3.03 2.64 3.08 2.67L7.67 6L3.08 9.33C3.03 9.36 3 9.42 3 9.48L3 10.36C3 10.44 3.09 10.48 3.15 10.43L8.85 6.3C9.05 6.15 9.05 5.85 8.85 5.7L3.15 1.56C3.09 1.52 3 1.56 3 1.64Z' fill='black'/%3E%3Cline x1='11' y1='1' x2='11' y2='11' stroke='black' stroke-width='1'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 1.64L3 2.52C3 2.58 3.03 2.64 3.08 2.67L7.67 6L3.08 9.33C3.03 9.36 3 9.42 3 9.48L3 10.36C3 10.44 3.09 10.48 3.15 10.43L8.85 6.3C9.05 6.15 9.05 5.85 8.85 5.7L3.15 1.56C3.09 1.52 3 1.56 3 1.64Z' fill='black'/%3E%3Cline x1='11' y1='1' x2='11' y2='11' stroke='black' stroke-width='1'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-nav{width:32px;height:32px;border-radius:6px}.kit-grid ::ng-deep .k-pager-nav:before,.kit-grid ::ng-deep .k-pager-nav:after{display:none!important}.kit-grid ::ng-deep .k-pager-nav:not(.k-disabled):hover{background:var(--ui-kit-color-grey-11)!important}.kit-grid ::ng-deep .k-pager-info{flex:initial;border-radius:8px;background-color:#fff;padding:5px 16px}.kit-grid ::ng-deep .k-pager .k-button-icon svg{display:none}.kit-grid ::ng-deep .k-grid-aria-root{position:relative}.kit-grid ::ng-deep .k-loading-color{background:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .expand-disabled .k-hierarchy-cell a{pointer-events:none;opacity:.3}.kit-grid ::ng-deep .checkbox-hidden .k-checkbox-wrap{visibility:hidden}.kit-grid ::ng-deep .k-picker{height:32px;border-radius:4px;border:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-white)}.kit-grid ::ng-deep .k-picker:hover{border-color:var(--ui-kit-color-hover)}.kit-grid ::ng-deep .k-picker.k-focus{border:1px solid var(--ui-kit-color-main);box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-grid ::ng-deep .k-picker[aria-expanded=true] .k-svg-i-caret-alt-down:before{transform:rotate(180deg)}.kit-grid ::ng-deep .k-picker .k-svg-i-caret-alt-down:before{content:\"\\e015\";color:var(--ui-kit-color-grey-12);font-family:WebComponentsIcons,sans-serif}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox{border-radius:50%}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:after{content:\"\";display:block;width:8px;height:8px;border-radius:50%;background-color:transparent;margin:auto;position:absolute;inset:0}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked{background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked:after,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked:after{background-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked:disabled:after,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked:disabled:after{background-color:var(--ui-kit-color-grey-11)}::ng-deep .kit-grid-row-hint{overflow:hidden;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;background:var(--ui-kit-color-white);box-shadow:0 10px 24px #11182724;z-index:10002}::ng-deep .kit-grid-row-hint .k-table-td{padding:10px 8px;border-color:var(--ui-kit-color-grey-11);color:var(--ui-kit-color-grey-10);background:var(--ui-kit-color-white)}::ng-deep .kit-grid.k-grid:has(.k-grid-norecords) .k-pager-numbers-wrap{display:none}::ng-deep .k-animation-container .k-list-item.k-selected{background-color:var(--ui-kit-color-main);color:var(--ui-kit-color-white)}::ng-deep .k-animation-container .k-list-item:hover:not(.k-selected){color:var(--ui-kit-color-main)}\n"], dependencies: [{ kind: "ngmodule", type: GridModule }, { kind: "component", type: i1$d.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "adaptiveMode", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "gridResizable", "rowReorderable", "navigable", "autoSize", "rowClass", "rowSticky", "rowSelected", "isRowSelectable", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "showInactiveTools", "isDetailExpanded", "isGroupExpanded", "dataLayoutMode"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "gridStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "csvExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i1$d.DataBindingDirective, selector: "[kendoGridBinding]", inputs: ["skip", "sort", "filter", "pageSize", "group", "kendoGridBinding"], exportAs: ["kendoGridBinding"] }, { kind: "directive", type: i1$d.SelectionDirective, selector: "[kendoGridSelectBy]" }, { kind: "component", type: i1$d.CustomMessagesComponent, selector: "kendo-grid-messages" }, { kind: "directive", type: i1$d.ExpandDetailsDirective, selector: "[kendoGridExpandDetailsBy]", inputs: ["kendoGridExpandDetailsBy", "expandDetailBy", "expandedDetailKeys", "initiallyExpanded"], outputs: ["expandedDetailKeysChange"], exportAs: ["kendoGridExpandDetailsBy"] }, { kind: "component", type: i1$d.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterVariant", "filterable", "editable"] }, { kind: "directive", type: i1$d.FooterTemplateDirective, selector: "[kendoGridFooterTemplate]" }, { kind: "directive", type: i1$d.DetailTemplateDirective, selector: "[kendoGridDetailTemplate]", inputs: ["kendoGridDetailTemplateShowIf"] }, { kind: "component", type: i1$d.CheckboxColumnComponent, selector: "kendo-grid-checkbox-column", inputs: ["showSelectAll", "showDisabledCheckbox"] }, { kind: "directive", type: i1$d.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i1$d.HeaderTemplateDirective, selector: "[kendoGridHeaderTemplate]" }, { kind: "component", type: i2.PagerInfoComponent, selector: "kendo-datapager-info, kendo-pager-info" }, { kind: "component", type: i2.PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons, kendo-pager-next-buttons", inputs: ["size"] }, { kind: "component", type: i2.PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons, kendo-pager-numeric-buttons", inputs: ["buttonCount", "size"] }, { kind: "component", type: i2.PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons, kendo-pager-prev-buttons", inputs: ["size"] }, { kind: "directive", type: i2.PagerTemplateDirective, selector: "[kendoDataPagerTemplate], [kendoPagerTemplate]" }, { kind: "component", type: KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "ngmodule", type: ExcelModule }, { kind: "component", type: i1$d.ExcelComponent, selector: "kendo-grid-excel", inputs: ["fileName", "filterable", "creator", "date", "forceProxy", "proxyURL", "fetchData", "paddingCellOptions", "headerPaddingCellOptions", "collapsible"], outputs: ["fileCreated"] }, { kind: "ngmodule", type: PDFModule }, { kind: "component", type: i1$d.PDFComponent, selector: "kendo-grid-pdf", inputs: ["allPages", "delay"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode", "cursorStyle", "hintContext"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { kind: "directive", type: i3.DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
6057
|
+
], queries: [{ propertyName: "columnMarkersContent", predicate: KIT_GRID_COLUMN_MARKER, isSignal: true }], viewQueries: [{ propertyName: "dragTargetContainer", first: true, predicate: DragTargetContainerDirective, descendants: true, isSignal: true }, { propertyName: "dropTargetContainer", first: true, predicate: DropTargetContainerDirective, descendants: true, isSignal: true }, { propertyName: "gridComponent", first: true, predicate: GridComponent, descendants: true }], ngImport: i0, template: "@if (data()) {\n <div class=\"kit-grid\"\n kendoDragTargetContainer\n kendoDropTargetContainer\n dragTargetFilter=\".k-master-row\"\n dropTargetFilter=\".k-master-row\"\n dragHandle=\"tr\"\n [dragDisabled]=\"!rowReorderable()\"\n [dropDisabled]=\"!rowReorderable()\"\n [dragData]=\"dragData\"\n [hint]=\"{ hintClass: 'kit-grid-row-hint' }\"\n (onDragOver)=\"onRowDragOver($event)\"\n (onRelease)=\"dropIndicator.set(null)\"\n (onDrop)=\"onDrop($event)\">\n <kendo-grid kendoGridExpandDetailsBy\n [class.kit-grid--radio]=\"isRadioColumn()\"\n [data]=\"renderedData()\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [skip]=\"skip()\"\n [loading]=\"loading()\"\n [resizable]=\"resizable()\"\n [(expandedDetailKeys)]=\"expandedRows\"\n [kendoGridSelectBy]=\"selectByField() || ''\"\n [isRowSelectable]=\"isRowSelectable.bind(this)\"\n [selectable]=\"selectableSettings()\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (sortChange)=\"onSortChange($event)\"\n (pageChange)=\"onPageChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\"\n [selectedKeys]=\"selectedKeys()\"\n (selectedKeysChange)=\"selectedKeys.set(limitSelectedKeys($event))\"\n (selectionChange)=\"selectionChanged.emit($event)\"\n (excelExport)=\"excelExport.emit($event)\">\n @for (column of columnMarkers(); track $index) {\n @if (isCheckboxColumn(column)) {\n <kendo-grid-checkbox-column [width]=\"column.width()\"\n [showSelectAll]=\"!isRadioColumn() && column.showSelectAll()\">\n @if (!isRadioColumn() && column.showSelectAll()) {\n <ng-template kendoGridHeaderTemplate>\n <div class=\"kit-grid-select-all\">\n <kit-checkbox [checked]=\"headerCheckboxState() === 'checked'\"\n [indeterminate]=\"headerCheckboxState() === 'indeterminate'\"\n [disabled]=\"isHeaderCheckboxDisabled()\"\n (changed)=\"onHeaderCheckboxChanged($event)\">\n </kit-checkbox>\n </div>\n </ng-template>\n }\n </kendo-grid-checkbox-column>\n } @else {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate\n let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (gridDetailTemplate()) {\n <ng-template kendoGridDetailTemplate\n let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"gridDetailTemplate(); context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n }\n <kendo-grid-excel [fileName]=\"pdfOptions.fileName\" />\n <kendo-grid-pdf [fileName]=\"pdfOptions.fileName\"\n [allPages]=\"pdfOptions.allPages\"\n [paperSize]=\"pdfOptions.paperSize\"\n [scale]=\"pdfOptions.scale\"\n [landscape]=\"pdfOptions.landscape\"\n [repeatHeaders]=\"true\" />\n\n <ng-container *ngTemplateOutlet=\"pagerTemplate\" />\n <kendo-grid-messages [pagerItems]=\"pagerInfoText()\"\n [pagerOf]=\"'of'\"\n [noRecords]=\"noRecordsText()\">\n </kendo-grid-messages>\n </kendo-grid>\n </div>\n}\n\n@if (gridDataBinding()) {\n <div class=\"kit-grid\"\n kendoDragTargetContainer\n kendoDropTargetContainer\n dragTargetFilter=\".k-master-row\"\n dropTargetFilter=\".k-master-row\"\n dragHandle=\"tr\"\n [dragDisabled]=\"!rowReorderable()\"\n [dropDisabled]=\"!rowReorderable()\"\n [dragData]=\"dragData\"\n [hint]=\"{ hintClass: 'kit-grid-row-hint' }\"\n (onDragOver)=\"onRowDragOver($event)\"\n (onRelease)=\"dropIndicator.set(null)\"\n (onDrop)=\"onDrop($event)\">\n <kendo-grid kendoGridExpandDetailsBy\n [class.kit-grid--radio]=\"isRadioColumn()\"\n [kendoGridBinding]=\"renderedGridDataBinding()\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [skip]=\"skip()\"\n [loading]=\"loading()\"\n [resizable]=\"resizable()\"\n [(expandedDetailKeys)]=\"expandedRows\"\n [kendoGridSelectBy]=\"selectByField() || ''\"\n [isRowSelectable]=\"isRowSelectable.bind(this)\"\n [selectable]=\"selectableSettings()\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (pageChange)=\"onPageChange($event)\"\n (sortChange)=\"onSortChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\"\n [selectedKeys]=\"selectedKeys()\"\n (selectedKeysChange)=\"selectedKeys.set(limitSelectedKeys($event))\"\n (selectionChange)=\"selectionChanged.emit($event)\"\n (excelExport)=\"excelExport.emit($event)\">\n @for (column of columnMarkers(); track $index) {\n @if (isCheckboxColumn(column)) {\n <kendo-grid-checkbox-column [width]=\"column.width()\"\n [showSelectAll]=\"!isRadioColumn() && column.showSelectAll()\">\n @if (!isRadioColumn() && column.showSelectAll()) {\n <ng-template kendoGridHeaderTemplate>\n <div class=\"kit-grid-select-all\">\n <kit-checkbox [checked]=\"headerCheckboxState() === 'checked'\"\n [indeterminate]=\"headerCheckboxState() === 'indeterminate'\"\n [disabled]=\"isHeaderCheckboxDisabled()\"\n (changed)=\"onHeaderCheckboxChanged($event)\">\n </kit-checkbox>\n </div>\n </ng-template>\n }\n </kendo-grid-checkbox-column>\n } @else {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate\n let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (gridDetailTemplate()) {\n <ng-template kendoGridDetailTemplate\n let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"gridDetailTemplate(); context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n }\n <kendo-grid-excel [fileName]=\"pdfOptions.fileName\" />\n <kendo-grid-pdf [fileName]=\"pdfOptions.fileName\"\n [allPages]=\"pdfOptions.allPages\"\n [paperSize]=\"pdfOptions.paperSize\"\n [scale]=\"pdfOptions.scale\"\n [landscape]=\"pdfOptions.landscape\"\n [repeatHeaders]=\"true\" />\n\n <ng-container *ngTemplateOutlet=\"pagerTemplate\" />\n <kendo-grid-messages pagerOf=\"of\"\n [pagerItems]=\"pagerInfoText()\"\n [noRecords]=\"noRecordsText()\">\n </kendo-grid-messages>\n </kendo-grid>\n </div>\n}\n\n<ng-template #columnHeaderTemplate\n let-column>\n <div class=\"grid-title\"\n [class.sortable]=\"isColumnSortable(column)\">\n @if (column.titleIcon) {\n <kit-svg-icon class=\"grid-title-icon\"\n [icon]=\"column.titleIcon\"\n [ngClass]=\"column.titleIconType\"\n ></kit-svg-icon>\n }\n\n <div class=\"grid-title-text\">\n {{ column.title }}\n </div>\n\n @if (sortable && column.sortable) {\n @switch (getSortingDirection(column.field)) {\n @case (kitSortDirection.ASC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"kitSvgIcon.SORT_ASCENDING\"\n ></kit-svg-icon>\n }\n @case (kitSortDirection.DESC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"kitSvgIcon.SORT_DESCENDING\"\n ></kit-svg-icon>\n }\n }\n }\n </div>\n</ng-template>\n\n<ng-template #footerTemplate\n let-column>\n @if (columns(); as columns) {\n @if (footerTitle && column === columns[0]) {\n {{ footerTitle }}\n } @else {\n {{ footerData?.[column.field] || '' }}\n }\n }\n</ng-template>\n\n<ng-template #pagerTemplate\n kendoPagerTemplate>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n</ng-template>\n", styles: [".kit-grid{height:100%}.kit-grid .kit-grid-select-all{display:flex;align-items:center;justify-content:center;width:100%}.kit-grid .grid-title{display:flex;align-items:center;gap:8px;flex:1;line-height:1;min-width:0}.kit-grid .grid-title-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-grid .grid-title-icon.fill{fill:var(--ui-kit-color-grey-12);stroke:none}.kit-grid .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-grid .grid-title-text{font-weight:500;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid .grid-title-sort-icon{display:block;margin-left:auto;width:16px;height:16px;fill:var(--ui-kit-color-grey-12)}.kit-grid .grid-title.sortable{cursor:pointer}.kit-grid ::ng-deep .k-grid{border:none;background:none;max-height:100%}.kit-grid ::ng-deep .k-grid-table{color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400}.kit-grid ::ng-deep .k-grid-header{padding:0!important;border:none}.kit-grid ::ng-deep .k-grid-footer{padding:0!important}.kit-grid ::ng-deep .k-grid-content{overflow-y:auto}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar{height:8px;width:8px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-12);border-radius:4px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb:hover{background-color:var(--ui-kit-color-grey-18)}.kit-grid ::ng-deep .k-table{margin:0}.kit-grid ::ng-deep .k-table-th{padding:8px 0;border:none;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-15);box-shadow:none}.kit-grid ::ng-deep .k-table-th .k-cell-inner{margin:0}.kit-grid ::ng-deep .k-table-th .k-cell-inner .k-link{padding:0 8px;border-right:1px solid var(--ui-kit-color-grey-11);cursor:default}.kit-grid ::ng-deep .k-table-th .k-sort-icon{display:none}.kit-grid ::ng-deep .k-table-th .k-sort-order{margin-left:2px;color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted{color:var(--ui-kit-color-main);border-bottom:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.fill{fill:var(--ui-kit-color-main);stroke:none}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-sort-icon{fill:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-row:not(.k-detail-row):hover,.kit-grid ::ng-deep .k-table-row:hover{background:none}.kit-grid ::ng-deep .k-table-row.k-state-selected,.kit-grid ::ng-deep .k-table-row.k-selected{background:none}.kit-grid ::ng-deep .k-table-row.k-state-selected .k-table-td,.kit-grid ::ng-deep .k-table-row.k-selected .k-table-td{background:none;box-shadow:none}.kit-grid ::ng-deep .k-table-row .k-table-td{border-bottom-width:1px;box-shadow:none}.kit-grid ::ng-deep .k-table-alt-row{background:none}.kit-grid ::ng-deep .k-table-td{padding:12px 8px;border-color:var(--ui-kit-color-grey-11);border-bottom-width:1px;background:var(--ui-kit-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid ::ng-deep .k-table-td:first-child{border-inline-start-width:1px}.kit-grid ::ng-deep .k-checkbox-wrap{display:flex;align-items:center;justify-content:center}.kit-grid ::ng-deep .k-checkbox{width:16px;height:16px;border-radius:4px;border:1px solid var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-checkbox.k-indeterminate{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:hover:not(:disabled){border-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:focus,.kit-grid ::ng-deep .k-checkbox.k-focus{box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-grid ::ng-deep .k-checkbox:checked,.kit-grid ::ng-deep .k-checkbox.k-checked{border-color:var(--ui-kit-color-main);background-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:checked:disabled,.kit-grid ::ng-deep .k-checkbox.k-checked:disabled{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-checkbox:disabled{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-master-row .k-hierarchy-cell{padding:12px 8px}.kit-grid ::ng-deep .k-master-row.drag-insert-before .k-table-td{box-shadow:inset 0 2px 0 0 var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-master-row.drag-insert-after .k-table-td{box-shadow:inset 0 -2px 0 0 var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-master-row.expanded .k-table-td{color:var(--ui-kit-color-main);border-bottom-color:var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-master-row.expanded .k-icon:before{color:var(--ui-kit-color-main);transform:rotate(90deg)}.kit-grid ::ng-deep .k-detail-row>.k-table-td{border-bottom:1px solid var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-detail-row .k-detail-cell{padding:0}.kit-grid ::ng-deep .k-detail-row .k-pager{margin:0;padding:20px 0;justify-content:flex-start;background:var(--ui-kit-color-white)}.kit-grid ::ng-deep .k-grid-norecords{text-align:left}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon{display:flex;align-items:center;justify-content:center;font-family:WebComponentsIcons,sans-serif;font-size:22px}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:before{content:\"\\e005\";color:var(--ui-kit-color-grey-14);transform:rotate(0);transition:transform .2s ease}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:hover:before{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon svg{display:none}.kit-grid ::ng-deep .k-pager{display:flex;justify-content:flex-end;margin-top:20px;padding:2px 0;color:var(--ui-kit-color-grey-10);border:none;background:none}.kit-grid ::ng-deep .k-pager:focus{box-shadow:none}.kit-grid ::ng-deep .k-pager-numbers{gap:8px}.kit-grid ::ng-deep .k-pager-numbers-wrap{gap:8px}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button{width:32px;height:32px;color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400;border-radius:6px;transition:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:before{opacity:1;background:none;transition:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:after,.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:before{display:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-selected{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-selected:before{border:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:not(.k-selected):hover{background-color:var(--ui-kit-color-grey-11)!important}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-disabled{color:var(--ui-kit-color-grey-12)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button-icon:before{content:\"\";display:flex;width:14px;height:14px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;background-color:currentcolor}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-left:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.99976 10.3596L8.99976 9.48071C8.99976 9.42094 8.97046 9.36469 8.92241 9.32954L4.33335 6.00024L8.92241 2.67094C8.97046 2.63579 8.99976 2.57954 8.99976 2.51977L8.99976 1.64086C8.99976 1.56469 8.91304 1.52016 8.85093 1.56469L3.15444 5.69672C2.94819 5.84673 2.94819 6.15376 3.15444 6.30258L8.85093 10.4346C8.91304 10.4803 8.99976 10.4358 8.99976 10.3596Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.99976 10.3596L8.99976 9.48071C8.99976 9.42094 8.97046 9.36469 8.92241 9.32954L4.33335 6.00024L8.92241 2.67094C8.97046 2.63579 8.99976 2.57954 8.99976 2.51977L8.99976 1.64086C8.99976 1.56469 8.91304 1.52016 8.85093 1.56469L3.15444 5.69672C2.94819 5.84673 2.94819 6.15376 3.15444 6.30258L8.85093 10.4346C8.91304 10.4803 8.99976 10.4358 8.99976 10.3596Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-right:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99976 1.64041L2.99976 2.51932C2.99976 2.57909 3.02905 2.63534 3.0771 2.67049L7.66616 5.99979L3.0771 9.32909C3.02905 9.36424 2.99976 9.42049 2.99976 9.48026L2.99976 10.3592C2.99976 10.4353 3.08647 10.4799 3.14858 10.4353L8.84507 6.30331C9.05132 6.15331 9.05132 5.84627 8.84507 5.69745L3.14858 1.56541C3.08647 1.51971 2.99976 1.56424 2.99976 1.64041Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99976 1.64041L2.99976 2.51932C2.99976 2.57909 3.02905 2.63534 3.0771 2.67049L7.66616 5.99979L3.0771 9.32909C3.02905 9.36424 2.99976 9.42049 2.99976 9.48026L2.99976 10.3592C2.99976 10.4353 3.08647 10.4799 3.14858 10.4353L8.84507 6.30331C9.05132 6.15331 9.05132 5.84627 8.84507 5.69745L3.14858 1.56541C3.08647 1.51971 2.99976 1.56424 2.99976 1.64041Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-to-left:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1' y1='1' x2='1' y2='11' stroke='black' stroke-width='1'/%3E%3Cpath d='M9 10.36L9 9.48C9 9.42 8.97 9.36 8.92 9.33L4.33 6L8.92 2.67C8.97 2.64 9 2.58 9 2.52L9 1.64C9 1.56 8.91 1.52 8.85 1.56L3.15 5.7C2.95 5.85 2.95 6.15 3.15 6.3L8.85 10.43C8.91 10.48 9 10.44 9 10.36Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1' y1='1' x2='1' y2='11' stroke='black' stroke-width='1'/%3E%3Cpath d='M9 10.36L9 9.48C9 9.42 8.97 9.36 8.92 9.33L4.33 6L8.92 2.67C8.97 2.64 9 2.58 9 2.52L9 1.64C9 1.56 8.91 1.52 8.85 1.56L3.15 5.7C2.95 5.85 2.95 6.15 3.15 6.3L8.85 10.43C8.91 10.48 9 10.44 9 10.36Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-to-right:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 1.64L3 2.52C3 2.58 3.03 2.64 3.08 2.67L7.67 6L3.08 9.33C3.03 9.36 3 9.42 3 9.48L3 10.36C3 10.44 3.09 10.48 3.15 10.43L8.85 6.3C9.05 6.15 9.05 5.85 8.85 5.7L3.15 1.56C3.09 1.52 3 1.56 3 1.64Z' fill='black'/%3E%3Cline x1='11' y1='1' x2='11' y2='11' stroke='black' stroke-width='1'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 1.64L3 2.52C3 2.58 3.03 2.64 3.08 2.67L7.67 6L3.08 9.33C3.03 9.36 3 9.42 3 9.48L3 10.36C3 10.44 3.09 10.48 3.15 10.43L8.85 6.3C9.05 6.15 9.05 5.85 8.85 5.7L3.15 1.56C3.09 1.52 3 1.56 3 1.64Z' fill='black'/%3E%3Cline x1='11' y1='1' x2='11' y2='11' stroke='black' stroke-width='1'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-nav{width:32px;height:32px;border-radius:6px}.kit-grid ::ng-deep .k-pager-nav:before,.kit-grid ::ng-deep .k-pager-nav:after{display:none!important}.kit-grid ::ng-deep .k-pager-nav:not(.k-disabled):hover{background:var(--ui-kit-color-grey-11)!important}.kit-grid ::ng-deep .k-pager-info{flex:initial;border-radius:8px;background-color:#fff;padding:5px 16px}.kit-grid ::ng-deep .k-pager .k-button-icon svg{display:none}.kit-grid ::ng-deep .k-grid-aria-root{position:relative}.kit-grid ::ng-deep .k-loading-color{background:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .expand-disabled .k-hierarchy-cell a{pointer-events:none;opacity:.3}.kit-grid ::ng-deep .checkbox-hidden .k-checkbox-wrap{visibility:hidden}.kit-grid ::ng-deep .k-picker{height:32px;border-radius:4px;border:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-white)}.kit-grid ::ng-deep .k-picker:hover{border-color:var(--ui-kit-color-hover)}.kit-grid ::ng-deep .k-picker.k-focus{border:1px solid var(--ui-kit-color-main);box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-grid ::ng-deep .k-picker[aria-expanded=true] .k-svg-i-caret-alt-down:before{transform:rotate(180deg)}.kit-grid ::ng-deep .k-picker .k-svg-i-caret-alt-down:before{content:\"\\e015\";color:var(--ui-kit-color-grey-12);font-family:WebComponentsIcons,sans-serif}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox{border-radius:50%}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:after{content:\"\";display:block;width:8px;height:8px;border-radius:50%;background-color:transparent;margin:auto;position:absolute;inset:0}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked{background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked:after,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked:after{background-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked:disabled:after,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked:disabled:after{background-color:var(--ui-kit-color-grey-11)}::ng-deep .kit-grid-row-hint{overflow:hidden;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;background:var(--ui-kit-color-white);box-shadow:0 10px 24px #11182724;z-index:10002}::ng-deep .kit-grid-row-hint .k-table-td{padding:10px 8px;border-color:var(--ui-kit-color-grey-11);color:var(--ui-kit-color-grey-10);background:var(--ui-kit-color-white)}::ng-deep .kit-grid.k-grid:has(.k-grid-norecords) .k-pager-numbers-wrap{display:none}::ng-deep .k-animation-container .k-list-item.k-selected{background-color:var(--ui-kit-color-main);color:var(--ui-kit-color-white)}::ng-deep .k-animation-container .k-list-item:hover:not(.k-selected){color:var(--ui-kit-color-main)}\n"], dependencies: [{ kind: "ngmodule", type: GridModule }, { kind: "component", type: i1$d.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "adaptiveMode", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "gridResizable", "rowReorderable", "navigable", "autoSize", "rowClass", "rowSticky", "rowSelected", "isRowSelectable", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "showInactiveTools", "isDetailExpanded", "isGroupExpanded", "dataLayoutMode"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "gridStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "csvExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i1$d.DataBindingDirective, selector: "[kendoGridBinding]", inputs: ["skip", "sort", "filter", "pageSize", "group", "kendoGridBinding"], exportAs: ["kendoGridBinding"] }, { kind: "directive", type: i1$d.SelectionDirective, selector: "[kendoGridSelectBy]" }, { kind: "component", type: i1$d.CustomMessagesComponent, selector: "kendo-grid-messages" }, { kind: "directive", type: i1$d.ExpandDetailsDirective, selector: "[kendoGridExpandDetailsBy]", inputs: ["kendoGridExpandDetailsBy", "expandDetailBy", "expandedDetailKeys", "initiallyExpanded"], outputs: ["expandedDetailKeysChange"], exportAs: ["kendoGridExpandDetailsBy"] }, { kind: "component", type: i1$d.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterVariant", "filterable", "editable"] }, { kind: "directive", type: i1$d.FooterTemplateDirective, selector: "[kendoGridFooterTemplate]" }, { kind: "directive", type: i1$d.DetailTemplateDirective, selector: "[kendoGridDetailTemplate]", inputs: ["kendoGridDetailTemplateShowIf"] }, { kind: "component", type: i1$d.CheckboxColumnComponent, selector: "kendo-grid-checkbox-column", inputs: ["showSelectAll", "showDisabledCheckbox"] }, { kind: "directive", type: i1$d.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i1$d.HeaderTemplateDirective, selector: "[kendoGridHeaderTemplate]" }, { kind: "component", type: i2.PagerInfoComponent, selector: "kendo-datapager-info, kendo-pager-info" }, { kind: "component", type: i2.PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons, kendo-pager-next-buttons", inputs: ["size"] }, { kind: "component", type: i2.PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons, kendo-pager-numeric-buttons", inputs: ["buttonCount", "size"] }, { kind: "component", type: i2.PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons, kendo-pager-prev-buttons", inputs: ["size"] }, { kind: "directive", type: i2.PagerTemplateDirective, selector: "[kendoDataPagerTemplate], [kendoPagerTemplate]" }, { kind: "component", type: KitSvgIconComponent, selector: "kit-svg-icon", inputs: ["icon", "iconClass"] }, { kind: "component", type: KitCheckboxComponent, selector: "kit-checkbox", inputs: ["label", "disabled", "checked", "readonly", "state", "messageIcon", "messageText", "indeterminate"], outputs: ["changed"] }, { kind: "ngmodule", type: ExcelModule }, { kind: "component", type: i1$d.ExcelComponent, selector: "kendo-grid-excel", inputs: ["fileName", "filterable", "creator", "date", "forceProxy", "proxyURL", "fetchData", "paddingCellOptions", "headerPaddingCellOptions", "collapsible"], outputs: ["fileCreated"] }, { kind: "ngmodule", type: PDFModule }, { kind: "component", type: i1$d.PDFComponent, selector: "kendo-grid-pdf", inputs: ["allPages", "delay"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode", "cursorStyle", "hintContext"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { kind: "directive", type: i3.DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5954
6058
|
}
|
|
5955
6059
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitGridComponent, decorators: [{
|
|
5956
6060
|
type: Component,
|
|
5957
6061
|
args: [{ selector: 'kit-grid', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
5958
6062
|
GridModule,
|
|
5959
6063
|
KitSvgIconComponent,
|
|
6064
|
+
KitCheckboxComponent,
|
|
5960
6065
|
ExcelModule,
|
|
5961
6066
|
PDFModule,
|
|
5962
6067
|
NgClass,
|
|
@@ -5967,7 +6072,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImpor
|
|
|
5967
6072
|
{ provide: L10N_PREFIX, useValue: '' },
|
|
5968
6073
|
PagerContextService,
|
|
5969
6074
|
PagerNavigationService,
|
|
5970
|
-
], template: "@if (data()) {\n <div class=\"kit-grid\"\n kendoDragTargetContainer\n kendoDropTargetContainer\n dragTargetFilter=\".k-master-row\"\n dropTargetFilter=\".k-master-row\"\n dragHandle=\"tr\"\n [dragDisabled]=\"!rowReorderable()\"\n [dropDisabled]=\"!rowReorderable()\"\n [dragData]=\"dragData\"\n [hint]=\"{ hintClass: 'kit-grid-row-hint' }\"\n (onDragOver)=\"onRowDragOver($event)\"\n (onRelease)=\"dropIndicator.set(null)\"\n (onDrop)=\"onDrop($event)\">\n <kendo-grid kendoGridExpandDetailsBy\n [class.kit-grid--radio]=\"isRadioColumn()\"\n [data]=\"renderedData()\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [skip]=\"skip()\"\n [loading]=\"loading()\"\n [resizable]=\"resizable()\"\n [(expandedDetailKeys)]=\"expandedRows\"\n [kendoGridSelectBy]=\"selectByField() || ''\"\n [isRowSelectable]=\"isRowSelectable.bind(this)\"\n [selectable]=\"selectableSettings()\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (sortChange)=\"onSortChange($event)\"\n (pageChange)=\"onPageChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\"\n [selectedKeys]=\"selectedKeys()\"\n (selectedKeysChange)=\"selectedKeys.set(limitSelectedKeys($event))\"\n (selectionChange)=\"selectionChanged.emit($event)\"\n (excelExport)=\"excelExport.emit($event)\">\n @for (column of columnMarkers(); track $index) {\n @if (isCheckboxColumn(column)) {\n <kendo-grid-checkbox-column [width]=\"column.width()\"\n [showSelectAll]=\"!isRadioColumn() && column.showSelectAll()\">\n </kendo-grid-checkbox-column>\n } @else {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate\n let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (gridDetailTemplate()) {\n <ng-template kendoGridDetailTemplate\n let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"gridDetailTemplate(); context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n }\n <kendo-grid-excel [fileName]=\"pdfOptions.fileName\" />\n <kendo-grid-pdf [fileName]=\"pdfOptions.fileName\"\n [allPages]=\"pdfOptions.allPages\"\n [paperSize]=\"pdfOptions.paperSize\"\n [scale]=\"pdfOptions.scale\"\n [landscape]=\"pdfOptions.landscape\"\n [repeatHeaders]=\"true\" />\n\n <ng-container *ngTemplateOutlet=\"pagerTemplate\" />\n <kendo-grid-messages [pagerItems]=\"pagerInfoText()\"\n [pagerOf]=\"'of'\"\n [noRecords]=\"noRecordsText()\">\n </kendo-grid-messages>\n </kendo-grid>\n </div>\n}\n\n@if (gridDataBinding()) {\n <div class=\"kit-grid\"\n kendoDragTargetContainer\n kendoDropTargetContainer\n dragTargetFilter=\".k-master-row\"\n dropTargetFilter=\".k-master-row\"\n dragHandle=\"tr\"\n [dragDisabled]=\"!rowReorderable()\"\n [dropDisabled]=\"!rowReorderable()\"\n [dragData]=\"dragData\"\n [hint]=\"{ hintClass: 'kit-grid-row-hint' }\"\n (onDragOver)=\"onRowDragOver($event)\"\n (onRelease)=\"dropIndicator.set(null)\"\n (onDrop)=\"onDrop($event)\">\n <kendo-grid kendoGridExpandDetailsBy\n [class.kit-grid--radio]=\"isRadioColumn()\"\n [kendoGridBinding]=\"renderedGridDataBinding()\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [skip]=\"skip()\"\n [loading]=\"loading()\"\n [resizable]=\"resizable()\"\n [(expandedDetailKeys)]=\"expandedRows\"\n [kendoGridSelectBy]=\"selectByField() || ''\"\n [isRowSelectable]=\"isRowSelectable.bind(this)\"\n [selectable]=\"selectableSettings()\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (pageChange)=\"onPageChange($event)\"\n (sortChange)=\"onSortChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\"\n [selectedKeys]=\"selectedKeys()\"\n (selectedKeysChange)=\"selectedKeys.set(limitSelectedKeys($event))\"\n (selectionChange)=\"selectionChanged.emit($event)\"\n (excelExport)=\"excelExport.emit($event)\">\n @for (column of columnMarkers(); track $index) {\n @if (isCheckboxColumn(column)) {\n <kendo-grid-checkbox-column [width]=\"column.width()\"\n [showSelectAll]=\"!isRadioColumn() && column.showSelectAll()\">\n </kendo-grid-checkbox-column>\n } @else {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate\n let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (gridDetailTemplate()) {\n <ng-template kendoGridDetailTemplate\n let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"gridDetailTemplate(); context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n }\n <kendo-grid-excel [fileName]=\"pdfOptions.fileName\" />\n <kendo-grid-pdf [fileName]=\"pdfOptions.fileName\"\n [allPages]=\"pdfOptions.allPages\"\n [paperSize]=\"pdfOptions.paperSize\"\n [scale]=\"pdfOptions.scale\"\n [landscape]=\"pdfOptions.landscape\"\n [repeatHeaders]=\"true\" />\n\n <ng-container *ngTemplateOutlet=\"pagerTemplate\" />\n <kendo-grid-messages pagerOf=\"of\"\n [pagerItems]=\"pagerInfoText()\"\n [noRecords]=\"noRecordsText()\">\n </kendo-grid-messages>\n </kendo-grid>\n </div>\n}\n\n<ng-template #columnHeaderTemplate\n let-column>\n <div class=\"grid-title\"\n [class.sortable]=\"isColumnSortable(column)\">\n @if (column.titleIcon) {\n <kit-svg-icon class=\"grid-title-icon\"\n [icon]=\"column.titleIcon\"\n [ngClass]=\"column.titleIconType\"\n ></kit-svg-icon>\n }\n\n <div class=\"grid-title-text\">\n {{ column.title }}\n </div>\n\n @if (sortable && column.sortable) {\n @switch (getSortingDirection(column.field)) {\n @case (kitSortDirection.ASC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"kitSvgIcon.SORT_ASCENDING\"\n ></kit-svg-icon>\n }\n @case (kitSortDirection.DESC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"kitSvgIcon.SORT_DESCENDING\"\n ></kit-svg-icon>\n }\n }\n }\n </div>\n</ng-template>\n\n<ng-template #footerTemplate\n let-column>\n @if (columns(); as columns) {\n @if (footerTitle && column === columns[0]) {\n {{ footerTitle }}\n } @else {\n {{ footerData?.[column.field] || '' }}\n }\n }\n</ng-template>\n\n<ng-template #pagerTemplate\n kendoPagerTemplate>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n</ng-template>\n", styles: [".kit-grid{height:100%}.kit-grid .grid-title{display:flex;align-items:center;gap:8px;flex:1;line-height:1;min-width:0}.kit-grid .grid-title-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-grid .grid-title-icon.fill{fill:var(--ui-kit-color-grey-12);stroke:none}.kit-grid .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-grid .grid-title-text{font-weight:500;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid .grid-title-sort-icon{display:block;margin-left:auto;width:16px;height:16px;fill:var(--ui-kit-color-grey-12)}.kit-grid .grid-title.sortable{cursor:pointer}.kit-grid ::ng-deep .k-grid{border:none;background:none;max-height:100%}.kit-grid ::ng-deep .k-grid-table{color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400}.kit-grid ::ng-deep .k-grid-header{padding:0!important;border:none}.kit-grid ::ng-deep .k-grid-footer{padding:0!important}.kit-grid ::ng-deep .k-grid-content{overflow-y:auto}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar{height:8px;width:8px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-12);border-radius:4px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb:hover{background-color:var(--ui-kit-color-grey-18)}.kit-grid ::ng-deep .k-table{margin:0}.kit-grid ::ng-deep .k-table-th{padding:8px 0;border:none;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-15);box-shadow:none}.kit-grid ::ng-deep .k-table-th .k-cell-inner{margin:0}.kit-grid ::ng-deep .k-table-th .k-cell-inner .k-link{padding:0 8px;border-right:1px solid var(--ui-kit-color-grey-11);cursor:default}.kit-grid ::ng-deep .k-table-th .k-sort-icon{display:none}.kit-grid ::ng-deep .k-table-th .k-sort-order{margin-left:2px;color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted{color:var(--ui-kit-color-main);border-bottom:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.fill{fill:var(--ui-kit-color-main);stroke:none}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-sort-icon{fill:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-row:not(.k-detail-row):hover,.kit-grid ::ng-deep .k-table-row:hover{background:none}.kit-grid ::ng-deep .k-table-row.k-state-selected,.kit-grid ::ng-deep .k-table-row.k-selected{background:none}.kit-grid ::ng-deep .k-table-row.k-state-selected .k-table-td,.kit-grid ::ng-deep .k-table-row.k-selected .k-table-td{background:none;box-shadow:none}.kit-grid ::ng-deep .k-table-row .k-table-td{border-bottom-width:1px;box-shadow:none}.kit-grid ::ng-deep .k-table-alt-row{background:none}.kit-grid ::ng-deep .k-table-td{padding:12px 8px;border-color:var(--ui-kit-color-grey-11);border-bottom-width:1px;background:var(--ui-kit-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid ::ng-deep .k-table-td:first-child{border-inline-start-width:1px}.kit-grid ::ng-deep .k-checkbox-wrap{display:flex;align-items:center;justify-content:center}.kit-grid ::ng-deep .k-checkbox{width:16px;height:16px;border-radius:4px;border:1px solid var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-checkbox.k-indeterminate{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:hover:not(:disabled){border-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:focus,.kit-grid ::ng-deep .k-checkbox.k-focus{box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-grid ::ng-deep .k-checkbox:checked,.kit-grid ::ng-deep .k-checkbox.k-checked{border-color:var(--ui-kit-color-main);background-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:checked:disabled,.kit-grid ::ng-deep .k-checkbox.k-checked:disabled{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-checkbox:disabled{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-master-row .k-hierarchy-cell{padding:12px 8px}.kit-grid ::ng-deep .k-master-row.drag-insert-before .k-table-td{box-shadow:inset 0 2px 0 0 var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-master-row.drag-insert-after .k-table-td{box-shadow:inset 0 -2px 0 0 var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-master-row.expanded .k-table-td{color:var(--ui-kit-color-main);border-bottom-color:var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-master-row.expanded .k-icon:before{color:var(--ui-kit-color-main);transform:rotate(90deg)}.kit-grid ::ng-deep .k-detail-row>.k-table-td{border-bottom:1px solid var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-detail-row .k-detail-cell{padding:0}.kit-grid ::ng-deep .k-detail-row .k-pager{margin:0;padding:20px 0;justify-content:flex-start;background:var(--ui-kit-color-white)}.kit-grid ::ng-deep .k-grid-norecords{text-align:left}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon{display:flex;align-items:center;justify-content:center;font-family:WebComponentsIcons,sans-serif;font-size:22px}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:before{content:\"\\e005\";color:var(--ui-kit-color-grey-14);transform:rotate(0);transition:transform .2s ease}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:hover:before{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon svg{display:none}.kit-grid ::ng-deep .k-pager{display:flex;justify-content:flex-end;margin-top:20px;padding:2px 0;color:var(--ui-kit-color-grey-10);border:none;background:none}.kit-grid ::ng-deep .k-pager:focus{box-shadow:none}.kit-grid ::ng-deep .k-pager-numbers{gap:8px}.kit-grid ::ng-deep .k-pager-numbers-wrap{gap:8px}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button{width:32px;height:32px;color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400;border-radius:6px;transition:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:before{opacity:1;background:none;transition:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:after,.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:before{display:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-selected{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-selected:before{border:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:not(.k-selected):hover{background-color:var(--ui-kit-color-grey-11)!important}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-disabled{color:var(--ui-kit-color-grey-12)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button-icon:before{content:\"\";display:flex;width:14px;height:14px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;background-color:currentcolor}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-left:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.99976 10.3596L8.99976 9.48071C8.99976 9.42094 8.97046 9.36469 8.92241 9.32954L4.33335 6.00024L8.92241 2.67094C8.97046 2.63579 8.99976 2.57954 8.99976 2.51977L8.99976 1.64086C8.99976 1.56469 8.91304 1.52016 8.85093 1.56469L3.15444 5.69672C2.94819 5.84673 2.94819 6.15376 3.15444 6.30258L8.85093 10.4346C8.91304 10.4803 8.99976 10.4358 8.99976 10.3596Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.99976 10.3596L8.99976 9.48071C8.99976 9.42094 8.97046 9.36469 8.92241 9.32954L4.33335 6.00024L8.92241 2.67094C8.97046 2.63579 8.99976 2.57954 8.99976 2.51977L8.99976 1.64086C8.99976 1.56469 8.91304 1.52016 8.85093 1.56469L3.15444 5.69672C2.94819 5.84673 2.94819 6.15376 3.15444 6.30258L8.85093 10.4346C8.91304 10.4803 8.99976 10.4358 8.99976 10.3596Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-right:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99976 1.64041L2.99976 2.51932C2.99976 2.57909 3.02905 2.63534 3.0771 2.67049L7.66616 5.99979L3.0771 9.32909C3.02905 9.36424 2.99976 9.42049 2.99976 9.48026L2.99976 10.3592C2.99976 10.4353 3.08647 10.4799 3.14858 10.4353L8.84507 6.30331C9.05132 6.15331 9.05132 5.84627 8.84507 5.69745L3.14858 1.56541C3.08647 1.51971 2.99976 1.56424 2.99976 1.64041Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99976 1.64041L2.99976 2.51932C2.99976 2.57909 3.02905 2.63534 3.0771 2.67049L7.66616 5.99979L3.0771 9.32909C3.02905 9.36424 2.99976 9.42049 2.99976 9.48026L2.99976 10.3592C2.99976 10.4353 3.08647 10.4799 3.14858 10.4353L8.84507 6.30331C9.05132 6.15331 9.05132 5.84627 8.84507 5.69745L3.14858 1.56541C3.08647 1.51971 2.99976 1.56424 2.99976 1.64041Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-to-left:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1' y1='1' x2='1' y2='11' stroke='black' stroke-width='1'/%3E%3Cpath d='M9 10.36L9 9.48C9 9.42 8.97 9.36 8.92 9.33L4.33 6L8.92 2.67C8.97 2.64 9 2.58 9 2.52L9 1.64C9 1.56 8.91 1.52 8.85 1.56L3.15 5.7C2.95 5.85 2.95 6.15 3.15 6.3L8.85 10.43C8.91 10.48 9 10.44 9 10.36Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1' y1='1' x2='1' y2='11' stroke='black' stroke-width='1'/%3E%3Cpath d='M9 10.36L9 9.48C9 9.42 8.97 9.36 8.92 9.33L4.33 6L8.92 2.67C8.97 2.64 9 2.58 9 2.52L9 1.64C9 1.56 8.91 1.52 8.85 1.56L3.15 5.7C2.95 5.85 2.95 6.15 3.15 6.3L8.85 10.43C8.91 10.48 9 10.44 9 10.36Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-to-right:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 1.64L3 2.52C3 2.58 3.03 2.64 3.08 2.67L7.67 6L3.08 9.33C3.03 9.36 3 9.42 3 9.48L3 10.36C3 10.44 3.09 10.48 3.15 10.43L8.85 6.3C9.05 6.15 9.05 5.85 8.85 5.7L3.15 1.56C3.09 1.52 3 1.56 3 1.64Z' fill='black'/%3E%3Cline x1='11' y1='1' x2='11' y2='11' stroke='black' stroke-width='1'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 1.64L3 2.52C3 2.58 3.03 2.64 3.08 2.67L7.67 6L3.08 9.33C3.03 9.36 3 9.42 3 9.48L3 10.36C3 10.44 3.09 10.48 3.15 10.43L8.85 6.3C9.05 6.15 9.05 5.85 8.85 5.7L3.15 1.56C3.09 1.52 3 1.56 3 1.64Z' fill='black'/%3E%3Cline x1='11' y1='1' x2='11' y2='11' stroke='black' stroke-width='1'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-nav{width:32px;height:32px;border-radius:6px}.kit-grid ::ng-deep .k-pager-nav:before,.kit-grid ::ng-deep .k-pager-nav:after{display:none!important}.kit-grid ::ng-deep .k-pager-nav:not(.k-disabled):hover{background:var(--ui-kit-color-grey-11)!important}.kit-grid ::ng-deep .k-pager-info{flex:initial;border-radius:8px;background-color:#fff;padding:5px 16px}.kit-grid ::ng-deep .k-pager .k-button-icon svg{display:none}.kit-grid ::ng-deep .k-grid-aria-root{position:relative}.kit-grid ::ng-deep .k-loading-color{background:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .expand-disabled .k-hierarchy-cell a{pointer-events:none;opacity:.3}.kit-grid ::ng-deep .checkbox-hidden .k-checkbox-wrap{visibility:hidden}.kit-grid ::ng-deep .k-picker{height:32px;border-radius:4px;border:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-white)}.kit-grid ::ng-deep .k-picker:hover{border-color:var(--ui-kit-color-hover)}.kit-grid ::ng-deep .k-picker.k-focus{border:1px solid var(--ui-kit-color-main);box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-grid ::ng-deep .k-picker[aria-expanded=true] .k-svg-i-caret-alt-down:before{transform:rotate(180deg)}.kit-grid ::ng-deep .k-picker .k-svg-i-caret-alt-down:before{content:\"\\e015\";color:var(--ui-kit-color-grey-12);font-family:WebComponentsIcons,sans-serif}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox{border-radius:50%}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:after{content:\"\";display:block;width:8px;height:8px;border-radius:50%;background-color:transparent;margin:auto;position:absolute;inset:0}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked{background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked:after,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked:after{background-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked:disabled:after,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked:disabled:after{background-color:var(--ui-kit-color-grey-11)}::ng-deep .kit-grid-row-hint{overflow:hidden;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;background:var(--ui-kit-color-white);box-shadow:0 10px 24px #11182724;z-index:10002}::ng-deep .kit-grid-row-hint .k-table-td{padding:10px 8px;border-color:var(--ui-kit-color-grey-11);color:var(--ui-kit-color-grey-10);background:var(--ui-kit-color-white)}::ng-deep .kit-grid.k-grid:has(.k-grid-norecords) .k-pager-numbers-wrap{display:none}::ng-deep .k-animation-container .k-list-item.k-selected{background-color:var(--ui-kit-color-main);color:var(--ui-kit-color-white)}::ng-deep .k-animation-container .k-list-item:hover:not(.k-selected){color:var(--ui-kit-color-main)}\n"] }]
|
|
6075
|
+
], template: "@if (data()) {\n <div class=\"kit-grid\"\n kendoDragTargetContainer\n kendoDropTargetContainer\n dragTargetFilter=\".k-master-row\"\n dropTargetFilter=\".k-master-row\"\n dragHandle=\"tr\"\n [dragDisabled]=\"!rowReorderable()\"\n [dropDisabled]=\"!rowReorderable()\"\n [dragData]=\"dragData\"\n [hint]=\"{ hintClass: 'kit-grid-row-hint' }\"\n (onDragOver)=\"onRowDragOver($event)\"\n (onRelease)=\"dropIndicator.set(null)\"\n (onDrop)=\"onDrop($event)\">\n <kendo-grid kendoGridExpandDetailsBy\n [class.kit-grid--radio]=\"isRadioColumn()\"\n [data]=\"renderedData()\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [skip]=\"skip()\"\n [loading]=\"loading()\"\n [resizable]=\"resizable()\"\n [(expandedDetailKeys)]=\"expandedRows\"\n [kendoGridSelectBy]=\"selectByField() || ''\"\n [isRowSelectable]=\"isRowSelectable.bind(this)\"\n [selectable]=\"selectableSettings()\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (sortChange)=\"onSortChange($event)\"\n (pageChange)=\"onPageChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\"\n [selectedKeys]=\"selectedKeys()\"\n (selectedKeysChange)=\"selectedKeys.set(limitSelectedKeys($event))\"\n (selectionChange)=\"selectionChanged.emit($event)\"\n (excelExport)=\"excelExport.emit($event)\">\n @for (column of columnMarkers(); track $index) {\n @if (isCheckboxColumn(column)) {\n <kendo-grid-checkbox-column [width]=\"column.width()\"\n [showSelectAll]=\"!isRadioColumn() && column.showSelectAll()\">\n @if (!isRadioColumn() && column.showSelectAll()) {\n <ng-template kendoGridHeaderTemplate>\n <div class=\"kit-grid-select-all\">\n <kit-checkbox [checked]=\"headerCheckboxState() === 'checked'\"\n [indeterminate]=\"headerCheckboxState() === 'indeterminate'\"\n [disabled]=\"isHeaderCheckboxDisabled()\"\n (changed)=\"onHeaderCheckboxChanged($event)\">\n </kit-checkbox>\n </div>\n </ng-template>\n }\n </kendo-grid-checkbox-column>\n } @else {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate\n let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (gridDetailTemplate()) {\n <ng-template kendoGridDetailTemplate\n let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"gridDetailTemplate(); context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n }\n <kendo-grid-excel [fileName]=\"pdfOptions.fileName\" />\n <kendo-grid-pdf [fileName]=\"pdfOptions.fileName\"\n [allPages]=\"pdfOptions.allPages\"\n [paperSize]=\"pdfOptions.paperSize\"\n [scale]=\"pdfOptions.scale\"\n [landscape]=\"pdfOptions.landscape\"\n [repeatHeaders]=\"true\" />\n\n <ng-container *ngTemplateOutlet=\"pagerTemplate\" />\n <kendo-grid-messages [pagerItems]=\"pagerInfoText()\"\n [pagerOf]=\"'of'\"\n [noRecords]=\"noRecordsText()\">\n </kendo-grid-messages>\n </kendo-grid>\n </div>\n}\n\n@if (gridDataBinding()) {\n <div class=\"kit-grid\"\n kendoDragTargetContainer\n kendoDropTargetContainer\n dragTargetFilter=\".k-master-row\"\n dropTargetFilter=\".k-master-row\"\n dragHandle=\"tr\"\n [dragDisabled]=\"!rowReorderable()\"\n [dropDisabled]=\"!rowReorderable()\"\n [dragData]=\"dragData\"\n [hint]=\"{ hintClass: 'kit-grid-row-hint' }\"\n (onDragOver)=\"onRowDragOver($event)\"\n (onRelease)=\"dropIndicator.set(null)\"\n (onDrop)=\"onDrop($event)\">\n <kendo-grid kendoGridExpandDetailsBy\n [class.kit-grid--radio]=\"isRadioColumn()\"\n [kendoGridBinding]=\"renderedGridDataBinding()\"\n [rowClass]=\"getCssRowClass\"\n [pageable]=\"getPagerSettings()\"\n [pageSize]=\"pageSize\"\n [sortable]=\"sortable\"\n [sort]=\"sort\"\n [skip]=\"skip()\"\n [loading]=\"loading()\"\n [resizable]=\"resizable()\"\n [(expandedDetailKeys)]=\"expandedRows\"\n [kendoGridSelectBy]=\"selectByField() || ''\"\n [isRowSelectable]=\"isRowSelectable.bind(this)\"\n [selectable]=\"selectableSettings()\"\n (cellClick)=\"onCellClick($event)\"\n (detailExpand)=\"onDetailExpand($event)\"\n (detailCollapse)=\"onDetailCollapse($event)\"\n (pageChange)=\"onPageChange($event)\"\n (sortChange)=\"onSortChange($event)\"\n (dataStateChange)=\"onDataStateChange($event)\"\n [selectedKeys]=\"selectedKeys()\"\n (selectedKeysChange)=\"selectedKeys.set(limitSelectedKeys($event))\"\n (selectionChange)=\"selectionChanged.emit($event)\"\n (excelExport)=\"excelExport.emit($event)\">\n @for (column of columnMarkers(); track $index) {\n @if (isCheckboxColumn(column)) {\n <kendo-grid-checkbox-column [width]=\"column.width()\"\n [showSelectAll]=\"!isRadioColumn() && column.showSelectAll()\">\n @if (!isRadioColumn() && column.showSelectAll()) {\n <ng-template kendoGridHeaderTemplate>\n <div class=\"kit-grid-select-all\">\n <kit-checkbox [checked]=\"headerCheckboxState() === 'checked'\"\n [indeterminate]=\"headerCheckboxState() === 'indeterminate'\"\n [disabled]=\"isHeaderCheckboxDisabled()\"\n (changed)=\"onHeaderCheckboxChanged($event)\">\n </kit-checkbox>\n </div>\n </ng-template>\n }\n </kendo-grid-checkbox-column>\n } @else {\n <kendo-grid-column [field]=\"column.field\"\n [sortable]=\"column.sortable\"\n [hidden]=\"column.hidden\"\n [width]=\"column.width\">\n @if (column.cellTemplate) {\n <ng-template kendoGridCellTemplate\n let-dataItem>\n <ng-container *ngTemplateOutlet=\"column.cellTemplate; context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n\n <ng-template kendoGridHeaderTemplate>\n <ng-container *ngTemplateOutlet=\"columnHeaderTemplate; context: { $implicit: column }\"\n ></ng-container>\n </ng-template>\n\n @if (showFooter) {\n <ng-template kendoGridFooterTemplate>\n <ng-container *ngTemplateOutlet=\"footerTemplate; context: { $implicit: column }\"></ng-container>\n </ng-template>\n }\n </kendo-grid-column>\n\n @if (gridDetailTemplate()) {\n <ng-template kendoGridDetailTemplate\n let-dataItem\n [kendoGridDetailTemplateShowIf]=\"detailTemplateShowIf\">\n <ng-container *ngTemplateOutlet=\"gridDetailTemplate(); context: { $implicit: dataItem }\"\n ></ng-container>\n </ng-template>\n }\n }\n }\n <kendo-grid-excel [fileName]=\"pdfOptions.fileName\" />\n <kendo-grid-pdf [fileName]=\"pdfOptions.fileName\"\n [allPages]=\"pdfOptions.allPages\"\n [paperSize]=\"pdfOptions.paperSize\"\n [scale]=\"pdfOptions.scale\"\n [landscape]=\"pdfOptions.landscape\"\n [repeatHeaders]=\"true\" />\n\n <ng-container *ngTemplateOutlet=\"pagerTemplate\" />\n <kendo-grid-messages pagerOf=\"of\"\n [pagerItems]=\"pagerInfoText()\"\n [noRecords]=\"noRecordsText()\">\n </kendo-grid-messages>\n </kendo-grid>\n </div>\n}\n\n<ng-template #columnHeaderTemplate\n let-column>\n <div class=\"grid-title\"\n [class.sortable]=\"isColumnSortable(column)\">\n @if (column.titleIcon) {\n <kit-svg-icon class=\"grid-title-icon\"\n [icon]=\"column.titleIcon\"\n [ngClass]=\"column.titleIconType\"\n ></kit-svg-icon>\n }\n\n <div class=\"grid-title-text\">\n {{ column.title }}\n </div>\n\n @if (sortable && column.sortable) {\n @switch (getSortingDirection(column.field)) {\n @case (kitSortDirection.ASC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"kitSvgIcon.SORT_ASCENDING\"\n ></kit-svg-icon>\n }\n @case (kitSortDirection.DESC) {\n <kit-svg-icon class=\"grid-title-sort-icon\"\n [icon]=\"kitSvgIcon.SORT_DESCENDING\"\n ></kit-svg-icon>\n }\n }\n }\n </div>\n</ng-template>\n\n<ng-template #footerTemplate\n let-column>\n @if (columns(); as columns) {\n @if (footerTitle && column === columns[0]) {\n {{ footerTitle }}\n } @else {\n {{ footerData?.[column.field] || '' }}\n }\n }\n</ng-template>\n\n<ng-template #pagerTemplate\n kendoPagerTemplate>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n</ng-template>\n", styles: [".kit-grid{height:100%}.kit-grid .kit-grid-select-all{display:flex;align-items:center;justify-content:center;width:100%}.kit-grid .grid-title{display:flex;align-items:center;gap:8px;flex:1;line-height:1;min-width:0}.kit-grid .grid-title-icon{display:block;width:16px;height:16px;flex-shrink:0}.kit-grid .grid-title-icon.fill{fill:var(--ui-kit-color-grey-12);stroke:none}.kit-grid .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-grey-12)}.kit-grid .grid-title-text{font-weight:500;line-height:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid .grid-title-sort-icon{display:block;margin-left:auto;width:16px;height:16px;fill:var(--ui-kit-color-grey-12)}.kit-grid .grid-title.sortable{cursor:pointer}.kit-grid ::ng-deep .k-grid{border:none;background:none;max-height:100%}.kit-grid ::ng-deep .k-grid-table{color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400}.kit-grid ::ng-deep .k-grid-header{padding:0!important;border:none}.kit-grid ::ng-deep .k-grid-footer{padding:0!important}.kit-grid ::ng-deep .k-grid-content{overflow-y:auto}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar{height:8px;width:8px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-12);border-radius:4px}.kit-grid ::ng-deep .k-grid-content::-webkit-scrollbar-thumb:hover{background-color:var(--ui-kit-color-grey-18)}.kit-grid ::ng-deep .k-table{margin:0}.kit-grid ::ng-deep .k-table-th{padding:8px 0;border:none;border-bottom:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-grey-15);box-shadow:none}.kit-grid ::ng-deep .k-table-th .k-cell-inner{margin:0}.kit-grid ::ng-deep .k-table-th .k-cell-inner .k-link{padding:0 8px;border-right:1px solid var(--ui-kit-color-grey-11);cursor:default}.kit-grid ::ng-deep .k-table-th .k-sort-icon{display:none}.kit-grid ::ng-deep .k-table-th .k-sort-order{margin-left:2px;color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted{color:var(--ui-kit-color-main);border-bottom:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.fill{fill:var(--ui-kit-color-main);stroke:none}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-icon.stroke{fill:none;stroke:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-th.k-sorted .grid-title-sort-icon{fill:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-table-row:not(.k-detail-row):hover,.kit-grid ::ng-deep .k-table-row:hover{background:none}.kit-grid ::ng-deep .k-table-row.k-state-selected,.kit-grid ::ng-deep .k-table-row.k-selected{background:none}.kit-grid ::ng-deep .k-table-row.k-state-selected .k-table-td,.kit-grid ::ng-deep .k-table-row.k-selected .k-table-td{background:none;box-shadow:none}.kit-grid ::ng-deep .k-table-row .k-table-td{border-bottom-width:1px;box-shadow:none}.kit-grid ::ng-deep .k-table-alt-row{background:none}.kit-grid ::ng-deep .k-table-td{padding:12px 8px;border-color:var(--ui-kit-color-grey-11);border-bottom-width:1px;background:var(--ui-kit-color-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kit-grid ::ng-deep .k-table-td:first-child{border-inline-start-width:1px}.kit-grid ::ng-deep .k-checkbox-wrap{display:flex;align-items:center;justify-content:center}.kit-grid ::ng-deep .k-checkbox{width:16px;height:16px;border-radius:4px;border:1px solid var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-checkbox.k-indeterminate{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:hover:not(:disabled){border-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:focus,.kit-grid ::ng-deep .k-checkbox.k-focus{box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-grid ::ng-deep .k-checkbox:checked,.kit-grid ::ng-deep .k-checkbox.k-checked{border-color:var(--ui-kit-color-main);background-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-checkbox:checked:disabled,.kit-grid ::ng-deep .k-checkbox.k-checked:disabled{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-checkbox:disabled{border-color:var(--ui-kit-color-grey-11);background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-master-row .k-hierarchy-cell{padding:12px 8px}.kit-grid ::ng-deep .k-master-row.drag-insert-before .k-table-td{box-shadow:inset 0 2px 0 0 var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-master-row.drag-insert-after .k-table-td{box-shadow:inset 0 -2px 0 0 var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-master-row.expanded .k-table-td{color:var(--ui-kit-color-main);border-bottom-color:var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-master-row.expanded .k-icon:before{color:var(--ui-kit-color-main);transform:rotate(90deg)}.kit-grid ::ng-deep .k-detail-row>.k-table-td{border-bottom:1px solid var(--ui-kit-color-grey-10)}.kit-grid ::ng-deep .k-detail-row .k-detail-cell{padding:0}.kit-grid ::ng-deep .k-detail-row .k-pager{margin:0;padding:20px 0;justify-content:flex-start;background:var(--ui-kit-color-white)}.kit-grid ::ng-deep .k-grid-norecords{text-align:left}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon{display:flex;align-items:center;justify-content:center;font-family:WebComponentsIcons,sans-serif;font-size:22px}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:before{content:\"\\e005\";color:var(--ui-kit-color-grey-14);transform:rotate(0);transition:transform .2s ease}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon:hover:before{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-hierarchy-cell .k-icon svg{display:none}.kit-grid ::ng-deep .k-pager{display:flex;justify-content:flex-end;margin-top:20px;padding:2px 0;color:var(--ui-kit-color-grey-10);border:none;background:none}.kit-grid ::ng-deep .k-pager:focus{box-shadow:none}.kit-grid ::ng-deep .k-pager-numbers{gap:8px}.kit-grid ::ng-deep .k-pager-numbers-wrap{gap:8px}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button{width:32px;height:32px;color:var(--ui-kit-color-grey-10);font-size:14px;font-weight:400;border-radius:6px;transition:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:before{opacity:1;background:none;transition:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:after,.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:before{display:none}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-selected{color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-selected:before{border:1px solid var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button:not(.k-selected):hover{background-color:var(--ui-kit-color-grey-11)!important}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button.k-disabled{color:var(--ui-kit-color-grey-12)}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-button-icon:before{content:\"\";display:flex;width:14px;height:14px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;background-color:currentcolor}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-left:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.99976 10.3596L8.99976 9.48071C8.99976 9.42094 8.97046 9.36469 8.92241 9.32954L4.33335 6.00024L8.92241 2.67094C8.97046 2.63579 8.99976 2.57954 8.99976 2.51977L8.99976 1.64086C8.99976 1.56469 8.91304 1.52016 8.85093 1.56469L3.15444 5.69672C2.94819 5.84673 2.94819 6.15376 3.15444 6.30258L8.85093 10.4346C8.91304 10.4803 8.99976 10.4358 8.99976 10.3596Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.99976 10.3596L8.99976 9.48071C8.99976 9.42094 8.97046 9.36469 8.92241 9.32954L4.33335 6.00024L8.92241 2.67094C8.97046 2.63579 8.99976 2.57954 8.99976 2.51977L8.99976 1.64086C8.99976 1.56469 8.91304 1.52016 8.85093 1.56469L3.15444 5.69672C2.94819 5.84673 2.94819 6.15376 3.15444 6.30258L8.85093 10.4346C8.91304 10.4803 8.99976 10.4358 8.99976 10.3596Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-right:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99976 1.64041L2.99976 2.51932C2.99976 2.57909 3.02905 2.63534 3.0771 2.67049L7.66616 5.99979L3.0771 9.32909C3.02905 9.36424 2.99976 9.42049 2.99976 9.48026L2.99976 10.3592C2.99976 10.4353 3.08647 10.4799 3.14858 10.4353L8.84507 6.30331C9.05132 6.15331 9.05132 5.84627 8.84507 5.69745L3.14858 1.56541C3.08647 1.51971 2.99976 1.56424 2.99976 1.64041Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.99976 1.64041L2.99976 2.51932C2.99976 2.57909 3.02905 2.63534 3.0771 2.67049L7.66616 5.99979L3.0771 9.32909C3.02905 9.36424 2.99976 9.42049 2.99976 9.48026L2.99976 10.3592C2.99976 10.4353 3.08647 10.4799 3.14858 10.4353L8.84507 6.30331C9.05132 6.15331 9.05132 5.84627 8.84507 5.69745L3.14858 1.56541C3.08647 1.51971 2.99976 1.56424 2.99976 1.64041Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-to-left:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1' y1='1' x2='1' y2='11' stroke='black' stroke-width='1'/%3E%3Cpath d='M9 10.36L9 9.48C9 9.42 8.97 9.36 8.92 9.33L4.33 6L8.92 2.67C8.97 2.64 9 2.58 9 2.52L9 1.64C9 1.56 8.91 1.52 8.85 1.56L3.15 5.7C2.95 5.85 2.95 6.15 3.15 6.3L8.85 10.43C8.91 10.48 9 10.44 9 10.36Z' fill='black'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1' y1='1' x2='1' y2='11' stroke='black' stroke-width='1'/%3E%3Cpath d='M9 10.36L9 9.48C9 9.42 8.97 9.36 8.92 9.33L4.33 6L8.92 2.67C8.97 2.64 9 2.58 9 2.52L9 1.64C9 1.56 8.91 1.52 8.85 1.56L3.15 5.7C2.95 5.85 2.95 6.15 3.15 6.3L8.85 10.43C8.91 10.48 9 10.44 9 10.36Z' fill='black'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-numbers-wrap .k-svg-i-caret-alt-to-right:before{-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 1.64L3 2.52C3 2.58 3.03 2.64 3.08 2.67L7.67 6L3.08 9.33C3.03 9.36 3 9.42 3 9.48L3 10.36C3 10.44 3.09 10.48 3.15 10.43L8.85 6.3C9.05 6.15 9.05 5.85 8.85 5.7L3.15 1.56C3.09 1.52 3 1.56 3 1.64Z' fill='black'/%3E%3Cline x1='11' y1='1' x2='11' y2='11' stroke='black' stroke-width='1'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 1.64L3 2.52C3 2.58 3.03 2.64 3.08 2.67L7.67 6L3.08 9.33C3.03 9.36 3 9.42 3 9.48L3 10.36C3 10.44 3.09 10.48 3.15 10.43L8.85 6.3C9.05 6.15 9.05 5.85 8.85 5.7L3.15 1.56C3.09 1.52 3 1.56 3 1.64Z' fill='black'/%3E%3Cline x1='11' y1='1' x2='11' y2='11' stroke='black' stroke-width='1'/%3E%3C/svg%3E\")}.kit-grid ::ng-deep .k-pager-nav{width:32px;height:32px;border-radius:6px}.kit-grid ::ng-deep .k-pager-nav:before,.kit-grid ::ng-deep .k-pager-nav:after{display:none!important}.kit-grid ::ng-deep .k-pager-nav:not(.k-disabled):hover{background:var(--ui-kit-color-grey-11)!important}.kit-grid ::ng-deep .k-pager-info{flex:initial;border-radius:8px;background-color:#fff;padding:5px 16px}.kit-grid ::ng-deep .k-pager .k-button-icon svg{display:none}.kit-grid ::ng-deep .k-grid-aria-root{position:relative}.kit-grid ::ng-deep .k-loading-color{background:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .expand-disabled .k-hierarchy-cell a{pointer-events:none;opacity:.3}.kit-grid ::ng-deep .checkbox-hidden .k-checkbox-wrap{visibility:hidden}.kit-grid ::ng-deep .k-picker{height:32px;border-radius:4px;border:1px solid var(--ui-kit-color-grey-11);background:var(--ui-kit-color-white)}.kit-grid ::ng-deep .k-picker:hover{border-color:var(--ui-kit-color-hover)}.kit-grid ::ng-deep .k-picker.k-focus{border:1px solid var(--ui-kit-color-main);box-shadow:0 0 0 2px var(--ui-kit-color-focus)}.kit-grid ::ng-deep .k-picker[aria-expanded=true] .k-svg-i-caret-alt-down:before{transform:rotate(180deg)}.kit-grid ::ng-deep .k-picker .k-svg-i-caret-alt-down:before{content:\"\\e015\";color:var(--ui-kit-color-grey-12);font-family:WebComponentsIcons,sans-serif}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox{border-radius:50%}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:after{content:\"\";display:block;width:8px;height:8px;border-radius:50%;background-color:transparent;margin:auto;position:absolute;inset:0}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked{background-color:var(--ui-kit-color-grey-13)}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked:after,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked:after{background-color:var(--ui-kit-color-main)}.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox:checked:disabled:after,.kit-grid ::ng-deep .k-grid.kit-grid--radio .k-checkbox.k-checked:disabled:after{background-color:var(--ui-kit-color-grey-11)}::ng-deep .kit-grid-row-hint{overflow:hidden;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;background:var(--ui-kit-color-white);box-shadow:0 10px 24px #11182724;z-index:10002}::ng-deep .kit-grid-row-hint .k-table-td{padding:10px 8px;border-color:var(--ui-kit-color-grey-11);color:var(--ui-kit-color-grey-10);background:var(--ui-kit-color-white)}::ng-deep .kit-grid.k-grid:has(.k-grid-norecords) .k-pager-numbers-wrap{display:none}::ng-deep .k-animation-container .k-list-item.k-selected{background-color:var(--ui-kit-color-main);color:var(--ui-kit-color-white)}::ng-deep .k-animation-container .k-list-item:hover:not(.k-selected){color:var(--ui-kit-color-main)}\n"] }]
|
|
5971
6076
|
}], ctorParameters: () => [], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], gridDataBinding: [{ type: i0.Input, args: [{ isSignal: true, alias: "gridDataBinding", required: false }] }], sortable: [{
|
|
5972
6077
|
type: Input
|
|
5973
6078
|
}], sort: [{
|
|
@@ -7688,192 +7793,187 @@ class KitCardDetailsComponent {
|
|
|
7688
7793
|
this.isLoading = signal(true, ...(ngDevMode ? [{ debugName: "isLoading" }] : /* istanbul ignore next */ []));
|
|
7689
7794
|
this.cardData = signal([], ...(ngDevMode ? [{ debugName: "cardData" }] : /* istanbul ignore next */ []));
|
|
7690
7795
|
this.total = signal(0, ...(ngDevMode ? [{ debugName: "total" }] : /* istanbul ignore next */ []));
|
|
7691
|
-
this.dataState = signal({
|
|
7692
|
-
skip: 0,
|
|
7693
|
-
take: 0,
|
|
7694
|
-
}, ...(ngDevMode ? [{ debugName: "dataState" }] : /* istanbul ignore next */ []));
|
|
7796
|
+
this.dataState = signal({ skip: 0, take: 0 }, ...(ngDevMode ? [{ debugName: "dataState" }] : /* istanbul ignore next */ []));
|
|
7695
7797
|
this.newCreatedCards = signal([], ...(ngDevMode ? [{ debugName: "newCreatedCards" }] : /* istanbul ignore next */ []));
|
|
7696
|
-
this.
|
|
7697
|
-
|
|
7798
|
+
this.showDetails = signal(false, ...(ngDevMode ? [{ debugName: "showDetails" }] : /* istanbul ignore next */ []));
|
|
7799
|
+
this.skipNewCreatedCardFilter = computed(() => this.newCreatedCards().length
|
|
7800
|
+
? {
|
|
7698
7801
|
logic: KitFilterLogic.AND,
|
|
7699
7802
|
filters: this.newCreatedCards().map(card => ({
|
|
7700
7803
|
field: 'id',
|
|
7701
7804
|
operator: KitFilterOperator.NEQ,
|
|
7702
7805
|
value: card.id,
|
|
7703
7806
|
})),
|
|
7704
|
-
}
|
|
7705
|
-
|
|
7706
|
-
this.
|
|
7707
|
-
this.showDetails = false;
|
|
7807
|
+
}
|
|
7808
|
+
: {}, ...(ngDevMode ? [{ debugName: "skipNewCreatedCardFilter" }] : /* istanbul ignore next */ []));
|
|
7809
|
+
this.shouldProcessNextData = false;
|
|
7708
7810
|
}
|
|
7709
7811
|
ngOnInit() {
|
|
7710
|
-
this.dataState.update(state => ({
|
|
7711
|
-
|
|
7712
|
-
|
|
7713
|
-
|
|
7714
|
-
this.
|
|
7715
|
-
this.initSearchSubscription();
|
|
7716
|
-
this.initStateFromUrl();
|
|
7812
|
+
this.dataState.update(state => ({ ...state, take: this.pageSize() }));
|
|
7813
|
+
this.initRouteListener();
|
|
7814
|
+
this.initDataListener();
|
|
7815
|
+
this.initSearchListener();
|
|
7816
|
+
this.restoreStateFromUrl();
|
|
7717
7817
|
}
|
|
7718
7818
|
loadMoreData() {
|
|
7719
|
-
this.
|
|
7720
|
-
this.
|
|
7721
|
-
...state,
|
|
7722
|
-
skip: (this.dataState()?.skip ?? 0) + this.pageSize(),
|
|
7723
|
-
take: this.pageSize(),
|
|
7724
|
-
}));
|
|
7725
|
-
this.updateData();
|
|
7819
|
+
this.dataState.update(state => ({ ...state, skip: (state.skip ?? 0) + this.pageSize(), take: this.pageSize() }));
|
|
7820
|
+
this.fetchData();
|
|
7726
7821
|
}
|
|
7727
7822
|
onCardClick(card) {
|
|
7728
|
-
|
|
7729
|
-
this.dataState.update(state => ({ ...state, activeId: normalizedId }));
|
|
7730
|
-
this.navigateToCard(normalizedId);
|
|
7731
|
-
this.cardClicked.emit({ ...card, id: normalizedId });
|
|
7823
|
+
this.selectCard(card, true);
|
|
7732
7824
|
}
|
|
7733
7825
|
appendCard(card, navigateToCard = true) {
|
|
7734
|
-
this.cardData.
|
|
7735
|
-
...
|
|
7826
|
+
this.cardData.update(cards => [
|
|
7827
|
+
...cards,
|
|
7736
7828
|
card,
|
|
7737
7829
|
]);
|
|
7738
|
-
this.newCreatedCards.
|
|
7739
|
-
...
|
|
7830
|
+
this.newCreatedCards.update(cards => [
|
|
7831
|
+
...cards,
|
|
7740
7832
|
card,
|
|
7741
7833
|
]);
|
|
7742
|
-
this.dataState.update(state => ({
|
|
7743
|
-
|
|
7744
|
-
filters: this.skipNewCreatedCardFilter(),
|
|
7745
|
-
}));
|
|
7746
|
-
this.total.set(this.total() + 1);
|
|
7834
|
+
this.dataState.update(state => ({ ...state, filters: this.skipNewCreatedCardFilter() }));
|
|
7835
|
+
this.total.update(total => total + 1);
|
|
7747
7836
|
if (navigateToCard) {
|
|
7748
|
-
this.
|
|
7749
|
-
this.showDetails = true;
|
|
7837
|
+
this.selectCard(card, true);
|
|
7750
7838
|
}
|
|
7751
7839
|
}
|
|
7752
7840
|
deleteCard(cardId) {
|
|
7753
7841
|
this.isLoading.set(true);
|
|
7754
|
-
const
|
|
7755
|
-
const deletedIndex = this.cardData().findIndex(card =>
|
|
7756
|
-
this.cardData.
|
|
7757
|
-
this.total.
|
|
7758
|
-
const
|
|
7759
|
-
const nextCard = remainingCards.length ? remainingCards[deletedIndex] ?? remainingCards[deletedIndex - 1] : null;
|
|
7842
|
+
const id = String(cardId);
|
|
7843
|
+
const deletedIndex = this.cardData().findIndex(card => String(card.id) === id);
|
|
7844
|
+
this.cardData.update(cards => cards.filter(card => String(card.id) !== id));
|
|
7845
|
+
this.total.update(total => total - 1);
|
|
7846
|
+
const next = this.cardData()[deletedIndex] ?? this.cardData()[deletedIndex - 1] ?? null;
|
|
7760
7847
|
if (!this.cardData().length) {
|
|
7761
|
-
this.showDetails
|
|
7848
|
+
this.showDetails.set(false);
|
|
7762
7849
|
}
|
|
7763
|
-
if (this.newCreatedCards().some(card =>
|
|
7764
|
-
this.
|
|
7850
|
+
if (this.newCreatedCards().some(card => String(card.id) === id)) {
|
|
7851
|
+
this.newCreatedCards.update(cards => cards.filter(card => String(card.id) !== id));
|
|
7852
|
+
this.dataState.update(state => ({ ...state, filters: this.skipNewCreatedCardFilter() }));
|
|
7765
7853
|
this.isLoading.set(false);
|
|
7766
|
-
if (
|
|
7767
|
-
this.
|
|
7854
|
+
if (next) {
|
|
7855
|
+
this.selectCard(next, true);
|
|
7768
7856
|
}
|
|
7769
7857
|
return;
|
|
7770
7858
|
}
|
|
7771
|
-
const
|
|
7772
|
-
if (
|
|
7859
|
+
const loadedCount = (this.dataState().take ?? this.pageSize()) + (this.dataState().skip ?? 0) - 1;
|
|
7860
|
+
if (loadedCount >= this.total()) {
|
|
7773
7861
|
this.isLoading.set(false);
|
|
7774
|
-
if (
|
|
7775
|
-
this.
|
|
7862
|
+
if (next) {
|
|
7863
|
+
this.selectCard(next, true);
|
|
7776
7864
|
}
|
|
7777
7865
|
return;
|
|
7778
7866
|
}
|
|
7779
|
-
this.showDetails
|
|
7780
|
-
this.
|
|
7867
|
+
this.showDetails.set(false);
|
|
7868
|
+
this.shouldProcessNextData = true;
|
|
7869
|
+
this.navigateToParent();
|
|
7781
7870
|
this.dataStateChanged.emit({
|
|
7782
|
-
skip:
|
|
7871
|
+
skip: loadedCount,
|
|
7783
7872
|
take: 1,
|
|
7784
7873
|
filters: this.skipNewCreatedCardFilter(),
|
|
7785
7874
|
search: this.dataState().search,
|
|
7786
7875
|
});
|
|
7787
7876
|
}
|
|
7788
7877
|
updateSpecificCardData(cardData) {
|
|
7789
|
-
this.cardData.
|
|
7878
|
+
this.cardData.update(cards => cards.map(card => String(card.id) === String(cardData.id) ? cardData : card));
|
|
7790
7879
|
}
|
|
7791
7880
|
scrollToCardById(id) {
|
|
7792
|
-
|
|
7793
|
-
|
|
7794
|
-
|
|
7881
|
+
this.host.nativeElement
|
|
7882
|
+
.querySelector('.kit-card-details .cards')
|
|
7883
|
+
?.querySelector(`[data-card-id="${id}"]`)
|
|
7884
|
+
?.scrollIntoView({ behavior: 'smooth', block: 'center', inline: 'nearest' });
|
|
7885
|
+
}
|
|
7886
|
+
initDataListener() {
|
|
7887
|
+
this.cardData$().pipe(filter(({ loading }) => !loading), takeUntilDestroyed(this.destroyRef)).subscribe(({ results }) => {
|
|
7888
|
+
if (!this.shouldProcessNextData) {
|
|
7889
|
+
return;
|
|
7890
|
+
}
|
|
7891
|
+
this.shouldProcessNextData = false;
|
|
7892
|
+
this.cardData.update(cards => [
|
|
7893
|
+
...cards,
|
|
7894
|
+
...results.data,
|
|
7895
|
+
]);
|
|
7896
|
+
this.total.set(results.total + this.newCreatedCards().length);
|
|
7897
|
+
this.isLoading.set(false);
|
|
7898
|
+
const activeId = this.getActiveIdFromRoute();
|
|
7899
|
+
if (!this.selectCardByRouteId(activeId) && !this.showDetails() && results.data.length) {
|
|
7900
|
+
this.selectCard(results.data[0], true);
|
|
7901
|
+
requestAnimationFrame(() => this.scrollToCardById(String(results.data[0].id)));
|
|
7902
|
+
}
|
|
7903
|
+
});
|
|
7904
|
+
}
|
|
7905
|
+
initRouteListener() {
|
|
7906
|
+
this.router.events.pipe(filter((event) => event instanceof NavigationEnd), startWith(null), map(() => this.getActiveIdFromRoute()), distinctUntilChanged(), takeUntilDestroyed(this.destroyRef)).subscribe(activeId => this.selectCardByRouteId(activeId));
|
|
7795
7907
|
}
|
|
7796
|
-
|
|
7797
|
-
outputToObservable(this.kitTextboxComponent().changed).pipe(debounceTime(500),
|
|
7908
|
+
initSearchListener() {
|
|
7909
|
+
outputToObservable(this.kitTextboxComponent().changed).pipe(debounceTime(500), map(value => value.trim()), takeUntilDestroyed(this.destroyRef)).subscribe(search => {
|
|
7798
7910
|
this.cardData.set([]);
|
|
7799
7911
|
this.newCreatedCards.set([]);
|
|
7800
|
-
this.
|
|
7801
|
-
this.
|
|
7802
|
-
this.
|
|
7803
|
-
this.updateData();
|
|
7912
|
+
this.showDetails.set(false);
|
|
7913
|
+
this.dataState.set({ skip: 0, take: this.pageSize(), search: search || undefined });
|
|
7914
|
+
this.fetchData();
|
|
7804
7915
|
});
|
|
7805
7916
|
}
|
|
7806
|
-
|
|
7807
|
-
const
|
|
7917
|
+
restoreStateFromUrl() {
|
|
7918
|
+
const params = this.router.routerState.snapshot.root.queryParams;
|
|
7919
|
+
const skip = params.skip ? Number(params.skip) : 0;
|
|
7920
|
+
const search = params.search ? String(params.search) : undefined;
|
|
7808
7921
|
if (search) {
|
|
7809
7922
|
this.kitTextboxComponent().writeValue(search);
|
|
7810
|
-
if (skip && skip > 0) {
|
|
7811
|
-
this.dataStateChanged.emit({ skip: 0, take: skip + this.pageSize(), search });
|
|
7812
|
-
this.dataState.set({ skip, take: this.pageSize(), search });
|
|
7813
|
-
}
|
|
7814
|
-
else {
|
|
7815
|
-
this.isLoading.set(false);
|
|
7816
|
-
this.kitTextboxComponent().changed.emit(search);
|
|
7817
|
-
}
|
|
7818
|
-
return;
|
|
7819
7923
|
}
|
|
7820
|
-
if (skip
|
|
7821
|
-
this.
|
|
7822
|
-
this.
|
|
7924
|
+
if (skip > 0 || search) {
|
|
7925
|
+
this.dataState.set({ skip, take: this.pageSize(), search });
|
|
7926
|
+
this.fetchData({ skip: 0, take: skip + this.pageSize(), search }, false);
|
|
7823
7927
|
return;
|
|
7824
7928
|
}
|
|
7825
|
-
this.
|
|
7826
|
-
}
|
|
7827
|
-
initCardDataSubscription() {
|
|
7828
|
-
const { activeId } = this.getStateFromUrl();
|
|
7829
|
-
this.cardData$().pipe(takeUntilDestroyed(this.destroyRef), filter(({ loading }) => !loading)).subscribe(data => {
|
|
7830
|
-
if (this.shouldAppendFetchedData) {
|
|
7831
|
-
this.cardData.set([
|
|
7832
|
-
...this.cardData(),
|
|
7833
|
-
...data.results.data,
|
|
7834
|
-
]);
|
|
7835
|
-
this.total.set(data.results.total + this.newCreatedCards().length);
|
|
7836
|
-
this.shouldAppendFetchedData = false;
|
|
7837
|
-
if (activeId && !this.dataState().activeId) {
|
|
7838
|
-
const activeCard = this.cardData().find(item => this.normalizeCardId(item.id) === activeId);
|
|
7839
|
-
if (activeCard) {
|
|
7840
|
-
this.selectNewLoadedCard(activeCard);
|
|
7841
|
-
return;
|
|
7842
|
-
}
|
|
7843
|
-
}
|
|
7844
|
-
if (!this.showDetails && data.results.data.length) {
|
|
7845
|
-
this.selectNewLoadedCard(data.results.data[0]);
|
|
7846
|
-
}
|
|
7847
|
-
}
|
|
7848
|
-
this.isLoading.set(false);
|
|
7849
|
-
});
|
|
7929
|
+
this.fetchData();
|
|
7850
7930
|
}
|
|
7851
|
-
|
|
7931
|
+
fetchData(emitState, writeToUrl = true) {
|
|
7852
7932
|
this.isLoading.set(true);
|
|
7853
|
-
this.
|
|
7854
|
-
|
|
7933
|
+
this.shouldProcessNextData = true;
|
|
7934
|
+
if (writeToUrl) {
|
|
7935
|
+
this.writeQueryParamsToUrl(this.dataState());
|
|
7936
|
+
}
|
|
7937
|
+
this.dataStateChanged.emit(emitState ?? this.dataState());
|
|
7855
7938
|
}
|
|
7856
|
-
|
|
7857
|
-
|
|
7939
|
+
selectCard(card, navigate) {
|
|
7940
|
+
const id = String(card.id);
|
|
7941
|
+
this.isLoading.set(false);
|
|
7942
|
+
this.showDetails.set(true);
|
|
7943
|
+
this.dataState.update(state => ({ ...state, activeId: id }));
|
|
7944
|
+
if (navigate) {
|
|
7945
|
+
this.router.navigate([id], { relativeTo: this.activatedRoute, queryParamsHandling: 'preserve' });
|
|
7946
|
+
}
|
|
7947
|
+
this.cardClicked.emit({ ...card, id });
|
|
7858
7948
|
}
|
|
7859
|
-
|
|
7860
|
-
|
|
7861
|
-
|
|
7862
|
-
|
|
7863
|
-
|
|
7864
|
-
|
|
7949
|
+
selectCardByRouteId(activeId) {
|
|
7950
|
+
if (!activeId) {
|
|
7951
|
+
return false;
|
|
7952
|
+
}
|
|
7953
|
+
if (this.dataState().activeId === activeId) {
|
|
7954
|
+
this.showDetails.set(true);
|
|
7955
|
+
return true;
|
|
7956
|
+
}
|
|
7957
|
+
const card = this.cardData().find(card => String(card.id) === activeId);
|
|
7958
|
+
if (!card) {
|
|
7959
|
+
return false;
|
|
7960
|
+
}
|
|
7961
|
+
this.selectCard(card, false);
|
|
7962
|
+
requestAnimationFrame(() => this.scrollToCardById(activeId));
|
|
7963
|
+
return true;
|
|
7865
7964
|
}
|
|
7866
|
-
|
|
7867
|
-
|
|
7868
|
-
|
|
7869
|
-
|
|
7870
|
-
|
|
7871
|
-
|
|
7872
|
-
|
|
7873
|
-
|
|
7874
|
-
}
|
|
7965
|
+
getActiveIdFromRoute() {
|
|
7966
|
+
let snapshot = this.activatedRoute.snapshot;
|
|
7967
|
+
let activeId;
|
|
7968
|
+
while (snapshot) {
|
|
7969
|
+
if (snapshot.params.id !== undefined) {
|
|
7970
|
+
activeId = String(snapshot.params.id);
|
|
7971
|
+
}
|
|
7972
|
+
snapshot = snapshot.firstChild;
|
|
7973
|
+
}
|
|
7974
|
+
return activeId;
|
|
7875
7975
|
}
|
|
7876
|
-
|
|
7976
|
+
writeQueryParamsToUrl(state) {
|
|
7877
7977
|
const queryParams = Object.keys(state).reduce((acc, key) => {
|
|
7878
7978
|
const val = state[key];
|
|
7879
7979
|
if (val !== undefined && val !== '' && key !== 'filters' && key !== 'activeId') {
|
|
@@ -7881,41 +7981,25 @@ class KitCardDetailsComponent {
|
|
|
7881
7981
|
}
|
|
7882
7982
|
return acc;
|
|
7883
7983
|
}, {});
|
|
7884
|
-
this.router.navigate([], {
|
|
7885
|
-
relativeTo: this.activatedRoute,
|
|
7886
|
-
queryParams,
|
|
7887
|
-
queryParamsHandling: 'replace',
|
|
7888
|
-
});
|
|
7984
|
+
this.router.navigate([], { relativeTo: this.activatedRoute, queryParams, queryParamsHandling: 'replace' });
|
|
7889
7985
|
}
|
|
7890
|
-
|
|
7891
|
-
this.router.navigate([
|
|
7892
|
-
relativeTo: this.activatedRoute,
|
|
7893
|
-
queryParamsHandling: 'preserve',
|
|
7894
|
-
});
|
|
7895
|
-
}
|
|
7896
|
-
selectNewLoadedCard(card) {
|
|
7897
|
-
this.isLoading.set(false);
|
|
7898
|
-
this.showDetails = true;
|
|
7899
|
-
this.onCardClick(card);
|
|
7900
|
-
requestAnimationFrame(() => {
|
|
7901
|
-
this.scrollToCardById(card.id.toString());
|
|
7902
|
-
});
|
|
7986
|
+
navigateToParent() {
|
|
7987
|
+
this.router.navigate(['./'], { relativeTo: this.activatedRoute, queryParamsHandling: 'preserve' });
|
|
7903
7988
|
}
|
|
7904
7989
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitCardDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7905
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitCardDetailsComponent, isStandalone: true, selector: "kit-card-details", inputs: { cardData$: { classPropertyName: "cardData$", publicName: "cardData$", isSignal: true, isRequired: true, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, cardSkeletonConfig: { classPropertyName: "cardSkeletonConfig", publicName: "cardSkeletonConfig", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dataStateChanged: "dataStateChanged", cardClicked: "cardClicked" }, queries: [{ propertyName: "cardElement", first: true, predicate: ["cardElement"], descendants: true, isSignal: true }, { propertyName: "headerActions", first: true, predicate: ["headerActions"], descendants: true, isSignal: true }, { propertyName: "details", first: true, predicate: ["details"], descendants: true, isSignal: true }], viewQueries: [{ propertyName: "kitTextboxComponent", first: true, predicate: KitTextboxComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"kit-card-details\">\n <div class=\"header\">\n <kit-entity-title class=\"title\">\n {{ title() }}\n </kit-entity-title>\n <ng-container *ngTemplateOutlet=\"headerActions()\" />\n </div>\n\n <div class=\"content\">\n <div class=\"left-panel\">\n <div class=\"textbox-wrapper\">\n <kit-textbox class=\"search-textbox\"\n [placeholder]=\"'kit.search.placeholder' | translate\"\n [icon]=\"kitSvgIcon.SEARCH\"\n [clearButton]=\"true\"\n [showStateIcon]=\"false\" />\n </div>\n\n <div class=\"cards\">\n @if (
|
|
7990
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitCardDetailsComponent, isStandalone: true, selector: "kit-card-details", inputs: { cardData$: { classPropertyName: "cardData$", publicName: "cardData$", isSignal: true, isRequired: true, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, cardSkeletonConfig: { classPropertyName: "cardSkeletonConfig", publicName: "cardSkeletonConfig", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dataStateChanged: "dataStateChanged", cardClicked: "cardClicked" }, queries: [{ propertyName: "cardElement", first: true, predicate: ["cardElement"], descendants: true, isSignal: true }, { propertyName: "headerActions", first: true, predicate: ["headerActions"], descendants: true, isSignal: true }, { propertyName: "details", first: true, predicate: ["details"], descendants: true, isSignal: true }], viewQueries: [{ propertyName: "kitTextboxComponent", first: true, predicate: KitTextboxComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"kit-card-details\">\n <div class=\"header\">\n <kit-entity-title class=\"title\">\n {{ title() }}\n </kit-entity-title>\n <ng-container *ngTemplateOutlet=\"headerActions()\" />\n </div>\n\n <div class=\"content\">\n <div class=\"left-panel\">\n <div class=\"textbox-wrapper\">\n <kit-textbox class=\"search-textbox\"\n [placeholder]=\"'kit.search.placeholder' | translate\"\n [icon]=\"kitSvgIcon.SEARCH\"\n [clearButton]=\"true\"\n [showStateIcon]=\"false\" />\n </div>\n\n <div class=\"cards\">\n @if (isLoading() && cardData().length === 0) {\n @if (cardSkeletonConfig(); as config) {\n @for (_ of [].constructor(config.itemsCount); track $index) {\n <kit-skeleton [width]=\"'100%'\"\n [height]=\"config.itemHeight\" />\n }\n }\n } @else if (cardData().length === 0 && newCreatedCards().length === 0) {\n <kit-empty-section [text]=\"'kit.common.noData' | translate\" />\n } @else {\n @for (card of cardData(); track $index) {\n <div class=\"card\"\n [attr.data-card-id]=\"card.id\"\n [class.active]=\"dataState().activeId === (card.id).toString()\"\n (click)=\"onCardClick(card)\">\n <ng-container *ngTemplateOutlet=\"cardElement(); context: { $implicit: card }\" />\n </div>\n }\n\n @if (cardData().length && (total() > cardData().length)) {\n <kit-button class=\"load-more-btn\"\n [label]=\"'kit.common.loadMore' | translate\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"isLoading() ? kitSvgIcon.RELOAD : kitSvgIcon.CHEVRON_DOWN\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [disabled]=\"isLoading()\"\n (clicked)=\"loadMoreData()\" />\n }\n }\n </div>\n </div>\n\n @if (showDetails()) {\n <div class=\"details\">\n <ng-container *ngTemplateOutlet=\"details(); context: { $implicit: dataState().activeId }\" />\n </div>\n }\n </div>\n</div>\n", styles: [".kit-card-details{height:calc(100vh - var(--ui-kit-header-height) - 50px)}.kit-card-details .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.kit-card-details .content{display:flex;gap:10px;height:calc(100% - 50px)}.kit-card-details .left-panel{width:25%}.kit-card-details .left-panel .textbox-wrapper{margin-right:10px;margin-bottom:20px}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox-input .kit-svg-icon{stroke:var(--ui-kit-color-grey-10);fill:none}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox .k-textbox{background-color:var(--ui-kit-color-white)}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox .k-svg-i-x.k-svg-icon{background-image:none}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox.disabled .k-input-inner{background-color:var(--ui-kit-color-grey-13)}.kit-card-details .left-panel .cards{overflow:hidden auto;padding-right:10px;display:flex;flex-direction:column;gap:10px;height:calc(100% - 60px)}.kit-card-details .left-panel .cards .card{background-color:var(--ui-kit-color-white);border:2px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:8px 10px;cursor:pointer}.kit-card-details .left-panel .cards .card.active{border-color:var(--ui-kit-color-main)}.kit-card-details .left-panel .cards .load-more-btn{margin:10px auto auto}.kit-card-details .details{overflow:hidden auto;flex:1;min-width:0;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:20px;height:100%}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: KitSkeletonComponent, selector: "kit-skeleton", inputs: ["width", "height", "shape", "animation"] }, { kind: "component", type: KitEmptySectionComponent, selector: "kit-empty-section", inputs: ["text"] }, { kind: "component", type: KitButtonComponent, selector: "kit-button", inputs: ["disabled", "label", "type", "icon", "iconType", "kind", "state", "iconPosition", "buttonClass", "active"], outputs: ["clicked"] }, { kind: "component", type: KitTextboxComponent, selector: "kit-textbox", inputs: ["placeholder", "label", "labelTooltip", "defaultValue", "messageIcon", "messageText", "messageTemplate", "disabled", "maxlength", "state", "size", "icon", "clearButton", "showStateIcon", "readonly", "customStateIcon", "type"], outputs: ["defaultValueChange", "disabledChange", "blured", "focused", "changed"] }, { kind: "component", type: KitEntityTitleComponent, selector: "kit-entity-title" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
7906
7991
|
}
|
|
7907
7992
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitCardDetailsComponent, decorators: [{
|
|
7908
7993
|
type: Component,
|
|
7909
7994
|
args: [{ selector: 'kit-card-details', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
7910
|
-
|
|
7995
|
+
NgTemplateOutlet,
|
|
7911
7996
|
KitSkeletonComponent,
|
|
7912
7997
|
KitEmptySectionComponent,
|
|
7913
7998
|
KitButtonComponent,
|
|
7914
7999
|
TranslatePipe,
|
|
7915
8000
|
KitTextboxComponent,
|
|
7916
|
-
NgTemplateOutlet,
|
|
7917
8001
|
KitEntityTitleComponent,
|
|
7918
|
-
], template: "<div class=\"kit-card-details\">\n <div class=\"header\">\n <kit-entity-title class=\"title\">\n {{ title() }}\n </kit-entity-title>\n <ng-container *ngTemplateOutlet=\"headerActions()\" />\n </div>\n\n <div class=\"content\">\n <div class=\"left-panel\">\n <div class=\"textbox-wrapper\">\n <kit-textbox class=\"search-textbox\"\n [placeholder]=\"'kit.search.placeholder' | translate\"\n [icon]=\"kitSvgIcon.SEARCH\"\n [clearButton]=\"true\"\n [showStateIcon]=\"false\" />\n </div>\n\n <div class=\"cards\">\n @if (
|
|
8002
|
+
], template: "<div class=\"kit-card-details\">\n <div class=\"header\">\n <kit-entity-title class=\"title\">\n {{ title() }}\n </kit-entity-title>\n <ng-container *ngTemplateOutlet=\"headerActions()\" />\n </div>\n\n <div class=\"content\">\n <div class=\"left-panel\">\n <div class=\"textbox-wrapper\">\n <kit-textbox class=\"search-textbox\"\n [placeholder]=\"'kit.search.placeholder' | translate\"\n [icon]=\"kitSvgIcon.SEARCH\"\n [clearButton]=\"true\"\n [showStateIcon]=\"false\" />\n </div>\n\n <div class=\"cards\">\n @if (isLoading() && cardData().length === 0) {\n @if (cardSkeletonConfig(); as config) {\n @for (_ of [].constructor(config.itemsCount); track $index) {\n <kit-skeleton [width]=\"'100%'\"\n [height]=\"config.itemHeight\" />\n }\n }\n } @else if (cardData().length === 0 && newCreatedCards().length === 0) {\n <kit-empty-section [text]=\"'kit.common.noData' | translate\" />\n } @else {\n @for (card of cardData(); track $index) {\n <div class=\"card\"\n [attr.data-card-id]=\"card.id\"\n [class.active]=\"dataState().activeId === (card.id).toString()\"\n (click)=\"onCardClick(card)\">\n <ng-container *ngTemplateOutlet=\"cardElement(); context: { $implicit: card }\" />\n </div>\n }\n\n @if (cardData().length && (total() > cardData().length)) {\n <kit-button class=\"load-more-btn\"\n [label]=\"'kit.common.loadMore' | translate\"\n [type]=\"kitButtonType.GHOST\"\n [icon]=\"isLoading() ? kitSvgIcon.RELOAD : kitSvgIcon.CHEVRON_DOWN\"\n [iconPosition]=\"kitButtonIconPosition.LEADING\"\n [disabled]=\"isLoading()\"\n (clicked)=\"loadMoreData()\" />\n }\n }\n </div>\n </div>\n\n @if (showDetails()) {\n <div class=\"details\">\n <ng-container *ngTemplateOutlet=\"details(); context: { $implicit: dataState().activeId }\" />\n </div>\n }\n </div>\n</div>\n", styles: [".kit-card-details{height:calc(100vh - var(--ui-kit-header-height) - 50px)}.kit-card-details .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.kit-card-details .content{display:flex;gap:10px;height:calc(100% - 50px)}.kit-card-details .left-panel{width:25%}.kit-card-details .left-panel .textbox-wrapper{margin-right:10px;margin-bottom:20px}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox-input .kit-svg-icon{stroke:var(--ui-kit-color-grey-10);fill:none}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox .k-textbox{background-color:var(--ui-kit-color-white)}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox .k-svg-i-x.k-svg-icon{background-image:none}.kit-card-details .left-panel .textbox-wrapper ::ng-deep .kit-textbox.disabled .k-input-inner{background-color:var(--ui-kit-color-grey-13)}.kit-card-details .left-panel .cards{overflow:hidden auto;padding-right:10px;display:flex;flex-direction:column;gap:10px;height:calc(100% - 60px)}.kit-card-details .left-panel .cards .card{background-color:var(--ui-kit-color-white);border:2px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:8px 10px;cursor:pointer}.kit-card-details .left-panel .cards .card.active{border-color:var(--ui-kit-color-main)}.kit-card-details .left-panel .cards .load-more-btn{margin:10px auto auto}.kit-card-details .details{overflow:hidden auto;flex:1;min-width:0;border:1px solid var(--ui-kit-color-grey-11);border-radius:8px;padding:20px;height:100%}\n"] }]
|
|
7919
8003
|
}], propDecorators: { cardData$: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardData$", required: true }] }], pageSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSize", required: true }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], cardSkeletonConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "cardSkeletonConfig", required: false }] }], dataStateChanged: [{ type: i0.Output, args: ["dataStateChanged"] }], cardClicked: [{ type: i0.Output, args: ["cardClicked"] }], kitTextboxComponent: [{ type: i0.ViewChild, args: [i0.forwardRef(() => KitTextboxComponent), { isSignal: true }] }], cardElement: [{ type: i0.ContentChild, args: ['cardElement', { isSignal: true }] }], headerActions: [{ type: i0.ContentChild, args: ['headerActions', { isSignal: true }] }], details: [{ type: i0.ContentChild, args: ['details', { isSignal: true }] }] } });
|
|
7920
8004
|
|
|
7921
8005
|
class KitAbstractPayloadAction {
|
|
@@ -11284,7 +11368,7 @@ class KitFilterCheckboxComponent {
|
|
|
11284
11368
|
})));
|
|
11285
11369
|
}
|
|
11286
11370
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitFilterCheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11287
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitFilterCheckboxComponent, isStandalone: true, selector: "kit-filter-checkbox", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null }, translateKeyPrefix: { classPropertyName: "translateKeyPrefix", publicName: "translateKeyPrefix", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, showPopupOnInit: { classPropertyName: "showPopupOnInit", publicName: "showPopupOnInit", isSignal: true, isRequired: false, transformFunction: null }, guidField: { classPropertyName: "guidField", publicName: "guidField", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { items: "itemsChange", filterRemoved: "filterRemoved", filterChanged: "filterChanged" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["toggleButton"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "popupContent", first: true, predicate: ["popupContent"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "popup", first: true, predicate: ["popup"], descendants: true, read: KitPopupComponent, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"kit-filter-checkbox\">\n <kit-pill #toggleButton\n [selectable]=\"!filter().readonly\"\n [selected]=\"popup.isPopupOpen\"\n [removable]=\"!filter().readonly && !!(filter().removable ?? true)\"\n [theme]=\"filter().readonly && kitPillTheme.BLUE || kitPillTheme.DEFAULT\"\n (removed)=\"removeFilter()\"\n (clicked)=\"onPopupToggle()\">\n {{ filter().title | translate }}:\n @if (allSelected()) {\n <div class=\"kit-filter-checkbox-tooltip\"\n kitTooltip\n kitTooltipFilter=\".kit-filter-checkbox-tooltip\"\n [kitTooltipPosition]=\"kitTooltipPosition.RIGHT\"\n [kitTooltipTemplateRef]=\"tooltipTemplate\">\n {{ 'kit.filters.all' | translate }}\n </div>\n } @else if (displayedValues.length > 1) {\n <div class=\"kit-filter-checkbox-tooltip\"\n kitTooltip\n kitTooltipFilter=\".kit-filter-checkbox-tooltip\"\n [kitTooltipPosition]=\"kitTooltipPosition.RIGHT\"\n [kitTooltipTemplateRef]=\"tooltipTemplate\">\n {{ displayedValues[0] }}\n <span class=\"kit-filter-checkbox-tooltip-count\">+{{ displayedValues.length - 1 }}</span>\n </div>\n } @else {\n {{ displayedValues[0] ?? '' }}\n }\n </kit-pill>\n</div>\n\n<kit-popup #popup\n popupClass=\"kit-filter-checkbox-popup\"\n [anchor]=\"anchor()\"\n [content]=\"content\"\n [showFooter]=\"true\"\n [applyButtonLabel]=\"'kit.filters.apply' | translate\"\n [cancelButtonLabel]=\"'kit.filters.clear' | translate\"\n [isApplyButtonDisabled]=\"applyButtonDisabled()\"\n [closePopupOnCancel]=\"false\"\n (applyAction)=\"applyFilter()\"\n (cancelAction)=\"clearAllFilters()\"\n (closed)=\"close()\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"popup-search\"\n [hidden]=\"!isContentOverflowing && !searchTerm()\">\n <kit-textbox [placeholder]=\"'kit.filters.search' | translate\"\n [size]=\"kitTextboxSize.SMALL\"\n [defaultValue]=\"searchTerm()\"\n (changed)=\"searchTerm.set($event)\"\n ></kit-textbox>\n </div>\n\n <div #popupContent\n class=\"popup-content\">\n @if (!searchTerm()) {\n <kit-checkbox class=\"checkbox-item\"\n [label]=\"'kit.filters.all' | translate\"\n [(ngModel)]=\"allSelected\"\n (changed)=\"toggleAll($event)\">\n </kit-checkbox>\n }\n\n @for (item of visibleItems(); track $index) {\n <kit-checkbox class=\"checkbox-item\"\n [label]=\"buildTranslateKey(item.title) | translate\"\n [(ngModel)]=\"item.checked\"\n (changed)=\"onChange($event, item.value)\"\n ></kit-checkbox>\n }\n\n @if (!visibleItems().length) {\n {{ ('kit.filters.noDataFound' | translate) }}\n }\n </div>\n</ng-template>\n\n<ng-template #tooltipTemplate>\n @for (item of (displayedValues.length > 1 && !allSelected() ? displayedValues.slice(1) : displayedValues); track item) {\n <div class=\"kit-filter-checkbox-tooltip-item\">{{ item }}</div>\n }\n</ng-template>\n", styles: [".kit-filter-checkbox-tooltip-count{color:var(--ui-kit-color-main)}.kit-filter-checkbox-tooltip-item{color:var(--ui-kit-color-grey-10);font-size:12px;font-weight:500;line-height:20px}::ng-deep .kit-filter-checkbox-popup .popup-search{margin-bottom:5px;padding-bottom:15px;border-bottom:1px solid var(--ui-kit-color-grey-11)}::ng-deep .kit-filter-checkbox-popup .popup-content{width:172px;max-height:400px;overflow-y:auto}::ng-deep .kit-filter-checkbox-popup .popup-content::-webkit-scrollbar{width:4px;height:4px}::ng-deep .kit-filter-checkbox-popup .popup-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-17);border-radius:2px}::ng-deep .kit-filter-checkbox-popup .popup-content::-webkit-scrollbar-thumb:hover{background-color:var(--ui-kit-color-grey-10)}::ng-deep .kit-filter-checkbox-popup .checkbox-item{display:block;padding:6px 0}\n"], dependencies: [{ kind: "component", type: KitPillComponent, selector: "kit-pill", inputs: ["removable", "selectable", "selected", "type", "theme", "icon", "iconType"], outputs: ["clicked", "removed"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: KitCheckboxComponent, selector: "kit-checkbox", inputs: ["label", "disabled", "checked", "readonly", "state", "messageIcon", "messageText"], outputs: ["changed"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: "pipe", type: i1$e.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11371
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.4", type: KitFilterCheckboxComponent, isStandalone: true, selector: "kit-filter-checkbox", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null }, translateKeyPrefix: { classPropertyName: "translateKeyPrefix", publicName: "translateKeyPrefix", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, showPopupOnInit: { classPropertyName: "showPopupOnInit", publicName: "showPopupOnInit", isSignal: true, isRequired: false, transformFunction: null }, guidField: { classPropertyName: "guidField", publicName: "guidField", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { items: "itemsChange", filterRemoved: "filterRemoved", filterChanged: "filterChanged" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["toggleButton"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "popupContent", first: true, predicate: ["popupContent"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "popup", first: true, predicate: ["popup"], descendants: true, read: KitPopupComponent, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"kit-filter-checkbox\">\n <kit-pill #toggleButton\n [selectable]=\"!filter().readonly\"\n [selected]=\"popup.isPopupOpen\"\n [removable]=\"!filter().readonly && !!(filter().removable ?? true)\"\n [theme]=\"filter().readonly && kitPillTheme.BLUE || kitPillTheme.DEFAULT\"\n (removed)=\"removeFilter()\"\n (clicked)=\"onPopupToggle()\">\n {{ filter().title | translate }}:\n @if (allSelected()) {\n <div class=\"kit-filter-checkbox-tooltip\"\n kitTooltip\n kitTooltipFilter=\".kit-filter-checkbox-tooltip\"\n [kitTooltipPosition]=\"kitTooltipPosition.RIGHT\"\n [kitTooltipTemplateRef]=\"tooltipTemplate\">\n {{ 'kit.filters.all' | translate }}\n </div>\n } @else if (displayedValues.length > 1) {\n <div class=\"kit-filter-checkbox-tooltip\"\n kitTooltip\n kitTooltipFilter=\".kit-filter-checkbox-tooltip\"\n [kitTooltipPosition]=\"kitTooltipPosition.RIGHT\"\n [kitTooltipTemplateRef]=\"tooltipTemplate\">\n {{ displayedValues[0] }}\n <span class=\"kit-filter-checkbox-tooltip-count\">+{{ displayedValues.length - 1 }}</span>\n </div>\n } @else {\n {{ displayedValues[0] ?? '' }}\n }\n </kit-pill>\n</div>\n\n<kit-popup #popup\n popupClass=\"kit-filter-checkbox-popup\"\n [anchor]=\"anchor()\"\n [content]=\"content\"\n [showFooter]=\"true\"\n [applyButtonLabel]=\"'kit.filters.apply' | translate\"\n [cancelButtonLabel]=\"'kit.filters.clear' | translate\"\n [isApplyButtonDisabled]=\"applyButtonDisabled()\"\n [closePopupOnCancel]=\"false\"\n (applyAction)=\"applyFilter()\"\n (cancelAction)=\"clearAllFilters()\"\n (closed)=\"close()\">\n</kit-popup>\n\n<ng-template #content>\n <div class=\"popup-search\"\n [hidden]=\"!isContentOverflowing && !searchTerm()\">\n <kit-textbox [placeholder]=\"'kit.filters.search' | translate\"\n [size]=\"kitTextboxSize.SMALL\"\n [defaultValue]=\"searchTerm()\"\n (changed)=\"searchTerm.set($event)\"\n ></kit-textbox>\n </div>\n\n <div #popupContent\n class=\"popup-content\">\n @if (!searchTerm()) {\n <kit-checkbox class=\"checkbox-item\"\n [label]=\"'kit.filters.all' | translate\"\n [(ngModel)]=\"allSelected\"\n (changed)=\"toggleAll($event)\">\n </kit-checkbox>\n }\n\n @for (item of visibleItems(); track $index) {\n <kit-checkbox class=\"checkbox-item\"\n [label]=\"buildTranslateKey(item.title) | translate\"\n [(ngModel)]=\"item.checked\"\n (changed)=\"onChange($event, item.value)\"\n ></kit-checkbox>\n }\n\n @if (!visibleItems().length) {\n {{ ('kit.filters.noDataFound' | translate) }}\n }\n </div>\n</ng-template>\n\n<ng-template #tooltipTemplate>\n @for (item of (displayedValues.length > 1 && !allSelected() ? displayedValues.slice(1) : displayedValues); track item) {\n <div class=\"kit-filter-checkbox-tooltip-item\">{{ item }}</div>\n }\n</ng-template>\n", styles: [".kit-filter-checkbox-tooltip-count{color:var(--ui-kit-color-main)}.kit-filter-checkbox-tooltip-item{color:var(--ui-kit-color-grey-10);font-size:12px;font-weight:500;line-height:20px}::ng-deep .kit-filter-checkbox-popup .popup-search{margin-bottom:5px;padding-bottom:15px;border-bottom:1px solid var(--ui-kit-color-grey-11)}::ng-deep .kit-filter-checkbox-popup .popup-content{width:172px;max-height:400px;overflow-y:auto}::ng-deep .kit-filter-checkbox-popup .popup-content::-webkit-scrollbar{width:4px;height:4px}::ng-deep .kit-filter-checkbox-popup .popup-content::-webkit-scrollbar-thumb{background-color:var(--ui-kit-color-grey-17);border-radius:2px}::ng-deep .kit-filter-checkbox-popup .popup-content::-webkit-scrollbar-thumb:hover{background-color:var(--ui-kit-color-grey-10)}::ng-deep .kit-filter-checkbox-popup .checkbox-item{display:block;padding:6px 0}\n"], dependencies: [{ kind: "component", type: KitPillComponent, selector: "kit-pill", inputs: ["removable", "selectable", "selected", "type", "theme", "icon", "iconType"], outputs: ["clicked", "removed"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: KitCheckboxComponent, selector: "kit-checkbox", inputs: ["label", "disabled", "checked", "readonly", "state", "messageIcon", "messageText", "indeterminate"], outputs: ["changed"] }, { kind: "directive", type: KitTooltipDirective, selector: "[kitTooltip]", inputs: ["kitTooltipPosition", "kitTooltipFilter", "kitTooltipTemplateRef", "kitTooltipVisible"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: "pipe", type: i1$e.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11288
11372
|
}
|
|
11289
11373
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: KitFilterCheckboxComponent, decorators: [{
|
|
11290
11374
|
type: Component,
|