coer-elements 2.0.74 → 2.0.78
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/components/lib/coer-datebox/coer-datebox.component.d.ts +6 -8
- package/components/lib/coer-grid/coer-grid-body/coer-grid-body.component.d.ts +5 -2
- package/components/lib/coer-grid/coer-grid.extension.d.ts +2 -1
- package/components/lib/coer-modal/coer-modal.component.d.ts +2 -2
- package/components/lib/coer-numberbox/coer-numberbox.component.d.ts +1 -1
- package/components/lib/coer-secretbox/coer-secretbox.component.d.ts +1 -1
- package/components/lib/coer-textarea/coer-textarea.component.d.ts +1 -1
- package/components/lib/coer-textbox/coer-textbox.component.d.ts +1 -1
- package/fesm2022/coer-elements-components.mjs +73 -41
- package/fesm2022/coer-elements-components.mjs.map +1 -1
- package/fesm2022/coer-elements-pages.mjs +2 -2
- package/fesm2022/coer-elements-pages.mjs.map +1 -1
- package/fesm2022/coer-elements-tools.mjs +148 -39
- package/fesm2022/coer-elements-tools.mjs.map +1 -1
- package/interfaces/lib/coer-grid/grid-button-by-row.interface.d.ts +2 -0
- package/package.json +1 -2
- package/styles/coer-elements.css +1 -1
- package/styles/icons/icons-fill.scss +1 -0
- package/svg/fill/modal.fill.svg +4 -0
- package/tools/lib/date-time.tools.d.ts +44 -14
@@ -1,5 +1,5 @@
|
|
1
1
|
import * as i0 from '@angular/core';
|
2
|
-
import { viewChild, input, output, Component, computed, effect, signal, contentChildren, inject, Input, viewChildren, NgModule } from '@angular/core';
|
2
|
+
import { viewChild, input, output, Component, computed, effect, Injectable, signal, contentChildren, inject, Input, viewChildren, NgModule } from '@angular/core';
|
3
3
|
import * as i1 from '@angular/common';
|
4
4
|
import { CommonModule } from '@angular/common';
|
5
5
|
import * as i2$1 from '@angular/router';
|
@@ -28,7 +28,7 @@ import * as i3$3 from '@angular/material/input';
|
|
28
28
|
import { MatInputModule } from '@angular/material/input';
|
29
29
|
import * as i2$7 from '@angular/material/list';
|
30
30
|
import { MatListModule } from '@angular/material/list';
|
31
|
-
import { provideNativeDateAdapter, MatNativeDateModule } from '@angular/material/core';
|
31
|
+
import { NativeDateAdapter, provideNativeDateAdapter, DateAdapter, MAT_DATE_FORMATS, MatNativeDateModule } from '@angular/material/core';
|
32
32
|
import * as i2$5 from '@angular/material/slide-toggle';
|
33
33
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
34
34
|
import * as i3$4 from '@angular/material/tabs';
|
@@ -38,7 +38,7 @@ import * as i3$5 from '@angular/material/toolbar';
|
|
38
38
|
import { MatToolbarModule } from '@angular/material/toolbar';
|
39
39
|
import * as i3$1 from '@angular/material/tooltip';
|
40
40
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
41
|
-
import { Tools, Strings, ControlValue, CONTROL_VALUE,
|
41
|
+
import { Tools, Strings, ControlValue, CONTROL_VALUE, Dates, HTMLElements, Screen, CoerAlert, Files, Collections, Numbers, Source, Menu, Breadcrumbs } from 'coer-elements/tools';
|
42
42
|
import { breakpointSIGNAL, isModalOpenSIGNAL, colorsSIGNAL, menuSelectedSIGNAL, isMenuOpenSIGNAL, isLoadingSIGNAL, navigationSIGNAL } from 'coer-elements/signals';
|
43
43
|
import { Modal } from 'bootstrap';
|
44
44
|
|
@@ -219,8 +219,8 @@ class CoerButton {
|
|
219
219
|
});
|
220
220
|
//computed
|
221
221
|
this._icon = computed(() => {
|
222
|
-
const icon = Tools.
|
223
|
-
switch (
|
222
|
+
const icon = Tools.IsNotOnlyWhiteSpace(this.icon()) ? this.icon() : '';
|
223
|
+
switch (icon) {
|
224
224
|
case 'new': return 'icon-plus';
|
225
225
|
case 'save': return 'icon-disk-floppy icon-fill';
|
226
226
|
case 'cancel': return 'icon-x';
|
@@ -234,8 +234,7 @@ class CoerButton {
|
|
234
234
|
case 'pointer': return 'icon-pointer icon-fill';
|
235
235
|
}
|
236
236
|
return ['icon', 'icon-outline', 'icon-no-border'].includes(this.type())
|
237
|
-
&& Tools.IsOnlyWhiteSpace(icon)
|
238
|
-
? 'icon-pointer icon-fill' : icon;
|
237
|
+
&& Tools.IsOnlyWhiteSpace(icon) ? 'icon-pointer icon-fill' : icon;
|
239
238
|
});
|
240
239
|
//computed
|
241
240
|
this._buttonType = computed(() => {
|
@@ -414,6 +413,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImpor
|
|
414
413
|
args: [{ selector: 'coer-checkbox', providers: [CONTROL_VALUE(CoerCheckbox)], standalone: false, template: "<div [ngClass]=\"{ 'coer-checkbox': true, 'placeholder-glow': isLoading(), 'invisible': isInvisible() }\">\r\n <div [id]=\"_id\" [ngClass]=\"{ 'placeholder': isLoading() }\">\r\n <mat-checkbox\r\n [ngModel]=\"_value\"\r\n [indeterminate]=\"false\"\r\n [labelPosition]=\"labelPosition()\"\r\n [disabled]=\"!_isEnable()\"\r\n (change)=\"this.SetValue($event.checked)\"\r\n >{{ label() }}</mat-checkbox>\r\n </div>\r\n</div>", styles: ["div.coer-checkbox{display:inline-flex!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox{padding:10px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background{background-color:var(--smoke)!important;border-radius:5px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__ripple{width:30px!important;height:30px!important;top:5px!important;left:5px!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mat-ripple.mat-mdc-checkbox-ripple.mat-mdc-focus-indicator *{display:none!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label:empty{display:none!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label{padding-top:3px!important;padding-left:0!important}div.coer-checkbox mat-checkbox div.mdc-form-field.mat-internal-form-field label.mdc-label::selection{background-color:transparent!important}div.coer-checkbox mat-checkbox.mat-mdc-checkbox-checked div.mdc-form-field.mat-internal-form-field div.mdc-checkbox div.mdc-checkbox__background{background-color:var(--primary-inner)!important;border-color:var(--primary-inner)!important}\n"] }]
|
415
414
|
}], ctorParameters: () => [] });
|
416
415
|
|
416
|
+
class DATE_ADAPTER extends NativeDateAdapter {
|
417
|
+
format(date) {
|
418
|
+
return Dates.GetFormatDate(date);
|
419
|
+
}
|
420
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: DATE_ADAPTER, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
421
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: DATE_ADAPTER }); }
|
422
|
+
}
|
423
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: DATE_ADAPTER, decorators: [{
|
424
|
+
type: Injectable
|
425
|
+
}] });
|
417
426
|
class CoerDateBox extends ControlValue {
|
418
427
|
//Constructor
|
419
428
|
constructor() {
|
@@ -569,32 +578,17 @@ class CoerDateBox extends ControlValue {
|
|
569
578
|
return Tools.IsNotNull(this._externalButton()?.isDisabled)
|
570
579
|
? this._externalButton().isDisabled : false;
|
571
580
|
}
|
581
|
+
//getter
|
582
|
+
get _valueDate() {
|
583
|
+
return typeof this._value === 'string' ? new Date(this._value) : this._value;
|
584
|
+
}
|
572
585
|
//ControlValueAccessor
|
573
586
|
SetValue(value) {
|
574
|
-
|
575
|
-
value
|
576
|
-
if (Tools.IsNotNull(this._value) && Tools.IsNull(value)) {
|
577
|
-
this.onChangeValue.emit(null);
|
578
|
-
}
|
579
|
-
if (Tools.IsNotOnlyWhiteSpace(value)) {
|
580
|
-
if (Dates.IsValidDate(value)) {
|
581
|
-
value = Dates.GetFormatDB(value);
|
582
|
-
this._value = new Date(value);
|
583
|
-
this.onChangeValue.emit(Dates.GetFormatDB(this._value));
|
584
|
-
}
|
585
|
-
else
|
586
|
-
this._value = null;
|
587
|
-
}
|
588
|
-
else
|
589
|
-
this._value = null;
|
587
|
+
this._value = Tools.IsNotOnlyWhiteSpace(value) && Dates.IsValidDate(value)
|
588
|
+
? Dates.GetFormatDB(value) : null;
|
590
589
|
if (typeof this._UpdateValue === 'function') {
|
591
590
|
this._UpdateValue(this._value);
|
592
|
-
|
593
|
-
}
|
594
|
-
/** */
|
595
|
-
writeValue(value) {
|
596
|
-
if (Tools.IsNotOnlyWhiteSpace(value)) {
|
597
|
-
this.SetValue(value);
|
591
|
+
this.onChangeValue.emit(this._value);
|
598
592
|
}
|
599
593
|
}
|
600
594
|
/** */
|
@@ -665,16 +659,46 @@ class CoerDateBox extends ControlValue {
|
|
665
659
|
}
|
666
660
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: CoerDateBox, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
667
661
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: CoerDateBox, isStandalone: false, selector: "coer-datebox", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, textPosition: { classPropertyName: "textPosition", publicName: "textPosition", isSignal: true, isRequired: false, transformFunction: null }, isWritable: { classPropertyName: "isWritable", publicName: "isWritable", isSignal: true, isRequired: false, transformFunction: null }, isInvalid: { classPropertyName: "isInvalid", publicName: "isInvalid", isSignal: true, isRequired: false, transformFunction: null }, isValid: { classPropertyName: "isValid", publicName: "isValid", isSignal: true, isRequired: false, transformFunction: null }, externalButton: { classPropertyName: "externalButton", publicName: "externalButton", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, isReadonly: { classPropertyName: "isReadonly", publicName: "isReadonly", isSignal: true, isRequired: false, transformFunction: null }, isInvisible: { classPropertyName: "isInvisible", publicName: "isInvisible", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null }, marginTop: { classPropertyName: "marginTop", publicName: "marginTop", isSignal: true, isRequired: false, transformFunction: null }, marginRight: { classPropertyName: "marginRight", publicName: "marginRight", isSignal: true, isRequired: false, transformFunction: null }, marginBottom: { classPropertyName: "marginBottom", publicName: "marginBottom", isSignal: true, isRequired: false, transformFunction: null }, marginLeft: { classPropertyName: "marginLeft", publicName: "marginLeft", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onOpen: "onOpen", onClose: "onClose", onChangeValue: "onChangeValue", onClickExternalButton: "onClickExternalButton" }, providers: [
|
668
|
-
provideNativeDateAdapter(),
|
669
662
|
CONTROL_VALUE(CoerDateBox),
|
670
|
-
|
663
|
+
provideNativeDateAdapter(),
|
664
|
+
{ provide: DateAdapter, useClass: DATE_ADAPTER },
|
665
|
+
{
|
666
|
+
provide: MAT_DATE_FORMATS,
|
667
|
+
useValue: {
|
668
|
+
parse: {
|
669
|
+
dateInput: 'dd-MM-yyyy',
|
670
|
+
},
|
671
|
+
display: {
|
672
|
+
dateInput: 'dd-MM-yyyy',
|
673
|
+
monthYearLabel: 'MMMM yyyy',
|
674
|
+
dateA11yLabel: 'dd-MM-yyyy',
|
675
|
+
monthYearA11yLabel: 'MMMM yyyy',
|
676
|
+
},
|
677
|
+
}
|
678
|
+
},
|
679
|
+
], viewQueries: [{ propertyName: "_datepicker", first: true, predicate: ["datepicker"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div [id]=\"_id + '-coer-date-box'\" class=\"coer-form-field-component\"> \r\n <div class=\"coer-form-field-content\" [ngStyle]=\"{ \r\n width : width(), \r\n minWidth : minWidth(), \r\n maxWidth : maxWidth(),\r\n marginTop : marginTop(),\r\n marginRight : marginRight(),\r\n marginBottom: marginBottom(),\r\n marginLeft : marginLeft()\r\n }\">\r\n \r\n @if(_showexternalButtonLeft) {\r\n <div class=\"external-button-container-left\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n color=\"dark\"\r\n [icon]=\"_externalButtonIcon\" \r\n [isDisabled]=\"_isDisabledExternalButton\" \r\n (onClick)=\"_isEnable() ? onClickExternalButton.emit() : null\"\r\n ></coer-button>\r\n </div>\r\n }\r\n \r\n <mat-form-field \r\n [id]=\"_id + '-container'\"\r\n [floatLabel]=\"_floatLabel()\"\r\n [ngClass]=\"{\r\n 'width-100' : true,\r\n 'readonly' : isReadonly() && !isLoading(),\r\n 'display-none': isInvisible() || isLoading()\r\n }\"\r\n [style]=\"{ \r\n 'border-top-left-radius' : (_showexternalButtonLeft ? '0px': '4px'),\r\n 'border-top-right-radius': (_showexternalButtonRight ? '0px': '4px'),\r\n }\">\r\n \r\n <mat-label> {{ label() }} </mat-label>\r\n \r\n <input #coerTextBox matInput \r\n [id]=\"_id\"\r\n [placeholder]=\"placeholder()\"\r\n [matDatepicker]=\"datepicker\" \r\n [disabled]=\"!_isEnable()\"\r\n [readonly]=\"!isWritable()\"\r\n [value]=\"_valueDate\"\r\n (dateChange)=\"SetValue(coerTextBox.value)\"\r\n (dateInput)=\"_dateInput()\"\r\n [style]=\"{ \r\n 'margin-top' : (_floatLabel() == 'auto') ? '15px' : '9px',\r\n 'padding-right': _paddingRight(),\r\n 'text-align' : textPosition()\r\n }\"> \r\n\r\n <mat-datepicker #datepicker (closed)=\"_pickerButton?.click()\"></mat-datepicker>\r\n \r\n @if(!isLoading()) { \r\n <mat-datepicker-toggle matSuffix [for]=\"datepicker\" [disabled]=\"!_isEnable()\">\r\n <mat-icon matDatepickerToggleIcon>\r\n <i class=\"icon-calendar-days icon-fill\"></i> \r\n </mat-icon>\r\n </mat-datepicker-toggle>\r\n } \r\n \r\n @if(isInvalid() || isValid()) {\r\n <span ngClass=\"icon-container\">\r\n @if(isInvalid() && !isDisabled() && !isLoading()) {\r\n <i class=\"icon-circle-exclamation icon-fill\"></i>\r\n }\r\n \r\n @else if(isValid() && !isDisabled() && !isLoading()) {\r\n <i class=\"icon-circle-check icon-fill\"></i>\r\n }\r\n </span>\r\n }\r\n </mat-form-field> \r\n \r\n <!-- Loading || Invisible -->\r\n @if(isLoading() || isInvisible()) {\r\n <div [ngClass]=\"{ \r\n 'width-100': true,\r\n 'border-radius-top-left-5px': true,\r\n 'border-radius-top-right-5px': true,\r\n 'loading' : isLoading(),\r\n 'invisible' : isInvisible() \r\n }\" \r\n > {{ isInvisible() ? '' : _value }} </div>\r\n }\r\n \r\n @if(_showexternalButtonRight) {\r\n <div class=\"external-button-container-right\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n color=\"dark\"\r\n [icon]=\"_externalButtonIcon\" \r\n [isDisabled]=\"_isDisabledExternalButton\" \r\n (onClick)=\"_isEnable() ? onClickExternalButton.emit() : null\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </div>\r\n</div> ", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2$3.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i2$3.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i2$3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i2$3.MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "component", type: i2$4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2$4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3$3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: CoerButton, selector: "coer-button", inputs: ["id", "color", "type", "typeBreakpoint", "icon", "iconPosition", "path", "isLoading", "isDisabled", "isReadonly", "isInvisible", "isHidde", "width", "widthBreakpoint", "minWidth", "maxWidth", "height", "minHeight", "marginTop", "marginRight", "marginBottom", "marginLeft", "tooltip", "tooltipPosition"], outputs: ["onClick"] }] }); }
|
671
680
|
}
|
672
681
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: CoerDateBox, decorators: [{
|
673
682
|
type: Component,
|
674
|
-
args: [{ selector: 'coer-datebox', providers: [
|
675
|
-
provideNativeDateAdapter(),
|
683
|
+
args: [{ selector: 'coer-datebox', standalone: false, providers: [
|
676
684
|
CONTROL_VALUE(CoerDateBox),
|
677
|
-
|
685
|
+
provideNativeDateAdapter(),
|
686
|
+
{ provide: DateAdapter, useClass: DATE_ADAPTER },
|
687
|
+
{
|
688
|
+
provide: MAT_DATE_FORMATS,
|
689
|
+
useValue: {
|
690
|
+
parse: {
|
691
|
+
dateInput: 'dd-MM-yyyy',
|
692
|
+
},
|
693
|
+
display: {
|
694
|
+
dateInput: 'dd-MM-yyyy',
|
695
|
+
monthYearLabel: 'MMMM yyyy',
|
696
|
+
dateA11yLabel: 'dd-MM-yyyy',
|
697
|
+
monthYearA11yLabel: 'MMMM yyyy',
|
698
|
+
},
|
699
|
+
}
|
700
|
+
},
|
701
|
+
], template: "<div [id]=\"_id + '-coer-date-box'\" class=\"coer-form-field-component\"> \r\n <div class=\"coer-form-field-content\" [ngStyle]=\"{ \r\n width : width(), \r\n minWidth : minWidth(), \r\n maxWidth : maxWidth(),\r\n marginTop : marginTop(),\r\n marginRight : marginRight(),\r\n marginBottom: marginBottom(),\r\n marginLeft : marginLeft()\r\n }\">\r\n \r\n @if(_showexternalButtonLeft) {\r\n <div class=\"external-button-container-left\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n color=\"dark\"\r\n [icon]=\"_externalButtonIcon\" \r\n [isDisabled]=\"_isDisabledExternalButton\" \r\n (onClick)=\"_isEnable() ? onClickExternalButton.emit() : null\"\r\n ></coer-button>\r\n </div>\r\n }\r\n \r\n <mat-form-field \r\n [id]=\"_id + '-container'\"\r\n [floatLabel]=\"_floatLabel()\"\r\n [ngClass]=\"{\r\n 'width-100' : true,\r\n 'readonly' : isReadonly() && !isLoading(),\r\n 'display-none': isInvisible() || isLoading()\r\n }\"\r\n [style]=\"{ \r\n 'border-top-left-radius' : (_showexternalButtonLeft ? '0px': '4px'),\r\n 'border-top-right-radius': (_showexternalButtonRight ? '0px': '4px'),\r\n }\">\r\n \r\n <mat-label> {{ label() }} </mat-label>\r\n \r\n <input #coerTextBox matInput \r\n [id]=\"_id\"\r\n [placeholder]=\"placeholder()\"\r\n [matDatepicker]=\"datepicker\" \r\n [disabled]=\"!_isEnable()\"\r\n [readonly]=\"!isWritable()\"\r\n [value]=\"_valueDate\"\r\n (dateChange)=\"SetValue(coerTextBox.value)\"\r\n (dateInput)=\"_dateInput()\"\r\n [style]=\"{ \r\n 'margin-top' : (_floatLabel() == 'auto') ? '15px' : '9px',\r\n 'padding-right': _paddingRight(),\r\n 'text-align' : textPosition()\r\n }\"> \r\n\r\n <mat-datepicker #datepicker (closed)=\"_pickerButton?.click()\"></mat-datepicker>\r\n \r\n @if(!isLoading()) { \r\n <mat-datepicker-toggle matSuffix [for]=\"datepicker\" [disabled]=\"!_isEnable()\">\r\n <mat-icon matDatepickerToggleIcon>\r\n <i class=\"icon-calendar-days icon-fill\"></i> \r\n </mat-icon>\r\n </mat-datepicker-toggle>\r\n } \r\n \r\n @if(isInvalid() || isValid()) {\r\n <span ngClass=\"icon-container\">\r\n @if(isInvalid() && !isDisabled() && !isLoading()) {\r\n <i class=\"icon-circle-exclamation icon-fill\"></i>\r\n }\r\n \r\n @else if(isValid() && !isDisabled() && !isLoading()) {\r\n <i class=\"icon-circle-check icon-fill\"></i>\r\n }\r\n </span>\r\n }\r\n </mat-form-field> \r\n \r\n <!-- Loading || Invisible -->\r\n @if(isLoading() || isInvisible()) {\r\n <div [ngClass]=\"{ \r\n 'width-100': true,\r\n 'border-radius-top-left-5px': true,\r\n 'border-radius-top-right-5px': true,\r\n 'loading' : isLoading(),\r\n 'invisible' : isInvisible() \r\n }\" \r\n > {{ isInvisible() ? '' : _value }} </div>\r\n }\r\n \r\n @if(_showexternalButtonRight) {\r\n <div class=\"external-button-container-right\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n color=\"dark\"\r\n [icon]=\"_externalButtonIcon\" \r\n [isDisabled]=\"_isDisabledExternalButton\" \r\n (onClick)=\"_isEnable() ? onClickExternalButton.emit() : null\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </div>\r\n</div> " }]
|
678
702
|
}], ctorParameters: () => [] });
|
679
703
|
|
680
704
|
class CoerModal {
|
@@ -1110,6 +1134,7 @@ class CoerGridExtension extends ControlValue {
|
|
1110
1134
|
this.onCheckboxChange = output();
|
1111
1135
|
this.onClickDeleteRow = output();
|
1112
1136
|
this.onClickEditRow = output();
|
1137
|
+
this.onClickModalRow = output();
|
1113
1138
|
this.onClickGoRow = output();
|
1114
1139
|
this.onKeyupEnter = output();
|
1115
1140
|
this.onKeyupEnterLast = output();
|
@@ -1284,7 +1309,7 @@ class CoerGridExtension extends ControlValue {
|
|
1284
1309
|
: this.height();
|
1285
1310
|
}
|
1286
1311
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: CoerGridExtension, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
1287
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.1", type: CoerGridExtension, isStandalone: true, selector: "coer-grid-extension", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, cleanColumnName: { classPropertyName: "cleanColumnName", publicName: "cleanColumnName", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: false, isRequired: false, transformFunction: null }, exportButton: { classPropertyName: "exportButton", publicName: "exportButton", isSignal: false, isRequired: false, transformFunction: null }, importButton: { classPropertyName: "importButton", publicName: "importButton", isSignal: false, isRequired: false, transformFunction: null }, addButton: { classPropertyName: "addButton", publicName: "addButton", isSignal: false, isRequired: false, transformFunction: null }, saveButton: { classPropertyName: "saveButton", publicName: "saveButton", isSignal: false, isRequired: false, transformFunction: null }, checkbox: { classPropertyName: "checkbox", publicName: "checkbox", isSignal: false, isRequired: false, transformFunction: null }, buttonByRow: { classPropertyName: "buttonByRow", publicName: "buttonByRow", isSignal: false, isRequired: false, transformFunction: null }, footer: { classPropertyName: "footer", publicName: "footer", isSignal: false, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, isReadonly: { classPropertyName: "isReadonly", publicName: "isReadonly", isSignal: true, isRequired: false, transformFunction: null }, isInvisible: { classPropertyName: "isInvisible", publicName: "isInvisible", isSignal: true, isRequired: false, transformFunction: null }, rowsByPage: { classPropertyName: "rowsByPage", publicName: "rowsByPage", isSignal: true, isRequired: false, transformFunction: null }, tooltipByRow: { classPropertyName: "tooltipByRow", publicName: "tooltipByRow", isSignal: true, isRequired: false, transformFunction: null }, enableSort: { classPropertyName: "enableSort", publicName: "enableSort", isSignal: true, isRequired: false, transformFunction: null }, enableFocusNext: { classPropertyName: "enableFocusNext", publicName: "enableFocusNext", isSignal: true, isRequired: false, transformFunction: null }, enableFocusRow: { classPropertyName: "enableFocusRow", publicName: "enableFocusRow", isSignal: true, isRequired: false, transformFunction: null }, enableHoverRow: { classPropertyName: "enableHoverRow", publicName: "enableHoverRow", isSignal: true, isRequired: false, transformFunction: null }, isStriped: { classPropertyName: "isStriped", publicName: "isStriped", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, MinWidth: { classPropertyName: "MinWidth", publicName: "MinWidth", isSignal: true, isRequired: false, transformFunction: null }, MaxWidth: { classPropertyName: "MaxWidth", publicName: "MaxWidth", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, minHeight: { classPropertyName: "minHeight", publicName: "minHeight", isSignal: true, isRequired: false, transformFunction: null }, maxHeight: { classPropertyName: "maxHeight", publicName: "maxHeight", isSignal: true, isRequired: false, transformFunction: null }, margin: { classPropertyName: "margin", publicName: "margin", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClickExport: "onClickExport", onClickImport: "onClickImport", onClickAdd: "onClickAdd", onClickSave: "onClickSave", onClickRow: "onClickRow", onDoubleClickRow: "onDoubleClickRow", onCheckboxChange: "onCheckboxChange", onClickDeleteRow: "onClickDeleteRow", onClickEditRow: "onClickEditRow", onClickGoRow: "onClickGoRow", onKeyupEnter: "onKeyupEnter", onKeyupEnterLast: "onKeyupEnterLast", onSwitchChange: "onSwitchChange", onTextboxChange: "onTextboxChange", onNumberboxChange: "onNumberboxChange", onSelectboxChange: "onSelectboxChange" }, viewQueries: [{ propertyName: "_coerGridHeader", first: true, predicate: ["coerGridHeader"], descendants: true, isSignal: true }, { propertyName: "_coerGridBody", first: true, predicate: ["coerGridBody"], descendants: true, isSignal: true }, { propertyName: "_coerGridFooter", first: true, predicate: ["coerGridFooter"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
1312
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.1", type: CoerGridExtension, isStandalone: true, selector: "coer-grid-extension", inputs: { columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, cleanColumnName: { classPropertyName: "cleanColumnName", publicName: "cleanColumnName", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: false, isRequired: false, transformFunction: null }, exportButton: { classPropertyName: "exportButton", publicName: "exportButton", isSignal: false, isRequired: false, transformFunction: null }, importButton: { classPropertyName: "importButton", publicName: "importButton", isSignal: false, isRequired: false, transformFunction: null }, addButton: { classPropertyName: "addButton", publicName: "addButton", isSignal: false, isRequired: false, transformFunction: null }, saveButton: { classPropertyName: "saveButton", publicName: "saveButton", isSignal: false, isRequired: false, transformFunction: null }, checkbox: { classPropertyName: "checkbox", publicName: "checkbox", isSignal: false, isRequired: false, transformFunction: null }, buttonByRow: { classPropertyName: "buttonByRow", publicName: "buttonByRow", isSignal: false, isRequired: false, transformFunction: null }, footer: { classPropertyName: "footer", publicName: "footer", isSignal: false, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, isReadonly: { classPropertyName: "isReadonly", publicName: "isReadonly", isSignal: true, isRequired: false, transformFunction: null }, isInvisible: { classPropertyName: "isInvisible", publicName: "isInvisible", isSignal: true, isRequired: false, transformFunction: null }, rowsByPage: { classPropertyName: "rowsByPage", publicName: "rowsByPage", isSignal: true, isRequired: false, transformFunction: null }, tooltipByRow: { classPropertyName: "tooltipByRow", publicName: "tooltipByRow", isSignal: true, isRequired: false, transformFunction: null }, enableSort: { classPropertyName: "enableSort", publicName: "enableSort", isSignal: true, isRequired: false, transformFunction: null }, enableFocusNext: { classPropertyName: "enableFocusNext", publicName: "enableFocusNext", isSignal: true, isRequired: false, transformFunction: null }, enableFocusRow: { classPropertyName: "enableFocusRow", publicName: "enableFocusRow", isSignal: true, isRequired: false, transformFunction: null }, enableHoverRow: { classPropertyName: "enableHoverRow", publicName: "enableHoverRow", isSignal: true, isRequired: false, transformFunction: null }, isStriped: { classPropertyName: "isStriped", publicName: "isStriped", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, MinWidth: { classPropertyName: "MinWidth", publicName: "MinWidth", isSignal: true, isRequired: false, transformFunction: null }, MaxWidth: { classPropertyName: "MaxWidth", publicName: "MaxWidth", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, minHeight: { classPropertyName: "minHeight", publicName: "minHeight", isSignal: true, isRequired: false, transformFunction: null }, maxHeight: { classPropertyName: "maxHeight", publicName: "maxHeight", isSignal: true, isRequired: false, transformFunction: null }, margin: { classPropertyName: "margin", publicName: "margin", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClickExport: "onClickExport", onClickImport: "onClickImport", onClickAdd: "onClickAdd", onClickSave: "onClickSave", onClickRow: "onClickRow", onDoubleClickRow: "onDoubleClickRow", onCheckboxChange: "onCheckboxChange", onClickDeleteRow: "onClickDeleteRow", onClickEditRow: "onClickEditRow", onClickModalRow: "onClickModalRow", onClickGoRow: "onClickGoRow", onKeyupEnter: "onKeyupEnter", onKeyupEnterLast: "onKeyupEnterLast", onSwitchChange: "onSwitchChange", onTextboxChange: "onTextboxChange", onNumberboxChange: "onNumberboxChange", onSelectboxChange: "onSelectboxChange" }, viewQueries: [{ propertyName: "_coerGridHeader", first: true, predicate: ["coerGridHeader"], descendants: true, isSignal: true }, { propertyName: "_coerGridBody", first: true, predicate: ["coerGridBody"], descendants: true, isSignal: true }, { propertyName: "_coerGridFooter", first: true, predicate: ["coerGridFooter"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
1288
1313
|
}
|
1289
1314
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: CoerGridExtension, decorators: [{
|
1290
1315
|
type: Component,
|
@@ -2513,7 +2538,7 @@ class CoerGridCell {
|
|
2513
2538
|
property: this.header()?.config?.property,
|
2514
2539
|
row: { ...this.row() },
|
2515
2540
|
value: this.row()[Strings.FirstCharToLower(this.header().property)]
|
2516
|
-
}) ? Dates.
|
2541
|
+
}) ? Dates.GetFormatDateTime(response) : response;
|
2517
2542
|
}
|
2518
2543
|
if (Tools.IsNotNull(this.header().config?.typeDate)) {
|
2519
2544
|
response = (typeof this.header()?.config?.typeDate === 'boolean' && this.header()?.config?.typeDate === true) ||
|
@@ -2522,7 +2547,7 @@ class CoerGridCell {
|
|
2522
2547
|
property: this.header()?.config?.property,
|
2523
2548
|
row: { ...this.row() },
|
2524
2549
|
value: this.row()[Strings.FirstCharToLower(this.header().property)]
|
2525
|
-
}) ? Dates.
|
2550
|
+
}) ? Dates.GetFormatDate(response) : response;
|
2526
2551
|
}
|
2527
2552
|
return response;
|
2528
2553
|
}
|
@@ -2742,6 +2767,7 @@ class CoerGridBody {
|
|
2742
2767
|
this.onCheckboxChange = output();
|
2743
2768
|
this.onClickDeleteRow = output();
|
2744
2769
|
this.onClickEditRow = output();
|
2770
|
+
this.onClickModalRow = output();
|
2745
2771
|
this.onClickGoRow = output();
|
2746
2772
|
this.onSwitchChange = output();
|
2747
2773
|
this.onTextboxChange = output();
|
@@ -2790,6 +2816,12 @@ class CoerGridBody {
|
|
2790
2816
|
: 'primary';
|
2791
2817
|
});
|
2792
2818
|
/** */
|
2819
|
+
this._ButtonByRowColorModal = computed(() => {
|
2820
|
+
return Tools.IsNotOnlyWhiteSpace(this.buttonByRow()?.modalButtonColor)
|
2821
|
+
? this.buttonByRow()?.modalButtonColor
|
2822
|
+
: 'primary';
|
2823
|
+
});
|
2824
|
+
/** */
|
2793
2825
|
this._ButtonByRowColorGo = computed(() => {
|
2794
2826
|
return Tools.IsNotOnlyWhiteSpace(this.buttonByRow()?.goButtonColor)
|
2795
2827
|
? this.buttonByRow()?.goButtonColor
|
@@ -3154,11 +3186,11 @@ class CoerGridBody {
|
|
3154
3186
|
}
|
3155
3187
|
}
|
3156
3188
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: CoerGridBody, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
3157
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: CoerGridBody, isStandalone: false, selector: "coer-grid-body", inputs: { GetIdCalculated: { classPropertyName: "GetIdCalculated", publicName: "GetIdCalculated", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: true, isRequired: false, transformFunction: null }, dataSourceSelected: { classPropertyName: "dataSourceSelected", publicName: "dataSourceSelected", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, searchInner: { classPropertyName: "searchInner", publicName: "searchInner", isSignal: true, isRequired: false, transformFunction: null }, checkbox: { classPropertyName: "checkbox", publicName: "checkbox", isSignal: true, isRequired: false, transformFunction: null }, buttonByRow: { classPropertyName: "buttonByRow", publicName: "buttonByRow", isSignal: true, isRequired: false, transformFunction: null }, isLoadingInner: { classPropertyName: "isLoadingInner", publicName: "isLoadingInner", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, isReadonly: { classPropertyName: "isReadonly", publicName: "isReadonly", isSignal: true, isRequired: false, transformFunction: null }, isInvisible: { classPropertyName: "isInvisible", publicName: "isInvisible", isSignal: true, isRequired: false, transformFunction: null }, isEnabled: { classPropertyName: "isEnabled", publicName: "isEnabled", isSignal: true, isRequired: false, transformFunction: null }, enableSort: { classPropertyName: "enableSort", publicName: "enableSort", isSignal: true, isRequired: false, transformFunction: null }, enableFocusNext: { classPropertyName: "enableFocusNext", publicName: "enableFocusNext", isSignal: true, isRequired: false, transformFunction: null }, enableFocusRow: { classPropertyName: "enableFocusRow", publicName: "enableFocusRow", isSignal: true, isRequired: false, transformFunction: null }, enableHoverRow: { classPropertyName: "enableHoverRow", publicName: "enableHoverRow", isSignal: true, isRequired: false, transformFunction: null }, isStriped: { classPropertyName: "isStriped", publicName: "isStriped", isSignal: true, isRequired: false, transformFunction: null }, tooltipByRow: { classPropertyName: "tooltipByRow", publicName: "tooltipByRow", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onValueChange: "onValueChange", onClickRow: "onClickRow", onDoubleClickRow: "onDoubleClickRow", onInnerLoadingChange: "onInnerLoadingChange", onCheckboxChange: "onCheckboxChange", onClickDeleteRow: "onClickDeleteRow", onClickEditRow: "onClickEditRow", onClickGoRow: "onClickGoRow", onSwitchChange: "onSwitchChange", onTextboxChange: "onTextboxChange", onNumberboxChange: "onNumberboxChange", onSelectboxChange: "onSelectboxChange", onKeyupEnter: "onKeyupEnter", onKeyupEnterLast: "onKeyupEnterLast" }, viewQueries: [{ propertyName: "_coerCheckboxList", predicate: CoerCheckbox, descendants: true, isSignal: true }, { propertyName: "_coerGridCellList", predicate: (CoerGridCell), descendants: true, isSignal: true }], ngImport: i0, template: "<section class=\"coer-grid-body\">\r\n <table [ngClass]=\"{ \r\n 'table' : true,\r\n 'table-sm': true, \r\n 'table-responsive': true,\r\n 'table-striped' : isStriped()\r\n }\">\r\n \r\n <thead>\r\n <tr>\r\n <!-- Checkbox All -->\r\n @if(_showCheckbox()) {\r\n <th class=\"action-column\" scope=\"col\"> \r\n <div class=\"action-column-content\">\r\n <div [ngClass]=\"{ 'display-none': _isInvisibleCheckboxAll }\">\r\n <coer-checkbox\r\n [id]=\"GetIdCalculated()(-1, -1, 'checkbox-all')\"\r\n [ignoreDataBinding]=\"true\" \r\n (onChange)=\"_ClickCheckAll($event)\"\r\n ></coer-checkbox>\r\n </div> \r\n \r\n <div [class]=\"_isLoadingInner ? 'display-contents' : 'display-none'\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i> \r\n </div> \r\n </div>\r\n </th>\r\n }\r\n \r\n <!-- Dynamic Grid Column -->\r\n @for(header of columns(); track header.indexColumn) {\r\n <th scope=\"col\" [class]=\"_cursorHeader()\" (dblclick)=\"_SortToggle(header.property)\" [ngStyle]=\"{ 'width': header.config?.width || 'auto' }\"> \r\n <div class=\"th-content\">\r\n <span> {{ header.columnName }} </span>\r\n <i [class]=\"_IconShortHeader(header.property)\"></i>\r\n <i [class]=\"_IconSearchHeader(header.property)\"></i>\r\n </div>\r\n </th>\r\n }\r\n \r\n @if(_ShowButtonByRow('showDeleteButton')) {\r\n <th class=\"action-column\" scope=\"col\"></th>\r\n }\r\n \r\n @if(_ShowButtonByRow('showEditButton')) { \r\n <th class=\"action-column\" scope=\"col\"></th>\r\n } \r\n \r\n @if(_ShowButtonByRow('showGoButton')) {\r\n <th class=\"action-column\" scope=\"col\"></th>\r\n }\r\n </tr>\r\n </thead>\r\n \r\n <!-- body -->\r\n @for(group of dataSource(); track group.indexGroup) {\r\n <tbody> \r\n @for(row of group.rows; track row.indexRow) {\r\n <tr [id]=\"GetIdCalculated()(row.indexRow, 0, 'row')\" \r\n (click)=\"_focusRowIndex.set(row.indexRow)\"\r\n [ngClass]=\"{ \r\n 'loading' : isLoading(),\r\n 'row-focus': (row.indexRow == _focusRowIndex() && enableFocusRow()),\r\n 'row-hover-none': !enableHoverRow()\r\n }\">\r\n \r\n <!-- CheckBox Column -->\r\n @if(_showCheckbox()) {\r\n <td class=\"action-column\">\r\n <div class=\"action-column-content\">\r\n <div [ngClass]=\"{ 'display-none': _isLoadingInner }\">\r\n <coer-checkbox\r\n [id]=\"GetIdCalculated()(row.indexRow, 0, 'checkbox')\"\r\n [ignoreDataBinding]=\"true\"\r\n [isDisabled]=\"!isEnabled()\"\r\n (onChange)=\"_ClickCheck($event, row)\"\r\n ></coer-checkbox>\r\n </div>\r\n \r\n <div [class]=\"_isLoadingInner ? 'display-contents' : 'display-none'\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i> \r\n </div>\r\n </div>\r\n </td>\r\n }\r\n \r\n <!-- Dynamic Column -->\r\n @for(header of columns(); track header.indexColumn) {\r\n <td class=\"td-content\">\r\n <coer-grid-cell\r\n [id]=\"GetIdCalculated()(row.indexRow, header.indexColumn)\"\r\n [header]=\"header\"\r\n [row]=\"row\"\r\n [checkOnRow]=\"_checkOnRow()\"\r\n [enableInputs]=\"isEnabled() && !_isLoadingInner\"\r\n (onClickRow)=\"isEnabled() ? _ClickOnRow(row) : null\"\r\n (onDoubleClickRow)=\"isEnabled() ? onDoubleClickRow.emit(row) : null\"\r\n (onSwitchChange)=\"onSwitchChange.emit($event)\"\r\n (onTextboxChange)=\"onTextboxChange.emit($event)\"\r\n (onNumberboxChange)=\"onNumberboxChange.emit($event)\"\r\n (onSelectboxChange)=\"onSelectboxChange.emit($event)\"\r\n (onKeyupEnter)=\"_NextInput(row.indexRow, header.indexColumn, $event)\"\r\n ></coer-grid-cell>\r\n </td>\r\n }\r\n \r\n <!-- Delete Button -->\r\n @if(_ShowButtonByRow('showDeleteButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showDeleteButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorDelete()\"\r\n icon=\"delete\"\r\n [tooltip]=\"_GetTooltip('Delete', row)\" \r\n tooltipPosition=\"left\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickDeleteRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n \r\n <!-- Edit Button -->\r\n @if(_ShowButtonByRow('showEditButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showEditButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorEdit()\"\r\n icon=\"edit\"\r\n [tooltip]=\"_GetTooltip('Edit', row)\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickEditRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n \r\n <!-- Go Button -->\r\n @if(_ShowButtonByRow('showGoButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showGoButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorGo()\"\r\n icon=\"go\"\r\n [tooltip]=\"_GetTooltip('Go to', row, 'detail')\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickGoRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n }\r\n </table> \r\n</section>", styles: ["section.coer-grid-body table{table-layout:auto;border-collapse:separate;border-spacing:1px 0px;margin:0;font-size:14px}section.coer-grid-body table thead tr th{position:sticky!important;top:0!important;z-index:100!important;vertical-align:middle!important;background-color:var(--gray)!important;color:var(--smoke)!important;overflow:hidden;white-space:nowrap!important;word-wrap:break-word;text-overflow:ellipsis;min-width:30px!important;max-height:30px!important;height:30px!important}section.coer-grid-body table thead tr th div.th-content{display:flex!important;align-items:center!important}section.coer-grid-body table thead tr th div.th-content::selection{background-color:transparent!important}section.coer-grid-body table tbody tr td{border:0px!important;white-space:break-spaces!important;text-overflow:ellipsis!important;overflow:hidden!important;min-height:30px!important;background-color:inherit!important}section.coer-grid-body table tbody tr td.td-content{padding:0!important;vertical-align:middle!important;overflow:visible!important}section.coer-grid-body table tbody tr:not(.row-focus):not(.row-hover-none):hover td{color:#000!important;background-color:color-mix(in srgb,var(--inputs-items-inner),var(--white) 95%)!important}section.coer-grid-body table tbody tr.row-focus td{background-color:color-mix(in srgb,var(--inputs-items-inner),var(--white) 65%)!important}section.coer-grid-body table th.action-column,section.coer-grid-body table td.action-column{width:30px!important;min-width:30px!important;max-width:30px!important;padding:0!important;overflow:hidden!important;vertical-align:middle!important}section.coer-grid-body table th.action-column div.action-column-content,section.coer-grid-body table td.action-column div.action-column-content{display:flex!important;align-items:center!important;justify-content:center!important;max-height:30px!important;height:30px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CoerButton, selector: "coer-button", inputs: ["id", "color", "type", "typeBreakpoint", "icon", "iconPosition", "path", "isLoading", "isDisabled", "isReadonly", "isInvisible", "isHidde", "width", "widthBreakpoint", "minWidth", "maxWidth", "height", "minHeight", "marginTop", "marginRight", "marginBottom", "marginLeft", "tooltip", "tooltipPosition"], outputs: ["onClick"] }, { kind: "component", type: CoerCheckbox, selector: "coer-checkbox", inputs: ["id", "label", "labelPosition", "isLoading", "isDisabled", "isReadonly", "isInvisible", "ignoreDataBinding", "value"], outputs: ["onChange"] }, { kind: "component", type: CoerGridCell, selector: "coer-grid-cell", inputs: ["id", "header", "row", "checkOnRow", "enableInputs"], outputs: ["onClickRow", "onDoubleClickRow", "onSwitchChange", "onTextboxChange", "onNumberboxChange", "onSelectboxChange", "onKeyupEnter"] }] }); }
|
3189
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: CoerGridBody, isStandalone: false, selector: "coer-grid-body", inputs: { GetIdCalculated: { classPropertyName: "GetIdCalculated", publicName: "GetIdCalculated", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, columns: { classPropertyName: "columns", publicName: "columns", isSignal: true, isRequired: false, transformFunction: null }, dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: true, isRequired: false, transformFunction: null }, dataSourceSelected: { classPropertyName: "dataSourceSelected", publicName: "dataSourceSelected", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, searchInner: { classPropertyName: "searchInner", publicName: "searchInner", isSignal: true, isRequired: false, transformFunction: null }, checkbox: { classPropertyName: "checkbox", publicName: "checkbox", isSignal: true, isRequired: false, transformFunction: null }, buttonByRow: { classPropertyName: "buttonByRow", publicName: "buttonByRow", isSignal: true, isRequired: false, transformFunction: null }, isLoadingInner: { classPropertyName: "isLoadingInner", publicName: "isLoadingInner", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, isReadonly: { classPropertyName: "isReadonly", publicName: "isReadonly", isSignal: true, isRequired: false, transformFunction: null }, isInvisible: { classPropertyName: "isInvisible", publicName: "isInvisible", isSignal: true, isRequired: false, transformFunction: null }, isEnabled: { classPropertyName: "isEnabled", publicName: "isEnabled", isSignal: true, isRequired: false, transformFunction: null }, enableSort: { classPropertyName: "enableSort", publicName: "enableSort", isSignal: true, isRequired: false, transformFunction: null }, enableFocusNext: { classPropertyName: "enableFocusNext", publicName: "enableFocusNext", isSignal: true, isRequired: false, transformFunction: null }, enableFocusRow: { classPropertyName: "enableFocusRow", publicName: "enableFocusRow", isSignal: true, isRequired: false, transformFunction: null }, enableHoverRow: { classPropertyName: "enableHoverRow", publicName: "enableHoverRow", isSignal: true, isRequired: false, transformFunction: null }, isStriped: { classPropertyName: "isStriped", publicName: "isStriped", isSignal: true, isRequired: false, transformFunction: null }, tooltipByRow: { classPropertyName: "tooltipByRow", publicName: "tooltipByRow", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onValueChange: "onValueChange", onClickRow: "onClickRow", onDoubleClickRow: "onDoubleClickRow", onInnerLoadingChange: "onInnerLoadingChange", onCheckboxChange: "onCheckboxChange", onClickDeleteRow: "onClickDeleteRow", onClickEditRow: "onClickEditRow", onClickModalRow: "onClickModalRow", onClickGoRow: "onClickGoRow", onSwitchChange: "onSwitchChange", onTextboxChange: "onTextboxChange", onNumberboxChange: "onNumberboxChange", onSelectboxChange: "onSelectboxChange", onKeyupEnter: "onKeyupEnter", onKeyupEnterLast: "onKeyupEnterLast" }, viewQueries: [{ propertyName: "_coerCheckboxList", predicate: CoerCheckbox, descendants: true, isSignal: true }, { propertyName: "_coerGridCellList", predicate: (CoerGridCell), descendants: true, isSignal: true }], ngImport: i0, template: "<section class=\"coer-grid-body\">\r\n <table [ngClass]=\"{ \r\n 'table' : true,\r\n 'table-sm': true, \r\n 'table-responsive': true,\r\n 'table-striped' : isStriped()\r\n }\">\r\n \r\n <thead>\r\n <tr>\r\n <!-- Checkbox All -->\r\n @if(_showCheckbox()) {\r\n <th class=\"action-column\" scope=\"col\"> \r\n <div class=\"action-column-content\">\r\n <div [ngClass]=\"{ 'display-none': _isInvisibleCheckboxAll }\">\r\n <coer-checkbox\r\n [id]=\"GetIdCalculated()(-1, -1, 'checkbox-all')\"\r\n [ignoreDataBinding]=\"true\" \r\n (onChange)=\"_ClickCheckAll($event)\"\r\n ></coer-checkbox>\r\n </div> \r\n \r\n <div [class]=\"_isLoadingInner ? 'display-contents' : 'display-none'\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i> \r\n </div> \r\n </div>\r\n </th>\r\n }\r\n \r\n <!-- Dynamic Grid Column -->\r\n @for(header of columns(); track header.indexColumn) {\r\n <th scope=\"col\" [class]=\"_cursorHeader()\" (dblclick)=\"_SortToggle(header.property)\" [ngStyle]=\"{ 'width': header.config?.width || 'auto' }\"> \r\n <div class=\"th-content\">\r\n <span> {{ header.columnName }} </span>\r\n <i [class]=\"_IconShortHeader(header.property)\"></i>\r\n <i [class]=\"_IconSearchHeader(header.property)\"></i>\r\n </div>\r\n </th>\r\n }\r\n \r\n @if(_ShowButtonByRow('showDeleteButton')) {\r\n <th class=\"action-column\" scope=\"col\"></th>\r\n }\r\n \r\n @if(_ShowButtonByRow('showEditButton')) { \r\n <th class=\"action-column\" scope=\"col\"></th>\r\n } \r\n\r\n @if(_ShowButtonByRow('showModalButton')) { \r\n <th class=\"action-column\" scope=\"col\"></th>\r\n } \r\n \r\n @if(_ShowButtonByRow('showGoButton')) {\r\n <th class=\"action-column\" scope=\"col\"></th>\r\n }\r\n </tr>\r\n </thead>\r\n \r\n <!-- body -->\r\n @for(group of dataSource(); track group.indexGroup) {\r\n <tbody> \r\n @for(row of group.rows; track row.indexRow) {\r\n <tr [id]=\"GetIdCalculated()(row.indexRow, 0, 'row')\" \r\n (click)=\"_focusRowIndex.set(row.indexRow)\"\r\n [ngClass]=\"{ \r\n 'loading' : isLoading(),\r\n 'row-focus': (row.indexRow == _focusRowIndex() && enableFocusRow()),\r\n 'row-hover-none': !enableHoverRow()\r\n }\">\r\n \r\n <!-- CheckBox Column -->\r\n @if(_showCheckbox()) {\r\n <td class=\"action-column\">\r\n <div class=\"action-column-content\">\r\n <div [ngClass]=\"{ 'display-none': _isLoadingInner }\">\r\n <coer-checkbox\r\n [id]=\"GetIdCalculated()(row.indexRow, 0, 'checkbox')\"\r\n [ignoreDataBinding]=\"true\"\r\n [isDisabled]=\"!isEnabled()\"\r\n (onChange)=\"_ClickCheck($event, row)\"\r\n ></coer-checkbox>\r\n </div>\r\n \r\n <div [class]=\"_isLoadingInner ? 'display-contents' : 'display-none'\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i> \r\n </div>\r\n </div>\r\n </td>\r\n }\r\n \r\n <!-- Dynamic Column -->\r\n @for(header of columns(); track header.indexColumn) {\r\n <td class=\"td-content\">\r\n <coer-grid-cell\r\n [id]=\"GetIdCalculated()(row.indexRow, header.indexColumn)\"\r\n [header]=\"header\"\r\n [row]=\"row\"\r\n [checkOnRow]=\"_checkOnRow()\"\r\n [enableInputs]=\"isEnabled() && !_isLoadingInner\"\r\n (onClickRow)=\"isEnabled() ? _ClickOnRow(row) : null\"\r\n (onDoubleClickRow)=\"isEnabled() ? onDoubleClickRow.emit(row) : null\"\r\n (onSwitchChange)=\"onSwitchChange.emit($event)\"\r\n (onTextboxChange)=\"onTextboxChange.emit($event)\"\r\n (onNumberboxChange)=\"onNumberboxChange.emit($event)\"\r\n (onSelectboxChange)=\"onSelectboxChange.emit($event)\"\r\n (onKeyupEnter)=\"_NextInput(row.indexRow, header.indexColumn, $event)\"\r\n ></coer-grid-cell>\r\n </td>\r\n }\r\n \r\n <!-- Delete Button -->\r\n @if(_ShowButtonByRow('showDeleteButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showDeleteButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorDelete()\"\r\n icon=\"delete\"\r\n [tooltip]=\"_GetTooltip('Delete', row)\" \r\n tooltipPosition=\"left\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickDeleteRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n \r\n <!-- Edit Button -->\r\n @if(_ShowButtonByRow('showEditButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showEditButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorEdit()\"\r\n icon=\"edit\"\r\n [tooltip]=\"_GetTooltip('Edit', row)\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickEditRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n\r\n\r\n <!-- Modal Button -->\r\n @if(_ShowButtonByRow('showModalButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showModalButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorModal()\"\r\n icon=\"icon-modal icon-fill\"\r\n [tooltip]=\"_GetTooltip('Open', row)\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickModalRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n \r\n <!-- Go Button -->\r\n @if(_ShowButtonByRow('showGoButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showGoButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorGo()\"\r\n icon=\"go\"\r\n [tooltip]=\"_GetTooltip('Go to', row, 'detail')\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickGoRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n }\r\n </table> \r\n</section>", styles: ["section.coer-grid-body table{table-layout:auto;border-collapse:separate;border-spacing:1px 0px;margin:0;font-size:14px}section.coer-grid-body table thead tr th{position:sticky!important;top:0!important;z-index:100!important;vertical-align:middle!important;background-color:var(--gray)!important;color:var(--smoke)!important;overflow:hidden;white-space:nowrap!important;word-wrap:break-word;text-overflow:ellipsis;min-width:30px!important;max-height:30px!important;height:30px!important}section.coer-grid-body table thead tr th div.th-content{display:flex!important;align-items:center!important}section.coer-grid-body table thead tr th div.th-content::selection{background-color:transparent!important}section.coer-grid-body table tbody tr td{border:0px!important;white-space:break-spaces!important;text-overflow:ellipsis!important;overflow:hidden!important;min-height:30px!important;background-color:inherit!important}section.coer-grid-body table tbody tr td.td-content{padding:0!important;vertical-align:middle!important;overflow:visible!important}section.coer-grid-body table tbody tr:not(.row-focus):not(.row-hover-none):hover td{color:#000!important;background-color:color-mix(in srgb,var(--inputs-items-inner),var(--white) 95%)!important}section.coer-grid-body table tbody tr.row-focus td{background-color:color-mix(in srgb,var(--inputs-items-inner),var(--white) 65%)!important}section.coer-grid-body table th.action-column,section.coer-grid-body table td.action-column{width:30px!important;min-width:30px!important;max-width:30px!important;padding:0!important;overflow:hidden!important;vertical-align:middle!important}section.coer-grid-body table th.action-column div.action-column-content,section.coer-grid-body table td.action-column div.action-column-content{display:flex!important;align-items:center!important;justify-content:center!important;max-height:30px!important;height:30px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CoerButton, selector: "coer-button", inputs: ["id", "color", "type", "typeBreakpoint", "icon", "iconPosition", "path", "isLoading", "isDisabled", "isReadonly", "isInvisible", "isHidde", "width", "widthBreakpoint", "minWidth", "maxWidth", "height", "minHeight", "marginTop", "marginRight", "marginBottom", "marginLeft", "tooltip", "tooltipPosition"], outputs: ["onClick"] }, { kind: "component", type: CoerCheckbox, selector: "coer-checkbox", inputs: ["id", "label", "labelPosition", "isLoading", "isDisabled", "isReadonly", "isInvisible", "ignoreDataBinding", "value"], outputs: ["onChange"] }, { kind: "component", type: CoerGridCell, selector: "coer-grid-cell", inputs: ["id", "header", "row", "checkOnRow", "enableInputs"], outputs: ["onClickRow", "onDoubleClickRow", "onSwitchChange", "onTextboxChange", "onNumberboxChange", "onSelectboxChange", "onKeyupEnter"] }] }); }
|
3158
3190
|
}
|
3159
3191
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: CoerGridBody, decorators: [{
|
3160
3192
|
type: Component,
|
3161
|
-
args: [{ selector: 'coer-grid-body', standalone: false, template: "<section class=\"coer-grid-body\">\r\n <table [ngClass]=\"{ \r\n 'table' : true,\r\n 'table-sm': true, \r\n 'table-responsive': true,\r\n 'table-striped' : isStriped()\r\n }\">\r\n \r\n <thead>\r\n <tr>\r\n <!-- Checkbox All -->\r\n @if(_showCheckbox()) {\r\n <th class=\"action-column\" scope=\"col\"> \r\n <div class=\"action-column-content\">\r\n <div [ngClass]=\"{ 'display-none': _isInvisibleCheckboxAll }\">\r\n <coer-checkbox\r\n [id]=\"GetIdCalculated()(-1, -1, 'checkbox-all')\"\r\n [ignoreDataBinding]=\"true\" \r\n (onChange)=\"_ClickCheckAll($event)\"\r\n ></coer-checkbox>\r\n </div> \r\n \r\n <div [class]=\"_isLoadingInner ? 'display-contents' : 'display-none'\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i> \r\n </div> \r\n </div>\r\n </th>\r\n }\r\n \r\n <!-- Dynamic Grid Column -->\r\n @for(header of columns(); track header.indexColumn) {\r\n <th scope=\"col\" [class]=\"_cursorHeader()\" (dblclick)=\"_SortToggle(header.property)\" [ngStyle]=\"{ 'width': header.config?.width || 'auto' }\"> \r\n <div class=\"th-content\">\r\n <span> {{ header.columnName }} </span>\r\n <i [class]=\"_IconShortHeader(header.property)\"></i>\r\n <i [class]=\"_IconSearchHeader(header.property)\"></i>\r\n </div>\r\n </th>\r\n }\r\n \r\n @if(_ShowButtonByRow('showDeleteButton')) {\r\n <th class=\"action-column\" scope=\"col\"></th>\r\n }\r\n \r\n @if(_ShowButtonByRow('showEditButton')) { \r\n <th class=\"action-column\" scope=\"col\"></th>\r\n } \r\n \r\n @if(_ShowButtonByRow('showGoButton')) {\r\n <th class=\"action-column\" scope=\"col\"></th>\r\n }\r\n </tr>\r\n </thead>\r\n \r\n <!-- body -->\r\n @for(group of dataSource(); track group.indexGroup) {\r\n <tbody> \r\n @for(row of group.rows; track row.indexRow) {\r\n <tr [id]=\"GetIdCalculated()(row.indexRow, 0, 'row')\" \r\n (click)=\"_focusRowIndex.set(row.indexRow)\"\r\n [ngClass]=\"{ \r\n 'loading' : isLoading(),\r\n 'row-focus': (row.indexRow == _focusRowIndex() && enableFocusRow()),\r\n 'row-hover-none': !enableHoverRow()\r\n }\">\r\n \r\n <!-- CheckBox Column -->\r\n @if(_showCheckbox()) {\r\n <td class=\"action-column\">\r\n <div class=\"action-column-content\">\r\n <div [ngClass]=\"{ 'display-none': _isLoadingInner }\">\r\n <coer-checkbox\r\n [id]=\"GetIdCalculated()(row.indexRow, 0, 'checkbox')\"\r\n [ignoreDataBinding]=\"true\"\r\n [isDisabled]=\"!isEnabled()\"\r\n (onChange)=\"_ClickCheck($event, row)\"\r\n ></coer-checkbox>\r\n </div>\r\n \r\n <div [class]=\"_isLoadingInner ? 'display-contents' : 'display-none'\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i> \r\n </div>\r\n </div>\r\n </td>\r\n }\r\n \r\n <!-- Dynamic Column -->\r\n @for(header of columns(); track header.indexColumn) {\r\n <td class=\"td-content\">\r\n <coer-grid-cell\r\n [id]=\"GetIdCalculated()(row.indexRow, header.indexColumn)\"\r\n [header]=\"header\"\r\n [row]=\"row\"\r\n [checkOnRow]=\"_checkOnRow()\"\r\n [enableInputs]=\"isEnabled() && !_isLoadingInner\"\r\n (onClickRow)=\"isEnabled() ? _ClickOnRow(row) : null\"\r\n (onDoubleClickRow)=\"isEnabled() ? onDoubleClickRow.emit(row) : null\"\r\n (onSwitchChange)=\"onSwitchChange.emit($event)\"\r\n (onTextboxChange)=\"onTextboxChange.emit($event)\"\r\n (onNumberboxChange)=\"onNumberboxChange.emit($event)\"\r\n (onSelectboxChange)=\"onSelectboxChange.emit($event)\"\r\n (onKeyupEnter)=\"_NextInput(row.indexRow, header.indexColumn, $event)\"\r\n ></coer-grid-cell>\r\n </td>\r\n }\r\n \r\n <!-- Delete Button -->\r\n @if(_ShowButtonByRow('showDeleteButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showDeleteButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorDelete()\"\r\n icon=\"delete\"\r\n [tooltip]=\"_GetTooltip('Delete', row)\" \r\n tooltipPosition=\"left\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickDeleteRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n \r\n <!-- Edit Button -->\r\n @if(_ShowButtonByRow('showEditButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showEditButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorEdit()\"\r\n icon=\"edit\"\r\n [tooltip]=\"_GetTooltip('Edit', row)\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickEditRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n \r\n <!-- Go Button -->\r\n @if(_ShowButtonByRow('showGoButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showGoButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorGo()\"\r\n icon=\"go\"\r\n [tooltip]=\"_GetTooltip('Go to', row, 'detail')\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickGoRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n }\r\n </table> \r\n</section>", styles: ["section.coer-grid-body table{table-layout:auto;border-collapse:separate;border-spacing:1px 0px;margin:0;font-size:14px}section.coer-grid-body table thead tr th{position:sticky!important;top:0!important;z-index:100!important;vertical-align:middle!important;background-color:var(--gray)!important;color:var(--smoke)!important;overflow:hidden;white-space:nowrap!important;word-wrap:break-word;text-overflow:ellipsis;min-width:30px!important;max-height:30px!important;height:30px!important}section.coer-grid-body table thead tr th div.th-content{display:flex!important;align-items:center!important}section.coer-grid-body table thead tr th div.th-content::selection{background-color:transparent!important}section.coer-grid-body table tbody tr td{border:0px!important;white-space:break-spaces!important;text-overflow:ellipsis!important;overflow:hidden!important;min-height:30px!important;background-color:inherit!important}section.coer-grid-body table tbody tr td.td-content{padding:0!important;vertical-align:middle!important;overflow:visible!important}section.coer-grid-body table tbody tr:not(.row-focus):not(.row-hover-none):hover td{color:#000!important;background-color:color-mix(in srgb,var(--inputs-items-inner),var(--white) 95%)!important}section.coer-grid-body table tbody tr.row-focus td{background-color:color-mix(in srgb,var(--inputs-items-inner),var(--white) 65%)!important}section.coer-grid-body table th.action-column,section.coer-grid-body table td.action-column{width:30px!important;min-width:30px!important;max-width:30px!important;padding:0!important;overflow:hidden!important;vertical-align:middle!important}section.coer-grid-body table th.action-column div.action-column-content,section.coer-grid-body table td.action-column div.action-column-content{display:flex!important;align-items:center!important;justify-content:center!important;max-height:30px!important;height:30px!important}\n"] }]
|
3193
|
+
args: [{ selector: 'coer-grid-body', standalone: false, template: "<section class=\"coer-grid-body\">\r\n <table [ngClass]=\"{ \r\n 'table' : true,\r\n 'table-sm': true, \r\n 'table-responsive': true,\r\n 'table-striped' : isStriped()\r\n }\">\r\n \r\n <thead>\r\n <tr>\r\n <!-- Checkbox All -->\r\n @if(_showCheckbox()) {\r\n <th class=\"action-column\" scope=\"col\"> \r\n <div class=\"action-column-content\">\r\n <div [ngClass]=\"{ 'display-none': _isInvisibleCheckboxAll }\">\r\n <coer-checkbox\r\n [id]=\"GetIdCalculated()(-1, -1, 'checkbox-all')\"\r\n [ignoreDataBinding]=\"true\" \r\n (onChange)=\"_ClickCheckAll($event)\"\r\n ></coer-checkbox>\r\n </div> \r\n \r\n <div [class]=\"_isLoadingInner ? 'display-contents' : 'display-none'\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i> \r\n </div> \r\n </div>\r\n </th>\r\n }\r\n \r\n <!-- Dynamic Grid Column -->\r\n @for(header of columns(); track header.indexColumn) {\r\n <th scope=\"col\" [class]=\"_cursorHeader()\" (dblclick)=\"_SortToggle(header.property)\" [ngStyle]=\"{ 'width': header.config?.width || 'auto' }\"> \r\n <div class=\"th-content\">\r\n <span> {{ header.columnName }} </span>\r\n <i [class]=\"_IconShortHeader(header.property)\"></i>\r\n <i [class]=\"_IconSearchHeader(header.property)\"></i>\r\n </div>\r\n </th>\r\n }\r\n \r\n @if(_ShowButtonByRow('showDeleteButton')) {\r\n <th class=\"action-column\" scope=\"col\"></th>\r\n }\r\n \r\n @if(_ShowButtonByRow('showEditButton')) { \r\n <th class=\"action-column\" scope=\"col\"></th>\r\n } \r\n\r\n @if(_ShowButtonByRow('showModalButton')) { \r\n <th class=\"action-column\" scope=\"col\"></th>\r\n } \r\n \r\n @if(_ShowButtonByRow('showGoButton')) {\r\n <th class=\"action-column\" scope=\"col\"></th>\r\n }\r\n </tr>\r\n </thead>\r\n \r\n <!-- body -->\r\n @for(group of dataSource(); track group.indexGroup) {\r\n <tbody> \r\n @for(row of group.rows; track row.indexRow) {\r\n <tr [id]=\"GetIdCalculated()(row.indexRow, 0, 'row')\" \r\n (click)=\"_focusRowIndex.set(row.indexRow)\"\r\n [ngClass]=\"{ \r\n 'loading' : isLoading(),\r\n 'row-focus': (row.indexRow == _focusRowIndex() && enableFocusRow()),\r\n 'row-hover-none': !enableHoverRow()\r\n }\">\r\n \r\n <!-- CheckBox Column -->\r\n @if(_showCheckbox()) {\r\n <td class=\"action-column\">\r\n <div class=\"action-column-content\">\r\n <div [ngClass]=\"{ 'display-none': _isLoadingInner }\">\r\n <coer-checkbox\r\n [id]=\"GetIdCalculated()(row.indexRow, 0, 'checkbox')\"\r\n [ignoreDataBinding]=\"true\"\r\n [isDisabled]=\"!isEnabled()\"\r\n (onChange)=\"_ClickCheck($event, row)\"\r\n ></coer-checkbox>\r\n </div>\r\n \r\n <div [class]=\"_isLoadingInner ? 'display-contents' : 'display-none'\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i> \r\n </div>\r\n </div>\r\n </td>\r\n }\r\n \r\n <!-- Dynamic Column -->\r\n @for(header of columns(); track header.indexColumn) {\r\n <td class=\"td-content\">\r\n <coer-grid-cell\r\n [id]=\"GetIdCalculated()(row.indexRow, header.indexColumn)\"\r\n [header]=\"header\"\r\n [row]=\"row\"\r\n [checkOnRow]=\"_checkOnRow()\"\r\n [enableInputs]=\"isEnabled() && !_isLoadingInner\"\r\n (onClickRow)=\"isEnabled() ? _ClickOnRow(row) : null\"\r\n (onDoubleClickRow)=\"isEnabled() ? onDoubleClickRow.emit(row) : null\"\r\n (onSwitchChange)=\"onSwitchChange.emit($event)\"\r\n (onTextboxChange)=\"onTextboxChange.emit($event)\"\r\n (onNumberboxChange)=\"onNumberboxChange.emit($event)\"\r\n (onSelectboxChange)=\"onSelectboxChange.emit($event)\"\r\n (onKeyupEnter)=\"_NextInput(row.indexRow, header.indexColumn, $event)\"\r\n ></coer-grid-cell>\r\n </td>\r\n }\r\n \r\n <!-- Delete Button -->\r\n @if(_ShowButtonByRow('showDeleteButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showDeleteButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorDelete()\"\r\n icon=\"delete\"\r\n [tooltip]=\"_GetTooltip('Delete', row)\" \r\n tooltipPosition=\"left\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickDeleteRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n \r\n <!-- Edit Button -->\r\n @if(_ShowButtonByRow('showEditButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showEditButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorEdit()\"\r\n icon=\"edit\"\r\n [tooltip]=\"_GetTooltip('Edit', row)\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickEditRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n\r\n\r\n <!-- Modal Button -->\r\n @if(_ShowButtonByRow('showModalButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showModalButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorModal()\"\r\n icon=\"icon-modal icon-fill\"\r\n [tooltip]=\"_GetTooltip('Open', row)\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickModalRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n \r\n <!-- Go Button -->\r\n @if(_ShowButtonByRow('showGoButton')) {\r\n <td class=\"action-column\">\r\n @if(_ShowButtonByRow('showGoButton', row)) {\r\n <div class=\"action-column-content\">\r\n <coer-button\r\n type=\"icon-no-border\"\r\n [color]=\"_ButtonByRowColorGo()\"\r\n icon=\"go\"\r\n [tooltip]=\"_GetTooltip('Go to', row, 'detail')\" \r\n tooltipPosition=\"left\"\r\n [isDisabled]=\"_isLoadingInner\"\r\n (onClick)=\"onClickGoRow.emit(row)\"\r\n ></coer-button>\r\n </div>\r\n }\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n }\r\n </table> \r\n</section>", styles: ["section.coer-grid-body table{table-layout:auto;border-collapse:separate;border-spacing:1px 0px;margin:0;font-size:14px}section.coer-grid-body table thead tr th{position:sticky!important;top:0!important;z-index:100!important;vertical-align:middle!important;background-color:var(--gray)!important;color:var(--smoke)!important;overflow:hidden;white-space:nowrap!important;word-wrap:break-word;text-overflow:ellipsis;min-width:30px!important;max-height:30px!important;height:30px!important}section.coer-grid-body table thead tr th div.th-content{display:flex!important;align-items:center!important}section.coer-grid-body table thead tr th div.th-content::selection{background-color:transparent!important}section.coer-grid-body table tbody tr td{border:0px!important;white-space:break-spaces!important;text-overflow:ellipsis!important;overflow:hidden!important;min-height:30px!important;background-color:inherit!important}section.coer-grid-body table tbody tr td.td-content{padding:0!important;vertical-align:middle!important;overflow:visible!important}section.coer-grid-body table tbody tr:not(.row-focus):not(.row-hover-none):hover td{color:#000!important;background-color:color-mix(in srgb,var(--inputs-items-inner),var(--white) 95%)!important}section.coer-grid-body table tbody tr.row-focus td{background-color:color-mix(in srgb,var(--inputs-items-inner),var(--white) 65%)!important}section.coer-grid-body table th.action-column,section.coer-grid-body table td.action-column{width:30px!important;min-width:30px!important;max-width:30px!important;padding:0!important;overflow:hidden!important;vertical-align:middle!important}section.coer-grid-body table th.action-column div.action-column-content,section.coer-grid-body table td.action-column div.action-column-content{display:flex!important;align-items:center!important;justify-content:center!important;max-height:30px!important;height:30px!important}\n"] }]
|
3162
3194
|
}] });
|
3163
3195
|
|
3164
3196
|
class CoerGridfooter {
|
@@ -3335,11 +3367,11 @@ class CoerGrid extends CoerGridExtension {
|
|
3335
3367
|
return dataSource.shift();
|
3336
3368
|
}
|
3337
3369
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: CoerGrid, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
3338
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: CoerGrid, isStandalone: false, selector: "coer-grid", providers: [CONTROL_VALUE(CoerGrid)], usesInheritance: true, ngImport: i0, template: "<div [id]=\"_GetIdCalculated(-1, -1, 'coer-grid-inner')\" class=\"coer-grid\" [ngStyle]=\"{ 'width': width(), 'min-Width': MinWidth(), 'max-Width': MaxWidth(), 'margin': margin() }\">\r\n <!-- HEADER -->\r\n <coer-grid-header \r\n #coerGridHeader \r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [GetColumnName]=\"_GetColumnName\"\r\n [columns]=\"_columns()\"\r\n [dataSource]=\"_valueSignal()\"\r\n [dataSourceFiltered]=\"_dataSourceFiltered()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\"\r\n [exportButton]=\"exportButton\"\r\n [importButton]=\"importButton\"\r\n [addButton]=\"addButton\"\r\n [saveButton]=\"saveButton\"\r\n [search]=\"search\"\r\n [searchInner]=\"_searchInner()\"\r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n [isLoading]=\"isLoading()\"\r\n [isDisabled]=\"isDisabled()\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isInvisible]=\"isInvisible()\" \r\n (onClickExport)=\"onClickExport.emit($event)\"\r\n (onClickImport)=\"_Import($event)\"\r\n (onClickAdd)=\"onClickAdd.emit()\"\r\n (onClickSave)=\"onClickSave.emit()\"\r\n (onInputSearch)=\"_UpdateSearchInner($event)\"\r\n (onClickClearSearch)=\"_UpdateSearchInner($event)\"\r\n (onKeyupEnterSearch)=\"onKeyupEnter.emit($event)\"> \r\n <ng-content></ng-content> \r\n </coer-grid-header>\r\n\r\n <section class=\"coer-grid-container\" [ngStyle]=\"{ 'overflow': !isLoading() ? 'auto' : 'hidden' }\"> \r\n <div [ngStyle]=\"{ 'height': _height, 'min-height': minHeight(), 'max-height': maxHeight() }\"> \r\n <!-- BODY --> \r\n <coer-grid-body\r\n #coerGridBody\r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [value]=\"_valueSignal()\"\r\n [columns]=\"_columns()\"\r\n [dataSource]=\"_dataSource()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\"\r\n [search]=\"search\"\r\n [searchInner]=\"_searchInner()\"\r\n [checkbox]=\"checkbox\"\r\n [buttonByRow]=\"buttonByRow\"\r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n [isLoading]=\"isLoading()\"\r\n [isDisabled]=\"isDisabled()\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isInvisible]=\"isInvisible()\"\r\n [isEnabled]=\"_isEnabled()\"\r\n [enableSort]=\"enableSort()\"\r\n [tooltipByRow]=\"tooltipByRow()\"\r\n [enableFocusNext]=\"enableFocusNext()\"\r\n [enableFocusRow]=\"enableFocusRow()\"\r\n [enableHoverRow]=\"enableHoverRow()\"\r\n [isStriped]=\"isStriped()\"\r\n (onValueChange)=\"SetValue($event)\"\r\n (onClickRow)=\"onClickRow.emit($event)\"\r\n (onDoubleClickRow)=\"onDoubleClickRow.emit($event)\"\r\n (onCheckboxChange)=\"onCheckboxChange.emit($event)\"\r\n (onInnerLoadingChange)=\"_isLoadingInner.set($event)\"\r\n (onClickDeleteRow)=\"onClickDeleteRow.emit($event)\"\r\n (onClickEditRow)=\"onClickEditRow.emit($event)\" \r\n (onClickGoRow)=\"onClickGoRow.emit($event)\" \r\n (onSwitchChange)=\"_SetValueInput($event, 'coer-switch')\"\r\n (onTextboxChange)=\"_SetValueInput($event, 'coer-textbox')\"\r\n (onNumberboxChange)=\"_SetValueInput($event, 'coer-numberbox')\"\r\n (onSelectboxChange)=\"_SetValueInput($event, 'coer-selectbox')\"\r\n (onKeyupEnter)=\"onKeyupEnter.emit($event)\"\r\n (onKeyupEnterLast)=\"onKeyupEnterLast.emit($event)\"\r\n ></coer-grid-body>\r\n\r\n <!-- Loading / Empty -->\r\n @if(isLoading()) {\r\n <div class=\"loading\">\r\n <div class=\"loading-content\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i>\r\n <span class=\"fa-fade\">Loading</span>\r\n </div>\r\n </div> \r\n } \r\n\r\n @else if(_isEnabled() && _valueSignal().length <= 0) {\r\n <div class=\"empty-data\">\r\n <div class=\"empty-data-content\"> No Data </div>\r\n </div>\r\n } \r\n </div>\r\n </section> \r\n\r\n <!-- FOOTER -->\r\n <coer-grid-footer\r\n #coerGridFooter\r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [footer]=\"footer\"\r\n [dataSource]=\"_valueSignal()\"\r\n [dataSourceFiltered]=\"_dataSourceFiltered()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\" \r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n ></coer-grid-footer>\r\n</div>", styles: ["div.coer-grid section.coer-grid-container{position:relative!important}div.coer-grid section.coer-grid-container div.loading,div.coer-grid section.coer-grid-container div.empty-data{position:absolute!important;inset:0!important;z-index:100!important;display:flex!important;align-items:center!important;justify-content:center!important}div.coer-grid section.coer-grid-container div.loading div.loading-content,div.coer-grid section.coer-grid-container div.loading div.empty-data-content,div.coer-grid section.coer-grid-container div.empty-data div.loading-content,div.coer-grid section.coer-grid-container div.empty-data div.empty-data-content{flex-flow:column!important;display:inherit!important;justify-content:inherit!important;align-items:inherit!important;font-size:35px!important;color:var(--gray)!important}div.coer-grid section.coer-grid-container div.loading div.loading-content::selection,div.coer-grid section.coer-grid-container div.loading div.empty-data-content::selection,div.coer-grid section.coer-grid-container div.empty-data div.loading-content::selection,div.coer-grid section.coer-grid-container div.empty-data div.empty-data-content::selection{background-color:transparent!important}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CoerGridHeader, selector: "coer-grid-header", inputs: ["GetIdCalculated", "GetColumnName", "columns", "dataSource", "dataSourceFiltered", "dataSourceSelected", "exportButton", "importButton", "addButton", "saveButton", "search", "searchInner", "isLoadingInner", "isLoading", "isDisabled", "isReadonly", "isInvisible"], outputs: ["onClickExport", "onClickImport", "onClickAdd", "onClickSave", "onInputSearch", "onClickClearSearch", "onKeyupEnterSearch"] }, { kind: "component", type: CoerGridBody, selector: "coer-grid-body", inputs: ["GetIdCalculated", "value", "columns", "dataSource", "dataSourceSelected", "search", "searchInner", "checkbox", "buttonByRow", "isLoadingInner", "isLoading", "isDisabled", "isReadonly", "isInvisible", "isEnabled", "enableSort", "enableFocusNext", "enableFocusRow", "enableHoverRow", "isStriped", "tooltipByRow"], outputs: ["onValueChange", "onClickRow", "onDoubleClickRow", "onInnerLoadingChange", "onCheckboxChange", "onClickDeleteRow", "onClickEditRow", "onClickGoRow", "onSwitchChange", "onTextboxChange", "onNumberboxChange", "onSelectboxChange", "onKeyupEnter", "onKeyupEnterLast"] }, { kind: "component", type: CoerGridfooter, selector: "coer-grid-footer", inputs: ["GetIdCalculated", "footer", "dataSource", "dataSourceFiltered", "dataSourceSelected", "isLoadingInner"] }] }); }
|
3370
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: CoerGrid, isStandalone: false, selector: "coer-grid", providers: [CONTROL_VALUE(CoerGrid)], usesInheritance: true, ngImport: i0, template: "<div [id]=\"_GetIdCalculated(-1, -1, 'coer-grid-inner')\" class=\"coer-grid\" [ngStyle]=\"{ 'width': width(), 'min-Width': MinWidth(), 'max-Width': MaxWidth(), 'margin': margin() }\">\r\n <!-- HEADER -->\r\n <coer-grid-header \r\n #coerGridHeader \r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [GetColumnName]=\"_GetColumnName\"\r\n [columns]=\"_columns()\"\r\n [dataSource]=\"_valueSignal()\"\r\n [dataSourceFiltered]=\"_dataSourceFiltered()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\"\r\n [exportButton]=\"exportButton\"\r\n [importButton]=\"importButton\"\r\n [addButton]=\"addButton\"\r\n [saveButton]=\"saveButton\"\r\n [search]=\"search\"\r\n [searchInner]=\"_searchInner()\"\r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n [isLoading]=\"isLoading()\"\r\n [isDisabled]=\"isDisabled()\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isInvisible]=\"isInvisible()\" \r\n (onClickExport)=\"onClickExport.emit($event)\"\r\n (onClickImport)=\"_Import($event)\"\r\n (onClickAdd)=\"onClickAdd.emit()\"\r\n (onClickSave)=\"onClickSave.emit()\"\r\n (onInputSearch)=\"_UpdateSearchInner($event)\"\r\n (onClickClearSearch)=\"_UpdateSearchInner($event)\"\r\n (onKeyupEnterSearch)=\"onKeyupEnter.emit($event)\"> \r\n <ng-content></ng-content> \r\n </coer-grid-header>\r\n\r\n <section class=\"coer-grid-container\" [ngStyle]=\"{ 'overflow': !isLoading() ? 'auto' : 'hidden' }\"> \r\n <div [ngStyle]=\"{ 'height': _height, 'min-height': minHeight(), 'max-height': maxHeight() }\"> \r\n <!-- BODY --> \r\n <coer-grid-body\r\n #coerGridBody\r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [value]=\"_valueSignal()\"\r\n [columns]=\"_columns()\"\r\n [dataSource]=\"_dataSource()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\"\r\n [search]=\"search\"\r\n [searchInner]=\"_searchInner()\"\r\n [checkbox]=\"checkbox\"\r\n [buttonByRow]=\"buttonByRow\"\r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n [isLoading]=\"isLoading()\"\r\n [isDisabled]=\"isDisabled()\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isInvisible]=\"isInvisible()\"\r\n [isEnabled]=\"_isEnabled()\"\r\n [enableSort]=\"enableSort()\"\r\n [tooltipByRow]=\"tooltipByRow()\"\r\n [enableFocusNext]=\"enableFocusNext()\"\r\n [enableFocusRow]=\"enableFocusRow()\"\r\n [enableHoverRow]=\"enableHoverRow()\"\r\n [isStriped]=\"isStriped()\"\r\n (onValueChange)=\"SetValue($event)\"\r\n (onClickRow)=\"onClickRow.emit($event)\"\r\n (onDoubleClickRow)=\"onDoubleClickRow.emit($event)\"\r\n (onCheckboxChange)=\"onCheckboxChange.emit($event)\"\r\n (onInnerLoadingChange)=\"_isLoadingInner.set($event)\"\r\n (onClickDeleteRow)=\"onClickDeleteRow.emit($event)\"\r\n (onClickEditRow)=\"onClickEditRow.emit($event)\" \r\n (onClickModalRow)=\"onClickModalRow.emit($event)\" \r\n (onClickGoRow)=\"onClickGoRow.emit($event)\" \r\n (onSwitchChange)=\"_SetValueInput($event, 'coer-switch')\"\r\n (onTextboxChange)=\"_SetValueInput($event, 'coer-textbox')\"\r\n (onNumberboxChange)=\"_SetValueInput($event, 'coer-numberbox')\"\r\n (onSelectboxChange)=\"_SetValueInput($event, 'coer-selectbox')\"\r\n (onKeyupEnter)=\"onKeyupEnter.emit($event)\"\r\n (onKeyupEnterLast)=\"onKeyupEnterLast.emit($event)\"\r\n ></coer-grid-body>\r\n\r\n <!-- Loading / Empty -->\r\n @if(isLoading()) {\r\n <div class=\"loading\">\r\n <div class=\"loading-content\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i>\r\n <span class=\"fa-fade\">Loading</span>\r\n </div>\r\n </div> \r\n } \r\n\r\n @else if(_isEnabled() && _valueSignal().length <= 0) {\r\n <div class=\"empty-data\">\r\n <div class=\"empty-data-content\"> No Data </div>\r\n </div>\r\n } \r\n </div>\r\n </section> \r\n\r\n <!-- FOOTER -->\r\n <coer-grid-footer\r\n #coerGridFooter\r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [footer]=\"footer\"\r\n [dataSource]=\"_valueSignal()\"\r\n [dataSourceFiltered]=\"_dataSourceFiltered()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\" \r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n ></coer-grid-footer>\r\n</div>", styles: ["div.coer-grid section.coer-grid-container{position:relative!important}div.coer-grid section.coer-grid-container div.loading,div.coer-grid section.coer-grid-container div.empty-data{position:absolute!important;inset:0!important;z-index:100!important;display:flex!important;align-items:center!important;justify-content:center!important}div.coer-grid section.coer-grid-container div.loading div.loading-content,div.coer-grid section.coer-grid-container div.loading div.empty-data-content,div.coer-grid section.coer-grid-container div.empty-data div.loading-content,div.coer-grid section.coer-grid-container div.empty-data div.empty-data-content{flex-flow:column!important;display:inherit!important;justify-content:inherit!important;align-items:inherit!important;font-size:35px!important;color:var(--gray)!important}div.coer-grid section.coer-grid-container div.loading div.loading-content::selection,div.coer-grid section.coer-grid-container div.loading div.empty-data-content::selection,div.coer-grid section.coer-grid-container div.empty-data div.loading-content::selection,div.coer-grid section.coer-grid-container div.empty-data div.empty-data-content::selection{background-color:transparent!important}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CoerGridHeader, selector: "coer-grid-header", inputs: ["GetIdCalculated", "GetColumnName", "columns", "dataSource", "dataSourceFiltered", "dataSourceSelected", "exportButton", "importButton", "addButton", "saveButton", "search", "searchInner", "isLoadingInner", "isLoading", "isDisabled", "isReadonly", "isInvisible"], outputs: ["onClickExport", "onClickImport", "onClickAdd", "onClickSave", "onInputSearch", "onClickClearSearch", "onKeyupEnterSearch"] }, { kind: "component", type: CoerGridBody, selector: "coer-grid-body", inputs: ["GetIdCalculated", "value", "columns", "dataSource", "dataSourceSelected", "search", "searchInner", "checkbox", "buttonByRow", "isLoadingInner", "isLoading", "isDisabled", "isReadonly", "isInvisible", "isEnabled", "enableSort", "enableFocusNext", "enableFocusRow", "enableHoverRow", "isStriped", "tooltipByRow"], outputs: ["onValueChange", "onClickRow", "onDoubleClickRow", "onInnerLoadingChange", "onCheckboxChange", "onClickDeleteRow", "onClickEditRow", "onClickModalRow", "onClickGoRow", "onSwitchChange", "onTextboxChange", "onNumberboxChange", "onSelectboxChange", "onKeyupEnter", "onKeyupEnterLast"] }, { kind: "component", type: CoerGridfooter, selector: "coer-grid-footer", inputs: ["GetIdCalculated", "footer", "dataSource", "dataSourceFiltered", "dataSourceSelected", "isLoadingInner"] }] }); }
|
3339
3371
|
}
|
3340
3372
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: CoerGrid, decorators: [{
|
3341
3373
|
type: Component,
|
3342
|
-
args: [{ selector: 'coer-grid', providers: [CONTROL_VALUE(CoerGrid)], standalone: false, template: "<div [id]=\"_GetIdCalculated(-1, -1, 'coer-grid-inner')\" class=\"coer-grid\" [ngStyle]=\"{ 'width': width(), 'min-Width': MinWidth(), 'max-Width': MaxWidth(), 'margin': margin() }\">\r\n <!-- HEADER -->\r\n <coer-grid-header \r\n #coerGridHeader \r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [GetColumnName]=\"_GetColumnName\"\r\n [columns]=\"_columns()\"\r\n [dataSource]=\"_valueSignal()\"\r\n [dataSourceFiltered]=\"_dataSourceFiltered()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\"\r\n [exportButton]=\"exportButton\"\r\n [importButton]=\"importButton\"\r\n [addButton]=\"addButton\"\r\n [saveButton]=\"saveButton\"\r\n [search]=\"search\"\r\n [searchInner]=\"_searchInner()\"\r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n [isLoading]=\"isLoading()\"\r\n [isDisabled]=\"isDisabled()\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isInvisible]=\"isInvisible()\" \r\n (onClickExport)=\"onClickExport.emit($event)\"\r\n (onClickImport)=\"_Import($event)\"\r\n (onClickAdd)=\"onClickAdd.emit()\"\r\n (onClickSave)=\"onClickSave.emit()\"\r\n (onInputSearch)=\"_UpdateSearchInner($event)\"\r\n (onClickClearSearch)=\"_UpdateSearchInner($event)\"\r\n (onKeyupEnterSearch)=\"onKeyupEnter.emit($event)\"> \r\n <ng-content></ng-content> \r\n </coer-grid-header>\r\n\r\n <section class=\"coer-grid-container\" [ngStyle]=\"{ 'overflow': !isLoading() ? 'auto' : 'hidden' }\"> \r\n <div [ngStyle]=\"{ 'height': _height, 'min-height': minHeight(), 'max-height': maxHeight() }\"> \r\n <!-- BODY --> \r\n <coer-grid-body\r\n #coerGridBody\r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [value]=\"_valueSignal()\"\r\n [columns]=\"_columns()\"\r\n [dataSource]=\"_dataSource()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\"\r\n [search]=\"search\"\r\n [searchInner]=\"_searchInner()\"\r\n [checkbox]=\"checkbox\"\r\n [buttonByRow]=\"buttonByRow\"\r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n [isLoading]=\"isLoading()\"\r\n [isDisabled]=\"isDisabled()\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isInvisible]=\"isInvisible()\"\r\n [isEnabled]=\"_isEnabled()\"\r\n [enableSort]=\"enableSort()\"\r\n [tooltipByRow]=\"tooltipByRow()\"\r\n [enableFocusNext]=\"enableFocusNext()\"\r\n [enableFocusRow]=\"enableFocusRow()\"\r\n [enableHoverRow]=\"enableHoverRow()\"\r\n [isStriped]=\"isStriped()\"\r\n (onValueChange)=\"SetValue($event)\"\r\n (onClickRow)=\"onClickRow.emit($event)\"\r\n (onDoubleClickRow)=\"onDoubleClickRow.emit($event)\"\r\n (onCheckboxChange)=\"onCheckboxChange.emit($event)\"\r\n (onInnerLoadingChange)=\"_isLoadingInner.set($event)\"\r\n (onClickDeleteRow)=\"onClickDeleteRow.emit($event)\"\r\n (onClickEditRow)=\"onClickEditRow.emit($event)\" \r\n (onClickGoRow)=\"onClickGoRow.emit($event)\" \r\n (onSwitchChange)=\"_SetValueInput($event, 'coer-switch')\"\r\n (onTextboxChange)=\"_SetValueInput($event, 'coer-textbox')\"\r\n (onNumberboxChange)=\"_SetValueInput($event, 'coer-numberbox')\"\r\n (onSelectboxChange)=\"_SetValueInput($event, 'coer-selectbox')\"\r\n (onKeyupEnter)=\"onKeyupEnter.emit($event)\"\r\n (onKeyupEnterLast)=\"onKeyupEnterLast.emit($event)\"\r\n ></coer-grid-body>\r\n\r\n <!-- Loading / Empty -->\r\n @if(isLoading()) {\r\n <div class=\"loading\">\r\n <div class=\"loading-content\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i>\r\n <span class=\"fa-fade\">Loading</span>\r\n </div>\r\n </div> \r\n } \r\n\r\n @else if(_isEnabled() && _valueSignal().length <= 0) {\r\n <div class=\"empty-data\">\r\n <div class=\"empty-data-content\"> No Data </div>\r\n </div>\r\n } \r\n </div>\r\n </section> \r\n\r\n <!-- FOOTER -->\r\n <coer-grid-footer\r\n #coerGridFooter\r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [footer]=\"footer\"\r\n [dataSource]=\"_valueSignal()\"\r\n [dataSourceFiltered]=\"_dataSourceFiltered()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\" \r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n ></coer-grid-footer>\r\n</div>", styles: ["div.coer-grid section.coer-grid-container{position:relative!important}div.coer-grid section.coer-grid-container div.loading,div.coer-grid section.coer-grid-container div.empty-data{position:absolute!important;inset:0!important;z-index:100!important;display:flex!important;align-items:center!important;justify-content:center!important}div.coer-grid section.coer-grid-container div.loading div.loading-content,div.coer-grid section.coer-grid-container div.loading div.empty-data-content,div.coer-grid section.coer-grid-container div.empty-data div.loading-content,div.coer-grid section.coer-grid-container div.empty-data div.empty-data-content{flex-flow:column!important;display:inherit!important;justify-content:inherit!important;align-items:inherit!important;font-size:35px!important;color:var(--gray)!important}div.coer-grid section.coer-grid-container div.loading div.loading-content::selection,div.coer-grid section.coer-grid-container div.loading div.empty-data-content::selection,div.coer-grid section.coer-grid-container div.empty-data div.loading-content::selection,div.coer-grid section.coer-grid-container div.empty-data div.empty-data-content::selection{background-color:transparent!important}\n"] }]
|
3374
|
+
args: [{ selector: 'coer-grid', providers: [CONTROL_VALUE(CoerGrid)], standalone: false, template: "<div [id]=\"_GetIdCalculated(-1, -1, 'coer-grid-inner')\" class=\"coer-grid\" [ngStyle]=\"{ 'width': width(), 'min-Width': MinWidth(), 'max-Width': MaxWidth(), 'margin': margin() }\">\r\n <!-- HEADER -->\r\n <coer-grid-header \r\n #coerGridHeader \r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [GetColumnName]=\"_GetColumnName\"\r\n [columns]=\"_columns()\"\r\n [dataSource]=\"_valueSignal()\"\r\n [dataSourceFiltered]=\"_dataSourceFiltered()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\"\r\n [exportButton]=\"exportButton\"\r\n [importButton]=\"importButton\"\r\n [addButton]=\"addButton\"\r\n [saveButton]=\"saveButton\"\r\n [search]=\"search\"\r\n [searchInner]=\"_searchInner()\"\r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n [isLoading]=\"isLoading()\"\r\n [isDisabled]=\"isDisabled()\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isInvisible]=\"isInvisible()\" \r\n (onClickExport)=\"onClickExport.emit($event)\"\r\n (onClickImport)=\"_Import($event)\"\r\n (onClickAdd)=\"onClickAdd.emit()\"\r\n (onClickSave)=\"onClickSave.emit()\"\r\n (onInputSearch)=\"_UpdateSearchInner($event)\"\r\n (onClickClearSearch)=\"_UpdateSearchInner($event)\"\r\n (onKeyupEnterSearch)=\"onKeyupEnter.emit($event)\"> \r\n <ng-content></ng-content> \r\n </coer-grid-header>\r\n\r\n <section class=\"coer-grid-container\" [ngStyle]=\"{ 'overflow': !isLoading() ? 'auto' : 'hidden' }\"> \r\n <div [ngStyle]=\"{ 'height': _height, 'min-height': minHeight(), 'max-height': maxHeight() }\"> \r\n <!-- BODY --> \r\n <coer-grid-body\r\n #coerGridBody\r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [value]=\"_valueSignal()\"\r\n [columns]=\"_columns()\"\r\n [dataSource]=\"_dataSource()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\"\r\n [search]=\"search\"\r\n [searchInner]=\"_searchInner()\"\r\n [checkbox]=\"checkbox\"\r\n [buttonByRow]=\"buttonByRow\"\r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n [isLoading]=\"isLoading()\"\r\n [isDisabled]=\"isDisabled()\"\r\n [isReadonly]=\"isReadonly()\"\r\n [isInvisible]=\"isInvisible()\"\r\n [isEnabled]=\"_isEnabled()\"\r\n [enableSort]=\"enableSort()\"\r\n [tooltipByRow]=\"tooltipByRow()\"\r\n [enableFocusNext]=\"enableFocusNext()\"\r\n [enableFocusRow]=\"enableFocusRow()\"\r\n [enableHoverRow]=\"enableHoverRow()\"\r\n [isStriped]=\"isStriped()\"\r\n (onValueChange)=\"SetValue($event)\"\r\n (onClickRow)=\"onClickRow.emit($event)\"\r\n (onDoubleClickRow)=\"onDoubleClickRow.emit($event)\"\r\n (onCheckboxChange)=\"onCheckboxChange.emit($event)\"\r\n (onInnerLoadingChange)=\"_isLoadingInner.set($event)\"\r\n (onClickDeleteRow)=\"onClickDeleteRow.emit($event)\"\r\n (onClickEditRow)=\"onClickEditRow.emit($event)\" \r\n (onClickModalRow)=\"onClickModalRow.emit($event)\" \r\n (onClickGoRow)=\"onClickGoRow.emit($event)\" \r\n (onSwitchChange)=\"_SetValueInput($event, 'coer-switch')\"\r\n (onTextboxChange)=\"_SetValueInput($event, 'coer-textbox')\"\r\n (onNumberboxChange)=\"_SetValueInput($event, 'coer-numberbox')\"\r\n (onSelectboxChange)=\"_SetValueInput($event, 'coer-selectbox')\"\r\n (onKeyupEnter)=\"onKeyupEnter.emit($event)\"\r\n (onKeyupEnterLast)=\"onKeyupEnterLast.emit($event)\"\r\n ></coer-grid-body>\r\n\r\n <!-- Loading / Empty -->\r\n @if(isLoading()) {\r\n <div class=\"loading\">\r\n <div class=\"loading-content\">\r\n <i class=\"icon-circle-notch animation-spin text-primary\"></i>\r\n <span class=\"fa-fade\">Loading</span>\r\n </div>\r\n </div> \r\n } \r\n\r\n @else if(_isEnabled() && _valueSignal().length <= 0) {\r\n <div class=\"empty-data\">\r\n <div class=\"empty-data-content\"> No Data </div>\r\n </div>\r\n } \r\n </div>\r\n </section> \r\n\r\n <!-- FOOTER -->\r\n <coer-grid-footer\r\n #coerGridFooter\r\n [GetIdCalculated]=\"_GetIdCalculated\"\r\n [footer]=\"footer\"\r\n [dataSource]=\"_valueSignal()\"\r\n [dataSourceFiltered]=\"_dataSourceFiltered()\"\r\n [dataSourceSelected]=\"dataSourceSelected()\" \r\n [isLoadingInner]=\"_isLoadingInner()\"\r\n ></coer-grid-footer>\r\n</div>", styles: ["div.coer-grid section.coer-grid-container{position:relative!important}div.coer-grid section.coer-grid-container div.loading,div.coer-grid section.coer-grid-container div.empty-data{position:absolute!important;inset:0!important;z-index:100!important;display:flex!important;align-items:center!important;justify-content:center!important}div.coer-grid section.coer-grid-container div.loading div.loading-content,div.coer-grid section.coer-grid-container div.loading div.empty-data-content,div.coer-grid section.coer-grid-container div.empty-data div.loading-content,div.coer-grid section.coer-grid-container div.empty-data div.empty-data-content{flex-flow:column!important;display:inherit!important;justify-content:inherit!important;align-items:inherit!important;font-size:35px!important;color:var(--gray)!important}div.coer-grid section.coer-grid-container div.loading div.loading-content::selection,div.coer-grid section.coer-grid-container div.loading div.empty-data-content::selection,div.coer-grid section.coer-grid-container div.empty-data div.loading-content::selection,div.coer-grid section.coer-grid-container div.empty-data div.empty-data-content::selection{background-color:transparent!important}\n"] }]
|
3343
3375
|
}] });
|
3344
3376
|
|
3345
3377
|
class CoerList {
|