@konce-pt/angular 0.7.7 → 0.7.9
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/CHANGELOG.md +51 -0
- package/fesm2022/konce-pt-angular.mjs +925 -546
- package/fesm2022/konce-pt-angular.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/data-table/llms.txt +51 -1
- package/src/lib/date-range/llms.txt +8 -1
- package/src/lib/datepicker/llms.txt +27 -3
- package/types/konce-pt-angular.d.ts +138 -16
- package/types/konce-pt-angular.d.ts.map +1 -1
|
@@ -735,6 +735,7 @@ const KPT_MESSAGES_EN = {
|
|
|
735
735
|
min: 'min',
|
|
736
736
|
max: 'max',
|
|
737
737
|
editCell: 'Edit: {column}',
|
|
738
|
+
total: 'Total',
|
|
738
739
|
},
|
|
739
740
|
confirm: {
|
|
740
741
|
header: 'Confirmation',
|
|
@@ -762,6 +763,11 @@ const KPT_MESSAGES_EN = {
|
|
|
762
763
|
nextYear: 'Next year',
|
|
763
764
|
prevYears: 'Previous years',
|
|
764
765
|
nextYears: 'Next years',
|
|
766
|
+
prevDecades: 'Previous decades',
|
|
767
|
+
nextDecades: 'Next decades',
|
|
768
|
+
chooseMonth: 'Choose month',
|
|
769
|
+
chooseYear: 'Choose year',
|
|
770
|
+
chooseDecade: 'Choose decade',
|
|
765
771
|
calendar: 'Calendar',
|
|
766
772
|
month: 'Month',
|
|
767
773
|
time: 'Time',
|
|
@@ -997,6 +1003,7 @@ const KPT_MESSAGES_PL = {
|
|
|
997
1003
|
min: 'min',
|
|
998
1004
|
max: 'max',
|
|
999
1005
|
editCell: 'Edytuj: {column}',
|
|
1006
|
+
total: 'Razem',
|
|
1000
1007
|
},
|
|
1001
1008
|
confirm: {
|
|
1002
1009
|
header: 'Potwierdzenie',
|
|
@@ -1024,6 +1031,11 @@ const KPT_MESSAGES_PL = {
|
|
|
1024
1031
|
nextYear: 'Następny rok',
|
|
1025
1032
|
prevYears: 'Poprzednie lata',
|
|
1026
1033
|
nextYears: 'Następne lata',
|
|
1034
|
+
prevDecades: 'Poprzednie dekady',
|
|
1035
|
+
nextDecades: 'Następne dekady',
|
|
1036
|
+
chooseMonth: 'Wybierz miesiąc',
|
|
1037
|
+
chooseYear: 'Wybierz rok',
|
|
1038
|
+
chooseDecade: 'Wybierz dekadę',
|
|
1027
1039
|
calendar: 'Kalendarz',
|
|
1028
1040
|
month: 'Miesiąc',
|
|
1029
1041
|
time: 'Godzina',
|
|
@@ -3047,7 +3059,7 @@ class KptClock {
|
|
|
3047
3059
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KptClock, { className: "KptClock", filePath: "lib/datepicker/clock.component.ts", lineNumber: 94 }); })();
|
|
3048
3060
|
|
|
3049
3061
|
const _forTrack0$8 = ($index, $item) => $item.iso;
|
|
3050
|
-
const _forTrack1$
|
|
3062
|
+
const _forTrack1$2 = ($index, $item) => $item.label;
|
|
3051
3063
|
function KptDatepicker_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
3052
3064
|
i0.ɵɵelementStart(0, "span", 2);
|
|
3053
3065
|
i0.ɵɵtext(1);
|
|
@@ -3076,325 +3088,284 @@ function KptDatepicker_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
|
3076
3088
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
3077
3089
|
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("common.clear"));
|
|
3078
3090
|
} }
|
|
3079
|
-
function
|
|
3080
|
-
const
|
|
3081
|
-
i0.ɵɵelementStart(0, "
|
|
3082
|
-
i0.ɵɵ
|
|
3091
|
+
function KptDatepicker_ng_template_7_Conditional_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
3092
|
+
const _r5 = i0.ɵɵgetCurrentView();
|
|
3093
|
+
i0.ɵɵelementStart(0, "div", 12)(1, "button", 14);
|
|
3094
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_1_Conditional_0_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r5); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.backToCalendar()); });
|
|
3095
|
+
i0.ɵɵelement(2, "kpt-icon", 15);
|
|
3083
3096
|
i0.ɵɵelementEnd();
|
|
3084
|
-
i0.ɵɵelementStart(
|
|
3085
|
-
i0.ɵɵ
|
|
3086
|
-
i0.ɵɵtext(3);
|
|
3097
|
+
i0.ɵɵelementStart(3, "span", 16);
|
|
3098
|
+
i0.ɵɵtext(4);
|
|
3087
3099
|
i0.ɵɵelementEnd()();
|
|
3088
3100
|
} if (rf & 2) {
|
|
3089
|
-
const ctx_r0 = i0.ɵɵnextContext(
|
|
3090
|
-
i0.ɵɵtwoWayProperty("value", ctx_r0.timeStr);
|
|
3091
|
-
i0.ɵɵproperty("hourFormat", ctx_r0.hourFormat())("minuteStep", ctx_r0.minuteStep());
|
|
3092
|
-
i0.ɵɵadvance(3);
|
|
3093
|
-
i0.ɵɵtextInterpolate(ctx_r0.i18n.t("common.done"));
|
|
3094
|
-
} }
|
|
3095
|
-
function KptDatepicker_ng_template_7_Case_2_Conditional_0_For_9_Template(rf, ctx) { if (rf & 1) {
|
|
3096
|
-
i0.ɵɵelementStart(0, "span", 20);
|
|
3097
|
-
i0.ɵɵtext(1);
|
|
3098
|
-
i0.ɵɵelementEnd();
|
|
3099
|
-
} if (rf & 2) {
|
|
3100
|
-
const wd_r7 = ctx.$implicit;
|
|
3101
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3101
3102
|
i0.ɵɵadvance();
|
|
3102
|
-
i0.ɵɵ
|
|
3103
|
+
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.calendar"));
|
|
3104
|
+
i0.ɵɵadvance(3);
|
|
3105
|
+
i0.ɵɵtextInterpolate(ctx_r0.i18n.t("datepicker.time"));
|
|
3103
3106
|
} }
|
|
3104
|
-
function
|
|
3105
|
-
const
|
|
3106
|
-
i0.ɵɵ
|
|
3107
|
-
i0.ɵɵ
|
|
3108
|
-
i0.ɵɵ
|
|
3107
|
+
function KptDatepicker_ng_template_7_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
3108
|
+
const _r4 = i0.ɵɵgetCurrentView();
|
|
3109
|
+
i0.ɵɵconditionalCreate(0, KptDatepicker_ng_template_7_Conditional_1_Conditional_0_Template, 5, 2, "div", 12);
|
|
3110
|
+
i0.ɵɵelementStart(1, "kpt-clock", 13);
|
|
3111
|
+
i0.ɵɵtwoWayListener("valueChange", function KptDatepicker_ng_template_7_Conditional_1_Template_kpt_clock_valueChange_1_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r0 = i0.ɵɵnextContext(2); i0.ɵɵtwoWayBindingSet(ctx_r0.timeStr, $event) || (ctx_r0.timeStr = $event); return i0.ɵɵresetView($event); });
|
|
3109
3112
|
i0.ɵɵelementEnd();
|
|
3110
3113
|
} if (rf & 2) {
|
|
3111
|
-
const
|
|
3112
|
-
i0.ɵɵ
|
|
3113
|
-
i0.ɵɵproperty("disabled", cell_r9.disabled);
|
|
3114
|
-
i0.ɵɵattribute("aria-pressed", cell_r9.selected);
|
|
3114
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
3115
|
+
i0.ɵɵconditional(ctx_r0.selectionMode() === "datetime" ? 0 : -1);
|
|
3115
3116
|
i0.ɵɵadvance();
|
|
3116
|
-
i0.ɵɵ
|
|
3117
|
-
|
|
3118
|
-
function KptDatepicker_ng_template_7_Case_2_Conditional_0_For_12_Template(rf, ctx) { if (rf & 1) {
|
|
3119
|
-
i0.ɵɵrepeaterCreate(0, KptDatepicker_ng_template_7_Case_2_Conditional_0_For_12_For_1_Template, 2, 9, "button", 24, _forTrack0$8);
|
|
3120
|
-
} if (rf & 2) {
|
|
3121
|
-
const week_r10 = ctx.$implicit;
|
|
3122
|
-
i0.ɵɵrepeater(week_r10);
|
|
3117
|
+
i0.ɵɵtwoWayProperty("value", ctx_r0.timeStr);
|
|
3118
|
+
i0.ɵɵproperty("hourFormat", ctx_r0.hourFormat())("minuteStep", ctx_r0.minuteStep());
|
|
3123
3119
|
} }
|
|
3124
|
-
function
|
|
3120
|
+
function KptDatepicker_ng_template_7_Conditional_2_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
3125
3121
|
const _r6 = i0.ɵɵgetCurrentView();
|
|
3126
|
-
i0.ɵɵelementStart(0, "
|
|
3127
|
-
i0.ɵɵlistener("click", function
|
|
3128
|
-
i0.ɵɵelement(
|
|
3129
|
-
i0.ɵɵelementEnd();
|
|
3130
|
-
i0.ɵɵelementStart(3, "span", 17);
|
|
3131
|
-
i0.ɵɵtext(4);
|
|
3132
|
-
i0.ɵɵelementEnd();
|
|
3133
|
-
i0.ɵɵelementStart(5, "button", 15);
|
|
3134
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_2_Conditional_0_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.nextMonth()); });
|
|
3135
|
-
i0.ɵɵelement(6, "kpt-icon", 18);
|
|
3136
|
-
i0.ɵɵelementEnd()();
|
|
3137
|
-
i0.ɵɵelementStart(7, "div", 19);
|
|
3138
|
-
i0.ɵɵrepeaterCreate(8, KptDatepicker_ng_template_7_Case_2_Conditional_0_For_9_Template, 2, 1, "span", 20, i0.ɵɵrepeaterTrackByIdentity);
|
|
3139
|
-
i0.ɵɵelementEnd();
|
|
3140
|
-
i0.ɵɵelementStart(10, "div", 21);
|
|
3141
|
-
i0.ɵɵrepeaterCreate(11, KptDatepicker_ng_template_7_Case_2_Conditional_0_For_12_Template, 2, 0, null, null, i0.ɵɵrepeaterTrackByIndex);
|
|
3122
|
+
i0.ɵɵelementStart(0, "button", 22);
|
|
3123
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.pagePrev()); });
|
|
3124
|
+
i0.ɵɵelement(1, "kpt-icon", 15);
|
|
3142
3125
|
i0.ɵɵelementEnd();
|
|
3143
|
-
i0.ɵɵelementStart(13, "button", 22);
|
|
3144
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_2_Conditional_0_Template_button_click_13_listener() { i0.ɵɵrestoreView(_r6); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.openClock()); });
|
|
3145
|
-
i0.ɵɵelement(14, "kpt-icon", 23);
|
|
3146
|
-
i0.ɵɵelementStart(15, "span");
|
|
3147
|
-
i0.ɵɵtext(16);
|
|
3148
|
-
i0.ɵɵelementEnd()();
|
|
3149
3126
|
} if (rf & 2) {
|
|
3150
3127
|
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3151
|
-
i0.ɵɵ
|
|
3152
|
-
i0.ɵɵattribute("aria-label", ctx_r0.
|
|
3153
|
-
i0.ɵɵadvance(3);
|
|
3154
|
-
i0.ɵɵtextInterpolate(ctx_r0.monthLabel());
|
|
3155
|
-
i0.ɵɵadvance();
|
|
3156
|
-
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.nextMonth"));
|
|
3157
|
-
i0.ɵɵadvance(3);
|
|
3158
|
-
i0.ɵɵrepeater(ctx_r0.weekdays());
|
|
3159
|
-
i0.ɵɵadvance(3);
|
|
3160
|
-
i0.ɵɵrepeater(ctx_r0.weeks());
|
|
3161
|
-
i0.ɵɵadvance(5);
|
|
3162
|
-
i0.ɵɵtextInterpolate(ctx_r0.timeBarLabel());
|
|
3128
|
+
i0.ɵɵproperty("disabled", !ctx_r0.canPageBack());
|
|
3129
|
+
i0.ɵɵattribute("aria-label", ctx_r0.navPrevLabel());
|
|
3163
3130
|
} }
|
|
3164
|
-
function
|
|
3165
|
-
const
|
|
3166
|
-
i0.ɵɵelementStart(0, "
|
|
3167
|
-
i0.ɵɵlistener("click", function
|
|
3168
|
-
i0.ɵɵ
|
|
3131
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_3_Template(rf, ctx) { if (rf & 1) {
|
|
3132
|
+
const _r7 = i0.ɵɵgetCurrentView();
|
|
3133
|
+
i0.ɵɵelementStart(0, "button", 23);
|
|
3134
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Case_3_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.goTo("month")); });
|
|
3135
|
+
i0.ɵɵtext(1);
|
|
3169
3136
|
i0.ɵɵelementEnd();
|
|
3170
|
-
i0.ɵɵelementStart(
|
|
3171
|
-
i0.ɵɵ
|
|
3172
|
-
i0.ɵɵ
|
|
3173
|
-
i0.ɵɵelementStart(5, "kpt-clock", 11);
|
|
3174
|
-
i0.ɵɵtwoWayListener("valueChange", function KptDatepicker_ng_template_7_Case_2_Conditional_1_Template_kpt_clock_valueChange_5_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r0 = i0.ɵɵnextContext(3); i0.ɵɵtwoWayBindingSet(ctx_r0.timeStr, $event) || (ctx_r0.timeStr = $event); return i0.ɵɵresetView($event); });
|
|
3137
|
+
i0.ɵɵelementStart(2, "button", 23);
|
|
3138
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Case_3_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.goTo("year")); });
|
|
3139
|
+
i0.ɵɵtext(3);
|
|
3175
3140
|
i0.ɵɵelementEnd();
|
|
3176
3141
|
} if (rf & 2) {
|
|
3177
3142
|
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3143
|
+
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.chooseMonth"));
|
|
3178
3144
|
i0.ɵɵadvance();
|
|
3179
|
-
i0.ɵɵ
|
|
3180
|
-
i0.ɵɵadvance(3);
|
|
3181
|
-
i0.ɵɵtextInterpolate(ctx_r0.i18n.t("datepicker.time"));
|
|
3145
|
+
i0.ɵɵtextInterpolate(ctx_r0.monthName());
|
|
3182
3146
|
i0.ɵɵadvance();
|
|
3183
|
-
i0.ɵɵ
|
|
3184
|
-
i0.ɵɵ
|
|
3185
|
-
|
|
3186
|
-
function KptDatepicker_ng_template_7_Case_2_Template(rf, ctx) { if (rf & 1) {
|
|
3187
|
-
const _r5 = i0.ɵɵgetCurrentView();
|
|
3188
|
-
i0.ɵɵconditionalCreate(0, KptDatepicker_ng_template_7_Case_2_Conditional_0_Template, 17, 4)(1, KptDatepicker_ng_template_7_Case_2_Conditional_1_Template, 6, 5);
|
|
3189
|
-
i0.ɵɵelementStart(2, "div", 12)(3, "kpt-button", 13);
|
|
3190
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_2_Template_kpt_button_click_3_listener() { i0.ɵɵrestoreView(_r5); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.commit()); });
|
|
3191
|
-
i0.ɵɵtext(4);
|
|
3192
|
-
i0.ɵɵelementEnd()();
|
|
3193
|
-
} if (rf & 2) {
|
|
3194
|
-
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
3195
|
-
i0.ɵɵconditional(ctx_r0.dtView() === "calendar" ? 0 : 1);
|
|
3196
|
-
i0.ɵɵadvance(4);
|
|
3197
|
-
i0.ɵɵtextInterpolate(ctx_r0.i18n.t("common.done"));
|
|
3147
|
+
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.chooseYear"));
|
|
3148
|
+
i0.ɵɵadvance();
|
|
3149
|
+
i0.ɵɵtextInterpolate(ctx_r0.viewYear());
|
|
3198
3150
|
} }
|
|
3199
|
-
function
|
|
3200
|
-
|
|
3201
|
-
i0.ɵɵelementStart(0, "button", 28);
|
|
3202
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_3_For_9_Template_button_click_0_listener() { const cell_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.selectCell(cell_r14)); });
|
|
3151
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_4_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
3152
|
+
i0.ɵɵelementStart(0, "span", 16);
|
|
3203
3153
|
i0.ɵɵtext(1);
|
|
3204
3154
|
i0.ɵɵelementEnd();
|
|
3205
3155
|
} if (rf & 2) {
|
|
3206
|
-
const
|
|
3207
|
-
i0.ɵɵclassProp("kpt-calendar__cell--selected", cell_r14.selected);
|
|
3208
|
-
i0.ɵɵproperty("disabled", cell_r14.disabled);
|
|
3209
|
-
i0.ɵɵattribute("aria-pressed", cell_r14.selected);
|
|
3156
|
+
const ctx_r0 = i0.ɵɵnextContext(4);
|
|
3210
3157
|
i0.ɵɵadvance();
|
|
3211
|
-
i0.ɵɵtextInterpolate(
|
|
3158
|
+
i0.ɵɵtextInterpolate(ctx_r0.i18n.t("datepicker.month"));
|
|
3212
3159
|
} }
|
|
3213
|
-
function
|
|
3214
|
-
const
|
|
3215
|
-
i0.ɵɵelementStart(0, "
|
|
3216
|
-
i0.ɵɵlistener("click", function
|
|
3217
|
-
i0.ɵɵ
|
|
3218
|
-
i0.ɵɵelementEnd();
|
|
3219
|
-
i0.ɵɵelementStart(3, "span", 17);
|
|
3220
|
-
i0.ɵɵtext(4);
|
|
3221
|
-
i0.ɵɵelementEnd();
|
|
3222
|
-
i0.ɵɵelementStart(5, "button", 15);
|
|
3223
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_3_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r12); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.nextYear()); });
|
|
3224
|
-
i0.ɵɵelement(6, "kpt-icon", 18);
|
|
3225
|
-
i0.ɵɵelementEnd()();
|
|
3226
|
-
i0.ɵɵelementStart(7, "div", 26);
|
|
3227
|
-
i0.ɵɵrepeaterCreate(8, KptDatepicker_ng_template_7_Case_3_For_9_Template, 2, 5, "button", 27, _forTrack1$1);
|
|
3160
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_4_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
3161
|
+
const _r8 = i0.ɵɵgetCurrentView();
|
|
3162
|
+
i0.ɵɵelementStart(0, "button", 23);
|
|
3163
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Case_4_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r0 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r0.goTo("year")); });
|
|
3164
|
+
i0.ɵɵtext(1);
|
|
3228
3165
|
i0.ɵɵelementEnd();
|
|
3229
3166
|
} if (rf & 2) {
|
|
3230
|
-
const ctx_r0 = i0.ɵɵnextContext(
|
|
3167
|
+
const ctx_r0 = i0.ɵɵnextContext(4);
|
|
3168
|
+
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.chooseYear"));
|
|
3231
3169
|
i0.ɵɵadvance();
|
|
3232
|
-
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.prevYear"));
|
|
3233
|
-
i0.ɵɵadvance(3);
|
|
3234
3170
|
i0.ɵɵtextInterpolate(ctx_r0.viewYear());
|
|
3235
|
-
i0.ɵɵadvance();
|
|
3236
|
-
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.nextYear"));
|
|
3237
|
-
i0.ɵɵadvance(3);
|
|
3238
|
-
i0.ɵɵrepeater(ctx_r0.monthCells());
|
|
3239
3171
|
} }
|
|
3240
|
-
function
|
|
3241
|
-
|
|
3242
|
-
i0.ɵɵelementStart(0, "button", 28);
|
|
3243
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_4_For_9_Template_button_click_0_listener() { const cell_r17 = i0.ɵɵrestoreView(_r16).$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.selectCell(cell_r17)); });
|
|
3244
|
-
i0.ɵɵtext(1);
|
|
3245
|
-
i0.ɵɵelementEnd();
|
|
3172
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_4_Template(rf, ctx) { if (rf & 1) {
|
|
3173
|
+
i0.ɵɵconditionalCreate(0, KptDatepicker_ng_template_7_Conditional_2_Case_4_Conditional_0_Template, 2, 1, "span", 16)(1, KptDatepicker_ng_template_7_Conditional_2_Case_4_Conditional_1_Template, 2, 2, "button", 19);
|
|
3246
3174
|
} if (rf & 2) {
|
|
3247
|
-
const
|
|
3248
|
-
i0.ɵɵ
|
|
3249
|
-
i0.ɵɵproperty("disabled", cell_r17.disabled);
|
|
3250
|
-
i0.ɵɵattribute("aria-pressed", cell_r17.selected);
|
|
3251
|
-
i0.ɵɵadvance();
|
|
3252
|
-
i0.ɵɵtextInterpolate(cell_r17.label);
|
|
3175
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3176
|
+
i0.ɵɵconditional(ctx_r0.selectionMode() === "month" ? 0 : 1);
|
|
3253
3177
|
} }
|
|
3254
|
-
function
|
|
3255
|
-
const
|
|
3256
|
-
i0.ɵɵelementStart(0, "
|
|
3257
|
-
i0.ɵɵlistener("click", function
|
|
3258
|
-
i0.ɵɵ
|
|
3259
|
-
i0.ɵɵelementEnd();
|
|
3260
|
-
i0.ɵɵelementStart(3, "span", 17);
|
|
3261
|
-
i0.ɵɵtext(4);
|
|
3262
|
-
i0.ɵɵelementEnd();
|
|
3263
|
-
i0.ɵɵelementStart(5, "button", 15);
|
|
3264
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_4_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r15); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.nextYearPage()); });
|
|
3265
|
-
i0.ɵɵelement(6, "kpt-icon", 18);
|
|
3266
|
-
i0.ɵɵelementEnd()();
|
|
3267
|
-
i0.ɵɵelementStart(7, "div", 26);
|
|
3268
|
-
i0.ɵɵrepeaterCreate(8, KptDatepicker_ng_template_7_Case_4_For_9_Template, 2, 5, "button", 27, _forTrack1$1);
|
|
3178
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_5_Template(rf, ctx) { if (rf & 1) {
|
|
3179
|
+
const _r9 = i0.ɵɵgetCurrentView();
|
|
3180
|
+
i0.ɵɵelementStart(0, "button", 23);
|
|
3181
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Case_5_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r9); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.goTo("decade")); });
|
|
3182
|
+
i0.ɵɵtext(1);
|
|
3269
3183
|
i0.ɵɵelementEnd();
|
|
3270
3184
|
} if (rf & 2) {
|
|
3271
|
-
const ctx_r0 = i0.ɵɵnextContext(
|
|
3185
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3186
|
+
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.chooseDecade"));
|
|
3272
3187
|
i0.ɵɵadvance();
|
|
3273
|
-
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.prevYears"));
|
|
3274
|
-
i0.ɵɵadvance(3);
|
|
3275
3188
|
i0.ɵɵtextInterpolate(ctx_r0.yearRangeLabel());
|
|
3276
|
-
i0.ɵɵadvance();
|
|
3277
|
-
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.nextYears"));
|
|
3278
|
-
i0.ɵɵadvance(3);
|
|
3279
|
-
i0.ɵɵrepeater(ctx_r0.yearCells());
|
|
3280
3189
|
} }
|
|
3281
|
-
function
|
|
3282
|
-
|
|
3283
|
-
i0.ɵɵelementStart(0, "button", 30);
|
|
3284
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_5_For_5_Template_button_click_0_listener() { const cell_r19 = i0.ɵɵrestoreView(_r18).$implicit; const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.selectCell(cell_r19)); });
|
|
3190
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_6_Template(rf, ctx) { if (rf & 1) {
|
|
3191
|
+
i0.ɵɵelementStart(0, "span", 16);
|
|
3285
3192
|
i0.ɵɵtext(1);
|
|
3286
3193
|
i0.ɵɵelementEnd();
|
|
3287
3194
|
} if (rf & 2) {
|
|
3288
|
-
const
|
|
3289
|
-
i0.ɵɵclassProp("kpt-calendar__cell--selected", cell_r19.selected);
|
|
3290
|
-
i0.ɵɵattribute("aria-pressed", cell_r19.selected);
|
|
3195
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3291
3196
|
i0.ɵɵadvance();
|
|
3292
|
-
i0.ɵɵtextInterpolate(
|
|
3197
|
+
i0.ɵɵtextInterpolate(ctx_r0.decadeRangeLabel());
|
|
3293
3198
|
} }
|
|
3294
|
-
function
|
|
3295
|
-
i0.ɵɵ
|
|
3296
|
-
i0.ɵɵ
|
|
3297
|
-
i0.ɵɵ
|
|
3298
|
-
i0.ɵɵ
|
|
3299
|
-
i0.ɵɵrepeaterCreate(4, KptDatepicker_ng_template_7_Case_5_For_5_Template, 2, 4, "button", 29, _forTrack1$1);
|
|
3199
|
+
function KptDatepicker_ng_template_7_Conditional_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
3200
|
+
const _r10 = i0.ɵɵgetCurrentView();
|
|
3201
|
+
i0.ɵɵelementStart(0, "button", 22);
|
|
3202
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Conditional_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r10); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.pageNext()); });
|
|
3203
|
+
i0.ɵɵelement(1, "kpt-icon", 24);
|
|
3300
3204
|
i0.ɵɵelementEnd();
|
|
3301
3205
|
} if (rf & 2) {
|
|
3302
|
-
const ctx_r0 = i0.ɵɵnextContext(
|
|
3303
|
-
i0.ɵɵ
|
|
3304
|
-
i0.ɵɵ
|
|
3305
|
-
i0.ɵɵadvance(2);
|
|
3306
|
-
i0.ɵɵrepeater(ctx_r0.monthCells());
|
|
3206
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3207
|
+
i0.ɵɵproperty("disabled", !ctx_r0.canPageForward());
|
|
3208
|
+
i0.ɵɵattribute("aria-label", ctx_r0.navNextLabel());
|
|
3307
3209
|
} }
|
|
3308
|
-
function
|
|
3309
|
-
i0.ɵɵelementStart(0, "span",
|
|
3210
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_8_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
3211
|
+
i0.ɵɵelementStart(0, "span", 26);
|
|
3310
3212
|
i0.ɵɵtext(1);
|
|
3311
3213
|
i0.ɵɵelementEnd();
|
|
3312
3214
|
} if (rf & 2) {
|
|
3313
|
-
const
|
|
3215
|
+
const wd_r11 = ctx.$implicit;
|
|
3314
3216
|
i0.ɵɵadvance();
|
|
3315
|
-
i0.ɵɵtextInterpolate(
|
|
3217
|
+
i0.ɵɵtextInterpolate(wd_r11);
|
|
3316
3218
|
} }
|
|
3317
|
-
function
|
|
3318
|
-
const
|
|
3319
|
-
i0.ɵɵelementStart(0, "button",
|
|
3320
|
-
i0.ɵɵlistener("click", function
|
|
3219
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_8_For_5_For_1_Template(rf, ctx) { if (rf & 1) {
|
|
3220
|
+
const _r12 = i0.ɵɵgetCurrentView();
|
|
3221
|
+
i0.ɵɵelementStart(0, "button", 29);
|
|
3222
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Case_8_For_5_For_1_Template_button_click_0_listener() { const cell_r13 = i0.ɵɵrestoreView(_r12).$implicit; const ctx_r0 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r0.selectDay(cell_r13)); });
|
|
3321
3223
|
i0.ɵɵtext(1);
|
|
3322
3224
|
i0.ɵɵelementEnd();
|
|
3323
3225
|
} if (rf & 2) {
|
|
3324
|
-
const
|
|
3325
|
-
i0.ɵɵclassProp("kpt-calendar__day--muted", !
|
|
3326
|
-
i0.ɵɵproperty("disabled",
|
|
3327
|
-
i0.ɵɵattribute("aria-pressed",
|
|
3226
|
+
const cell_r13 = ctx.$implicit;
|
|
3227
|
+
i0.ɵɵclassProp("kpt-calendar__day--muted", !cell_r13.inMonth)("kpt-calendar__day--today", cell_r13.today)("kpt-calendar__day--selected", cell_r13.selected);
|
|
3228
|
+
i0.ɵɵproperty("disabled", cell_r13.disabled);
|
|
3229
|
+
i0.ɵɵattribute("aria-pressed", cell_r13.selected);
|
|
3328
3230
|
i0.ɵɵadvance();
|
|
3329
|
-
i0.ɵɵtextInterpolate(
|
|
3231
|
+
i0.ɵɵtextInterpolate(cell_r13.day);
|
|
3330
3232
|
} }
|
|
3331
|
-
function
|
|
3332
|
-
i0.ɵɵrepeaterCreate(0,
|
|
3233
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_8_For_5_Template(rf, ctx) { if (rf & 1) {
|
|
3234
|
+
i0.ɵɵrepeaterCreate(0, KptDatepicker_ng_template_7_Conditional_2_Case_8_For_5_For_1_Template, 2, 9, "button", 28, _forTrack0$8);
|
|
3333
3235
|
} if (rf & 2) {
|
|
3334
|
-
const
|
|
3335
|
-
i0.ɵɵrepeater(
|
|
3236
|
+
const week_r14 = ctx.$implicit;
|
|
3237
|
+
i0.ɵɵrepeater(week_r14);
|
|
3336
3238
|
} }
|
|
3337
|
-
function
|
|
3338
|
-
|
|
3339
|
-
i0.ɵɵ
|
|
3340
|
-
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Case_6_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r20); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.prevMonth()); });
|
|
3341
|
-
i0.ɵɵelement(2, "kpt-icon", 16);
|
|
3239
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_8_Template(rf, ctx) { if (rf & 1) {
|
|
3240
|
+
i0.ɵɵelementStart(0, "div", 25);
|
|
3241
|
+
i0.ɵɵrepeaterCreate(1, KptDatepicker_ng_template_7_Conditional_2_Case_8_For_2_Template, 2, 1, "span", 26, i0.ɵɵrepeaterTrackByIdentity);
|
|
3342
3242
|
i0.ɵɵelementEnd();
|
|
3343
|
-
i0.ɵɵelementStart(3, "
|
|
3344
|
-
i0.ɵɵ
|
|
3243
|
+
i0.ɵɵelementStart(3, "div", 27);
|
|
3244
|
+
i0.ɵɵrepeaterCreate(4, KptDatepicker_ng_template_7_Conditional_2_Case_8_For_5_Template, 2, 0, null, null, i0.ɵɵrepeaterTrackByIndex);
|
|
3245
|
+
i0.ɵɵelementEnd();
|
|
3246
|
+
} if (rf & 2) {
|
|
3247
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3248
|
+
i0.ɵɵadvance();
|
|
3249
|
+
i0.ɵɵrepeater(ctx_r0.weekdays());
|
|
3250
|
+
i0.ɵɵadvance(3);
|
|
3251
|
+
i0.ɵɵrepeater(ctx_r0.weeks());
|
|
3252
|
+
} }
|
|
3253
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_9_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
3254
|
+
const _r15 = i0.ɵɵgetCurrentView();
|
|
3255
|
+
i0.ɵɵelementStart(0, "button", 32);
|
|
3256
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Case_9_For_2_Template_button_click_0_listener() { const cell_r16 = i0.ɵɵrestoreView(_r15).$implicit; const ctx_r0 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r0.selectCell(cell_r16)); });
|
|
3257
|
+
i0.ɵɵtext(1);
|
|
3258
|
+
i0.ɵɵelementEnd();
|
|
3259
|
+
} if (rf & 2) {
|
|
3260
|
+
const cell_r16 = ctx.$implicit;
|
|
3261
|
+
i0.ɵɵclassProp("kpt-calendar__cell--selected", cell_r16.selected)("kpt-calendar__cell--current", cell_r16.current);
|
|
3262
|
+
i0.ɵɵproperty("disabled", cell_r16.disabled);
|
|
3263
|
+
i0.ɵɵattribute("aria-pressed", cell_r16.selected);
|
|
3264
|
+
i0.ɵɵadvance();
|
|
3265
|
+
i0.ɵɵtextInterpolate(cell_r16.label);
|
|
3266
|
+
} }
|
|
3267
|
+
function KptDatepicker_ng_template_7_Conditional_2_Case_9_Template(rf, ctx) { if (rf & 1) {
|
|
3268
|
+
i0.ɵɵelementStart(0, "div", 30);
|
|
3269
|
+
i0.ɵɵrepeaterCreate(1, KptDatepicker_ng_template_7_Conditional_2_Case_9_For_2_Template, 2, 7, "button", 31, _forTrack1$2);
|
|
3345
3270
|
i0.ɵɵelementEnd();
|
|
3346
|
-
|
|
3347
|
-
|
|
3348
|
-
i0.ɵɵ
|
|
3271
|
+
} if (rf & 2) {
|
|
3272
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3273
|
+
i0.ɵɵclassProp("kpt-calendar__grid--decades", ctx_r0.panelView() === "decade");
|
|
3274
|
+
i0.ɵɵadvance();
|
|
3275
|
+
i0.ɵɵrepeater(ctx_r0.levelCells());
|
|
3276
|
+
} }
|
|
3277
|
+
function KptDatepicker_ng_template_7_Conditional_2_Conditional_10_Template(rf, ctx) { if (rf & 1) {
|
|
3278
|
+
const _r17 = i0.ɵɵgetCurrentView();
|
|
3279
|
+
i0.ɵɵelementStart(0, "button", 33);
|
|
3280
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_2_Conditional_10_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r17); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.openClock()); });
|
|
3281
|
+
i0.ɵɵelement(1, "kpt-icon", 34);
|
|
3282
|
+
i0.ɵɵelementStart(2, "span");
|
|
3283
|
+
i0.ɵɵtext(3);
|
|
3349
3284
|
i0.ɵɵelementEnd()();
|
|
3350
|
-
|
|
3351
|
-
|
|
3285
|
+
} if (rf & 2) {
|
|
3286
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
3287
|
+
i0.ɵɵadvance(3);
|
|
3288
|
+
i0.ɵɵtextInterpolate(ctx_r0.timeBarLabel());
|
|
3289
|
+
} }
|
|
3290
|
+
function KptDatepicker_ng_template_7_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
3291
|
+
i0.ɵɵelementStart(0, "div", 12);
|
|
3292
|
+
i0.ɵɵconditionalCreate(1, KptDatepicker_ng_template_7_Conditional_2_Conditional_1_Template, 2, 2, "button", 17);
|
|
3293
|
+
i0.ɵɵelementStart(2, "span", 18);
|
|
3294
|
+
i0.ɵɵconditionalCreate(3, KptDatepicker_ng_template_7_Conditional_2_Case_3_Template, 4, 4)(4, KptDatepicker_ng_template_7_Conditional_2_Case_4_Template, 2, 1)(5, KptDatepicker_ng_template_7_Conditional_2_Case_5_Template, 2, 2, "button", 19)(6, KptDatepicker_ng_template_7_Conditional_2_Case_6_Template, 2, 1, "span", 16);
|
|
3352
3295
|
i0.ɵɵelementEnd();
|
|
3353
|
-
i0.ɵɵ
|
|
3354
|
-
i0.ɵɵrepeaterCreate(11, KptDatepicker_ng_template_7_Case_6_For_12_Template, 2, 0, null, null, i0.ɵɵrepeaterTrackByIndex);
|
|
3296
|
+
i0.ɵɵconditionalCreate(7, KptDatepicker_ng_template_7_Conditional_2_Conditional_7_Template, 2, 2, "button", 17);
|
|
3355
3297
|
i0.ɵɵelementEnd();
|
|
3298
|
+
i0.ɵɵconditionalCreate(8, KptDatepicker_ng_template_7_Conditional_2_Case_8_Template, 6, 0)(9, KptDatepicker_ng_template_7_Conditional_2_Case_9_Template, 3, 2, "div", 20);
|
|
3299
|
+
i0.ɵɵconditionalCreate(10, KptDatepicker_ng_template_7_Conditional_2_Conditional_10_Template, 4, 1, "button", 21);
|
|
3356
3300
|
} if (rf & 2) {
|
|
3301
|
+
let tmp_4_0;
|
|
3302
|
+
let tmp_6_0;
|
|
3357
3303
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
3358
3304
|
i0.ɵɵadvance();
|
|
3359
|
-
i0.ɵɵ
|
|
3360
|
-
i0.ɵɵadvance(
|
|
3361
|
-
i0.ɵɵ
|
|
3305
|
+
i0.ɵɵconditional(ctx_r0.hasNav() ? 1 : -1);
|
|
3306
|
+
i0.ɵɵadvance(2);
|
|
3307
|
+
i0.ɵɵconditional((tmp_4_0 = ctx_r0.panelView()) === "day" ? 3 : tmp_4_0 === "month" ? 4 : tmp_4_0 === "year" ? 5 : tmp_4_0 === "decade" ? 6 : -1);
|
|
3308
|
+
i0.ɵɵadvance(4);
|
|
3309
|
+
i0.ɵɵconditional(ctx_r0.hasNav() ? 7 : -1);
|
|
3362
3310
|
i0.ɵɵadvance();
|
|
3363
|
-
i0.ɵɵ
|
|
3364
|
-
i0.ɵɵadvance(
|
|
3365
|
-
i0.ɵɵ
|
|
3366
|
-
|
|
3367
|
-
|
|
3311
|
+
i0.ɵɵconditional((tmp_6_0 = ctx_r0.panelView()) === "day" ? 8 : 9);
|
|
3312
|
+
i0.ɵɵadvance(2);
|
|
3313
|
+
i0.ɵɵconditional(ctx_r0.selectionMode() === "datetime" ? 10 : -1);
|
|
3314
|
+
} }
|
|
3315
|
+
function KptDatepicker_ng_template_7_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
3316
|
+
const _r18 = i0.ɵɵgetCurrentView();
|
|
3317
|
+
i0.ɵɵelementStart(0, "div", 11)(1, "kpt-button", 35);
|
|
3318
|
+
i0.ɵɵlistener("click", function KptDatepicker_ng_template_7_Conditional_3_Template_kpt_button_click_1_listener() { i0.ɵɵrestoreView(_r18); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.commit()); });
|
|
3319
|
+
i0.ɵɵtext(2);
|
|
3320
|
+
i0.ɵɵelementEnd()();
|
|
3321
|
+
} if (rf & 2) {
|
|
3322
|
+
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
3323
|
+
i0.ɵɵadvance(2);
|
|
3324
|
+
i0.ɵɵtextInterpolate(ctx_r0.i18n.t("common.done"));
|
|
3368
3325
|
} }
|
|
3369
3326
|
function KptDatepicker_ng_template_7_Template(rf, ctx) { if (rf & 1) {
|
|
3370
3327
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
3371
3328
|
i0.ɵɵelementStart(0, "div", 10);
|
|
3372
3329
|
i0.ɵɵlistener("keydown.escape", function KptDatepicker_ng_template_7_Template_div_keydown_escape_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.close()); });
|
|
3373
|
-
i0.ɵɵconditionalCreate(1,
|
|
3330
|
+
i0.ɵɵconditionalCreate(1, KptDatepicker_ng_template_7_Conditional_1_Template, 2, 4)(2, KptDatepicker_ng_template_7_Conditional_2_Template, 11, 5);
|
|
3331
|
+
i0.ɵɵconditionalCreate(3, KptDatepicker_ng_template_7_Conditional_3_Template, 3, 1, "div", 11);
|
|
3374
3332
|
i0.ɵɵelementEnd();
|
|
3375
3333
|
} if (rf & 2) {
|
|
3376
|
-
let tmp_3_0;
|
|
3377
3334
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
3378
|
-
i0.ɵɵclassProp("kpt-calendar--clock", ctx_r0.
|
|
3335
|
+
i0.ɵɵclassProp("kpt-calendar--clock", ctx_r0.showClock());
|
|
3379
3336
|
i0.ɵɵadvance();
|
|
3380
|
-
i0.ɵɵconditional(
|
|
3337
|
+
i0.ɵɵconditional(ctx_r0.showClock() ? 1 : 2);
|
|
3338
|
+
i0.ɵɵadvance(2);
|
|
3339
|
+
i0.ɵɵconditional(ctx_r0.hasFooter() ? 3 : -1);
|
|
3381
3340
|
} }
|
|
3341
|
+
/** Kolejność poziomów panelu, od najdrobniejszego. Indeks = „wysokość" widoku. */
|
|
3342
|
+
const LEVELS = ['day', 'month', 'year', 'decade'];
|
|
3382
3343
|
const pad$1 = (n) => String(n).padStart(2, '0');
|
|
3383
3344
|
const toIso$1 = (d) => `${d.getFullYear()}-${pad$1(d.getMonth() + 1)}-${pad$1(d.getDate())}`;
|
|
3384
3345
|
/**
|
|
3385
3346
|
* Wybór daty/godziny z własnym kalendarzem (CDK Overlay), Signal Forms.
|
|
3386
3347
|
* Granulacja przez `selectionMode`: data, miesiąc+rok, rok, miesiąc, data+godzina, sama godzina.
|
|
3348
|
+
* Panel jest stosem widoków dekady → lata → miesiące → dni: klik w komórkę schodzi poziom niżej,
|
|
3349
|
+
* klik w tytuł wchodzi poziom wyżej. Poziom startowy ustawia `startView` (data urodzenia:
|
|
3350
|
+
* `startView="decade"`); domyślnie startuje na poziomie, na którym tryb zatwierdza wartość.
|
|
3387
3351
|
* Godzina na tarczy zegara (dwa etapy: godziny → minuty), format 12/24h przez `hourFormat`.
|
|
3388
3352
|
* Format wartości zależy od trybu: 'RRRR-MM-DD' / 'RRRR-MM' / 'RRRR' / 'MM'
|
|
3389
3353
|
* / 'RRRR-MM-DDTHH:mm' (datetime) / 'HH:mm' (time). Czas przechowywany zawsze 24h.
|
|
3390
3354
|
* Wymaga stylów overlay CDK: `import '@angular/cdk/overlay-prebuilt.css';`
|
|
3391
3355
|
*
|
|
3392
3356
|
* @example
|
|
3393
|
-
* <kpt-datepicker [formField]="f.birthDate" minDate="1900-01-01" />
|
|
3357
|
+
* <kpt-datepicker [formField]="f.birthDate" startView="decade" minDate="1900-01-01" />
|
|
3394
3358
|
* <kpt-datepicker selectionMode="datetime" [hourFormat]="12" [(value)]="meetingAt" />
|
|
3395
3359
|
* <kpt-datepicker selectionMode="time" [(value)]="alarm" />
|
|
3396
3360
|
*/
|
|
3397
3361
|
class KptDatepicker {
|
|
3362
|
+
effectiveStartView() {
|
|
3363
|
+
const commit = LEVELS.indexOf(this.commitLevel());
|
|
3364
|
+
const top = LEVELS.indexOf(this.topLevel());
|
|
3365
|
+
const wanted = this.startView();
|
|
3366
|
+
const idx = wanted ? LEVELS.indexOf(wanted) : commit;
|
|
3367
|
+
return LEVELS[Math.min(Math.max(idx, commit), top)];
|
|
3368
|
+
}
|
|
3398
3369
|
constructor() {
|
|
3399
3370
|
this.value = model('', /* @ts-ignore */
|
|
3400
3371
|
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
@@ -3415,6 +3386,13 @@ class KptDatepicker {
|
|
|
3415
3386
|
/** Granulacja wyboru. */
|
|
3416
3387
|
this.selectionMode = input('date', /* @ts-ignore */
|
|
3417
3388
|
...(ngDevMode ? [{ debugName: "selectionMode" }] : /* istanbul ignore next */ []));
|
|
3389
|
+
/**
|
|
3390
|
+
* Poziom, od którego otwiera się panel. `null` = poziom zatwierdzania danego trybu
|
|
3391
|
+
* (dni dla 'date'). Nie schodzi poniżej tego poziomu — `startView="day"` w trybie 'year'
|
|
3392
|
+
* nie ma sensu i jest podnoszony do 'year'.
|
|
3393
|
+
*/
|
|
3394
|
+
this.startView = input(null, /* @ts-ignore */
|
|
3395
|
+
...(ngDevMode ? [{ debugName: "startView" }] : /* istanbul ignore next */ []));
|
|
3418
3396
|
/** Prezentacja miesiąca w trybie 'month': słownie ('long') lub liczbą ('number'). */
|
|
3419
3397
|
this.monthDisplay = input('long', /* @ts-ignore */
|
|
3420
3398
|
...(ngDevMode ? [{ debugName: "monthDisplay" }] : /* istanbul ignore next */ []));
|
|
@@ -3455,6 +3433,25 @@ class KptDatepicker {
|
|
|
3455
3433
|
this.today = new Date();
|
|
3456
3434
|
this.view = signal({ y: this.today.getFullYear(), m: this.today.getMonth() }, /* @ts-ignore */
|
|
3457
3435
|
...(ngDevMode ? [{ debugName: "view" }] : /* istanbul ignore next */ []));
|
|
3436
|
+
/** Aktualny poziom stosu widoków panelu. */
|
|
3437
|
+
this.panelView = signal('day', /* @ts-ignore */
|
|
3438
|
+
...(ngDevMode ? [{ debugName: "panelView" }] : /* istanbul ignore next */ []));
|
|
3439
|
+
/** Poziom, na którym klik w komórkę zatwierdza wartość zamiast schodzić niżej. */
|
|
3440
|
+
this.commitLevel = computed(() => {
|
|
3441
|
+
switch (this.selectionMode()) {
|
|
3442
|
+
case 'monthYear':
|
|
3443
|
+
case 'month':
|
|
3444
|
+
return 'month';
|
|
3445
|
+
case 'year':
|
|
3446
|
+
return 'year';
|
|
3447
|
+
default:
|
|
3448
|
+
return 'day';
|
|
3449
|
+
}
|
|
3450
|
+
}, /* @ts-ignore */
|
|
3451
|
+
...(ngDevMode ? [{ debugName: "commitLevel" }] : /* istanbul ignore next */ []));
|
|
3452
|
+
/** Tryb 'month' nie ma roku ani dekady — wartością jest samo 'MM'. */
|
|
3453
|
+
this.topLevel = computed(() => this.selectionMode() === 'month' ? 'month' : 'decade', /* @ts-ignore */
|
|
3454
|
+
...(ngDevMode ? [{ debugName: "topLevel" }] : /* istanbul ignore next */ []));
|
|
3458
3455
|
// ── Stan czasu (bufor 'HH:mm', 24h) ──
|
|
3459
3456
|
this.timeStr = signal('', /* @ts-ignore */
|
|
3460
3457
|
...(ngDevMode ? [{ debugName: "timeStr" }] : /* istanbul ignore next */ []));
|
|
@@ -3462,24 +3459,77 @@ class KptDatepicker {
|
|
|
3462
3459
|
...(ngDevMode ? [{ debugName: "dtView" }] : /* istanbul ignore next */ []));
|
|
3463
3460
|
this.pendingDate = signal('', /* @ts-ignore */
|
|
3464
3461
|
...(ngDevMode ? [{ debugName: "pendingDate" }] : /* istanbul ignore next */ []));
|
|
3462
|
+
/** Tarcza zamiast siatek: tryb 'time' zawsze, 'datetime' po wejściu w pasek czasu. */
|
|
3463
|
+
this.showClock = computed(() => this.selectionMode() === 'time' || (this.selectionMode() === 'datetime' && this.dtView() === 'clock'), /* @ts-ignore */
|
|
3464
|
+
...(ngDevMode ? [{ debugName: "showClock" }] : /* istanbul ignore next */ []));
|
|
3465
|
+
this.hasFooter = computed(() => this.selectionMode() === 'time' || this.selectionMode() === 'datetime', /* @ts-ignore */
|
|
3466
|
+
...(ngDevMode ? [{ debugName: "hasFooter" }] : /* istanbul ignore next */ []));
|
|
3465
3467
|
this.positions = [
|
|
3466
3468
|
{ originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top', offsetY: 4 },
|
|
3467
3469
|
{ originX: 'start', originY: 'top', overlayX: 'start', overlayY: 'bottom', offsetY: -4 },
|
|
3468
3470
|
];
|
|
3469
3471
|
this.viewYear = computed(() => this.view().y, /* @ts-ignore */
|
|
3470
3472
|
...(ngDevMode ? [{ debugName: "viewYear" }] : /* istanbul ignore next */ []));
|
|
3471
|
-
this.
|
|
3473
|
+
this.monthName = computed(() => this.months()[this.view().m], /* @ts-ignore */
|
|
3474
|
+
...(ngDevMode ? [{ debugName: "monthName" }] : /* istanbul ignore next */ []));
|
|
3475
|
+
/** Początek dekady widocznej w siatce lat (1979 → 1970). */
|
|
3476
|
+
this.decadeStart = computed(() => Math.floor(this.view().y / 10) * 10, /* @ts-ignore */
|
|
3477
|
+
...(ngDevMode ? [{ debugName: "decadeStart" }] : /* istanbul ignore next */ []));
|
|
3478
|
+
/** Początek strony dekad: 12 dekad, czyli 120 lat (1979 → 1920, strona 1920–2039). */
|
|
3479
|
+
this.centuryStart = computed(() => Math.floor(this.view().y / 120) * 120, /* @ts-ignore */
|
|
3480
|
+
...(ngDevMode ? [{ debugName: "centuryStart" }] : /* istanbul ignore next */ []));
|
|
3481
|
+
this.yearRangeLabel = computed(() => `${this.decadeStart()} – ${this.decadeStart() + 9}`, /* @ts-ignore */
|
|
3482
|
+
...(ngDevMode ? [{ debugName: "yearRangeLabel" }] : /* istanbul ignore next */ []));
|
|
3483
|
+
this.decadeRangeLabel = computed(() => `${this.centuryStart()} – ${this.centuryStart() + 119}`, /* @ts-ignore */
|
|
3484
|
+
...(ngDevMode ? [{ debugName: "decadeRangeLabel" }] : /* istanbul ignore next */ []));
|
|
3485
|
+
/** Tryb 'month' nie ma po czym nawigować — siatka miesięcy jest kompletna. */
|
|
3486
|
+
this.hasNav = computed(() => this.selectionMode() !== 'month', /* @ts-ignore */
|
|
3487
|
+
...(ngDevMode ? [{ debugName: "hasNav" }] : /* istanbul ignore next */ []));
|
|
3488
|
+
this.navPrevLabel = computed(() => {
|
|
3489
|
+
switch (this.panelView()) {
|
|
3490
|
+
case 'month': return this.i18n.t('datepicker.prevYear');
|
|
3491
|
+
case 'year': return this.i18n.t('datepicker.prevYears');
|
|
3492
|
+
case 'decade': return this.i18n.t('datepicker.prevDecades');
|
|
3493
|
+
default: return this.i18n.t('datepicker.prevMonth');
|
|
3494
|
+
}
|
|
3495
|
+
}, /* @ts-ignore */
|
|
3496
|
+
...(ngDevMode ? [{ debugName: "navPrevLabel" }] : /* istanbul ignore next */ []));
|
|
3497
|
+
this.navNextLabel = computed(() => {
|
|
3498
|
+
switch (this.panelView()) {
|
|
3499
|
+
case 'month': return this.i18n.t('datepicker.nextYear');
|
|
3500
|
+
case 'year': return this.i18n.t('datepicker.nextYears');
|
|
3501
|
+
case 'decade': return this.i18n.t('datepicker.nextDecades');
|
|
3502
|
+
default: return this.i18n.t('datepicker.nextMonth');
|
|
3503
|
+
}
|
|
3504
|
+
}, /* @ts-ignore */
|
|
3505
|
+
...(ngDevMode ? [{ debugName: "navNextLabel" }] : /* istanbul ignore next */ []));
|
|
3506
|
+
/** Strzałka wstecz gasnie, gdy cała poprzednia strona wypada przed `minDate`. */
|
|
3507
|
+
this.canPageBack = computed(() => {
|
|
3508
|
+
const min = this.minDate();
|
|
3509
|
+
if (!min)
|
|
3510
|
+
return true;
|
|
3472
3511
|
const { y, m } = this.view();
|
|
3473
|
-
|
|
3512
|
+
switch (this.panelView()) {
|
|
3513
|
+
case 'month': return `${y - 1}-12` >= min.slice(0, 7);
|
|
3514
|
+
case 'year': return this.decadeStart() - 1 >= +min.slice(0, 4);
|
|
3515
|
+
case 'decade': return this.centuryStart() - 1 >= +min.slice(0, 4);
|
|
3516
|
+
default: return toIso$1(new Date(y, m, 0)) >= min; // ostatni dzień poprzedniego miesiąca
|
|
3517
|
+
}
|
|
3474
3518
|
}, /* @ts-ignore */
|
|
3475
|
-
...(ngDevMode ? [{ debugName: "
|
|
3476
|
-
this.
|
|
3477
|
-
const
|
|
3478
|
-
|
|
3519
|
+
...(ngDevMode ? [{ debugName: "canPageBack" }] : /* istanbul ignore next */ []));
|
|
3520
|
+
this.canPageForward = computed(() => {
|
|
3521
|
+
const max = this.maxDate();
|
|
3522
|
+
if (!max)
|
|
3523
|
+
return true;
|
|
3524
|
+
const { y, m } = this.view();
|
|
3525
|
+
switch (this.panelView()) {
|
|
3526
|
+
case 'month': return `${y + 1}-01` <= max.slice(0, 7);
|
|
3527
|
+
case 'year': return this.decadeStart() + 10 <= +max.slice(0, 4);
|
|
3528
|
+
case 'decade': return this.centuryStart() + 120 <= +max.slice(0, 4);
|
|
3529
|
+
default: return toIso$1(new Date(y, m + 1, 1)) <= max;
|
|
3530
|
+
}
|
|
3479
3531
|
}, /* @ts-ignore */
|
|
3480
|
-
...(ngDevMode ? [{ debugName: "
|
|
3481
|
-
this.yearRangeLabel = computed(() => `${this.yearPageStart()} – ${this.yearPageStart() + 11}`, /* @ts-ignore */
|
|
3482
|
-
...(ngDevMode ? [{ debugName: "yearRangeLabel" }] : /* istanbul ignore next */ []));
|
|
3532
|
+
...(ngDevMode ? [{ debugName: "canPageForward" }] : /* istanbul ignore next */ []));
|
|
3483
3533
|
/** Etykieta czasu na pasku trybu datetime (uwzględnia AM/PM). */
|
|
3484
3534
|
this.timeBarLabel = computed(() => {
|
|
3485
3535
|
const t = this.parseTime(this.timeStr());
|
|
@@ -3557,35 +3607,97 @@ class KptDatepicker {
|
|
|
3557
3607
|
return weeks;
|
|
3558
3608
|
}, /* @ts-ignore */
|
|
3559
3609
|
...(ngDevMode ? [{ debugName: "weeks" }] : /* istanbul ignore next */ []));
|
|
3560
|
-
|
|
3610
|
+
/** Rok/miesiąc bieżącej wartości — zaznaczenie w siatkach wyższych poziomów. */
|
|
3611
|
+
this.selectedYM = computed(() => {
|
|
3612
|
+
const v = this.value();
|
|
3613
|
+
switch (this.selectionMode()) {
|
|
3614
|
+
case 'month': {
|
|
3615
|
+
const m = /^(\d{2})$/.exec(v);
|
|
3616
|
+
return { y: null, m: m ? +m[1] - 1 : null };
|
|
3617
|
+
}
|
|
3618
|
+
case 'year':
|
|
3619
|
+
return { y: /^\d{4}$/.test(v) ? +v : null, m: null };
|
|
3620
|
+
case 'monthYear': {
|
|
3621
|
+
const m = /^(\d{4})-(\d{2})$/.exec(v);
|
|
3622
|
+
return m ? { y: +m[1], m: +m[2] - 1 } : { y: null, m: null };
|
|
3623
|
+
}
|
|
3624
|
+
case 'time':
|
|
3625
|
+
return { y: null, m: null };
|
|
3626
|
+
default: {
|
|
3627
|
+
const d = this.parseDate(this.selectedDateIso());
|
|
3628
|
+
return d ? { y: d.getFullYear(), m: d.getMonth() } : { y: null, m: null };
|
|
3629
|
+
}
|
|
3630
|
+
}
|
|
3631
|
+
}, /* @ts-ignore */
|
|
3632
|
+
...(ngDevMode ? [{ debugName: "selectedYM" }] : /* istanbul ignore next */ []));
|
|
3633
|
+
// ── Siatka miesięcy ──
|
|
3561
3634
|
this.monthCells = computed(() => {
|
|
3562
3635
|
const { y } = this.view();
|
|
3563
|
-
const sel = this.
|
|
3636
|
+
const sel = this.selectedYM();
|
|
3564
3637
|
const isMonthOnly = this.selectionMode() === 'month';
|
|
3565
3638
|
const numeric = this.monthDisplay() === 'number';
|
|
3566
|
-
|
|
3567
|
-
|
|
3568
|
-
|
|
3569
|
-
|
|
3570
|
-
|
|
3571
|
-
|
|
3572
|
-
|
|
3573
|
-
|
|
3574
|
-
|
|
3575
|
-
});
|
|
3639
|
+
const todayY = this.today.getFullYear();
|
|
3640
|
+
const todayM = this.today.getMonth();
|
|
3641
|
+
return this.months().map((name, i) => ({
|
|
3642
|
+
label: numeric ? pad$1(i + 1) : name,
|
|
3643
|
+
y,
|
|
3644
|
+
m: i,
|
|
3645
|
+
selected: sel.m === i && (isMonthOnly || sel.y === y),
|
|
3646
|
+
current: todayM === i && (isMonthOnly || todayY === y),
|
|
3647
|
+
disabled: isMonthOnly ? false : this.isMonthYearDisabled(y, i),
|
|
3648
|
+
}));
|
|
3576
3649
|
}, /* @ts-ignore */
|
|
3577
3650
|
...(ngDevMode ? [{ debugName: "monthCells" }] : /* istanbul ignore next */ []));
|
|
3578
|
-
// ── Siatka lat (
|
|
3651
|
+
// ── Siatka lat (pełna dekada) ──
|
|
3579
3652
|
this.yearCells = computed(() => {
|
|
3580
|
-
const start = this.
|
|
3581
|
-
const sel = this.
|
|
3582
|
-
|
|
3653
|
+
const start = this.decadeStart();
|
|
3654
|
+
const sel = this.selectedYM();
|
|
3655
|
+
const todayY = this.today.getFullYear();
|
|
3656
|
+
return Array.from({ length: 10 }, (_, i) => {
|
|
3583
3657
|
const year = start + i;
|
|
3584
|
-
|
|
3585
|
-
|
|
3658
|
+
return {
|
|
3659
|
+
label: String(year),
|
|
3660
|
+
y: year,
|
|
3661
|
+
m: 0,
|
|
3662
|
+
selected: sel.y === year,
|
|
3663
|
+
current: todayY === year,
|
|
3664
|
+
disabled: this.isYearDisabled(year),
|
|
3665
|
+
};
|
|
3586
3666
|
});
|
|
3587
3667
|
}, /* @ts-ignore */
|
|
3588
3668
|
...(ngDevMode ? [{ debugName: "yearCells" }] : /* istanbul ignore next */ []));
|
|
3669
|
+
// ── Siatka dekad (12 dekad = 120 lat) ──
|
|
3670
|
+
this.decadeCells = computed(() => {
|
|
3671
|
+
const start = this.centuryStart();
|
|
3672
|
+
const sel = this.selectedYM();
|
|
3673
|
+
const todayY = this.today.getFullYear();
|
|
3674
|
+
return Array.from({ length: 12 }, (_, i) => {
|
|
3675
|
+
const from = start + i * 10;
|
|
3676
|
+
const to = from + 9;
|
|
3677
|
+
return {
|
|
3678
|
+
label: `${from} – ${to}`,
|
|
3679
|
+
y: from,
|
|
3680
|
+
m: 0,
|
|
3681
|
+
selected: sel.y != null && sel.y >= from && sel.y <= to,
|
|
3682
|
+
current: todayY >= from && todayY <= to,
|
|
3683
|
+
// Dekada wypada z zakresu dopiero, gdy poza nim są oba jej krańce.
|
|
3684
|
+
disabled: this.isYearDisabled(from) && this.isYearDisabled(to),
|
|
3685
|
+
};
|
|
3686
|
+
});
|
|
3687
|
+
}, /* @ts-ignore */
|
|
3688
|
+
...(ngDevMode ? [{ debugName: "decadeCells" }] : /* istanbul ignore next */ []));
|
|
3689
|
+
/** Komórki bieżącego poziomu — siatka miesięcy/lat/dekad ma jeden wspólny markup. */
|
|
3690
|
+
this.levelCells = computed(() => {
|
|
3691
|
+
switch (this.panelView()) {
|
|
3692
|
+
case 'year':
|
|
3693
|
+
return this.yearCells();
|
|
3694
|
+
case 'decade':
|
|
3695
|
+
return this.decadeCells();
|
|
3696
|
+
default:
|
|
3697
|
+
return this.monthCells();
|
|
3698
|
+
}
|
|
3699
|
+
}, /* @ts-ignore */
|
|
3700
|
+
...(ngDevMode ? [{ debugName: "levelCells" }] : /* istanbul ignore next */ []));
|
|
3589
3701
|
// Kalendarz może zostać otwarty także z zewnątrz (`[open]`), nie tylko klikiem w trigger —
|
|
3590
3702
|
// widok i bufor czasu ustawiamy więc przy każdym otwarciu, nie w `toggleOpen()`.
|
|
3591
3703
|
effect(() => {
|
|
@@ -3594,6 +3706,7 @@ class KptDatepicker {
|
|
|
3594
3706
|
if (!isOpen)
|
|
3595
3707
|
return;
|
|
3596
3708
|
this.view.set(this.initialView());
|
|
3709
|
+
this.panelView.set(this.effectiveStartView());
|
|
3597
3710
|
this.syncTimeFromValue();
|
|
3598
3711
|
this.dtView.set(this.selectionMode() === 'time' ? 'clock' : 'calendar');
|
|
3599
3712
|
});
|
|
@@ -3700,11 +3813,29 @@ class KptDatepicker {
|
|
|
3700
3813
|
this.value.set(cell.iso);
|
|
3701
3814
|
this.close();
|
|
3702
3815
|
}
|
|
3816
|
+
/**
|
|
3817
|
+
* Klik w komórkę siatki: na poziomie zatwierdzania ustawia wartość i zamyka panel,
|
|
3818
|
+
* wyżej — przestawia widok i schodzi poziom niżej.
|
|
3819
|
+
*/
|
|
3703
3820
|
selectCell(cell) {
|
|
3704
3821
|
if (cell.disabled)
|
|
3705
3822
|
return;
|
|
3706
|
-
this.
|
|
3707
|
-
this.
|
|
3823
|
+
const level = this.panelView();
|
|
3824
|
+
if (level === this.commitLevel()) {
|
|
3825
|
+
this.value.set(level === 'year' ? String(cell.y) : this.monthValue(cell));
|
|
3826
|
+
this.close();
|
|
3827
|
+
return;
|
|
3828
|
+
}
|
|
3829
|
+
this.view.update(({ m }) => ({ y: cell.y, m: level === 'month' ? cell.m : m }));
|
|
3830
|
+
this.panelView.set(LEVELS[LEVELS.indexOf(level) - 1]);
|
|
3831
|
+
}
|
|
3832
|
+
monthValue(cell) {
|
|
3833
|
+
const mm = pad$1(cell.m + 1);
|
|
3834
|
+
return this.selectionMode() === 'month' ? mm : `${cell.y}-${mm}`;
|
|
3835
|
+
}
|
|
3836
|
+
/** Klik w tytuł — wejście poziom wyżej w stosie widoków. */
|
|
3837
|
+
goTo(level) {
|
|
3838
|
+
this.panelView.set(level);
|
|
3708
3839
|
}
|
|
3709
3840
|
// ── Zegar (delegowany do kpt-clock przez timeStr) ──
|
|
3710
3841
|
openClock() {
|
|
@@ -3725,23 +3856,33 @@ class KptDatepicker {
|
|
|
3725
3856
|
}
|
|
3726
3857
|
this.close();
|
|
3727
3858
|
}
|
|
3728
|
-
|
|
3729
|
-
|
|
3730
|
-
|
|
3731
|
-
|
|
3732
|
-
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3859
|
+
/** Strzałki ‹ › — krok zależny od poziomu: miesiąc, rok, dekada, strona dekad. */
|
|
3860
|
+
page(dir) {
|
|
3861
|
+
const level = this.panelView();
|
|
3862
|
+
this.view.update(({ y, m }) => {
|
|
3863
|
+
switch (level) {
|
|
3864
|
+
case 'month':
|
|
3865
|
+
return { y: y + dir, m };
|
|
3866
|
+
case 'year':
|
|
3867
|
+
return { y: y + dir * 10, m };
|
|
3868
|
+
case 'decade':
|
|
3869
|
+
return { y: y + dir * 120, m };
|
|
3870
|
+
default: {
|
|
3871
|
+
const next = m + dir;
|
|
3872
|
+
if (next < 0)
|
|
3873
|
+
return { y: y - 1, m: 11 };
|
|
3874
|
+
if (next > 11)
|
|
3875
|
+
return { y: y + 1, m: 0 };
|
|
3876
|
+
return { y, m: next };
|
|
3877
|
+
}
|
|
3878
|
+
}
|
|
3879
|
+
});
|
|
3739
3880
|
}
|
|
3740
|
-
|
|
3741
|
-
this.
|
|
3881
|
+
pagePrev() {
|
|
3882
|
+
this.page(-1);
|
|
3742
3883
|
}
|
|
3743
|
-
|
|
3744
|
-
this.
|
|
3884
|
+
pageNext() {
|
|
3885
|
+
this.page(1);
|
|
3745
3886
|
}
|
|
3746
3887
|
clear(event) {
|
|
3747
3888
|
event.stopPropagation();
|
|
@@ -3749,7 +3890,7 @@ class KptDatepicker {
|
|
|
3749
3890
|
this.pendingDate.set('');
|
|
3750
3891
|
}
|
|
3751
3892
|
static { this.ɵfac = function KptDatepicker_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || KptDatepicker)(); }; }
|
|
3752
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: KptDatepicker, selectors: [["kpt-datepicker"]], hostAttrs: [1, "kpt-datepicker-host"], inputs: { value: [1, "value"], disabled: [1, "disabled"], invalid: [1, "invalid"], touched: [1, "touched"], placeholder: [1, "placeholder"], ariaLabel: [1, "ariaLabel"], displayFormat: [1, "displayFormat"], selectionMode: [1, "selectionMode"], monthDisplay: [1, "monthDisplay"], hourFormat: [1, "hourFormat"], minuteStep: [1, "minuteStep"], minDate: [1, "minDate"], maxDate: [1, "maxDate"], open: [1, "open"] }, outputs: { value: "valueChange", touch: "touch", open: "openChange" }, decls: 8, vars: 15, consts: [["trigger", "cdkOverlayOrigin"], ["cdkOverlayOrigin", "", "role", "button", "tabindex", "0", 1, "kpt-datepicker", 3, "click", "keydown.enter", "blur"], [1, "kpt-datepicker__value"], [1, "kpt-datepicker__placeholder"], [1, "kpt-datepicker__spacer"], ["type", "button", 1, "kpt-datepicker__clear"], [1, "kpt-datepicker__icon", 3, "name"], ["cdkConnectedOverlay", "", "cdkConnectedOverlayBackdropClass", "cdk-overlay-transparent-backdrop", 3, "backdropClick", "detach", "cdkConnectedOverlayOrigin", "cdkConnectedOverlayOpen", "cdkConnectedOverlayPositions", "cdkConnectedOverlayHasBackdrop"], ["type", "button", 1, "kpt-datepicker__clear", 3, "click"], ["name", "x"], [1, "kpt-calendar", 3, "keydown.escape"], [3, "valueChange", "value", "hourFormat", "minuteStep"], [1, "kpt-
|
|
3893
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: KptDatepicker, selectors: [["kpt-datepicker"]], hostAttrs: [1, "kpt-datepicker-host"], inputs: { value: [1, "value"], disabled: [1, "disabled"], invalid: [1, "invalid"], touched: [1, "touched"], placeholder: [1, "placeholder"], ariaLabel: [1, "ariaLabel"], displayFormat: [1, "displayFormat"], selectionMode: [1, "selectionMode"], startView: [1, "startView"], monthDisplay: [1, "monthDisplay"], hourFormat: [1, "hourFormat"], minuteStep: [1, "minuteStep"], minDate: [1, "minDate"], maxDate: [1, "maxDate"], open: [1, "open"] }, outputs: { value: "valueChange", touch: "touch", open: "openChange" }, decls: 8, vars: 15, consts: [["trigger", "cdkOverlayOrigin"], ["cdkOverlayOrigin", "", "role", "button", "tabindex", "0", 1, "kpt-datepicker", 3, "click", "keydown.enter", "blur"], [1, "kpt-datepicker__value"], [1, "kpt-datepicker__placeholder"], [1, "kpt-datepicker__spacer"], ["type", "button", 1, "kpt-datepicker__clear"], [1, "kpt-datepicker__icon", 3, "name"], ["cdkConnectedOverlay", "", "cdkConnectedOverlayBackdropClass", "cdk-overlay-transparent-backdrop", 3, "backdropClick", "detach", "cdkConnectedOverlayOrigin", "cdkConnectedOverlayOpen", "cdkConnectedOverlayPositions", "cdkConnectedOverlayHasBackdrop"], ["type", "button", 1, "kpt-datepicker__clear", 3, "click"], ["name", "x"], [1, "kpt-calendar", 3, "keydown.escape"], [1, "kpt-calendar__footer"], [1, "kpt-calendar__header"], [3, "valueChange", "value", "hourFormat", "minuteStep"], ["type", "button", 1, "kpt-calendar__nav", 3, "click"], ["name", "chevron-left"], [1, "kpt-calendar__title"], ["type", "button", 1, "kpt-calendar__nav", 3, "disabled"], [1, "kpt-calendar__titles"], ["type", "button", 1, "kpt-calendar__title-btn"], [1, "kpt-calendar__grid", "kpt-calendar__grid--cells", 3, "kpt-calendar__grid--decades"], ["type", "button", 1, "kpt-calendar__timebar"], ["type", "button", 1, "kpt-calendar__nav", 3, "click", "disabled"], ["type", "button", 1, "kpt-calendar__title-btn", 3, "click"], ["name", "chevron-right"], [1, "kpt-calendar__weekdays"], [1, "kpt-calendar__weekday"], [1, "kpt-calendar__grid"], ["type", "button", 1, "kpt-calendar__day", 3, "kpt-calendar__day--muted", "kpt-calendar__day--today", "kpt-calendar__day--selected", "disabled"], ["type", "button", 1, "kpt-calendar__day", 3, "click", "disabled"], [1, "kpt-calendar__grid", "kpt-calendar__grid--cells"], ["type", "button", 1, "kpt-calendar__cell", 3, "kpt-calendar__cell--selected", "kpt-calendar__cell--current", "disabled"], ["type", "button", 1, "kpt-calendar__cell", 3, "click", "disabled"], ["type", "button", 1, "kpt-calendar__timebar", 3, "click"], ["name", "clock"], ["size", "sm", 3, "click"]], template: function KptDatepicker_Template(rf, ctx) { if (rf & 1) {
|
|
3753
3894
|
i0.ɵɵelementStart(0, "div", 1, 0);
|
|
3754
3895
|
i0.ɵɵlistener("click", function KptDatepicker_Template_div_click_0_listener() { return ctx.toggleOpen(); })("keydown.enter", function KptDatepicker_Template_div_keydown_enter_0_listener() { return ctx.toggleOpen(); })("blur", function KptDatepicker_Template_div_blur_0_listener() { return ctx.touch.emit(); });
|
|
3755
3896
|
i0.ɵɵconditionalCreate(2, KptDatepicker_Conditional_2_Template, 2, 1, "span", 2)(3, KptDatepicker_Conditional_3_Template, 2, 1, "span", 3);
|
|
@@ -3757,10 +3898,10 @@ class KptDatepicker {
|
|
|
3757
3898
|
i0.ɵɵconditionalCreate(5, KptDatepicker_Conditional_5_Template, 2, 1, "button", 5);
|
|
3758
3899
|
i0.ɵɵelement(6, "kpt-icon", 6);
|
|
3759
3900
|
i0.ɵɵelementEnd();
|
|
3760
|
-
i0.ɵɵtemplate(7, KptDatepicker_ng_template_7_Template,
|
|
3901
|
+
i0.ɵɵtemplate(7, KptDatepicker_ng_template_7_Template, 4, 4, "ng-template", 7);
|
|
3761
3902
|
i0.ɵɵlistener("backdropClick", function KptDatepicker_Template_ng_template_backdropClick_7_listener() { return ctx.close(); })("detach", function KptDatepicker_Template_ng_template_detach_7_listener() { return ctx.close(); });
|
|
3762
3903
|
} if (rf & 2) {
|
|
3763
|
-
const
|
|
3904
|
+
const trigger_r19 = i0.ɵɵreference(1);
|
|
3764
3905
|
i0.ɵɵclassProp("kpt-datepicker--open", ctx.open())("kpt-datepicker--disabled", ctx.disabled())("kpt-datepicker--invalid", ctx.showInvalid());
|
|
3765
3906
|
i0.ɵɵattribute("aria-disabled", ctx.disabled() || null)("aria-label", ctx.ariaLabel());
|
|
3766
3907
|
i0.ɵɵadvance(2);
|
|
@@ -3770,14 +3911,14 @@ class KptDatepicker {
|
|
|
3770
3911
|
i0.ɵɵadvance();
|
|
3771
3912
|
i0.ɵɵproperty("name", ctx.selectionMode() === "time" ? "clock" : "calendar");
|
|
3772
3913
|
i0.ɵɵadvance();
|
|
3773
|
-
i0.ɵɵproperty("cdkConnectedOverlayOrigin",
|
|
3774
|
-
} }, dependencies: [CdkOverlayOrigin, CdkConnectedOverlay, KptIcon, KptButton, KptClock], styles: ["@layer kpt.components{.kpt-datepicker-host{display:block}.kpt-datepicker{display:flex;align-items:center;gap:var(--%NS%kpt-space-2, .5rem);height:2.5rem;padding-inline:var(--%NS%kpt-space-3, .75rem);box-sizing:border-box;border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-form-field-radius, .5rem);background:var(--%NS%kpt-form-field-bg);color:var(--%NS%kpt-form-field-text);font-size:var(--%NS%kpt-font-size-sm, .875rem);cursor:pointer}.kpt-datepicker:hover:not(.kpt-datepicker--disabled){border-color:var(--%NS%kpt-form-field-border-hover)}.kpt-datepicker:focus-visible,.kpt-datepicker.kpt-datepicker--open{outline:none;border-color:var(--%NS%kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--%NS%kpt-form-field-border-focus) 30%,transparent)}.kpt-datepicker.kpt-datepicker--invalid{border-color:var(--%NS%kpt-form-field-border-error)}.kpt-datepicker.kpt-datepicker--disabled{cursor:not-allowed;opacity:.6;background:var(--%NS%kpt-color-surface-variant)}.kpt-datepicker__placeholder{color:var(--%NS%kpt-form-field-placeholder)}.kpt-datepicker__spacer{flex:1}.kpt-datepicker__icon{color:var(--%NS%kpt-color-on-surface-muted)}.kpt-datepicker__clear{display:inline-flex;border:0;background:none;cursor:pointer;color:var(--%NS%kpt-color-on-surface-muted);padding:0}.kpt-datepicker__clear:hover{color:var(--%NS%kpt-color-on-surface)}.kpt-calendar{width:17rem;padding:var(--%NS%kpt-space-3, .75rem);background:var(--%NS%kpt-color-surface-raised);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-color-border);border-radius:var(--%NS%kpt-radius-md, .5rem);box-shadow:var(--%NS%kpt-elevation-3);color:var(--%NS%kpt-color-on-surface);font-size:var(--%NS%kpt-font-size-sm, .875rem)}.kpt-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--%NS%kpt-space-2, .5rem)}.kpt-calendar__title{font-weight:var(--%NS%kpt-font-weight-semibold, 600);text-transform:capitalize}.kpt-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:var(--%NS%kpt-radius-md, .5rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer}.kpt-calendar__nav:hover{background:var(--%NS%kpt-color-muted)}.kpt-calendar__weekdays,.kpt-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.kpt-calendar__weekday{text-align:center;font-size:var(--%NS%kpt-font-size-xs, .75rem);color:var(--%NS%kpt-color-on-surface-muted);padding:.25rem 0}.kpt-calendar__day{aspect-ratio:1;border:0;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer;font:inherit}.kpt-calendar__day:hover:not(:disabled){background:var(--%NS%kpt-color-muted)}.kpt-calendar__day--muted{color:var(--%NS%kpt-color-on-surface-muted);opacity:.5}.kpt-calendar__day--today{box-shadow:inset 0 0 0 1px var(--%NS%kpt-color-border-strong)}.kpt-calendar__day--selected{background:var(--%NS%kpt-color-primary)!important;color:var(--%NS%kpt-color-on-primary)}.kpt-calendar__day:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__grid--cells{grid-template-columns:repeat(3,1fr);gap:4px}.kpt-calendar__cell{padding:.6rem .25rem;border:0;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer;font:inherit;text-transform:capitalize}.kpt-calendar__cell:hover:not(:disabled){background:var(--%NS%kpt-color-muted)}.kpt-calendar__cell--selected{background:var(--%NS%kpt-color-primary)!important;color:var(--%NS%kpt-color-on-primary)}.kpt-calendar__cell:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__timebar{display:flex;align-items:center;justify-content:center;gap:var(--%NS%kpt-space-2, .5rem);width:100%;margin-top:var(--%NS%kpt-space-2, .5rem);padding:var(--%NS%kpt-space-2, .5rem);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-color-border);border-radius:var(--%NS%kpt-radius-md, .5rem);background:none;color:var(--%NS%kpt-color-on-surface);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.kpt-calendar__timebar:hover{background:var(--%NS%kpt-color-muted)}.kpt-calendar__timebar kpt-icon{color:var(--%NS%kpt-color-on-surface-muted)}.kpt-calendar__footer{display:flex;justify-content:flex-end;margin-top:var(--%NS%kpt-space-3, .75rem)}.kpt-calendar--clock{width:16rem}}\n"], encapsulation: 2 }); }
|
|
3914
|
+
i0.ɵɵproperty("cdkConnectedOverlayOrigin", trigger_r19)("cdkConnectedOverlayOpen", ctx.open())("cdkConnectedOverlayPositions", ctx.positions)("cdkConnectedOverlayHasBackdrop", true);
|
|
3915
|
+
} }, dependencies: [CdkOverlayOrigin, CdkConnectedOverlay, KptIcon, KptButton, KptClock], styles: ["@layer kpt.components{.kpt-datepicker-host{display:block}.kpt-datepicker{display:flex;align-items:center;gap:var(--%NS%kpt-space-2, .5rem);height:2.5rem;padding-inline:var(--%NS%kpt-space-3, .75rem);box-sizing:border-box;border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-form-field-radius, .5rem);background:var(--%NS%kpt-form-field-bg);color:var(--%NS%kpt-form-field-text);font-size:var(--%NS%kpt-font-size-sm, .875rem);cursor:pointer}.kpt-datepicker:hover:not(.kpt-datepicker--disabled){border-color:var(--%NS%kpt-form-field-border-hover)}.kpt-datepicker:focus-visible,.kpt-datepicker.kpt-datepicker--open{outline:none;border-color:var(--%NS%kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--%NS%kpt-form-field-border-focus) 30%,transparent)}.kpt-datepicker.kpt-datepicker--invalid{border-color:var(--%NS%kpt-form-field-border-error)}.kpt-datepicker.kpt-datepicker--disabled{cursor:not-allowed;opacity:.6;background:var(--%NS%kpt-color-surface-variant)}.kpt-datepicker__placeholder{color:var(--%NS%kpt-form-field-placeholder)}.kpt-datepicker__spacer{flex:1}.kpt-datepicker__icon{color:var(--%NS%kpt-color-on-surface-muted)}.kpt-datepicker__clear{display:inline-flex;border:0;background:none;cursor:pointer;color:var(--%NS%kpt-color-on-surface-muted);padding:0}.kpt-datepicker__clear:hover{color:var(--%NS%kpt-color-on-surface)}.kpt-calendar{width:17rem;padding:var(--%NS%kpt-space-3, .75rem);background:var(--%NS%kpt-color-surface-raised);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-color-border);border-radius:var(--%NS%kpt-radius-md, .5rem);box-shadow:var(--%NS%kpt-elevation-3);color:var(--%NS%kpt-color-on-surface);font-size:var(--%NS%kpt-font-size-sm, .875rem)}.kpt-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--%NS%kpt-space-2, .5rem)}.kpt-calendar__title{font-weight:var(--%NS%kpt-font-weight-semibold, 600);text-transform:capitalize}.kpt-calendar__titles{display:flex;align-items:center;gap:var(--%NS%kpt-space-1, .25rem)}.kpt-calendar__title-btn{padding:.25rem var(--%NS%kpt-space-2, .5rem);border:0;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:var(--%NS%kpt-color-muted);color:var(--%NS%kpt-color-on-surface);font:inherit;font-weight:var(--%NS%kpt-font-weight-semibold, 600);text-transform:capitalize;cursor:pointer}.kpt-calendar__title-btn:hover{background:var(--%NS%kpt-color-muted-hover)}.kpt-calendar__title-btn:focus-visible{outline:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-color-border-strong);outline-offset:1px}.kpt-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:var(--%NS%kpt-radius-md, .5rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer}.kpt-calendar__nav:hover:not(:disabled){background:var(--%NS%kpt-color-muted)}.kpt-calendar__nav:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__weekdays,.kpt-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.kpt-calendar__weekday{text-align:center;font-size:var(--%NS%kpt-font-size-xs, .75rem);color:var(--%NS%kpt-color-on-surface-muted);padding:.25rem 0}.kpt-calendar__day{aspect-ratio:1;border:0;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer;font:inherit}.kpt-calendar__day:hover:not(:disabled){background:var(--%NS%kpt-color-muted)}.kpt-calendar__day--muted{color:var(--%NS%kpt-color-on-surface-muted);opacity:.5}.kpt-calendar__day--today{box-shadow:inset 0 0 0 1px var(--%NS%kpt-color-border-strong)}.kpt-calendar__day--selected{background:var(--%NS%kpt-color-primary)!important;color:var(--%NS%kpt-color-on-primary)}.kpt-calendar__day:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__grid--cells{grid-template-columns:repeat(3,1fr);gap:4px}.kpt-calendar__cell{padding:.6rem .25rem;border:0;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer;font:inherit;text-transform:capitalize}.kpt-calendar__cell:hover:not(:disabled){background:var(--%NS%kpt-color-muted)}.kpt-calendar__cell--current{box-shadow:inset 0 0 0 1px var(--%NS%kpt-color-border-strong)}.kpt-calendar__cell--selected{background:var(--%NS%kpt-color-primary)!important;color:var(--%NS%kpt-color-on-primary)}.kpt-calendar__cell:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__grid--decades .kpt-calendar__cell{padding-inline:0;font-size:var(--%NS%kpt-font-size-xs, .75rem);white-space:nowrap}.kpt-calendar__timebar{display:flex;align-items:center;justify-content:center;gap:var(--%NS%kpt-space-2, .5rem);width:100%;margin-top:var(--%NS%kpt-space-2, .5rem);padding:var(--%NS%kpt-space-2, .5rem);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-color-border);border-radius:var(--%NS%kpt-radius-md, .5rem);background:none;color:var(--%NS%kpt-color-on-surface);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.kpt-calendar__timebar:hover{background:var(--%NS%kpt-color-muted)}.kpt-calendar__timebar kpt-icon{color:var(--%NS%kpt-color-on-surface-muted)}.kpt-calendar__footer{display:flex;justify-content:flex-end;margin-top:var(--%NS%kpt-space-3, .75rem)}.kpt-calendar--clock{width:16rem}}\n"], encapsulation: 2 }); }
|
|
3775
3916
|
}
|
|
3776
3917
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(KptDatepicker, [{
|
|
3777
3918
|
type: Component,
|
|
3778
|
-
args: [{ selector: 'kpt-datepicker', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [CdkOverlayOrigin, CdkConnectedOverlay, KptIcon, KptButton, KptClock], host: { class: 'kpt-datepicker-host' }, template: "<div\n class=\"kpt-datepicker\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n role=\"button\"\n tabindex=\"0\"\n [class.kpt-datepicker--open]=\"open()\"\n [class.kpt-datepicker--disabled]=\"disabled()\"\n [class.kpt-datepicker--invalid]=\"showInvalid()\"\n [attr.aria-disabled]=\"disabled() || null\"\n [attr.aria-label]=\"ariaLabel()\"\n (click)=\"toggleOpen()\"\n (keydown.enter)=\"toggleOpen()\"\n (blur)=\"touch.emit()\"\n>\n @if (display()) {\n <span class=\"kpt-datepicker__value\">{{ display() }}</span>\n } @else {\n <span class=\"kpt-datepicker__placeholder\">{{ effectivePlaceholder() }}</span>\n }\n <span class=\"kpt-datepicker__spacer\"></span>\n @if (display()) {\n <button type=\"button\" class=\"kpt-datepicker__clear\" (click)=\"clear($event)\" [attr.aria-label]=\"i18n.t('common.clear')\"><kpt-icon name=\"x\" /></button>\n }\n <kpt-icon\n class=\"kpt-datepicker__icon\"\n [name]=\"selectionMode() === 'time' ? 'clock' : 'calendar'\"\n />\n</div>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"open()\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n (backdropClick)=\"close()\"\n (detach)=\"close()\"\n>\n <div class=\"kpt-calendar\" [class.kpt-calendar--clock]=\"selectionMode() === 'time' || (selectionMode() === 'datetime' && dtView() === 'clock')\" (keydown.escape)=\"close()\">\n @switch (selectionMode()) {\n @case ('time') {\n <kpt-clock [(value)]=\"timeStr\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n <div class=\"kpt-calendar__footer\">\n <kpt-button size=\"sm\" (click)=\"commit()\">{{ i18n.t('common.done') }}</kpt-button>\n </div>\n }\n @case ('datetime') {\n @if (dtView() === 'calendar') {\n <div class=\"kpt-calendar__header\">\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"prevMonth()\" [attr.aria-label]=\"i18n.t('datepicker.prevMonth')\"><kpt-icon name=\"chevron-left\" /></button>\n <span class=\"kpt-calendar__title\">{{ monthLabel() }}</span>\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"nextMonth()\" [attr.aria-label]=\"i18n.t('datepicker.nextMonth')\"><kpt-icon name=\"chevron-right\" /></button>\n </div>\n <div class=\"kpt-calendar__weekdays\">\n @for (wd of weekdays(); track wd) {\n <span class=\"kpt-calendar__weekday\">{{ wd }}</span>\n }\n </div>\n <div class=\"kpt-calendar__grid\">\n @for (week of weeks(); track $index) {\n @for (cell of week; track cell.iso) {\n <button\n type=\"button\"\n class=\"kpt-calendar__day\"\n [class.kpt-calendar__day--muted]=\"!cell.inMonth\"\n [class.kpt-calendar__day--today]=\"cell.today\"\n [class.kpt-calendar__day--selected]=\"cell.selected\"\n [disabled]=\"cell.disabled\"\n [attr.aria-pressed]=\"cell.selected\"\n (click)=\"selectDay(cell)\"\n >{{ cell.day }}</button>\n }\n }\n </div>\n <button type=\"button\" class=\"kpt-calendar__timebar\" (click)=\"openClock()\">\n <kpt-icon name=\"clock\" />\n <span>{{ timeBarLabel() }}</span>\n </button>\n } @else {\n <div class=\"kpt-calendar__header\">\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"backToCalendar()\" [attr.aria-label]=\"i18n.t('datepicker.calendar')\"><kpt-icon name=\"chevron-left\" /></button>\n <span class=\"kpt-calendar__title\">{{ i18n.t('datepicker.time') }}</span>\n </div>\n <kpt-clock [(value)]=\"timeStr\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n }\n <div class=\"kpt-calendar__footer\">\n <kpt-button size=\"sm\" (click)=\"commit()\">{{ i18n.t('common.done') }}</kpt-button>\n </div>\n }\n @case ('monthYear') {\n <div class=\"kpt-calendar__header\">\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"prevYear()\" [attr.aria-label]=\"i18n.t('datepicker.prevYear')\"><kpt-icon name=\"chevron-left\" /></button>\n <span class=\"kpt-calendar__title\">{{ viewYear() }}</span>\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"nextYear()\" [attr.aria-label]=\"i18n.t('datepicker.nextYear')\"><kpt-icon name=\"chevron-right\" /></button>\n </div>\n <div class=\"kpt-calendar__grid kpt-calendar__grid--cells\">\n @for (cell of monthCells(); track cell.value) {\n <button\n type=\"button\"\n class=\"kpt-calendar__cell\"\n [class.kpt-calendar__cell--selected]=\"cell.selected\"\n [disabled]=\"cell.disabled\"\n [attr.aria-pressed]=\"cell.selected\"\n (click)=\"selectCell(cell)\"\n >{{ cell.label }}</button>\n }\n </div>\n }\n @case ('year') {\n <div class=\"kpt-calendar__header\">\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"prevYearPage()\" [attr.aria-label]=\"i18n.t('datepicker.prevYears')\"><kpt-icon name=\"chevron-left\" /></button>\n <span class=\"kpt-calendar__title\">{{ yearRangeLabel() }}</span>\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"nextYearPage()\" [attr.aria-label]=\"i18n.t('datepicker.nextYears')\"><kpt-icon name=\"chevron-right\" /></button>\n </div>\n <div class=\"kpt-calendar__grid kpt-calendar__grid--cells\">\n @for (cell of yearCells(); track cell.value) {\n <button\n type=\"button\"\n class=\"kpt-calendar__cell\"\n [class.kpt-calendar__cell--selected]=\"cell.selected\"\n [disabled]=\"cell.disabled\"\n [attr.aria-pressed]=\"cell.selected\"\n (click)=\"selectCell(cell)\"\n >{{ cell.label }}</button>\n }\n </div>\n }\n @case ('month') {\n <div class=\"kpt-calendar__header\">\n <span class=\"kpt-calendar__title\">{{ i18n.t('datepicker.month') }}</span>\n </div>\n <div class=\"kpt-calendar__grid kpt-calendar__grid--cells\">\n @for (cell of monthCells(); track cell.value) {\n <button\n type=\"button\"\n class=\"kpt-calendar__cell\"\n [class.kpt-calendar__cell--selected]=\"cell.selected\"\n [attr.aria-pressed]=\"cell.selected\"\n (click)=\"selectCell(cell)\"\n >{{ cell.label }}</button>\n }\n </div>\n }\n @default {\n <div class=\"kpt-calendar__header\">\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"prevMonth()\" [attr.aria-label]=\"i18n.t('datepicker.prevMonth')\"><kpt-icon name=\"chevron-left\" /></button>\n <span class=\"kpt-calendar__title\">{{ monthLabel() }}</span>\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"nextMonth()\" [attr.aria-label]=\"i18n.t('datepicker.nextMonth')\"><kpt-icon name=\"chevron-right\" /></button>\n </div>\n <div class=\"kpt-calendar__weekdays\">\n @for (wd of weekdays(); track wd) {\n <span class=\"kpt-calendar__weekday\">{{ wd }}</span>\n }\n </div>\n <div class=\"kpt-calendar__grid\">\n @for (week of weeks(); track $index) {\n @for (cell of week; track cell.iso) {\n <button\n type=\"button\"\n class=\"kpt-calendar__day\"\n [class.kpt-calendar__day--muted]=\"!cell.inMonth\"\n [class.kpt-calendar__day--today]=\"cell.today\"\n [class.kpt-calendar__day--selected]=\"cell.selected\"\n [disabled]=\"cell.disabled\"\n [attr.aria-pressed]=\"cell.selected\"\n (click)=\"selectDay(cell)\"\n >{{ cell.day }}</button>\n }\n }\n </div>\n }\n }\n </div>\n</ng-template>\n", styles: ["@layer kpt.components{.kpt-datepicker-host{display:block}.kpt-datepicker{display:flex;align-items:center;gap:var(--kpt-space-2, .5rem);height:2.5rem;padding-inline:var(--kpt-space-3, .75rem);box-sizing:border-box;border:var(--kpt-border-width-thin, 1px) solid var(--kpt-form-field-border);border-radius:var(--kpt-form-field-radius, .5rem);background:var(--kpt-form-field-bg);color:var(--kpt-form-field-text);font-size:var(--kpt-font-size-sm, .875rem);cursor:pointer}.kpt-datepicker:hover:not(.kpt-datepicker--disabled){border-color:var(--kpt-form-field-border-hover)}.kpt-datepicker:focus-visible,.kpt-datepicker.kpt-datepicker--open{outline:none;border-color:var(--kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--kpt-form-field-border-focus) 30%,transparent)}.kpt-datepicker.kpt-datepicker--invalid{border-color:var(--kpt-form-field-border-error)}.kpt-datepicker.kpt-datepicker--disabled{cursor:not-allowed;opacity:.6;background:var(--kpt-color-surface-variant)}.kpt-datepicker__placeholder{color:var(--kpt-form-field-placeholder)}.kpt-datepicker__spacer{flex:1}.kpt-datepicker__icon{color:var(--kpt-color-on-surface-muted)}.kpt-datepicker__clear{display:inline-flex;border:0;background:none;cursor:pointer;color:var(--kpt-color-on-surface-muted);padding:0}.kpt-datepicker__clear:hover{color:var(--kpt-color-on-surface)}.kpt-calendar{width:17rem;padding:var(--kpt-space-3, .75rem);background:var(--kpt-color-surface-raised);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-color-border);border-radius:var(--kpt-radius-md, .5rem);box-shadow:var(--kpt-elevation-3);color:var(--kpt-color-on-surface);font-size:var(--kpt-font-size-sm, .875rem)}.kpt-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--kpt-space-2, .5rem)}.kpt-calendar__title{font-weight:var(--kpt-font-weight-semibold, 600);text-transform:capitalize}.kpt-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:var(--kpt-radius-md, .5rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer}.kpt-calendar__nav:hover{background:var(--kpt-color-muted)}.kpt-calendar__weekdays,.kpt-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.kpt-calendar__weekday{text-align:center;font-size:var(--kpt-font-size-xs, .75rem);color:var(--kpt-color-on-surface-muted);padding:.25rem 0}.kpt-calendar__day{aspect-ratio:1;border:0;border-radius:var(--kpt-radius-sm, .25rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer;font:inherit}.kpt-calendar__day:hover:not(:disabled){background:var(--kpt-color-muted)}.kpt-calendar__day--muted{color:var(--kpt-color-on-surface-muted);opacity:.5}.kpt-calendar__day--today{box-shadow:inset 0 0 0 1px var(--kpt-color-border-strong)}.kpt-calendar__day--selected{background:var(--kpt-color-primary)!important;color:var(--kpt-color-on-primary)}.kpt-calendar__day:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__grid--cells{grid-template-columns:repeat(3,1fr);gap:4px}.kpt-calendar__cell{padding:.6rem .25rem;border:0;border-radius:var(--kpt-radius-sm, .25rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer;font:inherit;text-transform:capitalize}.kpt-calendar__cell:hover:not(:disabled){background:var(--kpt-color-muted)}.kpt-calendar__cell--selected{background:var(--kpt-color-primary)!important;color:var(--kpt-color-on-primary)}.kpt-calendar__cell:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__timebar{display:flex;align-items:center;justify-content:center;gap:var(--kpt-space-2, .5rem);width:100%;margin-top:var(--kpt-space-2, .5rem);padding:var(--kpt-space-2, .5rem);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-color-border);border-radius:var(--kpt-radius-md, .5rem);background:none;color:var(--kpt-color-on-surface);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.kpt-calendar__timebar:hover{background:var(--kpt-color-muted)}.kpt-calendar__timebar kpt-icon{color:var(--kpt-color-on-surface-muted)}.kpt-calendar__footer{display:flex;justify-content:flex-end;margin-top:var(--kpt-space-3, .75rem)}.kpt-calendar--clock{width:16rem}}\n"] }]
|
|
3779
|
-
}], () => [], { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], touched: [{ type: i0.Input, args: [{ isSignal: true, alias: "touched", required: false }] }], touch: [{ type: i0.Output, args: ["touch"] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], displayFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayFormat", required: false }] }], selectionMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectionMode", required: false }] }], monthDisplay: [{ type: i0.Input, args: [{ isSignal: true, alias: "monthDisplay", required: false }] }], hourFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "hourFormat", required: false }] }], minuteStep: [{ type: i0.Input, args: [{ isSignal: true, alias: "minuteStep", required: false }] }], minDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "minDate", required: false }] }], maxDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxDate", required: false }] }], open: [{ type: i0.Input, args: [{ isSignal: true, alias: "open", required: false }] }, { type: i0.Output, args: ["openChange"] }] }); })();
|
|
3780
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KptDatepicker, { className: "KptDatepicker", filePath: "lib/datepicker/datepicker.component.ts", lineNumber:
|
|
3919
|
+
args: [{ selector: 'kpt-datepicker', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [CdkOverlayOrigin, CdkConnectedOverlay, KptIcon, KptButton, KptClock], host: { class: 'kpt-datepicker-host' }, template: "<div\n class=\"kpt-datepicker\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n role=\"button\"\n tabindex=\"0\"\n [class.kpt-datepicker--open]=\"open()\"\n [class.kpt-datepicker--disabled]=\"disabled()\"\n [class.kpt-datepicker--invalid]=\"showInvalid()\"\n [attr.aria-disabled]=\"disabled() || null\"\n [attr.aria-label]=\"ariaLabel()\"\n (click)=\"toggleOpen()\"\n (keydown.enter)=\"toggleOpen()\"\n (blur)=\"touch.emit()\"\n>\n @if (display()) {\n <span class=\"kpt-datepicker__value\">{{ display() }}</span>\n } @else {\n <span class=\"kpt-datepicker__placeholder\">{{ effectivePlaceholder() }}</span>\n }\n <span class=\"kpt-datepicker__spacer\"></span>\n @if (display()) {\n <button type=\"button\" class=\"kpt-datepicker__clear\" (click)=\"clear($event)\" [attr.aria-label]=\"i18n.t('common.clear')\"><kpt-icon name=\"x\" /></button>\n }\n <kpt-icon\n class=\"kpt-datepicker__icon\"\n [name]=\"selectionMode() === 'time' ? 'clock' : 'calendar'\"\n />\n</div>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"open()\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n (backdropClick)=\"close()\"\n (detach)=\"close()\"\n>\n <div class=\"kpt-calendar\" [class.kpt-calendar--clock]=\"showClock()\" (keydown.escape)=\"close()\">\n @if (showClock()) {\n @if (selectionMode() === 'datetime') {\n <div class=\"kpt-calendar__header\">\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"backToCalendar()\" [attr.aria-label]=\"i18n.t('datepicker.calendar')\"><kpt-icon name=\"chevron-left\" /></button>\n <span class=\"kpt-calendar__title\">{{ i18n.t('datepicker.time') }}</span>\n </div>\n }\n <kpt-clock [(value)]=\"timeStr\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n } @else {\n <!-- Nag\u0142\u00F3wek wsp\u00F3lny dla czterech poziom\u00F3w: r\u00F3\u017Cni je tylko tre\u015B\u0107 tytu\u0142u. -->\n <div class=\"kpt-calendar__header\">\n @if (hasNav()) {\n <button type=\"button\" class=\"kpt-calendar__nav\" [disabled]=\"!canPageBack()\" (click)=\"pagePrev()\" [attr.aria-label]=\"navPrevLabel()\"><kpt-icon name=\"chevron-left\" /></button>\n }\n <span class=\"kpt-calendar__titles\">\n @switch (panelView()) {\n @case ('day') {\n <button type=\"button\" class=\"kpt-calendar__title-btn\" (click)=\"goTo('month')\" [attr.aria-label]=\"i18n.t('datepicker.chooseMonth')\">{{ monthName() }}</button>\n <button type=\"button\" class=\"kpt-calendar__title-btn\" (click)=\"goTo('year')\" [attr.aria-label]=\"i18n.t('datepicker.chooseYear')\">{{ viewYear() }}</button>\n }\n @case ('month') {\n @if (selectionMode() === 'month') {\n <span class=\"kpt-calendar__title\">{{ i18n.t('datepicker.month') }}</span>\n } @else {\n <button type=\"button\" class=\"kpt-calendar__title-btn\" (click)=\"goTo('year')\" [attr.aria-label]=\"i18n.t('datepicker.chooseYear')\">{{ viewYear() }}</button>\n }\n }\n @case ('year') {\n <button type=\"button\" class=\"kpt-calendar__title-btn\" (click)=\"goTo('decade')\" [attr.aria-label]=\"i18n.t('datepicker.chooseDecade')\">{{ yearRangeLabel() }}</button>\n }\n @case ('decade') {\n <span class=\"kpt-calendar__title\">{{ decadeRangeLabel() }}</span>\n }\n }\n </span>\n @if (hasNav()) {\n <button type=\"button\" class=\"kpt-calendar__nav\" [disabled]=\"!canPageForward()\" (click)=\"pageNext()\" [attr.aria-label]=\"navNextLabel()\"><kpt-icon name=\"chevron-right\" /></button>\n }\n </div>\n\n @switch (panelView()) {\n @case ('day') {\n <div class=\"kpt-calendar__weekdays\">\n @for (wd of weekdays(); track wd) {\n <span class=\"kpt-calendar__weekday\">{{ wd }}</span>\n }\n </div>\n <div class=\"kpt-calendar__grid\">\n @for (week of weeks(); track $index) {\n @for (cell of week; track cell.iso) {\n <button\n type=\"button\"\n class=\"kpt-calendar__day\"\n [class.kpt-calendar__day--muted]=\"!cell.inMonth\"\n [class.kpt-calendar__day--today]=\"cell.today\"\n [class.kpt-calendar__day--selected]=\"cell.selected\"\n [disabled]=\"cell.disabled\"\n [attr.aria-pressed]=\"cell.selected\"\n (click)=\"selectDay(cell)\"\n >{{ cell.day }}</button>\n }\n }\n </div>\n }\n @default {\n <div class=\"kpt-calendar__grid kpt-calendar__grid--cells\" [class.kpt-calendar__grid--decades]=\"panelView() === 'decade'\">\n @for (cell of levelCells(); track cell.label) {\n <button\n type=\"button\"\n class=\"kpt-calendar__cell\"\n [class.kpt-calendar__cell--selected]=\"cell.selected\"\n [class.kpt-calendar__cell--current]=\"cell.current\"\n [disabled]=\"cell.disabled\"\n [attr.aria-pressed]=\"cell.selected\"\n (click)=\"selectCell(cell)\"\n >{{ cell.label }}</button>\n }\n </div>\n }\n }\n\n @if (selectionMode() === 'datetime') {\n <button type=\"button\" class=\"kpt-calendar__timebar\" (click)=\"openClock()\">\n <kpt-icon name=\"clock\" />\n <span>{{ timeBarLabel() }}</span>\n </button>\n }\n }\n @if (hasFooter()) {\n <div class=\"kpt-calendar__footer\">\n <kpt-button size=\"sm\" (click)=\"commit()\">{{ i18n.t('common.done') }}</kpt-button>\n </div>\n }\n </div>\n</ng-template>\n", styles: ["@layer kpt.components{.kpt-datepicker-host{display:block}.kpt-datepicker{display:flex;align-items:center;gap:var(--kpt-space-2, .5rem);height:2.5rem;padding-inline:var(--kpt-space-3, .75rem);box-sizing:border-box;border:var(--kpt-border-width-thin, 1px) solid var(--kpt-form-field-border);border-radius:var(--kpt-form-field-radius, .5rem);background:var(--kpt-form-field-bg);color:var(--kpt-form-field-text);font-size:var(--kpt-font-size-sm, .875rem);cursor:pointer}.kpt-datepicker:hover:not(.kpt-datepicker--disabled){border-color:var(--kpt-form-field-border-hover)}.kpt-datepicker:focus-visible,.kpt-datepicker.kpt-datepicker--open{outline:none;border-color:var(--kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--kpt-form-field-border-focus) 30%,transparent)}.kpt-datepicker.kpt-datepicker--invalid{border-color:var(--kpt-form-field-border-error)}.kpt-datepicker.kpt-datepicker--disabled{cursor:not-allowed;opacity:.6;background:var(--kpt-color-surface-variant)}.kpt-datepicker__placeholder{color:var(--kpt-form-field-placeholder)}.kpt-datepicker__spacer{flex:1}.kpt-datepicker__icon{color:var(--kpt-color-on-surface-muted)}.kpt-datepicker__clear{display:inline-flex;border:0;background:none;cursor:pointer;color:var(--kpt-color-on-surface-muted);padding:0}.kpt-datepicker__clear:hover{color:var(--kpt-color-on-surface)}.kpt-calendar{width:17rem;padding:var(--kpt-space-3, .75rem);background:var(--kpt-color-surface-raised);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-color-border);border-radius:var(--kpt-radius-md, .5rem);box-shadow:var(--kpt-elevation-3);color:var(--kpt-color-on-surface);font-size:var(--kpt-font-size-sm, .875rem)}.kpt-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--kpt-space-2, .5rem)}.kpt-calendar__title{font-weight:var(--kpt-font-weight-semibold, 600);text-transform:capitalize}.kpt-calendar__titles{display:flex;align-items:center;gap:var(--kpt-space-1, .25rem)}.kpt-calendar__title-btn{padding:.25rem var(--kpt-space-2, .5rem);border:0;border-radius:var(--kpt-radius-sm, .25rem);background:var(--kpt-color-muted);color:var(--kpt-color-on-surface);font:inherit;font-weight:var(--kpt-font-weight-semibold, 600);text-transform:capitalize;cursor:pointer}.kpt-calendar__title-btn:hover{background:var(--kpt-color-muted-hover)}.kpt-calendar__title-btn:focus-visible{outline:var(--kpt-border-width-thin, 1px) solid var(--kpt-color-border-strong);outline-offset:1px}.kpt-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:var(--kpt-radius-md, .5rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer}.kpt-calendar__nav:hover:not(:disabled){background:var(--kpt-color-muted)}.kpt-calendar__nav:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__weekdays,.kpt-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.kpt-calendar__weekday{text-align:center;font-size:var(--kpt-font-size-xs, .75rem);color:var(--kpt-color-on-surface-muted);padding:.25rem 0}.kpt-calendar__day{aspect-ratio:1;border:0;border-radius:var(--kpt-radius-sm, .25rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer;font:inherit}.kpt-calendar__day:hover:not(:disabled){background:var(--kpt-color-muted)}.kpt-calendar__day--muted{color:var(--kpt-color-on-surface-muted);opacity:.5}.kpt-calendar__day--today{box-shadow:inset 0 0 0 1px var(--kpt-color-border-strong)}.kpt-calendar__day--selected{background:var(--kpt-color-primary)!important;color:var(--kpt-color-on-primary)}.kpt-calendar__day:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__grid--cells{grid-template-columns:repeat(3,1fr);gap:4px}.kpt-calendar__cell{padding:.6rem .25rem;border:0;border-radius:var(--kpt-radius-sm, .25rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer;font:inherit;text-transform:capitalize}.kpt-calendar__cell:hover:not(:disabled){background:var(--kpt-color-muted)}.kpt-calendar__cell--current{box-shadow:inset 0 0 0 1px var(--kpt-color-border-strong)}.kpt-calendar__cell--selected{background:var(--kpt-color-primary)!important;color:var(--kpt-color-on-primary)}.kpt-calendar__cell:disabled{opacity:.3;cursor:not-allowed}.kpt-calendar__grid--decades .kpt-calendar__cell{padding-inline:0;font-size:var(--kpt-font-size-xs, .75rem);white-space:nowrap}.kpt-calendar__timebar{display:flex;align-items:center;justify-content:center;gap:var(--kpt-space-2, .5rem);width:100%;margin-top:var(--kpt-space-2, .5rem);padding:var(--kpt-space-2, .5rem);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-color-border);border-radius:var(--kpt-radius-md, .5rem);background:none;color:var(--kpt-color-on-surface);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.kpt-calendar__timebar:hover{background:var(--kpt-color-muted)}.kpt-calendar__timebar kpt-icon{color:var(--kpt-color-on-surface-muted)}.kpt-calendar__footer{display:flex;justify-content:flex-end;margin-top:var(--kpt-space-3, .75rem)}.kpt-calendar--clock{width:16rem}}\n"] }]
|
|
3920
|
+
}], () => [], { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], touched: [{ type: i0.Input, args: [{ isSignal: true, alias: "touched", required: false }] }], touch: [{ type: i0.Output, args: ["touch"] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], displayFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayFormat", required: false }] }], selectionMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectionMode", required: false }] }], startView: [{ type: i0.Input, args: [{ isSignal: true, alias: "startView", required: false }] }], monthDisplay: [{ type: i0.Input, args: [{ isSignal: true, alias: "monthDisplay", required: false }] }], hourFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "hourFormat", required: false }] }], minuteStep: [{ type: i0.Input, args: [{ isSignal: true, alias: "minuteStep", required: false }] }], minDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "minDate", required: false }] }], maxDate: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxDate", required: false }] }], open: [{ type: i0.Input, args: [{ isSignal: true, alias: "open", required: false }] }, { type: i0.Output, args: ["openChange"] }] }); })();
|
|
3921
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KptDatepicker, { className: "KptDatepicker", filePath: "lib/datepicker/datepicker.component.ts", lineNumber: 81 }); })();
|
|
3781
3922
|
|
|
3782
3923
|
const _c0$u = ["ta"];
|
|
3783
3924
|
/**
|
|
@@ -5879,7 +6020,8 @@ class KptColorPicker {
|
|
|
5879
6020
|
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], presets: [{ type: i0.Input, args: [{ isSignal: true, alias: "presets", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], touched: [{ type: i0.Input, args: [{ isSignal: true, alias: "touched", required: false }] }], touch: [{ type: i0.Output, args: ["touch"] }] }); })();
|
|
5880
6021
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KptColorPicker, { className: "KptColorPicker", filePath: "lib/color-picker/color-picker.component.ts", lineNumber: 52 }); })();
|
|
5881
6022
|
|
|
5882
|
-
const _forTrack0$5 = ($index, $item) => $item.
|
|
6023
|
+
const _forTrack0$5 = ($index, $item) => $item.key;
|
|
6024
|
+
const _forTrack1$1 = ($index, $item) => $item.iso;
|
|
5883
6025
|
function KptDateRange_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
5884
6026
|
i0.ɵɵelementStart(0, "span", 2);
|
|
5885
6027
|
i0.ɵɵtext(1);
|
|
@@ -5956,64 +6098,129 @@ function KptDateRange_ng_template_7_Conditional_1_Template(rf, ctx) { if (rf & 1
|
|
|
5956
6098
|
i0.ɵɵadvance(4);
|
|
5957
6099
|
i0.ɵɵtextInterpolate(ctx_r0.i18n.t("common.done"));
|
|
5958
6100
|
} }
|
|
5959
|
-
function
|
|
5960
|
-
i0.ɵɵ
|
|
6101
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
6102
|
+
const _r7 = i0.ɵɵgetCurrentView();
|
|
6103
|
+
i0.ɵɵelementStart(0, "button", 26);
|
|
6104
|
+
i0.ɵɵlistener("click", function KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r0.prevMonth()); });
|
|
6105
|
+
i0.ɵɵelement(1, "kpt-icon", 27);
|
|
6106
|
+
i0.ɵɵelementEnd();
|
|
6107
|
+
} if (rf & 2) {
|
|
6108
|
+
const ctx_r0 = i0.ɵɵnextContext(4);
|
|
6109
|
+
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.prevMonth"));
|
|
6110
|
+
} }
|
|
6111
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
6112
|
+
i0.ɵɵelement(0, "span", 21);
|
|
6113
|
+
} }
|
|
6114
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
6115
|
+
const _r8 = i0.ɵɵgetCurrentView();
|
|
6116
|
+
i0.ɵɵelementStart(0, "button", 26);
|
|
6117
|
+
i0.ɵɵlistener("click", function KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const ctx_r0 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r0.nextMonth()); });
|
|
6118
|
+
i0.ɵɵelement(1, "kpt-icon", 28);
|
|
6119
|
+
i0.ɵɵelementEnd();
|
|
6120
|
+
} if (rf & 2) {
|
|
6121
|
+
const ctx_r0 = i0.ɵɵnextContext(4);
|
|
6122
|
+
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.nextMonth"));
|
|
6123
|
+
} }
|
|
6124
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_7_Template(rf, ctx) { if (rf & 1) {
|
|
6125
|
+
i0.ɵɵelement(0, "span", 21);
|
|
6126
|
+
} }
|
|
6127
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_For_10_Template(rf, ctx) { if (rf & 1) {
|
|
6128
|
+
i0.ɵɵelementStart(0, "span", 24);
|
|
5961
6129
|
i0.ɵɵtext(1);
|
|
5962
6130
|
i0.ɵɵelementEnd();
|
|
5963
6131
|
} if (rf & 2) {
|
|
5964
|
-
const
|
|
6132
|
+
const wd_r9 = ctx.$implicit;
|
|
5965
6133
|
i0.ɵɵadvance();
|
|
5966
|
-
i0.ɵɵtextInterpolate(
|
|
6134
|
+
i0.ɵɵtextInterpolate(wd_r9);
|
|
5967
6135
|
} }
|
|
5968
|
-
function
|
|
5969
|
-
|
|
5970
|
-
|
|
5971
|
-
|
|
6136
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_For_13_For_1_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
6137
|
+
i0.ɵɵelement(0, "span", 29);
|
|
6138
|
+
} }
|
|
6139
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_For_13_For_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
6140
|
+
const _r10 = i0.ɵɵgetCurrentView();
|
|
6141
|
+
i0.ɵɵelementStart(0, "button", 31);
|
|
6142
|
+
i0.ɵɵlistener("click", function KptDateRange_ng_template_7_Conditional_2_For_2_For_13_For_1_Conditional_1_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r10); const cell_r11 = i0.ɵɵnextContext().$implicit; const ctx_r0 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r0.selectDay(cell_r11)); });
|
|
5972
6143
|
i0.ɵɵtext(1);
|
|
5973
6144
|
i0.ɵɵelementEnd();
|
|
5974
6145
|
} if (rf & 2) {
|
|
5975
|
-
const
|
|
5976
|
-
i0.ɵɵclassProp("kpt-calendar__day--muted", !
|
|
6146
|
+
const cell_r11 = i0.ɵɵnextContext().$implicit;
|
|
6147
|
+
i0.ɵɵclassProp("kpt-calendar__day--muted", !cell_r11.inMonth)("kpt-calendar__day--today", cell_r11.today)("kpt-calendar__day--range", cell_r11.inRange)("kpt-calendar__day--range-start", cell_r11.rangeStart)("kpt-calendar__day--range-end", cell_r11.rangeEnd)("kpt-calendar__day--selected", cell_r11.isStart || cell_r11.isEnd);
|
|
5977
6148
|
i0.ɵɵadvance();
|
|
5978
|
-
i0.ɵɵtextInterpolate(
|
|
6149
|
+
i0.ɵɵtextInterpolate(cell_r11.day);
|
|
5979
6150
|
} }
|
|
5980
|
-
function
|
|
5981
|
-
i0.ɵɵ
|
|
6151
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_For_13_For_1_Template(rf, ctx) { if (rf & 1) {
|
|
6152
|
+
i0.ɵɵconditionalCreate(0, KptDateRange_ng_template_7_Conditional_2_For_2_For_13_For_1_Conditional_0_Template, 1, 0, "span", 29)(1, KptDateRange_ng_template_7_Conditional_2_For_2_For_13_For_1_Conditional_1_Template, 2, 13, "button", 30);
|
|
5982
6153
|
} if (rf & 2) {
|
|
5983
|
-
const
|
|
5984
|
-
i0.ɵɵ
|
|
6154
|
+
const cell_r11 = ctx.$implicit;
|
|
6155
|
+
i0.ɵɵconditional(cell_r11.blank ? 0 : 1);
|
|
5985
6156
|
} }
|
|
5986
|
-
function
|
|
5987
|
-
|
|
6157
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_For_13_Template(rf, ctx) { if (rf & 1) {
|
|
6158
|
+
i0.ɵɵrepeaterCreate(0, KptDateRange_ng_template_7_Conditional_2_For_2_For_13_For_1_Template, 2, 1, null, null, _forTrack1$1);
|
|
6159
|
+
} if (rf & 2) {
|
|
6160
|
+
const week_r12 = ctx.$implicit;
|
|
6161
|
+
i0.ɵɵrepeater(week_r12);
|
|
6162
|
+
} }
|
|
6163
|
+
function KptDateRange_ng_template_7_Conditional_2_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
6164
|
+
i0.ɵɵelementStart(0, "div", 18)(1, "div", 19);
|
|
6165
|
+
i0.ɵɵconditionalCreate(2, KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_2_Template, 2, 1, "button", 20)(3, KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_3_Template, 1, 0, "span", 21);
|
|
6166
|
+
i0.ɵɵelementStart(4, "span", 22);
|
|
6167
|
+
i0.ɵɵtext(5);
|
|
6168
|
+
i0.ɵɵelementEnd();
|
|
6169
|
+
i0.ɵɵconditionalCreate(6, KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_6_Template, 2, 1, "button", 20)(7, KptDateRange_ng_template_7_Conditional_2_For_2_Conditional_7_Template, 1, 0, "span", 21);
|
|
6170
|
+
i0.ɵɵelementEnd();
|
|
6171
|
+
i0.ɵɵelementStart(8, "div", 23);
|
|
6172
|
+
i0.ɵɵrepeaterCreate(9, KptDateRange_ng_template_7_Conditional_2_For_2_For_10_Template, 2, 1, "span", 24, i0.ɵɵrepeaterTrackByIdentity);
|
|
6173
|
+
i0.ɵɵelementEnd();
|
|
6174
|
+
i0.ɵɵelementStart(11, "div", 25);
|
|
6175
|
+
i0.ɵɵrepeaterCreate(12, KptDateRange_ng_template_7_Conditional_2_For_2_For_13_Template, 2, 0, null, null, i0.ɵɵrepeaterTrackByIndex);
|
|
6176
|
+
i0.ɵɵelementEnd()();
|
|
6177
|
+
} if (rf & 2) {
|
|
6178
|
+
const panel_r13 = ctx.$implicit;
|
|
6179
|
+
const ɵ$index_47_r14 = ctx.$index;
|
|
6180
|
+
const ɵ$count_47_r15 = ctx.$count;
|
|
6181
|
+
const ctx_r0 = i0.ɵɵnextContext(3);
|
|
6182
|
+
i0.ɵɵadvance(2);
|
|
6183
|
+
i0.ɵɵconditional(ɵ$index_47_r14 === 0 ? 2 : 3);
|
|
6184
|
+
i0.ɵɵadvance(3);
|
|
6185
|
+
i0.ɵɵtextInterpolate(panel_r13.label);
|
|
6186
|
+
i0.ɵɵadvance();
|
|
6187
|
+
i0.ɵɵconditional(ɵ$index_47_r14 === ɵ$count_47_r15 - 1 ? 6 : 7);
|
|
6188
|
+
i0.ɵɵadvance(3);
|
|
6189
|
+
i0.ɵɵrepeater(ctx_r0.weekdays());
|
|
6190
|
+
i0.ɵɵadvance(3);
|
|
6191
|
+
i0.ɵɵrepeater(panel_r13.weeks);
|
|
6192
|
+
} }
|
|
6193
|
+
function KptDateRange_ng_template_7_Conditional_2_Conditional_3_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
6194
|
+
const _r17 = i0.ɵɵgetCurrentView();
|
|
5988
6195
|
i0.ɵɵelementStart(0, "kpt-clock", 16);
|
|
5989
|
-
i0.ɵɵlistener("valueChange", function
|
|
6196
|
+
i0.ɵɵlistener("valueChange", function KptDateRange_ng_template_7_Conditional_2_Conditional_3_Conditional_5_Template_kpt_clock_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r17); const ctx_r0 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r0.startTime.set($event)); });
|
|
5990
6197
|
i0.ɵɵelementEnd();
|
|
5991
6198
|
} if (rf & 2) {
|
|
5992
6199
|
const ctx_r0 = i0.ɵɵnextContext(4);
|
|
5993
6200
|
i0.ɵɵproperty("value", ctx_r0.startTime())("hourFormat", ctx_r0.hourFormat())("minuteStep", ctx_r0.minuteStep());
|
|
5994
6201
|
} }
|
|
5995
|
-
function
|
|
5996
|
-
const
|
|
6202
|
+
function KptDateRange_ng_template_7_Conditional_2_Conditional_3_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
6203
|
+
const _r18 = i0.ɵɵgetCurrentView();
|
|
5997
6204
|
i0.ɵɵelementStart(0, "kpt-clock", 16);
|
|
5998
|
-
i0.ɵɵlistener("valueChange", function
|
|
6205
|
+
i0.ɵɵlistener("valueChange", function KptDateRange_ng_template_7_Conditional_2_Conditional_3_Conditional_6_Template_kpt_clock_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r0 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r0.endTime.set($event)); });
|
|
5999
6206
|
i0.ɵɵelementEnd();
|
|
6000
6207
|
} if (rf & 2) {
|
|
6001
6208
|
const ctx_r0 = i0.ɵɵnextContext(4);
|
|
6002
6209
|
i0.ɵɵproperty("value", ctx_r0.endTime())("hourFormat", ctx_r0.hourFormat())("minuteStep", ctx_r0.minuteStep());
|
|
6003
6210
|
} }
|
|
6004
|
-
function
|
|
6005
|
-
const
|
|
6211
|
+
function KptDateRange_ng_template_7_Conditional_2_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
6212
|
+
const _r16 = i0.ɵɵgetCurrentView();
|
|
6006
6213
|
i0.ɵɵelementStart(0, "div", 11)(1, "button", 12);
|
|
6007
|
-
i0.ɵɵlistener("click", function
|
|
6214
|
+
i0.ɵɵlistener("click", function KptDateRange_ng_template_7_Conditional_2_Conditional_3_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r16); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.timeEnd.set("start")); });
|
|
6008
6215
|
i0.ɵɵtext(2);
|
|
6009
6216
|
i0.ɵɵelementEnd();
|
|
6010
6217
|
i0.ɵɵelementStart(3, "button", 12);
|
|
6011
|
-
i0.ɵɵlistener("click", function
|
|
6218
|
+
i0.ɵɵlistener("click", function KptDateRange_ng_template_7_Conditional_2_Conditional_3_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r16); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.timeEnd.set("end")); });
|
|
6012
6219
|
i0.ɵɵtext(4);
|
|
6013
6220
|
i0.ɵɵelementEnd()();
|
|
6014
|
-
i0.ɵɵconditionalCreate(5,
|
|
6221
|
+
i0.ɵɵconditionalCreate(5, KptDateRange_ng_template_7_Conditional_2_Conditional_3_Conditional_5_Template, 1, 3, "kpt-clock", 13)(6, KptDateRange_ng_template_7_Conditional_2_Conditional_3_Conditional_6_Template, 1, 3, "kpt-clock", 13);
|
|
6015
6222
|
i0.ɵɵelementStart(7, "div", 14)(8, "kpt-button", 15);
|
|
6016
|
-
i0.ɵɵlistener("click", function
|
|
6223
|
+
i0.ɵɵlistener("click", function KptDateRange_ng_template_7_Conditional_2_Conditional_3_Template_kpt_button_click_8_listener() { i0.ɵɵrestoreView(_r16); const ctx_r0 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r0.commit()); });
|
|
6017
6224
|
i0.ɵɵtext(9);
|
|
6018
6225
|
i0.ɵɵelementEnd()();
|
|
6019
6226
|
} if (rf & 2) {
|
|
@@ -6032,49 +6239,26 @@ function KptDateRange_ng_template_7_Conditional_2_Conditional_13_Template(rf, ct
|
|
|
6032
6239
|
i0.ɵɵtextInterpolate(ctx_r0.i18n.t("common.done"));
|
|
6033
6240
|
} }
|
|
6034
6241
|
function KptDateRange_ng_template_7_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
6035
|
-
|
|
6036
|
-
i0.ɵɵ
|
|
6037
|
-
i0.ɵɵlistener("click", function KptDateRange_ng_template_7_Conditional_2_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.prevMonth()); });
|
|
6038
|
-
i0.ɵɵelement(2, "kpt-icon", 19);
|
|
6039
|
-
i0.ɵɵelementEnd();
|
|
6040
|
-
i0.ɵɵelementStart(3, "span", 20);
|
|
6041
|
-
i0.ɵɵtext(4);
|
|
6042
|
-
i0.ɵɵelementEnd();
|
|
6043
|
-
i0.ɵɵelementStart(5, "button", 18);
|
|
6044
|
-
i0.ɵɵlistener("click", function KptDateRange_ng_template_7_Conditional_2_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r7); const ctx_r0 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r0.nextMonth()); });
|
|
6045
|
-
i0.ɵɵelement(6, "kpt-icon", 21);
|
|
6046
|
-
i0.ɵɵelementEnd()();
|
|
6047
|
-
i0.ɵɵelementStart(7, "div", 22);
|
|
6048
|
-
i0.ɵɵrepeaterCreate(8, KptDateRange_ng_template_7_Conditional_2_For_9_Template, 2, 1, "span", 23, i0.ɵɵrepeaterTrackByIdentity);
|
|
6049
|
-
i0.ɵɵelementEnd();
|
|
6050
|
-
i0.ɵɵelementStart(10, "div", 24);
|
|
6051
|
-
i0.ɵɵrepeaterCreate(11, KptDateRange_ng_template_7_Conditional_2_For_12_Template, 2, 0, null, null, i0.ɵɵrepeaterTrackByIndex);
|
|
6242
|
+
i0.ɵɵelementStart(0, "div", 17);
|
|
6243
|
+
i0.ɵɵrepeaterCreate(1, KptDateRange_ng_template_7_Conditional_2_For_2_Template, 14, 3, "div", 18, _forTrack0$5);
|
|
6052
6244
|
i0.ɵɵelementEnd();
|
|
6053
|
-
i0.ɵɵconditionalCreate(
|
|
6245
|
+
i0.ɵɵconditionalCreate(3, KptDateRange_ng_template_7_Conditional_2_Conditional_3_Template, 10, 8);
|
|
6054
6246
|
} if (rf & 2) {
|
|
6055
6247
|
const ctx_r0 = i0.ɵɵnextContext(2);
|
|
6056
6248
|
i0.ɵɵadvance();
|
|
6057
|
-
i0.ɵɵ
|
|
6058
|
-
i0.ɵɵadvance(3);
|
|
6059
|
-
i0.ɵɵtextInterpolate(ctx_r0.monthLabel());
|
|
6060
|
-
i0.ɵɵadvance();
|
|
6061
|
-
i0.ɵɵattribute("aria-label", ctx_r0.i18n.t("datepicker.nextMonth"));
|
|
6062
|
-
i0.ɵɵadvance(3);
|
|
6063
|
-
i0.ɵɵrepeater(ctx_r0.weekdays());
|
|
6064
|
-
i0.ɵɵadvance(3);
|
|
6065
|
-
i0.ɵɵrepeater(ctx_r0.weeks());
|
|
6249
|
+
i0.ɵɵrepeater(ctx_r0.panels());
|
|
6066
6250
|
i0.ɵɵadvance(2);
|
|
6067
|
-
i0.ɵɵconditional(ctx_r0.mode() === "datetime" ?
|
|
6251
|
+
i0.ɵɵconditional(ctx_r0.mode() === "datetime" ? 3 : -1);
|
|
6068
6252
|
} }
|
|
6069
6253
|
function KptDateRange_ng_template_7_Template(rf, ctx) { if (rf & 1) {
|
|
6070
6254
|
const _r3 = i0.ɵɵgetCurrentView();
|
|
6071
6255
|
i0.ɵɵelementStart(0, "div", 10);
|
|
6072
6256
|
i0.ɵɵlistener("keydown.escape", function KptDateRange_ng_template_7_Template_div_keydown_escape_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r0 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r0.close()); });
|
|
6073
|
-
i0.ɵɵconditionalCreate(1, KptDateRange_ng_template_7_Conditional_1_Template, 10, 8)(2, KptDateRange_ng_template_7_Conditional_2_Template,
|
|
6257
|
+
i0.ɵɵconditionalCreate(1, KptDateRange_ng_template_7_Conditional_1_Template, 10, 8)(2, KptDateRange_ng_template_7_Conditional_2_Template, 4, 1);
|
|
6074
6258
|
i0.ɵɵelementEnd();
|
|
6075
6259
|
} if (rf & 2) {
|
|
6076
6260
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
6077
|
-
i0.ɵɵclassProp("kpt-calendar--clock", ctx_r0.mode() === "time");
|
|
6261
|
+
i0.ɵɵclassProp("kpt-calendar--clock", ctx_r0.mode() === "time")("kpt-calendar--range", ctx_r0.mode() !== "time")("kpt-calendar--multi", ctx_r0.multi() && ctx_r0.mode() !== "time");
|
|
6078
6262
|
i0.ɵɵadvance();
|
|
6079
6263
|
i0.ɵɵconditional(ctx_r0.mode() === "time" ? 1 : 2);
|
|
6080
6264
|
} }
|
|
@@ -6083,11 +6267,14 @@ const toIso = (d) => `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDat
|
|
|
6083
6267
|
/**
|
|
6084
6268
|
* Wybór zakresu dat z kalendarzem (CDK Overlay), Signal Forms.
|
|
6085
6269
|
* `mode`: 'date' (domyślnie), 'datetime' (data+godzina, tarcza zegara), 'time' (sama godzina).
|
|
6270
|
+
* `visibleMonths` pokazuje kilka miesięcy obok siebie (typowo 2) — zakres podświetla się
|
|
6271
|
+
* ciągłym pasmem przez wszystkie panele.
|
|
6086
6272
|
* Wartość: `{ start, end }` — daty 'RRRR-MM-DD', datetime 'RRRR-MM-DDTHH:mm', godziny 'HH:mm'.
|
|
6087
6273
|
* Wymaga `import '@angular/cdk/overlay-prebuilt.css';`
|
|
6088
6274
|
*
|
|
6089
6275
|
* @example
|
|
6090
6276
|
* <kpt-date-range [formField]="f.period" />
|
|
6277
|
+
* <kpt-date-range [visibleMonths]="2" [(value)]="period" />
|
|
6091
6278
|
* <kpt-date-range mode="datetime" [hourFormat]="12" [(value)]="span" />
|
|
6092
6279
|
* <kpt-date-range mode="time" [(value)]="hours" />
|
|
6093
6280
|
*/
|
|
@@ -6109,6 +6296,8 @@ class KptDateRange {
|
|
|
6109
6296
|
...(ngDevMode ? [{ debugName: "displayFormat" }] : /* istanbul ignore next */ []));
|
|
6110
6297
|
this.mode = input('date', /* @ts-ignore */
|
|
6111
6298
|
...(ngDevMode ? [{ debugName: "mode" }] : /* istanbul ignore next */ []));
|
|
6299
|
+
/** Liczba miesięcy obok siebie (1–3; domyślnie 1). Ignorowana w trybie 'time'. */
|
|
6300
|
+
this.visibleMonths = input(1, { ...(ngDevMode ? { debugName: "visibleMonths" } : /* istanbul ignore next */ {}), transform: numberAttribute });
|
|
6112
6301
|
this.hourFormat = input(24, { ...(ngDevMode ? { debugName: "hourFormat" } : /* istanbul ignore next */ {}), transform: numberAttribute });
|
|
6113
6302
|
this.minuteStep = input(1, { ...(ngDevMode ? { debugName: "minuteStep" } : /* istanbul ignore next */ {}), transform: numberAttribute });
|
|
6114
6303
|
this.i18n = inject(KptI18n);
|
|
@@ -6139,11 +6328,13 @@ class KptDateRange {
|
|
|
6139
6328
|
{ originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top', offsetY: 4 },
|
|
6140
6329
|
{ originX: 'start', originY: 'top', overlayX: 'start', overlayY: 'bottom', offsetY: -4 },
|
|
6141
6330
|
];
|
|
6142
|
-
this.
|
|
6143
|
-
const
|
|
6144
|
-
return
|
|
6331
|
+
this.panelCount = computed(() => {
|
|
6332
|
+
const n = Math.trunc(this.visibleMonths());
|
|
6333
|
+
return Number.isFinite(n) ? Math.min(3, Math.max(1, n)) : 1;
|
|
6145
6334
|
}, /* @ts-ignore */
|
|
6146
|
-
...(ngDevMode ? [{ debugName: "
|
|
6335
|
+
...(ngDevMode ? [{ debugName: "panelCount" }] : /* istanbul ignore next */ []));
|
|
6336
|
+
this.multi = computed(() => this.panelCount() > 1, /* @ts-ignore */
|
|
6337
|
+
...(ngDevMode ? [{ debugName: "multi" }] : /* istanbul ignore next */ []));
|
|
6147
6338
|
this.display = computed(() => {
|
|
6148
6339
|
const { start, end } = this.value();
|
|
6149
6340
|
if (!start)
|
|
@@ -6163,34 +6354,25 @@ class KptDateRange {
|
|
|
6163
6354
|
return end ? `${this.fmtDate(start)} – ${this.fmtDate(end)}` : `${this.fmtDate(start)} – …`;
|
|
6164
6355
|
}, /* @ts-ignore */
|
|
6165
6356
|
...(ngDevMode ? [{ debugName: "display" }] : /* istanbul ignore next */ []));
|
|
6166
|
-
|
|
6357
|
+
/**
|
|
6358
|
+
* Panele miesięcy. Przy kilku panelach dni sąsiednich miesięcy są wygaszane do pustych slotów:
|
|
6359
|
+
* inaczej ta sama data byłaby klikalna dwa razy (jako „wyszarzona" w jednym panelu i właściwa
|
|
6360
|
+
* w drugim) i pasmo zakresu malowałoby się w obu miejscach.
|
|
6361
|
+
*/
|
|
6362
|
+
this.panels = computed(() => {
|
|
6167
6363
|
const { y, m } = this.view();
|
|
6168
|
-
|
|
6169
|
-
|
|
6170
|
-
|
|
6171
|
-
|
|
6172
|
-
|
|
6173
|
-
|
|
6174
|
-
|
|
6175
|
-
|
|
6176
|
-
|
|
6177
|
-
|
|
6178
|
-
const iso = toIso(date);
|
|
6179
|
-
row.push({
|
|
6180
|
-
day: date.getDate(),
|
|
6181
|
-
iso,
|
|
6182
|
-
inMonth: date.getMonth() === m,
|
|
6183
|
-
isStart: iso === start,
|
|
6184
|
-
isEnd: iso === end,
|
|
6185
|
-
inRange: !!start && !!end && iso > start && iso < end,
|
|
6186
|
-
disabled: false,
|
|
6187
|
-
});
|
|
6188
|
-
}
|
|
6189
|
-
weeks.push(row);
|
|
6190
|
-
}
|
|
6191
|
-
return weeks;
|
|
6364
|
+
return Array.from({ length: this.panelCount() }, (_, i) => {
|
|
6365
|
+
const first = new Date(y, m + i, 1);
|
|
6366
|
+
const py = first.getFullYear();
|
|
6367
|
+
const pm = first.getMonth();
|
|
6368
|
+
return {
|
|
6369
|
+
key: `${py}-${pad(pm + 1)}`,
|
|
6370
|
+
label: `${this.months()[pm]} ${py}`,
|
|
6371
|
+
weeks: this.buildWeeks(py, pm),
|
|
6372
|
+
};
|
|
6373
|
+
});
|
|
6192
6374
|
}, /* @ts-ignore */
|
|
6193
|
-
...(ngDevMode ? [{ debugName: "
|
|
6375
|
+
...(ngDevMode ? [{ debugName: "panels" }] : /* istanbul ignore next */ []));
|
|
6194
6376
|
}
|
|
6195
6377
|
datePart(v) {
|
|
6196
6378
|
return v ? v.slice(0, 10) : '';
|
|
@@ -6216,6 +6398,41 @@ class KptDateRange {
|
|
|
6216
6398
|
}
|
|
6217
6399
|
return hhmm;
|
|
6218
6400
|
}
|
|
6401
|
+
buildWeeks(y, m) {
|
|
6402
|
+
const datetime = this.mode() === 'datetime';
|
|
6403
|
+
const start = datetime ? this.startDate() : this.value().start;
|
|
6404
|
+
const end = datetime ? this.endDate() : this.value().end;
|
|
6405
|
+
const hasBand = !!start && !!end && start < end;
|
|
6406
|
+
const hideOutside = this.multi();
|
|
6407
|
+
const todayIso = toIso(this.today);
|
|
6408
|
+
const first = new Date(y, m, 1);
|
|
6409
|
+
const startOffset = (first.getDay() + 6) % 7;
|
|
6410
|
+
const gridStart = new Date(y, m, 1 - startOffset);
|
|
6411
|
+
const weeks = [];
|
|
6412
|
+
for (let w = 0; w < 6; w++) {
|
|
6413
|
+
const row = [];
|
|
6414
|
+
for (let d = 0; d < 7; d++) {
|
|
6415
|
+
const date = new Date(gridStart.getFullYear(), gridStart.getMonth(), gridStart.getDate() + w * 7 + d);
|
|
6416
|
+
const iso = toIso(date);
|
|
6417
|
+
const inMonth = date.getMonth() === m;
|
|
6418
|
+
row.push({
|
|
6419
|
+
day: date.getDate(),
|
|
6420
|
+
iso,
|
|
6421
|
+
inMonth,
|
|
6422
|
+
today: iso === todayIso,
|
|
6423
|
+
isStart: iso === start,
|
|
6424
|
+
isEnd: iso === end,
|
|
6425
|
+
inRange: hasBand && iso > start && iso < end,
|
|
6426
|
+
rangeStart: hasBand && iso === start,
|
|
6427
|
+
rangeEnd: hasBand && iso === end,
|
|
6428
|
+
blank: hideOutside && !inMonth,
|
|
6429
|
+
disabled: false,
|
|
6430
|
+
});
|
|
6431
|
+
}
|
|
6432
|
+
weeks.push(row);
|
|
6433
|
+
}
|
|
6434
|
+
return weeks;
|
|
6435
|
+
}
|
|
6219
6436
|
toggleOpen() {
|
|
6220
6437
|
if (this.disabled())
|
|
6221
6438
|
return;
|
|
@@ -6245,6 +6462,8 @@ class KptDateRange {
|
|
|
6245
6462
|
this.touch.emit();
|
|
6246
6463
|
}
|
|
6247
6464
|
selectDay(cell) {
|
|
6465
|
+
if (cell.blank || cell.disabled)
|
|
6466
|
+
return;
|
|
6248
6467
|
if (this.mode() === 'datetime') {
|
|
6249
6468
|
const start = this.startDate();
|
|
6250
6469
|
const end = this.endDate();
|
|
@@ -6306,7 +6525,7 @@ class KptDateRange {
|
|
|
6306
6525
|
this.endDate.set('');
|
|
6307
6526
|
}
|
|
6308
6527
|
static { this.ɵfac = function KptDateRange_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || KptDateRange)(); }; }
|
|
6309
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: KptDateRange, selectors: [["kpt-date-range"]], hostAttrs: [1, "kpt-date-range-host"], inputs: { value: [1, "value"], disabled: [1, "disabled"], invalid: [1, "invalid"], touched: [1, "touched"], placeholder: [1, "placeholder"], displayFormat: [1, "displayFormat"], mode: [1, "mode"], hourFormat: [1, "hourFormat"], minuteStep: [1, "minuteStep"] }, outputs: { value: "valueChange", touch: "touch" }, decls: 8, vars: 12, consts: [["trigger", "cdkOverlayOrigin"], ["cdkOverlayOrigin", "", "role", "button", "tabindex", "0", 1, "kpt-date-range", 3, "click", "keydown.enter", "blur"], [1, "kpt-date-range__value"], [1, "kpt-date-range__placeholder"], [1, "kpt-date-range__spacer"], ["type", "button", 1, "kpt-date-range__clear"], ["name", "calendar", 1, "kpt-date-range__icon"], ["cdkConnectedOverlay", "", "cdkConnectedOverlayBackdropClass", "cdk-overlay-transparent-backdrop", 3, "backdropClick", "detach", "cdkConnectedOverlayOrigin", "cdkConnectedOverlayOpen", "cdkConnectedOverlayPositions", "cdkConnectedOverlayHasBackdrop"], ["type", "button", 1, "kpt-date-range__clear", 3, "click"], ["name", "x"], [1, "kpt-calendar", 3, "keydown.escape"], [1, "kpt-range-tabs"], ["type", "button", 3, "click"], [3, "value", "hourFormat", "minuteStep"], [1, "kpt-calendar__footer"], ["size", "sm", 3, "click"], [3, "valueChange", "value", "hourFormat", "minuteStep"], [1, "kpt-calendar__header"], ["type", "button", 1, "kpt-calendar__nav",
|
|
6528
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: KptDateRange, selectors: [["kpt-date-range"]], hostAttrs: [1, "kpt-date-range-host"], inputs: { value: [1, "value"], disabled: [1, "disabled"], invalid: [1, "invalid"], touched: [1, "touched"], placeholder: [1, "placeholder"], displayFormat: [1, "displayFormat"], mode: [1, "mode"], visibleMonths: [1, "visibleMonths"], hourFormat: [1, "hourFormat"], minuteStep: [1, "minuteStep"] }, outputs: { value: "valueChange", touch: "touch" }, decls: 8, vars: 12, consts: [["trigger", "cdkOverlayOrigin"], ["cdkOverlayOrigin", "", "role", "button", "tabindex", "0", 1, "kpt-date-range", 3, "click", "keydown.enter", "blur"], [1, "kpt-date-range__value"], [1, "kpt-date-range__placeholder"], [1, "kpt-date-range__spacer"], ["type", "button", 1, "kpt-date-range__clear"], ["name", "calendar", 1, "kpt-date-range__icon"], ["cdkConnectedOverlay", "", "cdkConnectedOverlayBackdropClass", "cdk-overlay-transparent-backdrop", 3, "backdropClick", "detach", "cdkConnectedOverlayOrigin", "cdkConnectedOverlayOpen", "cdkConnectedOverlayPositions", "cdkConnectedOverlayHasBackdrop"], ["type", "button", 1, "kpt-date-range__clear", 3, "click"], ["name", "x"], [1, "kpt-calendar", 3, "keydown.escape"], [1, "kpt-range-tabs"], ["type", "button", 3, "click"], [3, "value", "hourFormat", "minuteStep"], [1, "kpt-calendar__footer"], ["size", "sm", 3, "click"], [3, "valueChange", "value", "hourFormat", "minuteStep"], [1, "kpt-calendar__panels"], [1, "kpt-calendar__panel"], [1, "kpt-calendar__header"], ["type", "button", 1, "kpt-calendar__nav"], [1, "kpt-calendar__nav-slot"], [1, "kpt-calendar__title"], [1, "kpt-calendar__weekdays"], [1, "kpt-calendar__weekday"], [1, "kpt-calendar__grid"], ["type", "button", 1, "kpt-calendar__nav", 3, "click"], ["name", "chevron-left"], ["name", "chevron-right"], [1, "kpt-calendar__day", "kpt-calendar__day--blank"], ["type", "button", 1, "kpt-calendar__day", 3, "kpt-calendar__day--muted", "kpt-calendar__day--today", "kpt-calendar__day--range", "kpt-calendar__day--range-start", "kpt-calendar__day--range-end", "kpt-calendar__day--selected"], ["type", "button", 1, "kpt-calendar__day", 3, "click"]], template: function KptDateRange_Template(rf, ctx) { if (rf & 1) {
|
|
6310
6529
|
i0.ɵɵelementStart(0, "div", 1, 0);
|
|
6311
6530
|
i0.ɵɵlistener("click", function KptDateRange_Template_div_click_0_listener() { return ctx.toggleOpen(); })("keydown.enter", function KptDateRange_Template_div_keydown_enter_0_listener() { return ctx.toggleOpen(); })("blur", function KptDateRange_Template_div_blur_0_listener() { return ctx.touch.emit(); });
|
|
6312
6531
|
i0.ɵɵconditionalCreate(2, KptDateRange_Conditional_2_Template, 2, 1, "span", 2)(3, KptDateRange_Conditional_3_Template, 2, 1, "span", 3);
|
|
@@ -6314,24 +6533,24 @@ class KptDateRange {
|
|
|
6314
6533
|
i0.ɵɵconditionalCreate(5, KptDateRange_Conditional_5_Template, 2, 1, "button", 5);
|
|
6315
6534
|
i0.ɵɵelement(6, "kpt-icon", 6);
|
|
6316
6535
|
i0.ɵɵelementEnd();
|
|
6317
|
-
i0.ɵɵtemplate(7, KptDateRange_ng_template_7_Template, 3,
|
|
6536
|
+
i0.ɵɵtemplate(7, KptDateRange_ng_template_7_Template, 3, 7, "ng-template", 7);
|
|
6318
6537
|
i0.ɵɵlistener("backdropClick", function KptDateRange_Template_ng_template_backdropClick_7_listener() { return ctx.close(); })("detach", function KptDateRange_Template_ng_template_detach_7_listener() { return ctx.close(); });
|
|
6319
6538
|
} if (rf & 2) {
|
|
6320
|
-
const
|
|
6539
|
+
const trigger_r19 = i0.ɵɵreference(1);
|
|
6321
6540
|
i0.ɵɵclassProp("kpt-date-range--open", ctx.open())("kpt-date-range--disabled", ctx.disabled())("kpt-date-range--invalid", ctx.showInvalid());
|
|
6322
6541
|
i0.ɵɵadvance(2);
|
|
6323
6542
|
i0.ɵɵconditional(ctx.display() ? 2 : 3);
|
|
6324
6543
|
i0.ɵɵadvance(3);
|
|
6325
6544
|
i0.ɵɵconditional(ctx.display() ? 5 : -1);
|
|
6326
6545
|
i0.ɵɵadvance(2);
|
|
6327
|
-
i0.ɵɵproperty("cdkConnectedOverlayOrigin",
|
|
6328
|
-
} }, dependencies: [CdkOverlayOrigin, CdkConnectedOverlay, KptIcon, KptButton, KptClock], styles: ["@layer kpt.components{.kpt-date-range-host{display:block}.kpt-date-range{display:flex;align-items:center;gap:var(--%NS%kpt-space-2, .5rem);height:2.5rem;padding-inline:var(--%NS%kpt-space-3, .75rem);box-sizing:border-box;border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-form-field-radius, .5rem);background:var(--%NS%kpt-form-field-bg);color:var(--%NS%kpt-form-field-text);font-size:var(--%NS%kpt-font-size-sm, .875rem);cursor:pointer}.kpt-date-range:hover:not(.kpt-date-range--disabled){border-color:var(--%NS%kpt-form-field-border-hover)}.kpt-date-range:focus-visible,.kpt-date-range.kpt-date-range--open{outline:none;border-color:var(--%NS%kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--%NS%kpt-form-field-border-focus) 30%,transparent)}.kpt-date-range.kpt-date-range--invalid{border-color:var(--%NS%kpt-form-field-border-error)}.kpt-date-range.kpt-date-range--disabled{cursor:not-allowed;opacity:.6;background:var(--%NS%kpt-color-surface-variant)}.kpt-date-range__placeholder{color:var(--%NS%kpt-form-field-placeholder)}.kpt-date-range__spacer{flex:1}.kpt-date-range__icon{color:var(--%NS%kpt-color-on-surface-muted)}.kpt-date-range__clear{display:inline-flex;border:0;background:none;cursor:pointer;padding:0;color:var(--%NS%kpt-color-on-surface-muted)}.kpt-date-range__clear:hover{color:var(--%NS%kpt-color-on-surface)}.kpt-calendar{width:17rem;padding:var(--%NS%kpt-space-3, .75rem);background:var(--%NS%kpt-color-surface-raised);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-color-border);border-radius:var(--%NS%kpt-radius-md, .5rem);box-shadow:var(--%NS%kpt-elevation-3);color:var(--%NS%kpt-color-on-surface);font-size:var(--%NS%kpt-font-size-sm, .875rem)}.kpt-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--%NS%kpt-space-2, .5rem)}.kpt-calendar__title{font-weight:var(--%NS%kpt-font-weight-semibold, 600);text-transform:capitalize}.kpt-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:var(--%NS%kpt-radius-md, .5rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer}.kpt-calendar__nav:hover{background:var(--%NS%kpt-color-muted)}.kpt-calendar__weekdays,.kpt-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.kpt-calendar__weekday{text-align:center;font-size:var(--%NS%kpt-font-size-xs, .75rem);color:var(--%NS%kpt-color-on-surface-muted);padding:.25rem 0}.kpt-calendar__day{aspect-ratio:1;border:0;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer;font:inherit}.kpt-calendar__day:hover:not(:disabled){background:var(--%NS%kpt-color-muted)}.kpt-calendar__day--muted{color:var(--%NS%kpt-color-on-surface-muted);opacity:.5}.kpt-calendar__day--
|
|
6546
|
+
i0.ɵɵproperty("cdkConnectedOverlayOrigin", trigger_r19)("cdkConnectedOverlayOpen", ctx.open())("cdkConnectedOverlayPositions", ctx.positions)("cdkConnectedOverlayHasBackdrop", true);
|
|
6547
|
+
} }, dependencies: [CdkOverlayOrigin, CdkConnectedOverlay, KptIcon, KptButton, KptClock], styles: ["@charset \"UTF-8\";@layer kpt.components{.kpt-date-range-host{display:block}.kpt-date-range{display:flex;align-items:center;gap:var(--%NS%kpt-space-2, .5rem);height:2.5rem;padding-inline:var(--%NS%kpt-space-3, .75rem);box-sizing:border-box;border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-form-field-radius, .5rem);background:var(--%NS%kpt-form-field-bg);color:var(--%NS%kpt-form-field-text);font-size:var(--%NS%kpt-font-size-sm, .875rem);cursor:pointer}.kpt-date-range:hover:not(.kpt-date-range--disabled){border-color:var(--%NS%kpt-form-field-border-hover)}.kpt-date-range:focus-visible,.kpt-date-range.kpt-date-range--open{outline:none;border-color:var(--%NS%kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--%NS%kpt-form-field-border-focus) 30%,transparent)}.kpt-date-range.kpt-date-range--invalid{border-color:var(--%NS%kpt-form-field-border-error)}.kpt-date-range.kpt-date-range--disabled{cursor:not-allowed;opacity:.6;background:var(--%NS%kpt-color-surface-variant)}.kpt-date-range__placeholder{color:var(--%NS%kpt-form-field-placeholder)}.kpt-date-range__spacer{flex:1}.kpt-date-range__icon{color:var(--%NS%kpt-color-on-surface-muted)}.kpt-date-range__clear{display:inline-flex;border:0;background:none;cursor:pointer;padding:0;color:var(--%NS%kpt-color-on-surface-muted)}.kpt-date-range__clear:hover{color:var(--%NS%kpt-color-on-surface)}.kpt-calendar{width:17rem;padding:var(--%NS%kpt-space-3, .75rem);background:var(--%NS%kpt-color-surface-raised);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-color-border);border-radius:var(--%NS%kpt-radius-md, .5rem);box-shadow:var(--%NS%kpt-elevation-3);color:var(--%NS%kpt-color-on-surface);font-size:var(--%NS%kpt-font-size-sm, .875rem)}.kpt-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--%NS%kpt-space-2, .5rem)}.kpt-calendar__title{font-weight:var(--%NS%kpt-font-weight-semibold, 600);text-transform:capitalize}.kpt-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:var(--%NS%kpt-radius-md, .5rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer}.kpt-calendar__nav:hover{background:var(--%NS%kpt-color-muted)}.kpt-calendar__nav-slot{width:2rem;height:2rem}.kpt-calendar__panels{display:flex;flex-wrap:wrap;gap:var(--%NS%kpt-space-4, 1rem)}.kpt-calendar__panel{flex:none;width:15.5rem}.kpt-calendar__weekdays,.kpt-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.kpt-calendar__weekday{text-align:center;font-size:var(--%NS%kpt-font-size-xs, .75rem);color:var(--%NS%kpt-color-on-surface-muted);padding:.25rem 0}.kpt-calendar__day{position:relative;isolation:isolate;aspect-ratio:1;border:0;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:none;color:var(--%NS%kpt-color-on-surface);cursor:pointer;font:inherit}.kpt-calendar__day:hover:not(:disabled){background:var(--%NS%kpt-color-muted)}.kpt-calendar__day--muted{color:var(--%NS%kpt-color-on-surface-muted);opacity:.5}.kpt-calendar__day--blank{cursor:default;pointer-events:none}.kpt-calendar__day--today{box-shadow:inset 0 0 0 1px var(--%NS%kpt-color-border-strong)}.kpt-calendar__day--selected{background:var(--%NS%kpt-color-primary)!important;color:var(--%NS%kpt-color-on-primary)}.kpt-calendar__footer{display:flex;justify-content:flex-end;margin-top:var(--%NS%kpt-space-3, .75rem)}.kpt-calendar--clock{width:16rem}.kpt-calendar--multi{width:auto;max-width:calc(100vw - 2rem)}.kpt-calendar--range .kpt-calendar__day--%NS%range:before,.kpt-calendar--range .kpt-calendar__day--%NS%range-start:before,.kpt-calendar--range .kpt-calendar__day--%NS%range-end:before{content:\"\";position:absolute;inset-block:0;inset-inline:-1px;z-index:-2;background:color-mix(in oklch,var(--%NS%kpt-color-primary) 14%,transparent)}.kpt-calendar--range .kpt-calendar__day--%NS%range-start:before{inset-inline-start:50%}.kpt-calendar--range .kpt-calendar__day--%NS%range-end:before{inset-inline-end:50%}.kpt-calendar--range .kpt-calendar__day--selected{background:none!important;color:var(--%NS%kpt-color-on-primary)}.kpt-calendar--range .kpt-calendar__day--%NS%selected:after{content:\"\";position:absolute;inset:0;z-index:-1;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:var(--%NS%kpt-color-primary)}.kpt-calendar--range .kpt-calendar__grid>.kpt-calendar__day:nth-child(7n+1):before{border-start-start-radius:var(--%NS%kpt-radius-sm, .25rem);border-end-start-radius:var(--%NS%kpt-radius-sm, .25rem)}.kpt-calendar--range .kpt-calendar__grid>.kpt-calendar__day:nth-child(7n):before{border-start-end-radius:var(--%NS%kpt-radius-sm, .25rem);border-end-end-radius:var(--%NS%kpt-radius-sm, .25rem)}.kpt-range-tabs{display:flex;gap:var(--%NS%kpt-space-1, .25rem);margin-block:var(--%NS%kpt-space-3, .75rem) var(--%NS%kpt-space-2, .5rem);padding:2px;background:var(--%NS%kpt-color-surface-variant);border-radius:var(--%NS%kpt-radius-md, .5rem)}.kpt-range-tabs button{flex:1;border:0;background:none;padding:var(--%NS%kpt-space-1, .25rem) var(--%NS%kpt-space-2, .5rem);border-radius:var(--%NS%kpt-radius-sm, .25rem);color:var(--%NS%kpt-color-on-surface-muted);font:inherit;font-size:var(--%NS%kpt-font-size-sm, .875rem);cursor:pointer}.kpt-range-tabs button.is-active{background:var(--%NS%kpt-color-surface-raised);color:var(--%NS%kpt-color-on-surface);font-weight:var(--%NS%kpt-font-weight-medium, 500);box-shadow:var(--%NS%kpt-elevation-1)}}\n"], encapsulation: 2 }); }
|
|
6329
6548
|
}
|
|
6330
6549
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(KptDateRange, [{
|
|
6331
6550
|
type: Component,
|
|
6332
|
-
args: [{ selector: 'kpt-date-range', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [CdkOverlayOrigin, CdkConnectedOverlay, KptIcon, KptButton, KptClock], host: { class: 'kpt-date-range-host' }, template: "<div\n class=\"kpt-date-range\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n role=\"button\"\n tabindex=\"0\"\n [class.kpt-date-range--open]=\"open()\"\n [class.kpt-date-range--disabled]=\"disabled()\"\n [class.kpt-date-range--invalid]=\"showInvalid()\"\n (click)=\"toggleOpen()\"\n (keydown.enter)=\"toggleOpen()\"\n (blur)=\"touch.emit()\"\n>\n @if (display()) {\n <span class=\"kpt-date-range__value\">{{ display() }}</span>\n } @else {\n <span class=\"kpt-date-range__placeholder\">{{ effectivePlaceholder() }}</span>\n }\n <span class=\"kpt-date-range__spacer\"></span>\n @if (display()) {\n <button type=\"button\" class=\"kpt-date-range__clear\" (click)=\"clear($event)\" [attr.aria-label]=\"i18n.t('common.clear')\"><kpt-icon name=\"x\" /></button>\n }\n <kpt-icon class=\"kpt-date-range__icon\" name=\"calendar\" />\n</div>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"open()\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n (backdropClick)=\"close()\"\n (detach)=\"close()\"\n>\n <div class=\"kpt-calendar\" [class.kpt-calendar--clock]=\"mode() === 'time'\" (keydown.escape)=\"close()\">\n @if (mode() === 'time') {\n <div class=\"kpt-range-tabs\">\n <button type=\"button\" [class.is-active]=\"timeEnd() === 'start'\" (click)=\"timeEnd.set('start')\">{{ i18n.t('dateRange.from') }}</button>\n <button type=\"button\" [class.is-active]=\"timeEnd() === 'end'\" (click)=\"timeEnd.set('end')\">{{ i18n.t('dateRange.to') }}</button>\n </div>\n @if (timeEnd() === 'start') {\n <kpt-clock [value]=\"startTime()\" (valueChange)=\"startTime.set($event)\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n } @else {\n <kpt-clock [value]=\"endTime()\" (valueChange)=\"endTime.set($event)\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n }\n <div class=\"kpt-calendar__footer\">\n <kpt-button size=\"sm\" (click)=\"commit()\">{{ i18n.t('common.done') }}</kpt-button>\n </div>\n } @else {\n <div class=\"kpt-calendar__header\">\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"prevMonth()\" [attr.aria-label]=\"i18n.t('datepicker.prevMonth')\"><kpt-icon name=\"chevron-left\" /></button>\n <span class=\"kpt-calendar__title\">{{ monthLabel() }}</span>\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"nextMonth()\" [attr.aria-label]=\"i18n.t('datepicker.nextMonth')\"><kpt-icon name=\"chevron-right\" /></button>\n </div>\n <div class=\"kpt-calendar__weekdays\">\n @for (wd of weekdays(); track wd) {\n <span class=\"kpt-calendar__weekday\">{{ wd }}</span>\n }\n </div>\n <div class=\"kpt-calendar__grid\">\n @for (week of weeks(); track $index) {\n @for (cell of week; track cell.iso) {\n <button\n type=\"button\"\n class=\"kpt-calendar__day\"\n [class.kpt-calendar__day--muted]=\"!cell.inMonth\"\n [class.kpt-calendar__day--range]=\"cell.inRange\"\n [class.kpt-calendar__day--selected]=\"cell.isStart || cell.isEnd\"\n (click)=\"selectDay(cell)\"\n >{{ cell.day }}</button>\n }\n }\n </div>\n\n @if (mode() === 'datetime') {\n <div class=\"kpt-range-tabs\">\n <button type=\"button\" [class.is-active]=\"timeEnd() === 'start'\" (click)=\"timeEnd.set('start')\">{{ i18n.t('dateRange.fromTime') }}</button>\n <button type=\"button\" [class.is-active]=\"timeEnd() === 'end'\" (click)=\"timeEnd.set('end')\">{{ i18n.t('dateRange.toTime') }}</button>\n </div>\n @if (timeEnd() === 'start') {\n <kpt-clock [value]=\"startTime()\" (valueChange)=\"startTime.set($event)\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n } @else {\n <kpt-clock [value]=\"endTime()\" (valueChange)=\"endTime.set($event)\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n }\n <div class=\"kpt-calendar__footer\">\n <kpt-button size=\"sm\" (click)=\"commit()\">{{ i18n.t('common.done') }}</kpt-button>\n </div>\n }\n }\n </div>\n</ng-template>\n", styles: ["@layer kpt.components{.kpt-date-range-host{display:block}.kpt-date-range{display:flex;align-items:center;gap:var(--kpt-space-2, .5rem);height:2.5rem;padding-inline:var(--kpt-space-3, .75rem);box-sizing:border-box;border:var(--kpt-border-width-thin, 1px) solid var(--kpt-form-field-border);border-radius:var(--kpt-form-field-radius, .5rem);background:var(--kpt-form-field-bg);color:var(--kpt-form-field-text);font-size:var(--kpt-font-size-sm, .875rem);cursor:pointer}.kpt-date-range:hover:not(.kpt-date-range--disabled){border-color:var(--kpt-form-field-border-hover)}.kpt-date-range:focus-visible,.kpt-date-range.kpt-date-range--open{outline:none;border-color:var(--kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--kpt-form-field-border-focus) 30%,transparent)}.kpt-date-range.kpt-date-range--invalid{border-color:var(--kpt-form-field-border-error)}.kpt-date-range.kpt-date-range--disabled{cursor:not-allowed;opacity:.6;background:var(--kpt-color-surface-variant)}.kpt-date-range__placeholder{color:var(--kpt-form-field-placeholder)}.kpt-date-range__spacer{flex:1}.kpt-date-range__icon{color:var(--kpt-color-on-surface-muted)}.kpt-date-range__clear{display:inline-flex;border:0;background:none;cursor:pointer;padding:0;color:var(--kpt-color-on-surface-muted)}.kpt-date-range__clear:hover{color:var(--kpt-color-on-surface)}.kpt-calendar{width:17rem;padding:var(--kpt-space-3, .75rem);background:var(--kpt-color-surface-raised);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-color-border);border-radius:var(--kpt-radius-md, .5rem);box-shadow:var(--kpt-elevation-3);color:var(--kpt-color-on-surface);font-size:var(--kpt-font-size-sm, .875rem)}.kpt-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--kpt-space-2, .5rem)}.kpt-calendar__title{font-weight:var(--kpt-font-weight-semibold, 600);text-transform:capitalize}.kpt-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:var(--kpt-radius-md, .5rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer}.kpt-calendar__nav:hover{background:var(--kpt-color-muted)}.kpt-calendar__weekdays,.kpt-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.kpt-calendar__weekday{text-align:center;font-size:var(--kpt-font-size-xs, .75rem);color:var(--kpt-color-on-surface-muted);padding:.25rem 0}.kpt-calendar__day{aspect-ratio:1;border:0;border-radius:var(--kpt-radius-sm, .25rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer;font:inherit}.kpt-calendar__day:hover:not(:disabled){background:var(--kpt-color-muted)}.kpt-calendar__day--muted{color:var(--kpt-color-on-surface-muted);opacity:.5}.kpt-calendar__day--range{background:color-mix(in oklch,var(--kpt-color-primary) 14%,transparent);border-radius:0}.kpt-calendar__day--selected{background:var(--kpt-color-primary)!important;color:var(--kpt-color-on-primary)}.kpt-calendar__footer{display:flex;justify-content:flex-end;margin-top:var(--kpt-space-3, .75rem)}.kpt-calendar--clock{width:16rem}.kpt-range-tabs{display:flex;gap:var(--kpt-space-1, .25rem);margin-block:var(--kpt-space-3, .75rem) var(--kpt-space-2, .5rem);padding:2px;background:var(--kpt-color-surface-variant);border-radius:var(--kpt-radius-md, .5rem)}.kpt-range-tabs button{flex:1;border:0;background:none;padding:var(--kpt-space-1, .25rem) var(--kpt-space-2, .5rem);border-radius:var(--kpt-radius-sm, .25rem);color:var(--kpt-color-on-surface-muted);font:inherit;font-size:var(--kpt-font-size-sm, .875rem);cursor:pointer}.kpt-range-tabs button.is-active{background:var(--kpt-color-surface-raised);color:var(--kpt-color-on-surface);font-weight:var(--kpt-font-weight-medium, 500);box-shadow:var(--kpt-elevation-1)}}\n"] }]
|
|
6333
|
-
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], touched: [{ type: i0.Input, args: [{ isSignal: true, alias: "touched", required: false }] }], touch: [{ type: i0.Output, args: ["touch"] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], displayFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayFormat", required: false }] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], hourFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "hourFormat", required: false }] }], minuteStep: [{ type: i0.Input, args: [{ isSignal: true, alias: "minuteStep", required: false }] }] }); })();
|
|
6334
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KptDateRange, { className: "KptDateRange", filePath: "lib/date-range/date-range.component.ts", lineNumber:
|
|
6551
|
+
args: [{ selector: 'kpt-date-range', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [CdkOverlayOrigin, CdkConnectedOverlay, KptIcon, KptButton, KptClock], host: { class: 'kpt-date-range-host' }, template: "<div\n class=\"kpt-date-range\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n role=\"button\"\n tabindex=\"0\"\n [class.kpt-date-range--open]=\"open()\"\n [class.kpt-date-range--disabled]=\"disabled()\"\n [class.kpt-date-range--invalid]=\"showInvalid()\"\n (click)=\"toggleOpen()\"\n (keydown.enter)=\"toggleOpen()\"\n (blur)=\"touch.emit()\"\n>\n @if (display()) {\n <span class=\"kpt-date-range__value\">{{ display() }}</span>\n } @else {\n <span class=\"kpt-date-range__placeholder\">{{ effectivePlaceholder() }}</span>\n }\n <span class=\"kpt-date-range__spacer\"></span>\n @if (display()) {\n <button type=\"button\" class=\"kpt-date-range__clear\" (click)=\"clear($event)\" [attr.aria-label]=\"i18n.t('common.clear')\"><kpt-icon name=\"x\" /></button>\n }\n <kpt-icon class=\"kpt-date-range__icon\" name=\"calendar\" />\n</div>\n\n<ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"open()\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n (backdropClick)=\"close()\"\n (detach)=\"close()\"\n>\n <div\n class=\"kpt-calendar\"\n [class.kpt-calendar--clock]=\"mode() === 'time'\"\n [class.kpt-calendar--range]=\"mode() !== 'time'\"\n [class.kpt-calendar--multi]=\"multi() && mode() !== 'time'\"\n (keydown.escape)=\"close()\"\n >\n @if (mode() === 'time') {\n <div class=\"kpt-range-tabs\">\n <button type=\"button\" [class.is-active]=\"timeEnd() === 'start'\" (click)=\"timeEnd.set('start')\">{{ i18n.t('dateRange.from') }}</button>\n <button type=\"button\" [class.is-active]=\"timeEnd() === 'end'\" (click)=\"timeEnd.set('end')\">{{ i18n.t('dateRange.to') }}</button>\n </div>\n @if (timeEnd() === 'start') {\n <kpt-clock [value]=\"startTime()\" (valueChange)=\"startTime.set($event)\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n } @else {\n <kpt-clock [value]=\"endTime()\" (valueChange)=\"endTime.set($event)\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n }\n <div class=\"kpt-calendar__footer\">\n <kpt-button size=\"sm\" (click)=\"commit()\">{{ i18n.t('common.done') }}</kpt-button>\n </div>\n } @else {\n <div class=\"kpt-calendar__panels\">\n @for (panel of panels(); track panel.key; let first = $first, last = $last) {\n <div class=\"kpt-calendar__panel\">\n <!-- Strza\u0142ki tylko na skrajnych panelach; puste sloty trzymaj\u0105 tytu\u0142 na \u015Brodku. -->\n <div class=\"kpt-calendar__header\">\n @if (first) {\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"prevMonth()\" [attr.aria-label]=\"i18n.t('datepicker.prevMonth')\"><kpt-icon name=\"chevron-left\" /></button>\n } @else {\n <span class=\"kpt-calendar__nav-slot\"></span>\n }\n <span class=\"kpt-calendar__title\">{{ panel.label }}</span>\n @if (last) {\n <button type=\"button\" class=\"kpt-calendar__nav\" (click)=\"nextMonth()\" [attr.aria-label]=\"i18n.t('datepicker.nextMonth')\"><kpt-icon name=\"chevron-right\" /></button>\n } @else {\n <span class=\"kpt-calendar__nav-slot\"></span>\n }\n </div>\n <div class=\"kpt-calendar__weekdays\">\n @for (wd of weekdays(); track wd) {\n <span class=\"kpt-calendar__weekday\">{{ wd }}</span>\n }\n </div>\n <div class=\"kpt-calendar__grid\">\n @for (week of panel.weeks; track $index) {\n @for (cell of week; track cell.iso) {\n @if (cell.blank) {\n <span class=\"kpt-calendar__day kpt-calendar__day--blank\"></span>\n } @else {\n <button\n type=\"button\"\n class=\"kpt-calendar__day\"\n [class.kpt-calendar__day--muted]=\"!cell.inMonth\"\n [class.kpt-calendar__day--today]=\"cell.today\"\n [class.kpt-calendar__day--range]=\"cell.inRange\"\n [class.kpt-calendar__day--range-start]=\"cell.rangeStart\"\n [class.kpt-calendar__day--range-end]=\"cell.rangeEnd\"\n [class.kpt-calendar__day--selected]=\"cell.isStart || cell.isEnd\"\n (click)=\"selectDay(cell)\"\n >{{ cell.day }}</button>\n }\n }\n }\n </div>\n </div>\n }\n </div>\n\n @if (mode() === 'datetime') {\n <div class=\"kpt-range-tabs\">\n <button type=\"button\" [class.is-active]=\"timeEnd() === 'start'\" (click)=\"timeEnd.set('start')\">{{ i18n.t('dateRange.fromTime') }}</button>\n <button type=\"button\" [class.is-active]=\"timeEnd() === 'end'\" (click)=\"timeEnd.set('end')\">{{ i18n.t('dateRange.toTime') }}</button>\n </div>\n @if (timeEnd() === 'start') {\n <kpt-clock [value]=\"startTime()\" (valueChange)=\"startTime.set($event)\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n } @else {\n <kpt-clock [value]=\"endTime()\" (valueChange)=\"endTime.set($event)\" [hourFormat]=\"hourFormat()\" [minuteStep]=\"minuteStep()\" />\n }\n <div class=\"kpt-calendar__footer\">\n <kpt-button size=\"sm\" (click)=\"commit()\">{{ i18n.t('common.done') }}</kpt-button>\n </div>\n }\n }\n </div>\n</ng-template>\n", styles: ["@charset \"UTF-8\";@layer kpt.components{.kpt-date-range-host{display:block}.kpt-date-range{display:flex;align-items:center;gap:var(--kpt-space-2, .5rem);height:2.5rem;padding-inline:var(--kpt-space-3, .75rem);box-sizing:border-box;border:var(--kpt-border-width-thin, 1px) solid var(--kpt-form-field-border);border-radius:var(--kpt-form-field-radius, .5rem);background:var(--kpt-form-field-bg);color:var(--kpt-form-field-text);font-size:var(--kpt-font-size-sm, .875rem);cursor:pointer}.kpt-date-range:hover:not(.kpt-date-range--disabled){border-color:var(--kpt-form-field-border-hover)}.kpt-date-range:focus-visible,.kpt-date-range.kpt-date-range--open{outline:none;border-color:var(--kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--kpt-form-field-border-focus) 30%,transparent)}.kpt-date-range.kpt-date-range--invalid{border-color:var(--kpt-form-field-border-error)}.kpt-date-range.kpt-date-range--disabled{cursor:not-allowed;opacity:.6;background:var(--kpt-color-surface-variant)}.kpt-date-range__placeholder{color:var(--kpt-form-field-placeholder)}.kpt-date-range__spacer{flex:1}.kpt-date-range__icon{color:var(--kpt-color-on-surface-muted)}.kpt-date-range__clear{display:inline-flex;border:0;background:none;cursor:pointer;padding:0;color:var(--kpt-color-on-surface-muted)}.kpt-date-range__clear:hover{color:var(--kpt-color-on-surface)}.kpt-calendar{width:17rem;padding:var(--kpt-space-3, .75rem);background:var(--kpt-color-surface-raised);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-color-border);border-radius:var(--kpt-radius-md, .5rem);box-shadow:var(--kpt-elevation-3);color:var(--kpt-color-on-surface);font-size:var(--kpt-font-size-sm, .875rem)}.kpt-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--kpt-space-2, .5rem)}.kpt-calendar__title{font-weight:var(--kpt-font-weight-semibold, 600);text-transform:capitalize}.kpt-calendar__nav{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:0;border-radius:var(--kpt-radius-md, .5rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer}.kpt-calendar__nav:hover{background:var(--kpt-color-muted)}.kpt-calendar__nav-slot{width:2rem;height:2rem}.kpt-calendar__panels{display:flex;flex-wrap:wrap;gap:var(--kpt-space-4, 1rem)}.kpt-calendar__panel{flex:none;width:15.5rem}.kpt-calendar__weekdays,.kpt-calendar__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.kpt-calendar__weekday{text-align:center;font-size:var(--kpt-font-size-xs, .75rem);color:var(--kpt-color-on-surface-muted);padding:.25rem 0}.kpt-calendar__day{position:relative;isolation:isolate;aspect-ratio:1;border:0;border-radius:var(--kpt-radius-sm, .25rem);background:none;color:var(--kpt-color-on-surface);cursor:pointer;font:inherit}.kpt-calendar__day:hover:not(:disabled){background:var(--kpt-color-muted)}.kpt-calendar__day--muted{color:var(--kpt-color-on-surface-muted);opacity:.5}.kpt-calendar__day--blank{cursor:default;pointer-events:none}.kpt-calendar__day--today{box-shadow:inset 0 0 0 1px var(--kpt-color-border-strong)}.kpt-calendar__day--selected{background:var(--kpt-color-primary)!important;color:var(--kpt-color-on-primary)}.kpt-calendar__footer{display:flex;justify-content:flex-end;margin-top:var(--kpt-space-3, .75rem)}.kpt-calendar--clock{width:16rem}.kpt-calendar--multi{width:auto;max-width:calc(100vw - 2rem)}.kpt-calendar--range .kpt-calendar__day--range:before,.kpt-calendar--range .kpt-calendar__day--range-start:before,.kpt-calendar--range .kpt-calendar__day--range-end:before{content:\"\";position:absolute;inset-block:0;inset-inline:-1px;z-index:-2;background:color-mix(in oklch,var(--kpt-color-primary) 14%,transparent)}.kpt-calendar--range .kpt-calendar__day--range-start:before{inset-inline-start:50%}.kpt-calendar--range .kpt-calendar__day--range-end:before{inset-inline-end:50%}.kpt-calendar--range .kpt-calendar__day--selected{background:none!important;color:var(--kpt-color-on-primary)}.kpt-calendar--range .kpt-calendar__day--selected:after{content:\"\";position:absolute;inset:0;z-index:-1;border-radius:var(--kpt-radius-sm, .25rem);background:var(--kpt-color-primary)}.kpt-calendar--range .kpt-calendar__grid>.kpt-calendar__day:nth-child(7n+1):before{border-start-start-radius:var(--kpt-radius-sm, .25rem);border-end-start-radius:var(--kpt-radius-sm, .25rem)}.kpt-calendar--range .kpt-calendar__grid>.kpt-calendar__day:nth-child(7n):before{border-start-end-radius:var(--kpt-radius-sm, .25rem);border-end-end-radius:var(--kpt-radius-sm, .25rem)}.kpt-range-tabs{display:flex;gap:var(--kpt-space-1, .25rem);margin-block:var(--kpt-space-3, .75rem) var(--kpt-space-2, .5rem);padding:2px;background:var(--kpt-color-surface-variant);border-radius:var(--kpt-radius-md, .5rem)}.kpt-range-tabs button{flex:1;border:0;background:none;padding:var(--kpt-space-1, .25rem) var(--kpt-space-2, .5rem);border-radius:var(--kpt-radius-sm, .25rem);color:var(--kpt-color-on-surface-muted);font:inherit;font-size:var(--kpt-font-size-sm, .875rem);cursor:pointer}.kpt-range-tabs button.is-active{background:var(--kpt-color-surface-raised);color:var(--kpt-color-on-surface);font-weight:var(--kpt-font-weight-medium, 500);box-shadow:var(--kpt-elevation-1)}}\n"] }]
|
|
6552
|
+
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], touched: [{ type: i0.Input, args: [{ isSignal: true, alias: "touched", required: false }] }], touch: [{ type: i0.Output, args: ["touch"] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], displayFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "displayFormat", required: false }] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], visibleMonths: [{ type: i0.Input, args: [{ isSignal: true, alias: "visibleMonths", required: false }] }], hourFormat: [{ type: i0.Input, args: [{ isSignal: true, alias: "hourFormat", required: false }] }], minuteStep: [{ type: i0.Input, args: [{ isSignal: true, alias: "minuteStep", required: false }] }] }); })();
|
|
6553
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KptDateRange, { className: "KptDateRange", filePath: "lib/date-range/date-range.component.ts", lineNumber: 79 }); })();
|
|
6335
6554
|
|
|
6336
6555
|
function KptInputNumber_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
6337
6556
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -9062,6 +9281,53 @@ class KptRowDetailDef {
|
|
|
9062
9281
|
}]
|
|
9063
9282
|
}], null, null); })();
|
|
9064
9283
|
|
|
9284
|
+
/*
|
|
9285
|
+
* Agregacje wiersza podsumowania (`<tfoot>`) — pure TS, wydzielone żeby dało się
|
|
9286
|
+
* testować `node --test` bez ciągnięcia Angulara (jak `csv-export.ts`).
|
|
9287
|
+
*/
|
|
9288
|
+
/**
|
|
9289
|
+
* Sumowanie liczb zmiennoprzecinkowych daje ogony (`0.1 + 0.2` → `0.30000000000000004`),
|
|
9290
|
+
* które bez tego przycięcia wyciekłyby wprost do komórki podsumowania.
|
|
9291
|
+
*/
|
|
9292
|
+
function trimFloat(value) {
|
|
9293
|
+
return Math.round(value * 1e10) / 1e10;
|
|
9294
|
+
}
|
|
9295
|
+
/** Liczba z komórki: `number` bez zmian, string przez `parseFloat`, reszta → `NaN` (pomijana). */
|
|
9296
|
+
function toNumber(value) {
|
|
9297
|
+
if (typeof value === 'number')
|
|
9298
|
+
return value;
|
|
9299
|
+
if (typeof value === 'string' && value.trim() !== '')
|
|
9300
|
+
return parseFloat(value);
|
|
9301
|
+
return NaN;
|
|
9302
|
+
}
|
|
9303
|
+
/**
|
|
9304
|
+
* Agreguje jedno pole po wierszach. `count` liczy wiersze; pozostałe funkcje pomijają
|
|
9305
|
+
* wartości nieliczbowe. Pusty zbiór liczb: `sum` → 0, `avg`/`min`/`max` → `null`
|
|
9306
|
+
* (komórka renderuje się wtedy pusta).
|
|
9307
|
+
*/
|
|
9308
|
+
function aggregate(rows, field, fn) {
|
|
9309
|
+
if (fn === 'count')
|
|
9310
|
+
return rows.length;
|
|
9311
|
+
const nums = [];
|
|
9312
|
+
for (const row of rows) {
|
|
9313
|
+
const num = toNumber(row[field]);
|
|
9314
|
+
if (!Number.isNaN(num))
|
|
9315
|
+
nums.push(num);
|
|
9316
|
+
}
|
|
9317
|
+
switch (fn) {
|
|
9318
|
+
case 'sum':
|
|
9319
|
+
return trimFloat(nums.reduce((acc, n) => acc + n, 0));
|
|
9320
|
+
case 'avg':
|
|
9321
|
+
return nums.length === 0 ? null : trimFloat(nums.reduce((acc, n) => acc + n, 0) / nums.length);
|
|
9322
|
+
case 'min':
|
|
9323
|
+
return nums.length === 0 ? null : Math.min(...nums);
|
|
9324
|
+
case 'max':
|
|
9325
|
+
return nums.length === 0 ? null : Math.max(...nums);
|
|
9326
|
+
default:
|
|
9327
|
+
return null;
|
|
9328
|
+
}
|
|
9329
|
+
}
|
|
9330
|
+
|
|
9065
9331
|
const _c0$e = ["scrollEl"];
|
|
9066
9332
|
const _c1$5 = ["theadEl"];
|
|
9067
9333
|
const _c2$2 = ["editorHost"];
|
|
@@ -9113,7 +9379,7 @@ function KptDataTable_Conditional_6_Template(rf, ctx) { if (rf & 1) {
|
|
|
9113
9379
|
i0.ɵɵelementContainer(0, 8);
|
|
9114
9380
|
} if (rf & 2) {
|
|
9115
9381
|
i0.ɵɵnextContext();
|
|
9116
|
-
const filterRowTpl_r4 = i0.ɵɵreference(
|
|
9382
|
+
const filterRowTpl_r4 = i0.ɵɵreference(23);
|
|
9117
9383
|
i0.ɵɵproperty("ngTemplateOutlet", filterRowTpl_r4);
|
|
9118
9384
|
} }
|
|
9119
9385
|
function KptDataTable_Conditional_8_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -9181,7 +9447,7 @@ function KptDataTable_Conditional_13_Template(rf, ctx) { if (rf & 1) {
|
|
|
9181
9447
|
i0.ɵɵelementContainer(0, 8);
|
|
9182
9448
|
} if (rf & 2) {
|
|
9183
9449
|
i0.ɵɵnextContext();
|
|
9184
|
-
const filterRowTpl_r4 = i0.ɵɵreference(
|
|
9450
|
+
const filterRowTpl_r4 = i0.ɵɵreference(23);
|
|
9185
9451
|
i0.ɵɵproperty("ngTemplateOutlet", filterRowTpl_r4);
|
|
9186
9452
|
} }
|
|
9187
9453
|
function KptDataTable_Conditional_15_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -9221,7 +9487,7 @@ function KptDataTable_Conditional_17_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
|
9221
9487
|
} if (rf & 2) {
|
|
9222
9488
|
const row_r8 = ctx.$implicit;
|
|
9223
9489
|
i0.ɵɵnextContext(2);
|
|
9224
|
-
const rowTpl_r9 = i0.ɵɵreference(
|
|
9490
|
+
const rowTpl_r9 = i0.ɵɵreference(21);
|
|
9225
9491
|
i0.ɵɵproperty("ngTemplateOutlet", rowTpl_r9)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c5, row_r8));
|
|
9226
9492
|
} }
|
|
9227
9493
|
function KptDataTable_Conditional_17_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -9251,7 +9517,7 @@ function KptDataTable_Conditional_18_For_1_Template(rf, ctx) { if (rf & 1) {
|
|
|
9251
9517
|
} if (rf & 2) {
|
|
9252
9518
|
const row_r10 = ctx.$implicit;
|
|
9253
9519
|
i0.ɵɵnextContext(2);
|
|
9254
|
-
const rowTpl_r9 = i0.ɵɵreference(
|
|
9520
|
+
const rowTpl_r9 = i0.ɵɵreference(21);
|
|
9255
9521
|
i0.ɵɵproperty("ngTemplateOutlet", rowTpl_r9)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c5, row_r10));
|
|
9256
9522
|
} }
|
|
9257
9523
|
function KptDataTable_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -9260,170 +9526,214 @@ function KptDataTable_Conditional_18_Template(rf, ctx) { if (rf & 1) {
|
|
|
9260
9526
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9261
9527
|
i0.ɵɵrepeater(ctx_r1.paged());
|
|
9262
9528
|
} }
|
|
9263
|
-
function
|
|
9264
|
-
|
|
9265
|
-
i0.ɵɵ
|
|
9266
|
-
i0.ɵɵ
|
|
9267
|
-
|
|
9529
|
+
function KptDataTable_Conditional_19_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
9530
|
+
i0.ɵɵelementStart(0, "th", 29);
|
|
9531
|
+
i0.ɵɵtext(1);
|
|
9532
|
+
i0.ɵɵelementEnd();
|
|
9533
|
+
} if (rf & 2) {
|
|
9534
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9535
|
+
i0.ɵɵstyleProp("left", ctx_r1.hasFrozen() ? 0 : null, "px");
|
|
9536
|
+
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.hasFrozen());
|
|
9537
|
+
i0.ɵɵattribute("colspan", ctx_r1.summaryLabelSpan());
|
|
9538
|
+
i0.ɵɵadvance();
|
|
9539
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r1.summaryLabelText(), " ");
|
|
9540
|
+
} }
|
|
9541
|
+
function KptDataTable_Conditional_19_For_4_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
9542
|
+
i0.ɵɵelementStart(0, "td");
|
|
9543
|
+
i0.ɵɵtext(1);
|
|
9544
|
+
i0.ɵɵelementEnd();
|
|
9545
|
+
} if (rf & 2) {
|
|
9546
|
+
const col_r11 = i0.ɵɵnextContext().$implicit;
|
|
9547
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9548
|
+
i0.ɵɵstyleProp("width", col_r11.width)("left", ctx_r1.frozenLeft(col_r11.field), "px");
|
|
9549
|
+
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.isFrozen(col_r11.field));
|
|
9550
|
+
i0.ɵɵattribute("data-align", col_r11.align ?? "end");
|
|
9551
|
+
i0.ɵɵadvance();
|
|
9552
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r1.summaryText(col_r11.field), " ");
|
|
9553
|
+
} }
|
|
9554
|
+
function KptDataTable_Conditional_19_For_4_Template(rf, ctx) { if (rf & 1) {
|
|
9555
|
+
i0.ɵɵconditionalCreate(0, KptDataTable_Conditional_19_For_4_Conditional_0_Template, 2, 8, "td", 30);
|
|
9556
|
+
} if (rf & 2) {
|
|
9557
|
+
const ɵ$index_89_r12 = ctx.$index;
|
|
9558
|
+
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9559
|
+
i0.ɵɵconditional(ɵ$index_89_r12 >= ctx_r1.summaryStartIndex() ? 0 : -1);
|
|
9560
|
+
} }
|
|
9561
|
+
function KptDataTable_Conditional_19_Template(rf, ctx) { if (rf & 1) {
|
|
9562
|
+
i0.ɵɵelementStart(0, "tfoot")(1, "tr", 27);
|
|
9563
|
+
i0.ɵɵconditionalCreate(2, KptDataTable_Conditional_19_Conditional_2_Template, 2, 6, "th", 28);
|
|
9564
|
+
i0.ɵɵrepeaterCreate(3, KptDataTable_Conditional_19_For_4_Template, 1, 1, null, null, _forTrack0$1);
|
|
9565
|
+
i0.ɵɵelementEnd()();
|
|
9566
|
+
} if (rf & 2) {
|
|
9567
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
9568
|
+
i0.ɵɵadvance(2);
|
|
9569
|
+
i0.ɵɵconditional(ctx_r1.summaryLabelSpan() > 0 ? 2 : -1);
|
|
9570
|
+
i0.ɵɵadvance();
|
|
9571
|
+
i0.ɵɵrepeater(ctx_r1.visibleOrderedColumns());
|
|
9572
|
+
} }
|
|
9573
|
+
function KptDataTable_ng_template_20_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
9574
|
+
const _r15 = i0.ɵɵgetCurrentView();
|
|
9575
|
+
i0.ɵɵelementStart(0, "td", 17)(1, "button", 34);
|
|
9576
|
+
i0.ɵɵlistener("click", function KptDataTable_ng_template_20_Conditional_1_Template_button_click_1_listener($event) { i0.ɵɵrestoreView(_r15); const row_r14 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(); $event.stopPropagation(); return i0.ɵɵresetView(ctx_r1.toggleExpand(row_r14)); });
|
|
9577
|
+
i0.ɵɵelement(2, "kpt-icon", 35);
|
|
9268
9578
|
i0.ɵɵelementEnd()();
|
|
9269
9579
|
} if (rf & 2) {
|
|
9270
|
-
const
|
|
9580
|
+
const row_r14 = i0.ɵɵnextContext().$implicit;
|
|
9271
9581
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9272
9582
|
i0.ɵɵstyleProp("left", ctx_r1.expanderStickyLeft(), "px");
|
|
9273
9583
|
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.hasFrozen());
|
|
9274
9584
|
i0.ɵɵadvance();
|
|
9275
|
-
i0.ɵɵclassProp("kpt-data-table__expander-btn--open", ctx_r1.isExpanded(
|
|
9276
|
-
i0.ɵɵattribute("aria-expanded", ctx_r1.isExpanded(
|
|
9585
|
+
i0.ɵɵclassProp("kpt-data-table__expander-btn--open", ctx_r1.isExpanded(row_r14));
|
|
9586
|
+
i0.ɵɵattribute("aria-expanded", ctx_r1.isExpanded(row_r14))("aria-label", ctx_r1.i18n.t("dataTable.expandRow"));
|
|
9277
9587
|
} }
|
|
9278
|
-
function
|
|
9279
|
-
const
|
|
9280
|
-
i0.ɵɵelementStart(0, "td", 18)(1, "input",
|
|
9281
|
-
i0.ɵɵlistener("click", function
|
|
9588
|
+
function KptDataTable_ng_template_20_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
9589
|
+
const _r16 = i0.ɵɵgetCurrentView();
|
|
9590
|
+
i0.ɵɵelementStart(0, "td", 18)(1, "input", 36);
|
|
9591
|
+
i0.ɵɵlistener("click", function KptDataTable_ng_template_20_Conditional_2_Template_input_click_1_listener($event) { return $event.stopPropagation(); })("change", function KptDataTable_ng_template_20_Conditional_2_Template_input_change_1_listener() { i0.ɵɵrestoreView(_r16); const row_r14 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.toggleRow(row_r14)); });
|
|
9282
9592
|
i0.ɵɵelementEnd()();
|
|
9283
9593
|
} if (rf & 2) {
|
|
9284
|
-
const
|
|
9594
|
+
const row_r14 = i0.ɵɵnextContext().$implicit;
|
|
9285
9595
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9286
9596
|
i0.ɵɵstyleProp("left", ctx_r1.checkboxStickyLeft(), "px");
|
|
9287
9597
|
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.hasFrozen());
|
|
9288
9598
|
i0.ɵɵadvance();
|
|
9289
|
-
i0.ɵɵproperty("checked", ctx_r1.isSelected(
|
|
9599
|
+
i0.ɵɵproperty("checked", ctx_r1.isSelected(row_r14));
|
|
9290
9600
|
i0.ɵɵattribute("aria-label", ctx_r1.i18n.t("dataTable.selectRow"));
|
|
9291
9601
|
} }
|
|
9292
|
-
function
|
|
9602
|
+
function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
9293
9603
|
i0.ɵɵelementContainer(0, 26);
|
|
9294
9604
|
} if (rf & 2) {
|
|
9295
|
-
const
|
|
9605
|
+
const row_r14 = i0.ɵɵnextContext(3).$implicit;
|
|
9296
9606
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9297
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx)("ngTemplateOutletContext", i0.ɵɵpureFunction4(2, _c7, ctx_r1.editingValue(),
|
|
9607
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx)("ngTemplateOutletContext", i0.ɵɵpureFunction4(2, _c7, ctx_r1.editingValue(), row_r14, ctx_r1.commitEditValue, ctx_r1.cancelEdit));
|
|
9298
9608
|
} }
|
|
9299
|
-
function
|
|
9300
|
-
const
|
|
9301
|
-
i0.ɵɵelementStart(0, "kpt-input",
|
|
9302
|
-
i0.ɵɵlistener("valueChange", function
|
|
9609
|
+
function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_0_Template(rf, ctx) { if (rf & 1) {
|
|
9610
|
+
const _r20 = i0.ɵɵgetCurrentView();
|
|
9611
|
+
i0.ɵɵelementStart(0, "kpt-input", 45);
|
|
9612
|
+
i0.ɵɵlistener("valueChange", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_0_Template_kpt_input_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r20); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.editingValue.set($event)); })("keydown.enter", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_0_Template_kpt_input_keydown_enter_0_listener() { i0.ɵɵrestoreView(_r20); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.commitEdit()); })("keydown.escape", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_0_Template_kpt_input_keydown_escape_0_listener() { i0.ɵɵrestoreView(_r20); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.cancelEdit()); });
|
|
9303
9613
|
i0.ɵɵelementEnd();
|
|
9304
9614
|
} if (rf & 2) {
|
|
9305
|
-
const
|
|
9615
|
+
const col_r18 = i0.ɵɵnextContext(3).$implicit;
|
|
9306
9616
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9307
|
-
i0.ɵɵproperty("value", ctx_r1.editingValue() ?? "")("placeholder",
|
|
9617
|
+
i0.ɵɵproperty("value", ctx_r1.editingValue() ?? "")("placeholder", col_r18.edit.placeholder ?? "");
|
|
9308
9618
|
} }
|
|
9309
|
-
function
|
|
9310
|
-
const
|
|
9311
|
-
i0.ɵɵelementStart(0, "kpt-input-number",
|
|
9312
|
-
i0.ɵɵlistener("valueChange", function
|
|
9619
|
+
function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_1_Template(rf, ctx) { if (rf & 1) {
|
|
9620
|
+
const _r21 = i0.ɵɵgetCurrentView();
|
|
9621
|
+
i0.ɵɵelementStart(0, "kpt-input-number", 46);
|
|
9622
|
+
i0.ɵɵlistener("valueChange", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_1_Template_kpt_input_number_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r21); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.editingValue.set($event)); })("keydown.enter", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_1_Template_kpt_input_number_keydown_enter_0_listener() { i0.ɵɵrestoreView(_r21); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.commitEdit()); })("keydown.escape", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_1_Template_kpt_input_number_keydown_escape_0_listener() { i0.ɵɵrestoreView(_r21); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.cancelEdit()); });
|
|
9313
9623
|
i0.ɵɵelementEnd();
|
|
9314
9624
|
} if (rf & 2) {
|
|
9315
|
-
const
|
|
9625
|
+
const col_r18 = i0.ɵɵnextContext(3).$implicit;
|
|
9316
9626
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9317
|
-
i0.ɵɵproperty("value", ctx_r1.editingValue())("min",
|
|
9627
|
+
i0.ɵɵproperty("value", ctx_r1.editingValue())("min", col_r18.edit.min)("max", col_r18.edit.max)("step", col_r18.edit.step ?? 1);
|
|
9318
9628
|
} }
|
|
9319
|
-
function
|
|
9320
|
-
const
|
|
9321
|
-
i0.ɵɵelementStart(0, "kpt-datepicker",
|
|
9322
|
-
i0.ɵɵlistener("valueChange", function
|
|
9629
|
+
function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_2_Template(rf, ctx) { if (rf & 1) {
|
|
9630
|
+
const _r22 = i0.ɵɵgetCurrentView();
|
|
9631
|
+
i0.ɵɵelementStart(0, "kpt-datepicker", 47);
|
|
9632
|
+
i0.ɵɵlistener("valueChange", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_2_Template_kpt_datepicker_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r22); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.editingValue.set($event)); })("openChange", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_2_Template_kpt_datepicker_openChange_0_listener($event) { i0.ɵɵrestoreView(_r22); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onEditorPanelToggle($event)); });
|
|
9323
9633
|
i0.ɵɵelementEnd();
|
|
9324
9634
|
} if (rf & 2) {
|
|
9325
9635
|
const ctx_r1 = i0.ɵɵnextContext(5);
|
|
9326
9636
|
i0.ɵɵproperty("value", ctx_r1.editingValue() ?? "")("open", ctx_r1.editorPanelOpen());
|
|
9327
9637
|
} }
|
|
9328
|
-
function
|
|
9329
|
-
const
|
|
9330
|
-
i0.ɵɵelementStart(0, "kpt-select",
|
|
9331
|
-
i0.ɵɵlistener("valueChange", function
|
|
9638
|
+
function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_3_Template(rf, ctx) { if (rf & 1) {
|
|
9639
|
+
const _r23 = i0.ɵɵgetCurrentView();
|
|
9640
|
+
i0.ɵɵelementStart(0, "kpt-select", 48);
|
|
9641
|
+
i0.ɵɵlistener("valueChange", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_3_Template_kpt_select_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r23); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.editingValue.set($event)); })("openChange", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_3_Template_kpt_select_openChange_0_listener($event) { i0.ɵɵrestoreView(_r23); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onEditorPanelToggle($event)); });
|
|
9332
9642
|
i0.ɵɵelementEnd();
|
|
9333
9643
|
} if (rf & 2) {
|
|
9334
|
-
const
|
|
9644
|
+
const col_r18 = i0.ɵɵnextContext(3).$implicit;
|
|
9335
9645
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9336
|
-
i0.ɵɵproperty("options",
|
|
9646
|
+
i0.ɵɵproperty("options", col_r18.edit.options ?? i0.ɵɵpureFunction0(4, _c8))("placeholder", col_r18.edit.placeholder ?? "")("value", ctx_r1.editingValue())("open", ctx_r1.editorPanelOpen());
|
|
9337
9647
|
} }
|
|
9338
|
-
function
|
|
9339
|
-
const
|
|
9340
|
-
i0.ɵɵelementStart(0, "kpt-select",
|
|
9341
|
-
i0.ɵɵlistener("valueChange", function
|
|
9648
|
+
function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_4_Template(rf, ctx) { if (rf & 1) {
|
|
9649
|
+
const _r24 = i0.ɵɵgetCurrentView();
|
|
9650
|
+
i0.ɵɵelementStart(0, "kpt-select", 49);
|
|
9651
|
+
i0.ɵɵlistener("valueChange", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_4_Template_kpt_select_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r24); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.editingValue.set($event)); })("openChange", function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_4_Template_kpt_select_openChange_0_listener($event) { i0.ɵɵrestoreView(_r24); const ctx_r1 = i0.ɵɵnextContext(5); return i0.ɵɵresetView(ctx_r1.onEditorPanelToggle($event)); });
|
|
9342
9652
|
i0.ɵɵelementEnd();
|
|
9343
9653
|
} if (rf & 2) {
|
|
9344
|
-
const
|
|
9654
|
+
const col_r18 = i0.ɵɵnextContext(3).$implicit;
|
|
9345
9655
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9346
|
-
i0.ɵɵproperty("options",
|
|
9656
|
+
i0.ɵɵproperty("options", col_r18.edit.options ?? i0.ɵɵpureFunction0(4, _c8))("placeholder", col_r18.edit.placeholder ?? "")("value", ctx_r1.editingValue())("open", ctx_r1.editorPanelOpen());
|
|
9347
9657
|
} }
|
|
9348
|
-
function
|
|
9349
|
-
i0.ɵɵconditionalCreate(0,
|
|
9658
|
+
function KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
9659
|
+
i0.ɵɵconditionalCreate(0, KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_0_Template, 1, 2, "kpt-input", 40)(1, KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_1_Template, 1, 4, "kpt-input-number", 41)(2, KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_2_Template, 1, 2, "kpt-datepicker", 42)(3, KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_3_Template, 1, 5, "kpt-select", 43)(4, KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Case_4_Template, 1, 5, "kpt-select", 44);
|
|
9350
9660
|
} if (rf & 2) {
|
|
9351
9661
|
let tmp_19_0;
|
|
9352
|
-
const
|
|
9353
|
-
i0.ɵɵconditional((tmp_19_0 =
|
|
9662
|
+
const col_r18 = i0.ɵɵnextContext(2).$implicit;
|
|
9663
|
+
i0.ɵɵconditional((tmp_19_0 = col_r18.edit?.type) === "text" ? 0 : tmp_19_0 === "number" ? 1 : tmp_19_0 === "date" ? 2 : tmp_19_0 === "select" ? 3 : tmp_19_0 === "multiselect" ? 4 : -1);
|
|
9354
9664
|
} }
|
|
9355
|
-
function
|
|
9356
|
-
const
|
|
9357
|
-
i0.ɵɵelementStart(0, "div",
|
|
9358
|
-
i0.ɵɵlistener("click", function
|
|
9359
|
-
i0.ɵɵconditionalCreate(2,
|
|
9665
|
+
function KptDataTable_ng_template_20_For_4_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
9666
|
+
const _r19 = i0.ɵɵgetCurrentView();
|
|
9667
|
+
i0.ɵɵelementStart(0, "div", 39, 4);
|
|
9668
|
+
i0.ɵɵlistener("click", function KptDataTable_ng_template_20_For_4_Conditional_1_Template_div_click_0_listener($event) { return $event.stopPropagation(); })("focusout", function KptDataTable_ng_template_20_For_4_Conditional_1_Template_div_focusout_0_listener($event) { i0.ɵɵrestoreView(_r19); const ctx_r1 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r1.onEditorFocusOut($event)); });
|
|
9669
|
+
i0.ɵɵconditionalCreate(2, KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_2_Template, 1, 7, "ng-container", 26)(3, KptDataTable_ng_template_20_For_4_Conditional_1_Conditional_3_Template, 5, 1);
|
|
9360
9670
|
i0.ɵɵelementEnd();
|
|
9361
9671
|
} if (rf & 2) {
|
|
9362
9672
|
let tmp_18_0;
|
|
9363
|
-
const
|
|
9673
|
+
const col_r18 = i0.ɵɵnextContext().$implicit;
|
|
9364
9674
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9365
9675
|
i0.ɵɵadvance(2);
|
|
9366
|
-
i0.ɵɵconditional((tmp_18_0 = ctx_r1.cellEditTemplate(
|
|
9676
|
+
i0.ɵɵconditional((tmp_18_0 = ctx_r1.cellEditTemplate(col_r18.field)) ? 2 : 3, tmp_18_0);
|
|
9367
9677
|
} }
|
|
9368
|
-
function
|
|
9678
|
+
function KptDataTable_ng_template_20_For_4_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
9369
9679
|
i0.ɵɵelementContainer(0, 26);
|
|
9370
9680
|
} if (rf & 2) {
|
|
9371
|
-
const
|
|
9372
|
-
const
|
|
9681
|
+
const col_r18 = i0.ɵɵnextContext().$implicit;
|
|
9682
|
+
const row_r14 = i0.ɵɵnextContext().$implicit;
|
|
9373
9683
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9374
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c9,
|
|
9684
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx)("ngTemplateOutletContext", i0.ɵɵpureFunction2(2, _c9, row_r14, ctx_r1.getValue(row_r14, col_r18.field)));
|
|
9375
9685
|
} }
|
|
9376
|
-
function
|
|
9686
|
+
function KptDataTable_ng_template_20_For_4_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
9377
9687
|
i0.ɵɵtext(0);
|
|
9378
9688
|
} if (rf & 2) {
|
|
9379
|
-
const
|
|
9380
|
-
const
|
|
9689
|
+
const col_r18 = i0.ɵɵnextContext().$implicit;
|
|
9690
|
+
const row_r14 = i0.ɵɵnextContext().$implicit;
|
|
9381
9691
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9382
|
-
i0.ɵɵtextInterpolate1(" ", ctx_r1.getValue(
|
|
9692
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r1.getValue(row_r14, col_r18.field), " ");
|
|
9383
9693
|
} }
|
|
9384
|
-
function
|
|
9385
|
-
const
|
|
9386
|
-
i0.ɵɵelementStart(0, "td",
|
|
9387
|
-
i0.ɵɵlistener("click", function
|
|
9388
|
-
i0.ɵɵconditionalCreate(1,
|
|
9694
|
+
function KptDataTable_ng_template_20_For_4_Template(rf, ctx) { if (rf & 1) {
|
|
9695
|
+
const _r17 = i0.ɵɵgetCurrentView();
|
|
9696
|
+
i0.ɵɵelementStart(0, "td", 37);
|
|
9697
|
+
i0.ɵɵlistener("click", function KptDataTable_ng_template_20_For_4_Template_td_click_0_listener($event) { const col_r18 = i0.ɵɵrestoreView(_r17).$implicit; const row_r14 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.isEditable(col_r18) ? ctx_r1.startEdit(row_r14, col_r18, $event) : null); })("keydown.enter", function KptDataTable_ng_template_20_For_4_Template_td_keydown_enter_0_listener($event) { const col_r18 = i0.ɵɵrestoreView(_r17).$implicit; const row_r14 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.isEditable(col_r18) && !ctx_r1.isEditingCell(row_r14, col_r18.field) ? ctx_r1.startEdit(row_r14, col_r18, $event) : null); });
|
|
9698
|
+
i0.ɵɵconditionalCreate(1, KptDataTable_ng_template_20_For_4_Conditional_1_Template, 4, 1, "div", 38)(2, KptDataTable_ng_template_20_For_4_Conditional_2_Template, 1, 5, "ng-container", 26)(3, KptDataTable_ng_template_20_For_4_Conditional_3_Template, 1, 1);
|
|
9389
9699
|
i0.ɵɵelementEnd();
|
|
9390
9700
|
} if (rf & 2) {
|
|
9391
9701
|
let tmp_22_0;
|
|
9392
|
-
const
|
|
9393
|
-
const
|
|
9702
|
+
const col_r18 = ctx.$implicit;
|
|
9703
|
+
const row_r14 = i0.ɵɵnextContext().$implicit;
|
|
9394
9704
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9395
|
-
i0.ɵɵstyleProp("left", ctx_r1.frozenLeft(
|
|
9396
|
-
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.isFrozen(
|
|
9397
|
-
i0.ɵɵattribute("data-align",
|
|
9705
|
+
i0.ɵɵstyleProp("left", ctx_r1.frozenLeft(col_r18.field), "px");
|
|
9706
|
+
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.isFrozen(col_r18.field))("kpt-data-table__cell--editable", ctx_r1.isEditable(col_r18) && !ctx_r1.isEditingCell(row_r14, col_r18.field));
|
|
9707
|
+
i0.ɵɵattribute("data-align", col_r18.align ?? "start")("tabindex", ctx_r1.isEditable(col_r18) && !ctx_r1.isEditingCell(row_r14, col_r18.field) ? 0 : null)("aria-label", ctx_r1.isEditable(col_r18) && !ctx_r1.isEditingCell(row_r14, col_r18.field) ? ctx_r1.i18n.t("dataTable.editCell", i0.ɵɵpureFunction1(10, _c6, col_r18.header)) : null);
|
|
9398
9708
|
i0.ɵɵadvance();
|
|
9399
|
-
i0.ɵɵconditional(ctx_r1.isEditingCell(
|
|
9709
|
+
i0.ɵɵconditional(ctx_r1.isEditingCell(row_r14, col_r18.field) ? 1 : (tmp_22_0 = ctx_r1.cellTemplate(col_r18.field)) ? 2 : 3, tmp_22_0);
|
|
9400
9710
|
} }
|
|
9401
|
-
function
|
|
9402
|
-
i0.ɵɵelementStart(0, "tr",
|
|
9711
|
+
function KptDataTable_ng_template_20_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
9712
|
+
i0.ɵɵelementStart(0, "tr", 33)(1, "td", 50);
|
|
9403
9713
|
i0.ɵɵelementContainer(2, 26);
|
|
9404
9714
|
i0.ɵɵelementEnd()();
|
|
9405
9715
|
} if (rf & 2) {
|
|
9406
|
-
const
|
|
9716
|
+
const row_r14 = i0.ɵɵnextContext().$implicit;
|
|
9407
9717
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9408
9718
|
i0.ɵɵadvance();
|
|
9409
9719
|
i0.ɵɵattribute("colspan", ctx_r1.colspan());
|
|
9410
9720
|
i0.ɵɵadvance();
|
|
9411
|
-
i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.rowDetailTpl())("ngTemplateOutletContext", i0.ɵɵpureFunction1(3, _c5,
|
|
9721
|
+
i0.ɵɵproperty("ngTemplateOutlet", ctx_r1.rowDetailTpl())("ngTemplateOutletContext", i0.ɵɵpureFunction1(3, _c5, row_r14));
|
|
9412
9722
|
} }
|
|
9413
|
-
function
|
|
9414
|
-
const
|
|
9415
|
-
i0.ɵɵelementStart(0, "tr",
|
|
9416
|
-
i0.ɵɵlistener("click", function
|
|
9417
|
-
i0.ɵɵconditionalCreate(1,
|
|
9418
|
-
i0.ɵɵconditionalCreate(2,
|
|
9419
|
-
i0.ɵɵrepeaterCreate(3,
|
|
9723
|
+
function KptDataTable_ng_template_20_Template(rf, ctx) { if (rf & 1) {
|
|
9724
|
+
const _r13 = i0.ɵɵgetCurrentView();
|
|
9725
|
+
i0.ɵɵelementStart(0, "tr", 31);
|
|
9726
|
+
i0.ɵɵlistener("click", function KptDataTable_ng_template_20_Template_tr_click_0_listener() { const row_r14 = i0.ɵɵrestoreView(_r13).$implicit; const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onRowClick(row_r14)); });
|
|
9727
|
+
i0.ɵɵconditionalCreate(1, KptDataTable_ng_template_20_Conditional_1_Template, 3, 8, "td", 9);
|
|
9728
|
+
i0.ɵɵconditionalCreate(2, KptDataTable_ng_template_20_Conditional_2_Template, 2, 6, "td", 10);
|
|
9729
|
+
i0.ɵɵrepeaterCreate(3, KptDataTable_ng_template_20_For_4_Template, 4, 12, "td", 32, _forTrack0$1);
|
|
9420
9730
|
i0.ɵɵelementEnd();
|
|
9421
|
-
i0.ɵɵconditionalCreate(5,
|
|
9731
|
+
i0.ɵɵconditionalCreate(5, KptDataTable_ng_template_20_Conditional_5_Template, 3, 5, "tr", 33);
|
|
9422
9732
|
} if (rf & 2) {
|
|
9423
|
-
const
|
|
9733
|
+
const row_r14 = ctx.$implicit;
|
|
9424
9734
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
9425
9735
|
i0.ɵɵstyleProp("height", ctx_r1.virtualScroll() ? ctx_r1.rowHeight() : null, "px");
|
|
9426
|
-
i0.ɵɵclassProp("kpt-data-table__row--selected", ctx_r1.isSelected(
|
|
9736
|
+
i0.ɵɵclassProp("kpt-data-table__row--selected", ctx_r1.isSelected(row_r14))("kpt-data-table__row--expanded", ctx_r1.hasRowDetail() && ctx_r1.isExpanded(row_r14));
|
|
9427
9737
|
i0.ɵɵadvance();
|
|
9428
9738
|
i0.ɵɵconditional(ctx_r1.hasRowDetail() ? 1 : -1);
|
|
9429
9739
|
i0.ɵɵadvance();
|
|
@@ -9431,114 +9741,114 @@ function KptDataTable_ng_template_19_Template(rf, ctx) { if (rf & 1) {
|
|
|
9431
9741
|
i0.ɵɵadvance();
|
|
9432
9742
|
i0.ɵɵrepeater(ctx_r1.visibleOrderedColumns());
|
|
9433
9743
|
i0.ɵɵadvance(2);
|
|
9434
|
-
i0.ɵɵconditional(ctx_r1.hasRowDetail() && ctx_r1.isExpanded(
|
|
9744
|
+
i0.ɵɵconditional(ctx_r1.hasRowDetail() && ctx_r1.isExpanded(row_r14) && !ctx_r1.virtualScroll() ? 5 : -1);
|
|
9435
9745
|
} }
|
|
9436
|
-
function
|
|
9746
|
+
function KptDataTable_ng_template_22_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
9437
9747
|
i0.ɵɵelement(0, "th", 17);
|
|
9438
9748
|
} if (rf & 2) {
|
|
9439
9749
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9440
9750
|
i0.ɵɵstyleProp("left", ctx_r1.expanderStickyLeft(), "px");
|
|
9441
9751
|
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.hasFrozen());
|
|
9442
9752
|
} }
|
|
9443
|
-
function
|
|
9753
|
+
function KptDataTable_ng_template_22_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
9444
9754
|
i0.ɵɵelement(0, "th", 18);
|
|
9445
9755
|
} if (rf & 2) {
|
|
9446
9756
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9447
9757
|
i0.ɵɵstyleProp("left", ctx_r1.checkboxStickyLeft(), "px");
|
|
9448
9758
|
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.hasFrozen());
|
|
9449
9759
|
} }
|
|
9450
|
-
function
|
|
9451
|
-
const
|
|
9452
|
-
i0.ɵɵelementStart(0, "input",
|
|
9453
|
-
i0.ɵɵlistener("input", function
|
|
9760
|
+
function KptDataTable_ng_template_22_For_4_Case_1_Template(rf, ctx) { if (rf & 1) {
|
|
9761
|
+
const _r25 = i0.ɵɵgetCurrentView();
|
|
9762
|
+
i0.ɵɵelementStart(0, "input", 58);
|
|
9763
|
+
i0.ɵɵlistener("input", function KptDataTable_ng_template_22_For_4_Case_1_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r25); const col_r26 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.setColumnFilter(col_r26.field, $event.target.value)); })("click", function KptDataTable_ng_template_22_For_4_Case_1_Template_input_click_0_listener($event) { return $event.stopPropagation(); });
|
|
9454
9764
|
i0.ɵɵelementEnd();
|
|
9455
9765
|
} if (rf & 2) {
|
|
9456
|
-
const
|
|
9766
|
+
const col_r26 = i0.ɵɵnextContext().$implicit;
|
|
9457
9767
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9458
|
-
i0.ɵɵproperty("value", ctx_r1.columnFilters()[
|
|
9459
|
-
i0.ɵɵattribute("placeholder",
|
|
9768
|
+
i0.ɵɵproperty("value", ctx_r1.columnFilters()[col_r26.field] || "");
|
|
9769
|
+
i0.ɵɵattribute("placeholder", col_r26.filter.placeholder || "")("aria-label", ctx_r1.i18n.t("dataTable.filter", i0.ɵɵpureFunction1(3, _c6, col_r26.header)));
|
|
9460
9770
|
} }
|
|
9461
|
-
function
|
|
9462
|
-
const
|
|
9463
|
-
i0.ɵɵelementStart(0, "input",
|
|
9464
|
-
i0.ɵɵlistener("input", function
|
|
9771
|
+
function KptDataTable_ng_template_22_For_4_Case_2_Template(rf, ctx) { if (rf & 1) {
|
|
9772
|
+
const _r27 = i0.ɵɵgetCurrentView();
|
|
9773
|
+
i0.ɵɵelementStart(0, "input", 59);
|
|
9774
|
+
i0.ɵɵlistener("input", function KptDataTable_ng_template_22_For_4_Case_2_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r27); const col_r26 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.onNumberFilter(col_r26.field, $event)); })("click", function KptDataTable_ng_template_22_For_4_Case_2_Template_input_click_0_listener($event) { return $event.stopPropagation(); });
|
|
9465
9775
|
i0.ɵɵelementEnd();
|
|
9466
9776
|
} if (rf & 2) {
|
|
9467
|
-
const
|
|
9777
|
+
const col_r26 = i0.ɵɵnextContext().$implicit;
|
|
9468
9778
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9469
|
-
i0.ɵɵproperty("value", ctx_r1.columnFilters()[
|
|
9470
|
-
i0.ɵɵattribute("placeholder",
|
|
9779
|
+
i0.ɵɵproperty("value", ctx_r1.columnFilters()[col_r26.field] || "");
|
|
9780
|
+
i0.ɵɵattribute("placeholder", col_r26.filter.placeholder || "")("aria-label", ctx_r1.i18n.t("dataTable.filter", i0.ɵɵpureFunction1(3, _c6, col_r26.header)));
|
|
9471
9781
|
} }
|
|
9472
|
-
function
|
|
9473
|
-
const
|
|
9474
|
-
i0.ɵɵelementStart(0, "kpt-select",
|
|
9475
|
-
i0.ɵɵlistener("valueChange", function
|
|
9782
|
+
function KptDataTable_ng_template_22_For_4_Case_3_Template(rf, ctx) { if (rf & 1) {
|
|
9783
|
+
const _r28 = i0.ɵɵgetCurrentView();
|
|
9784
|
+
i0.ɵɵelementStart(0, "kpt-select", 60);
|
|
9785
|
+
i0.ɵɵlistener("valueChange", function KptDataTable_ng_template_22_For_4_Case_3_Template_kpt_select_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r28); const col_r26 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.setColumnFilter(col_r26.field, $event)); });
|
|
9476
9786
|
i0.ɵɵelementEnd();
|
|
9477
9787
|
} if (rf & 2) {
|
|
9478
|
-
const
|
|
9788
|
+
const col_r26 = i0.ɵɵnextContext().$implicit;
|
|
9479
9789
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9480
|
-
i0.ɵɵproperty("options",
|
|
9790
|
+
i0.ɵɵproperty("options", col_r26.filter.options || i0.ɵɵpureFunction0(4, _c8))("multiple", !!col_r26.filter.multiple)("placeholder", col_r26.filter.placeholder || ctx_r1.i18n.t("dataTable.all"))("value", ctx_r1.columnFilters()[col_r26.field] ?? null);
|
|
9481
9791
|
} }
|
|
9482
|
-
function
|
|
9483
|
-
const
|
|
9484
|
-
i0.ɵɵelementStart(0, "div",
|
|
9485
|
-
i0.ɵɵlistener("input", function
|
|
9792
|
+
function KptDataTable_ng_template_22_For_4_Case_4_Template(rf, ctx) { if (rf & 1) {
|
|
9793
|
+
const _r29 = i0.ɵɵgetCurrentView();
|
|
9794
|
+
i0.ɵɵelementStart(0, "div", 55)(1, "input", 59);
|
|
9795
|
+
i0.ɵɵlistener("input", function KptDataTable_ng_template_22_For_4_Case_4_Template_input_input_1_listener($event) { i0.ɵɵrestoreView(_r29); const col_r26 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.setRangeFilter(col_r26.field, "min", $event)); })("click", function KptDataTable_ng_template_22_For_4_Case_4_Template_input_click_1_listener($event) { return $event.stopPropagation(); });
|
|
9486
9796
|
i0.ɵɵelementEnd();
|
|
9487
|
-
i0.ɵɵelementStart(2, "input",
|
|
9488
|
-
i0.ɵɵlistener("input", function
|
|
9797
|
+
i0.ɵɵelementStart(2, "input", 59);
|
|
9798
|
+
i0.ɵɵlistener("input", function KptDataTable_ng_template_22_For_4_Case_4_Template_input_input_2_listener($event) { i0.ɵɵrestoreView(_r29); const col_r26 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.setRangeFilter(col_r26.field, "max", $event)); })("click", function KptDataTable_ng_template_22_For_4_Case_4_Template_input_click_2_listener($event) { return $event.stopPropagation(); });
|
|
9489
9799
|
i0.ɵɵelementEnd()();
|
|
9490
9800
|
} if (rf & 2) {
|
|
9491
|
-
const
|
|
9801
|
+
const col_r26 = i0.ɵɵnextContext().$implicit;
|
|
9492
9802
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9493
9803
|
i0.ɵɵadvance();
|
|
9494
|
-
i0.ɵɵproperty("value", ctx_r1.rangeVal(
|
|
9495
|
-
i0.ɵɵattribute("placeholder", ctx_r1.i18n.t("dataTable.min"))("aria-label", ctx_r1.i18n.t("dataTable.filterMin", i0.ɵɵpureFunction1(6, _c6,
|
|
9804
|
+
i0.ɵɵproperty("value", ctx_r1.rangeVal(col_r26.field).min);
|
|
9805
|
+
i0.ɵɵattribute("placeholder", ctx_r1.i18n.t("dataTable.min"))("aria-label", ctx_r1.i18n.t("dataTable.filterMin", i0.ɵɵpureFunction1(6, _c6, col_r26.header)));
|
|
9496
9806
|
i0.ɵɵadvance();
|
|
9497
|
-
i0.ɵɵproperty("value", ctx_r1.rangeVal(
|
|
9498
|
-
i0.ɵɵattribute("placeholder", ctx_r1.i18n.t("dataTable.max"))("aria-label", ctx_r1.i18n.t("dataTable.filterMax", i0.ɵɵpureFunction1(8, _c6,
|
|
9807
|
+
i0.ɵɵproperty("value", ctx_r1.rangeVal(col_r26.field).max);
|
|
9808
|
+
i0.ɵɵattribute("placeholder", ctx_r1.i18n.t("dataTable.max"))("aria-label", ctx_r1.i18n.t("dataTable.filterMax", i0.ɵɵpureFunction1(8, _c6, col_r26.header)));
|
|
9499
9809
|
} }
|
|
9500
|
-
function
|
|
9501
|
-
const
|
|
9502
|
-
i0.ɵɵelementStart(0, "div",
|
|
9503
|
-
i0.ɵɵlistener("click", function
|
|
9504
|
-
i0.ɵɵelementStart(1, "kpt-slider",
|
|
9505
|
-
i0.ɵɵlistener("valueChange", function
|
|
9810
|
+
function KptDataTable_ng_template_22_For_4_Case_5_Template(rf, ctx) { if (rf & 1) {
|
|
9811
|
+
const _r30 = i0.ɵɵgetCurrentView();
|
|
9812
|
+
i0.ɵɵelementStart(0, "div", 61);
|
|
9813
|
+
i0.ɵɵlistener("click", function KptDataTable_ng_template_22_For_4_Case_5_Template_div_click_0_listener($event) { return $event.stopPropagation(); });
|
|
9814
|
+
i0.ɵɵelementStart(1, "kpt-slider", 62);
|
|
9815
|
+
i0.ɵɵlistener("valueChange", function KptDataTable_ng_template_22_For_4_Case_5_Template_kpt_slider_valueChange_1_listener($event) { i0.ɵɵrestoreView(_r30); const col_r26 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.setColumnFilter(col_r26.field, $event)); });
|
|
9506
9816
|
i0.ɵɵelementEnd()();
|
|
9507
9817
|
} if (rf & 2) {
|
|
9508
|
-
const
|
|
9818
|
+
const col_r26 = i0.ɵɵnextContext().$implicit;
|
|
9509
9819
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9510
9820
|
i0.ɵɵadvance();
|
|
9511
|
-
i0.ɵɵproperty("min",
|
|
9821
|
+
i0.ɵɵproperty("min", col_r26.filter.min ?? 0)("max", col_r26.filter.max ?? 100)("step", col_r26.filter.step ?? 1)("value", ctx_r1.sliderVal(col_r26));
|
|
9512
9822
|
} }
|
|
9513
|
-
function
|
|
9514
|
-
const
|
|
9515
|
-
i0.ɵɵelementStart(0, "kpt-date-range",
|
|
9516
|
-
i0.ɵɵlistener("valueChange", function
|
|
9823
|
+
function KptDataTable_ng_template_22_For_4_Case_6_Template(rf, ctx) { if (rf & 1) {
|
|
9824
|
+
const _r31 = i0.ɵɵgetCurrentView();
|
|
9825
|
+
i0.ɵɵelementStart(0, "kpt-date-range", 63);
|
|
9826
|
+
i0.ɵɵlistener("valueChange", function KptDataTable_ng_template_22_For_4_Case_6_Template_kpt_date_range_valueChange_0_listener($event) { i0.ɵɵrestoreView(_r31); const col_r26 = i0.ɵɵnextContext().$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.setColumnFilter(col_r26.field, $event)); });
|
|
9517
9827
|
i0.ɵɵelementEnd();
|
|
9518
9828
|
} if (rf & 2) {
|
|
9519
|
-
const
|
|
9829
|
+
const col_r26 = i0.ɵɵnextContext().$implicit;
|
|
9520
9830
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9521
|
-
i0.ɵɵproperty("placeholder",
|
|
9831
|
+
i0.ɵɵproperty("placeholder", col_r26.filter.placeholder || ctx_r1.i18n.t("dataTable.dateRange"))("value", ctx_r1.columnFilters()[col_r26.field] || i0.ɵɵpureFunction0(2, _c10));
|
|
9522
9832
|
} }
|
|
9523
|
-
function
|
|
9833
|
+
function KptDataTable_ng_template_22_For_4_Template(rf, ctx) { if (rf & 1) {
|
|
9524
9834
|
i0.ɵɵelementStart(0, "th");
|
|
9525
|
-
i0.ɵɵconditionalCreate(1,
|
|
9835
|
+
i0.ɵɵconditionalCreate(1, KptDataTable_ng_template_22_For_4_Case_1_Template, 1, 5, "input", 52)(2, KptDataTable_ng_template_22_For_4_Case_2_Template, 1, 5, "input", 53)(3, KptDataTable_ng_template_22_For_4_Case_3_Template, 1, 5, "kpt-select", 54)(4, KptDataTable_ng_template_22_For_4_Case_4_Template, 3, 10, "div", 55)(5, KptDataTable_ng_template_22_For_4_Case_5_Template, 2, 4, "div", 56)(6, KptDataTable_ng_template_22_For_4_Case_6_Template, 1, 3, "kpt-date-range", 57);
|
|
9526
9836
|
i0.ɵɵelementEnd();
|
|
9527
9837
|
} if (rf & 2) {
|
|
9528
9838
|
let tmp_19_0;
|
|
9529
|
-
const
|
|
9839
|
+
const col_r26 = ctx.$implicit;
|
|
9530
9840
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
9531
|
-
i0.ɵɵstyleProp("width",
|
|
9532
|
-
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.isFrozen(
|
|
9533
|
-
i0.ɵɵattribute("data-align",
|
|
9841
|
+
i0.ɵɵstyleProp("width", col_r26.width)("left", ctx_r1.frozenLeft(col_r26.field), "px");
|
|
9842
|
+
i0.ɵɵclassProp("kpt-data-table__cell--frozen", ctx_r1.isFrozen(col_r26.field));
|
|
9843
|
+
i0.ɵɵattribute("data-align", col_r26.align ?? "start");
|
|
9534
9844
|
i0.ɵɵadvance();
|
|
9535
|
-
i0.ɵɵconditional((tmp_19_0 =
|
|
9845
|
+
i0.ɵɵconditional((tmp_19_0 = col_r26.filter?.type) === "text" ? 1 : tmp_19_0 === "number" ? 2 : tmp_19_0 === "select" ? 3 : tmp_19_0 === "numberRange" ? 4 : tmp_19_0 === "slider" ? 5 : tmp_19_0 === "dateRange" ? 6 : -1);
|
|
9536
9846
|
} }
|
|
9537
|
-
function
|
|
9538
|
-
i0.ɵɵelementStart(0, "tr",
|
|
9539
|
-
i0.ɵɵconditionalCreate(1,
|
|
9540
|
-
i0.ɵɵconditionalCreate(2,
|
|
9541
|
-
i0.ɵɵrepeaterCreate(3,
|
|
9847
|
+
function KptDataTable_ng_template_22_Template(rf, ctx) { if (rf & 1) {
|
|
9848
|
+
i0.ɵɵelementStart(0, "tr", 51);
|
|
9849
|
+
i0.ɵɵconditionalCreate(1, KptDataTable_ng_template_22_Conditional_1_Template, 1, 4, "th", 9);
|
|
9850
|
+
i0.ɵɵconditionalCreate(2, KptDataTable_ng_template_22_Conditional_2_Template, 1, 4, "th", 10);
|
|
9851
|
+
i0.ɵɵrepeaterCreate(3, KptDataTable_ng_template_22_For_4_Template, 7, 8, "th", 30, _forTrack0$1);
|
|
9542
9852
|
i0.ɵɵelementEnd();
|
|
9543
9853
|
} if (rf & 2) {
|
|
9544
9854
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -9549,12 +9859,12 @@ function KptDataTable_ng_template_21_Template(rf, ctx) { if (rf & 1) {
|
|
|
9549
9859
|
i0.ɵɵadvance();
|
|
9550
9860
|
i0.ɵɵrepeater(ctx_r1.visibleOrderedColumns());
|
|
9551
9861
|
} }
|
|
9552
|
-
function
|
|
9553
|
-
const
|
|
9862
|
+
function KptDataTable_Conditional_24_Template(rf, ctx) { if (rf & 1) {
|
|
9863
|
+
const _r32 = i0.ɵɵgetCurrentView();
|
|
9554
9864
|
i0.ɵɵelementStart(0, "div", 12);
|
|
9555
9865
|
i0.ɵɵprojection(1);
|
|
9556
|
-
i0.ɵɵelementStart(2, "kpt-paginator",
|
|
9557
|
-
i0.ɵɵlistener("pageIndexChange", function
|
|
9866
|
+
i0.ɵɵelementStart(2, "kpt-paginator", 64);
|
|
9867
|
+
i0.ɵɵlistener("pageIndexChange", function KptDataTable_Conditional_24_Template_kpt_paginator_pageIndexChange_2_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.pageIndex.set($event)); })("pageSizeChange", function KptDataTable_Conditional_24_Template_kpt_paginator_pageSizeChange_2_listener($event) { i0.ɵɵrestoreView(_r32); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.pageSizeState.set($event)); });
|
|
9558
9868
|
i0.ɵɵelementEnd()();
|
|
9559
9869
|
} if (rf & 2) {
|
|
9560
9870
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -9637,6 +9947,15 @@ class KptDataTable {
|
|
|
9637
9947
|
this.expandable = input(false, { ...(ngDevMode ? { debugName: "expandable" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
9638
9948
|
/** Zezwala na rozwinięcie wielu wierszy naraz (domyślnie tak). */
|
|
9639
9949
|
this.multiExpand = input(true, { ...(ngDevMode ? { debugName: "multiExpand" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
9950
|
+
/** Etykieta wiersza podsumowania; bez wartości używa i18n (`dataTable.total`). */
|
|
9951
|
+
this.summaryLabel = input(/* @ts-ignore */
|
|
9952
|
+
...(ngDevMode ? [undefined, { debugName: "summaryLabel" }] : /* istanbul ignore next */ []));
|
|
9953
|
+
/**
|
|
9954
|
+
* Gotowe wartości podsumowania (pole → wartość). Nadpisują wyliczenia po stronie klienta,
|
|
9955
|
+
* a w trybie `lazy` są ich jedynym źródłem (tabela ma wtedy tylko bieżącą stronę).
|
|
9956
|
+
*/
|
|
9957
|
+
this.summaryValues = input(null, /* @ts-ignore */
|
|
9958
|
+
...(ngDevMode ? [{ debugName: "summaryValues" }] : /* istanbul ignore next */ []));
|
|
9640
9959
|
// ── Model / zdarzenia ──
|
|
9641
9960
|
this.selection = model([], /* @ts-ignore */
|
|
9642
9961
|
...(ngDevMode ? [{ debugName: "selection" }] : /* istanbul ignore next */ []));
|
|
@@ -9804,12 +10123,65 @@ class KptDataTable {
|
|
|
9804
10123
|
return rows.slice(start, start + size);
|
|
9805
10124
|
}, /* @ts-ignore */
|
|
9806
10125
|
...(ngDevMode ? [{ debugName: "paged" }] : /* istanbul ignore next */ []));
|
|
9807
|
-
|
|
9808
|
-
|
|
9809
|
-
|
|
10126
|
+
/** Wiodące kolumny systemowe (rozwijanie + zaznaczanie) — poza `visibleOrderedColumns()`. */
|
|
10127
|
+
this.leadingCells = computed(() => (this.selectable() !== 'none' ? 1 : 0) + (this.hasRowDetail() ? 1 : 0), /* @ts-ignore */
|
|
10128
|
+
...(ngDevMode ? [{ debugName: "leadingCells" }] : /* istanbul ignore next */ []));
|
|
10129
|
+
this.colspan = computed(() => this.visibleOrderedColumns().length + this.leadingCells(), /* @ts-ignore */
|
|
9810
10130
|
...(ngDevMode ? [{ debugName: "colspan" }] : /* istanbul ignore next */ []));
|
|
9811
10131
|
this.displayCount = computed(() => this.virtualScroll() ? this.sorted().length : this.paged().length, /* @ts-ignore */
|
|
9812
10132
|
...(ngDevMode ? [{ debugName: "displayCount" }] : /* istanbul ignore next */ []));
|
|
10133
|
+
// ── Wiersz podsumowania (tfoot) ──
|
|
10134
|
+
/** Etykieta wiersza podsumowania (input albo domyślna z i18n). */
|
|
10135
|
+
this.summaryLabelText = computed(() => this.summaryLabel() ?? this.i18n.t('dataTable.total'), /* @ts-ignore */
|
|
10136
|
+
...(ngDevMode ? [{ debugName: "summaryLabelText" }] : /* istanbul ignore next */ []));
|
|
10137
|
+
/**
|
|
10138
|
+
* Zbiór do agregacji: wszystkie wiersze po filtrach (a więc ze wszystkich stron — `paged()`
|
|
10139
|
+
* tnie dopiero po tym kroku). Przy `lazy` tabela ma tylko bieżącą stronę, więc nie liczy nic
|
|
10140
|
+
* sama — jedynym źródłem jest wtedy `summaryValues`.
|
|
10141
|
+
*/
|
|
10142
|
+
this.summarySource = computed(() => this.lazy() ? [] : this.filtered(), /* @ts-ignore */
|
|
10143
|
+
...(ngDevMode ? [{ debugName: "summarySource" }] : /* istanbul ignore next */ []));
|
|
10144
|
+
/** Pola z podsumowaniem: kolumny z `summary` (tylko widoczne) + klucze podane w `summaryValues`. */
|
|
10145
|
+
this.summaryFields = computed(() => {
|
|
10146
|
+
const cols = this.visibleOrderedColumns();
|
|
10147
|
+
const overrides = this.summaryValues() ?? {};
|
|
10148
|
+
return cols.filter((c) => c.summary || c.field in overrides).map((c) => c.field);
|
|
10149
|
+
}, /* @ts-ignore */
|
|
10150
|
+
...(ngDevMode ? [{ debugName: "summaryFields" }] : /* istanbul ignore next */ []));
|
|
10151
|
+
this.hasSummary = computed(() => this.summaryFields().length > 0, /* @ts-ignore */
|
|
10152
|
+
...(ngDevMode ? [{ debugName: "hasSummary" }] : /* istanbul ignore next */ []));
|
|
10153
|
+
/** Indeks pierwszej podsumowywanej kolumny — do niej scala się etykieta. */
|
|
10154
|
+
this.summaryStartIndex = computed(() => {
|
|
10155
|
+
const first = this.summaryFields()[0];
|
|
10156
|
+
return first === undefined ? -1 : this.visibleOrderedColumns().findIndex((c) => c.field === first);
|
|
10157
|
+
}, /* @ts-ignore */
|
|
10158
|
+
...(ngDevMode ? [{ debugName: "summaryStartIndex" }] : /* istanbul ignore next */ []));
|
|
10159
|
+
/**
|
|
10160
|
+
* Colspan komórki z etykietą: kolumny systemowe + kolumny przed pierwszą podsumowywaną.
|
|
10161
|
+
* Zero (pierwsza widoczna kolumna jest liczona) = etykieta nie ma się gdzie zmieścić i nie
|
|
10162
|
+
* renderuje się wcale.
|
|
10163
|
+
*/
|
|
10164
|
+
this.summaryLabelSpan = computed(() => this.leadingCells() + this.summaryStartIndex(), /* @ts-ignore */
|
|
10165
|
+
...(ngDevMode ? [{ debugName: "summaryLabelSpan" }] : /* istanbul ignore next */ []));
|
|
10166
|
+
/** Gotowe teksty komórek podsumowania (pole → tekst); pusty string dla braku wartości. */
|
|
10167
|
+
this.summaryTexts = computed(() => {
|
|
10168
|
+
const rows = this.summarySource();
|
|
10169
|
+
const overrides = this.summaryValues() ?? {};
|
|
10170
|
+
const map = new Map();
|
|
10171
|
+
for (const col of this.visibleOrderedColumns()) {
|
|
10172
|
+
if (!col.summary && !(col.field in overrides))
|
|
10173
|
+
continue;
|
|
10174
|
+
const raw = col.field in overrides
|
|
10175
|
+
? overrides[col.field]
|
|
10176
|
+
: typeof col.summary.fn === 'function'
|
|
10177
|
+
? col.summary.fn(rows)
|
|
10178
|
+
: aggregate(rows, col.field, col.summary.fn);
|
|
10179
|
+
const format = col.summary?.format;
|
|
10180
|
+
map.set(col.field, format ? format(raw) : raw == null ? '' : String(raw));
|
|
10181
|
+
}
|
|
10182
|
+
return map;
|
|
10183
|
+
}, /* @ts-ignore */
|
|
10184
|
+
...(ngDevMode ? [{ debugName: "summaryTexts" }] : /* istanbul ignore next */ []));
|
|
9813
10185
|
/** Mapa pole → przesunięcie left (px) dla wiodących zamrożonych kolumn. */
|
|
9814
10186
|
/** Suma szerokości wiodących kolumn systemowych (rozwijanie + zaznaczanie) w px. */
|
|
9815
10187
|
this.leadingStickyWidth = computed(() => {
|
|
@@ -10149,6 +10521,9 @@ class KptDataTable {
|
|
|
10149
10521
|
}
|
|
10150
10522
|
});
|
|
10151
10523
|
}
|
|
10524
|
+
summaryText(field) {
|
|
10525
|
+
return this.summaryTexts().get(field) ?? '';
|
|
10526
|
+
}
|
|
10152
10527
|
// ── Kolumny zamrożone (sticky, wiodące) ──
|
|
10153
10528
|
parseWidthPx(width) {
|
|
10154
10529
|
if (!width)
|
|
@@ -10245,7 +10620,7 @@ class KptDataTable {
|
|
|
10245
10620
|
i0.ɵɵqueryAdvance(3);
|
|
10246
10621
|
} }, hostAttrs: [1, "kpt-data-table"], hostVars: 2, hostBindings: function KptDataTable_HostBindings(rf, ctx) { if (rf & 2) {
|
|
10247
10622
|
i0.ɵɵstyleProp("--%NS%kpt-thead-offset", ctx.theadOffset() + "px");
|
|
10248
|
-
} }, inputs: { columns: [1, "columns"], data: [1, "data"], filterable: [1, "filterable"], filterRowPosition: [1, "filterRowPosition"], pageSize: [1, "pageSize"], pageSizeOptions: [1, "pageSizeOptions"], selectable: [1, "selectable"], loading: [1, "loading"], emptyMessage: [1, "emptyMessage"], rowKey: [1, "rowKey"], scrollHeight: [1, "scrollHeight"], virtualScroll: [1, "virtualScroll"], rowHeight: [1, "rowHeight"], reorderable: [1, "reorderable"], exportable: [1, "exportable"], exportFilename: [1, "exportFilename"], lazy: [1, "lazy"], totalRecords: [1, "totalRecords"], expandable: [1, "expandable"], multiExpand: [1, "multiExpand"], selection: [1, "selection"], expandedRows: [1, "expandedRows"], hiddenFields: [1, "hiddenFields"] }, outputs: { selection: "selectionChange", expandedRows: "expandedRowsChange", hiddenFields: "hiddenFieldsChange", rowClick: "rowClick", lazyLoad: "lazyLoad", cellEdit: "cellEdit" }, ngContentSelectors: _c4, decls:
|
|
10623
|
+
} }, inputs: { columns: [1, "columns"], data: [1, "data"], filterable: [1, "filterable"], filterRowPosition: [1, "filterRowPosition"], pageSize: [1, "pageSize"], pageSizeOptions: [1, "pageSizeOptions"], selectable: [1, "selectable"], loading: [1, "loading"], emptyMessage: [1, "emptyMessage"], rowKey: [1, "rowKey"], scrollHeight: [1, "scrollHeight"], virtualScroll: [1, "virtualScroll"], rowHeight: [1, "rowHeight"], reorderable: [1, "reorderable"], exportable: [1, "exportable"], exportFilename: [1, "exportFilename"], lazy: [1, "lazy"], totalRecords: [1, "totalRecords"], expandable: [1, "expandable"], multiExpand: [1, "multiExpand"], summaryLabel: [1, "summaryLabel"], summaryValues: [1, "summaryValues"], selection: [1, "selection"], expandedRows: [1, "expandedRows"], hiddenFields: [1, "hiddenFields"] }, outputs: { selection: "selectionChange", expandedRows: "expandedRowsChange", hiddenFields: "hiddenFieldsChange", rowClick: "rowClick", lazyLoad: "lazyLoad", cellEdit: "cellEdit" }, ngContentSelectors: _c4, decls: 25, vars: 14, consts: [["scrollEl", ""], ["theadEl", ""], ["rowTpl", ""], ["filterRowTpl", ""], ["editorHost", ""], [1, "kpt-data-table__toolbar"], [1, "kpt-data-table__scroll", 3, "scroll"], [1, "kpt-data-table__table"], [3, "ngTemplateOutlet"], [1, "kpt-data-table__expander", 3, "kpt-data-table__cell--frozen", "left"], [1, "kpt-data-table__checkbox", 3, "kpt-data-table__cell--frozen", "left"], [3, "width", "left", "kpt-data-table__cell--frozen", "kpt-data-table__th--sortable", "kpt-data-table__th--draggable", "kpt-data-table__th--dragover"], [1, "kpt-data-table__pager"], ["type", "search", 1, "kpt-data-table__filter", 3, "value"], ["variant", "outline", "size", "sm"], ["type", "search", 1, "kpt-data-table__filter", 3, "input", "value"], ["variant", "outline", "size", "sm", 3, "click"], [1, "kpt-data-table__expander"], [1, "kpt-data-table__checkbox"], ["type", "checkbox", 3, "change", "checked", "indeterminate"], [3, "click", "dragstart", "dragover", "drop", "dragend"], ["name", "grip-vertical", 1, "kpt-data-table__grip"], [1, "kpt-data-table__sort", 3, "kpt-data-table__sort--active", "name"], [1, "kpt-data-table__sort", 3, "name"], [1, "kpt-data-table__state"], ["aria-hidden", "true", 1, "kpt-data-table__spacer"], [3, "ngTemplateOutlet", "ngTemplateOutletContext"], [1, "kpt-data-table__summary"], [1, "kpt-data-table__summary-label", 3, "kpt-data-table__cell--frozen", "left"], [1, "kpt-data-table__summary-label"], [3, "width", "left", "kpt-data-table__cell--frozen"], [3, "click"], [3, "left", "kpt-data-table__cell--frozen", "kpt-data-table__cell--editable"], [1, "kpt-data-table__detail-row"], ["type", "button", 1, "kpt-data-table__expander-btn", 3, "click"], ["name", "chevron-right"], ["type", "checkbox", 3, "click", "change", "checked"], [3, "click", "keydown.enter"], [1, "kpt-data-table__editor"], [1, "kpt-data-table__editor", 3, "click", "focusout"], [3, "value", "placeholder"], [3, "value", "min", "max", "step"], [3, "value", "open"], [3, "options", "placeholder", "value", "open"], ["multiple", "", "filter", "", 3, "options", "placeholder", "value", "open"], [3, "valueChange", "keydown.enter", "keydown.escape", "value", "placeholder"], [3, "valueChange", "keydown.enter", "keydown.escape", "value", "min", "max", "step"], [3, "valueChange", "openChange", "value", "open"], [3, "valueChange", "openChange", "options", "placeholder", "value", "open"], ["multiple", "", "filter", "", 3, "valueChange", "openChange", "options", "placeholder", "value", "open"], [1, "kpt-data-table__detail"], [1, "kpt-data-table__filter-row"], ["type", "search", 1, "kpt-data-table__fcell", 3, "value"], ["type", "text", "inputmode", "numeric", 1, "kpt-data-table__fcell", 3, "value"], ["filter", "", 3, "options", "multiple", "placeholder", "value"], [1, "kpt-data-table__frange"], [1, "kpt-data-table__fslider"], [3, "placeholder", "value"], ["type", "search", 1, "kpt-data-table__fcell", 3, "input", "click", "value"], ["type", "text", "inputmode", "numeric", 1, "kpt-data-table__fcell", 3, "input", "click", "value"], ["filter", "", 3, "valueChange", "options", "multiple", "placeholder", "value"], [1, "kpt-data-table__fslider", 3, "click"], ["range", "", "showValue", "", 3, "valueChange", "min", "max", "step", "value"], [3, "valueChange", "placeholder", "value"], [3, "pageIndexChange", "pageSizeChange", "length", "pageIndex", "pageSize", "pageSizeOptions"]], template: function KptDataTable_Template(rf, ctx) { if (rf & 1) {
|
|
10249
10624
|
i0.ɵɵprojectionDef(_c3);
|
|
10250
10625
|
i0.ɵɵconditionalCreate(0, KptDataTable_Conditional_0_Template, 3, 2, "div", 5);
|
|
10251
10626
|
i0.ɵɵelementStart(1, "div", 6, 0);
|
|
@@ -10261,9 +10636,11 @@ class KptDataTable {
|
|
|
10261
10636
|
i0.ɵɵelementEnd();
|
|
10262
10637
|
i0.ɵɵelementStart(14, "tbody");
|
|
10263
10638
|
i0.ɵɵconditionalCreate(15, KptDataTable_Conditional_15_Template, 3, 2, "tr")(16, KptDataTable_Conditional_16_Template, 3, 2, "tr")(17, KptDataTable_Conditional_17_Template, 4, 2)(18, KptDataTable_Conditional_18_Template, 2, 0);
|
|
10264
|
-
i0.ɵɵelementEnd()
|
|
10265
|
-
i0.ɵɵ
|
|
10266
|
-
i0.ɵɵ
|
|
10639
|
+
i0.ɵɵelementEnd();
|
|
10640
|
+
i0.ɵɵconditionalCreate(19, KptDataTable_Conditional_19_Template, 5, 1, "tfoot");
|
|
10641
|
+
i0.ɵɵelementEnd()();
|
|
10642
|
+
i0.ɵɵtemplate(20, KptDataTable_ng_template_20_Template, 6, 9, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor)(22, KptDataTable_ng_template_22_Template, 5, 2, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
|
|
10643
|
+
i0.ɵɵconditionalCreate(24, KptDataTable_Conditional_24_Template, 3, 4, "div", 12);
|
|
10267
10644
|
} if (rf & 2) {
|
|
10268
10645
|
i0.ɵɵconditional(ctx.filterable() || ctx.exportable() ? 0 : -1);
|
|
10269
10646
|
i0.ɵɵadvance();
|
|
@@ -10282,8 +10659,10 @@ class KptDataTable {
|
|
|
10282
10659
|
i0.ɵɵconditional(ctx.hasColumnFilters() && ctx.filterRowPosition() === "bottom" ? 13 : -1);
|
|
10283
10660
|
i0.ɵɵadvance(2);
|
|
10284
10661
|
i0.ɵɵconditional(ctx.loading() ? 15 : ctx.displayCount() === 0 ? 16 : ctx.virtualScroll() ? 17 : 18);
|
|
10285
|
-
i0.ɵɵadvance(
|
|
10286
|
-
i0.ɵɵconditional(ctx.
|
|
10662
|
+
i0.ɵɵadvance(4);
|
|
10663
|
+
i0.ɵɵconditional(ctx.hasSummary() && !ctx.loading() && ctx.displayCount() > 0 ? 19 : -1);
|
|
10664
|
+
i0.ɵɵadvance(5);
|
|
10665
|
+
i0.ɵɵconditional(ctx.pageSize() > 0 && !ctx.virtualScroll() ? 24 : -1);
|
|
10287
10666
|
} }, dependencies: [NgTemplateOutlet,
|
|
10288
10667
|
KptButton,
|
|
10289
10668
|
KptIcon,
|
|
@@ -10293,7 +10672,7 @@ class KptDataTable {
|
|
|
10293
10672
|
KptSlider,
|
|
10294
10673
|
KptInput,
|
|
10295
10674
|
KptInputNumber,
|
|
10296
|
-
KptDatepicker], styles: ["@layer kpt.components{.kpt-data-table{display:flex;flex-direction:column;background:var(--%NS%kpt-table-bg);color:var(--%NS%kpt-table-fg);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border);border-radius:var(--%NS%kpt-table-radius, .75rem);overflow:hidden;flex-grow:1}.kpt-data-table__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--%NS%kpt-space-3, .75rem);padding:var(--%NS%kpt-space-3, .75rem);border-bottom:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border)}.kpt-data-table__filter{width:100%;max-width:20rem;height:2.25rem;padding-inline:var(--%NS%kpt-space-3, .75rem);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-form-field-radius, .5rem);background:var(--%NS%kpt-form-field-bg);color:var(--%NS%kpt-form-field-text)}.kpt-data-table__filter:focus-visible{outline:none;border-color:var(--%NS%kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--%NS%kpt-form-field-border-focus) 30%,transparent)}.kpt-data-table__scroll{overflow:auto}.kpt-data-table__pager{display:flex;align-items:center;gap:var(--%NS%kpt-space-2, .5rem)}.kpt-data-table__pager [kptPaginatorActions]{margin-inline-start:.5rem}.kpt-data-table__pager kpt-paginator{flex:1 1 auto;min-width:0}.kpt-data-table__table{width:100%;border-collapse:collapse;font-size:var(--%NS%kpt-font-size-sm, .875rem)}.kpt-data-table__table--frozen{width:max-content;min-width:100%}.kpt-data-table__table th,.kpt-data-table__table td{padding:var(--%NS%kpt-table-cell-padding, .75rem);text-align:start;border-bottom:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border)}.kpt-data-table__table th[data-align=center],.kpt-data-table__table td[data-align=center]{text-align:center}.kpt-data-table__table th[data-align=end],.kpt-data-table__table td[data-align=end]{text-align:end}.kpt-data-table__table thead th{position:sticky;top:0;z-index:1;background:var(--%NS%kpt-table-header-bg);color:var(--%NS%kpt-table-header-fg);font-weight:var(--%NS%kpt-font-weight-semibold, 600);white-space:nowrap;-webkit-user-select:none;user-select:none}.kpt-data-table__table thead tr:nth-child(2) th{top:var(--%NS%kpt-thead-offset, 0px)}.kpt-data-table__filter-row th{padding:var(--%NS%kpt-space-2, .5rem);font-weight:var(--%NS%kpt-font-weight-normal, 400);cursor:auto}.kpt-data-table__fcell{width:100%;height:2rem;padding-inline:var(--%NS%kpt-space-2, .5rem);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-form-field-radius, .5rem);background:var(--%NS%kpt-form-field-bg);color:var(--%NS%kpt-form-field-text);font:inherit}.kpt-data-table__fcell:focus-visible{outline:none;border-color:var(--%NS%kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--%NS%kpt-form-field-border-focus) 30%,transparent)}.kpt-data-table__filter-row kpt-select,.kpt-data-table__filter-row kpt-date-range{display:block;width:100%;font-weight:var(--%NS%kpt-font-weight-normal, 400)}.kpt-data-table__frange{display:flex;gap:var(--%NS%kpt-space-2, .5rem)}.kpt-data-table__frange .kpt-data-table__fcell{min-width:0}.kpt-data-table__fslider .kpt-slider-host{width:100%}.kpt-data-table__fslider .kpt-slider__value{min-width:auto;font-size:var(--%NS%kpt-font-size-xs, .75rem);color:var(--%NS%kpt-color-on-surface-muted)}.kpt-data-table__th--sortable{cursor:pointer}.kpt-data-table__th--%NS%sortable:hover{color:var(--%NS%kpt-color-on-surface)}.kpt-data-table__cell--editable{cursor:pointer}.kpt-data-table__cell--%NS%editable:hover{background:var(--%NS%kpt-table-row-hover)}.kpt-data-table__cell--%NS%editable:focus-visible{outline:var(--%NS%kpt-border-width-medium, 2px) solid var(--%NS%kpt-color-focus-ring);outline-offset:-2px}.kpt-data-table__editor{display:block;min-width:8rem}.kpt-data-table__editor .kpt-input-number-host{max-width:6.5rem}.kpt-data-table__editor .kpt-input-number__btn{width:1.75rem}.kpt-data-table__sort{margin-inline-start:.35em;opacity:.35}.kpt-data-table__sort--active{opacity:1}.kpt-data-table__th--draggable{cursor:grab}.kpt-data-table__th--%NS%draggable:active{cursor:grabbing}.kpt-data-table__th--dragover{box-shadow:inset 2px 0 0 0 var(--%NS%kpt-color-primary)}.kpt-data-table__grip{margin-inline-end:.4em;opacity:.45}.kpt-data-table__checkbox{width:1px;white-space:nowrap;text-align:center}.kpt-data-table__checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;display:inline-block;width:1.15rem;height:1.15rem;margin:0;vertical-align:middle;cursor:pointer;border:var(--%NS%kpt-border-width-medium, 2px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-radius-sm, .25rem);background:var(--%NS%kpt-form-field-bg);transition:background-color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard),border-color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard)}.kpt-data-table__checkbox input[type=checkbox]:after{content:\"\";position:absolute;inset:0;opacity:0;background-color:var(--%NS%kpt-color-on-primary);transition:opacity var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard);-webkit-mask:no-repeat center/.85rem;mask:no-repeat center/.85rem}.kpt-data-table__checkbox input[type=checkbox]:checked,.kpt-data-table__checkbox input[type=checkbox]:indeterminate{background:var(--%NS%kpt-color-primary);border-color:var(--%NS%kpt-color-primary)}.kpt-data-table__checkbox input[type=checkbox]:checked:after{opacity:1;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4.5 6.5 11 3 7.5' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4.5 6.5 11 3 7.5' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\")}.kpt-data-table__checkbox input[type=checkbox]:indeterminate:after{opacity:1;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8h9' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8h9' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E\")}.kpt-data-table__checkbox input[type=checkbox]:focus-visible{outline:var(--%NS%kpt-border-width-medium, 2px) solid var(--%NS%kpt-color-focus-ring);outline-offset:2px}.kpt-data-table__expander{width:2.5rem;min-width:2.5rem;text-align:center;white-space:nowrap}.kpt-data-table__expander-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:transparent;color:var(--%NS%kpt-color-on-surface-muted);cursor:pointer;transition:background-color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard),color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard)}.kpt-data-table__expander-btn kpt-icon{display:inline-flex;transition:transform var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard)}.kpt-data-table__expander-btn:hover{background:var(--%NS%kpt-table-row-hover);color:var(--%NS%kpt-color-on-surface)}.kpt-data-table__expander-btn:focus-visible{outline:var(--%NS%kpt-border-width-medium, 2px) solid var(--%NS%kpt-color-focus-ring);outline-offset:2px}.kpt-data-table__expander-btn--open{color:var(--%NS%kpt-color-primary)}.kpt-data-table__expander-btn--open kpt-icon{transform:rotate(90deg)}.kpt-data-table__detail-row>.kpt-data-table__detail{padding:var(--%NS%kpt-space-4, 1rem);background:var(--%NS%kpt-table-detail-bg, var(--%NS%kpt-color-surface-variant, var(--%NS%kpt-table-row-hover)));border-bottom:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border);box-shadow:inset 3px 0 0 0 var(--%NS%kpt-color-primary)}.kpt-data-table tbody tr{transition:background-color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard)}.kpt-data-table tbody tr:hover{background:var(--%NS%kpt-table-row-hover)}.kpt-data-table tbody tr.kpt-data-table__detail-row:hover{background:transparent}.kpt-data-table__row--selected{background:var(--%NS%kpt-table-row-selected)!important}.kpt-data-table__row--expanded{background:var(--%NS%kpt-table-row-hover)}.kpt-data-table__table--frozen .kpt-data-table__checkbox{width:3rem;min-width:3rem}.kpt-data-table__table--frozen .kpt-data-table__expander{width:2.5rem;min-width:2.5rem}.kpt-data-table__cell--frozen{position:sticky;z-index:1;background:var(--%NS%kpt-table-bg);border-inline-end:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border)}.kpt-data-table thead th.kpt-data-table__cell--frozen{z-index:3;background:var(--%NS%kpt-table-header-bg)}.kpt-data-table tbody tr:hover .kpt-data-table__cell--frozen{background:var(--%NS%kpt-table-row-hover)}.kpt-data-table__row--selected.kpt-data-table__row--selected .kpt-data-table__cell--frozen,.kpt-data-table tbody tr.kpt-data-table__row--selected .kpt-data-table__cell--frozen{background:var(--%NS%kpt-table-row-selected)}.kpt-data-table__state{padding:var(--%NS%kpt-space-8, 2rem)!important;text-align:center!important;color:var(--%NS%kpt-color-on-surface-muted)}.kpt-data-table__table--virtual td{padding-block:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.kpt-data-table__spacer td{padding:0!important;border:0!important}.kpt-data-table tbody tr:last-child td{border-bottom:0}}\n"], encapsulation: 2 }); }
|
|
10675
|
+
KptDatepicker], styles: ["@layer kpt.components{.kpt-data-table{display:flex;flex-direction:column;background:var(--%NS%kpt-table-bg);color:var(--%NS%kpt-table-fg);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border);border-radius:var(--%NS%kpt-table-radius, .75rem);overflow:hidden;flex-grow:1}.kpt-data-table__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--%NS%kpt-space-3, .75rem);padding:var(--%NS%kpt-space-3, .75rem);border-bottom:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border)}.kpt-data-table__filter{width:100%;max-width:20rem;height:2.25rem;padding-inline:var(--%NS%kpt-space-3, .75rem);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-form-field-radius, .5rem);background:var(--%NS%kpt-form-field-bg);color:var(--%NS%kpt-form-field-text)}.kpt-data-table__filter:focus-visible{outline:none;border-color:var(--%NS%kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--%NS%kpt-form-field-border-focus) 30%,transparent)}.kpt-data-table__scroll{overflow:auto}.kpt-data-table__pager{display:flex;align-items:center;gap:var(--%NS%kpt-space-2, .5rem)}.kpt-data-table__pager [kptPaginatorActions]{margin-inline-start:.5rem}.kpt-data-table__pager kpt-paginator{flex:1 1 auto;min-width:0}.kpt-data-table__table{width:100%;border-collapse:collapse;font-size:var(--%NS%kpt-font-size-sm, .875rem)}.kpt-data-table__table--frozen{width:max-content;min-width:100%}.kpt-data-table__table th,.kpt-data-table__table td{padding:var(--%NS%kpt-table-cell-padding, .75rem);text-align:start;border-bottom:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border)}.kpt-data-table__table th[data-align=center],.kpt-data-table__table td[data-align=center]{text-align:center}.kpt-data-table__table th[data-align=end],.kpt-data-table__table td[data-align=end]{text-align:end}.kpt-data-table__table thead th{position:sticky;top:0;z-index:1;background:var(--%NS%kpt-table-header-bg);color:var(--%NS%kpt-table-header-fg);font-weight:var(--%NS%kpt-font-weight-semibold, 600);white-space:nowrap;-webkit-user-select:none;user-select:none}.kpt-data-table__table thead tr:nth-child(2) th{top:var(--%NS%kpt-thead-offset, 0px)}.kpt-data-table__table tfoot th,.kpt-data-table__table tfoot td{position:sticky;bottom:0;z-index:1;background:var(--%NS%kpt-table-summary-bg, var(--%NS%kpt-table-header-bg));color:var(--%NS%kpt-table-header-fg);font-weight:var(--%NS%kpt-font-weight-semibold, 600);white-space:nowrap;border-bottom:0;border-top:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border)}.kpt-data-table__table .kpt-data-table__summary-label{text-align:end}.kpt-data-table__filter-row th{padding:var(--%NS%kpt-space-2, .5rem);font-weight:var(--%NS%kpt-font-weight-normal, 400);cursor:auto}.kpt-data-table__fcell{width:100%;height:2rem;padding-inline:var(--%NS%kpt-space-2, .5rem);border:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-form-field-radius, .5rem);background:var(--%NS%kpt-form-field-bg);color:var(--%NS%kpt-form-field-text);font:inherit}.kpt-data-table__fcell:focus-visible{outline:none;border-color:var(--%NS%kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--%NS%kpt-form-field-border-focus) 30%,transparent)}.kpt-data-table__filter-row kpt-select,.kpt-data-table__filter-row kpt-date-range{display:block;width:100%;font-weight:var(--%NS%kpt-font-weight-normal, 400)}.kpt-data-table__frange{display:flex;gap:var(--%NS%kpt-space-2, .5rem)}.kpt-data-table__frange .kpt-data-table__fcell{min-width:0}.kpt-data-table__fslider .kpt-slider-host{width:100%}.kpt-data-table__fslider .kpt-slider__value{min-width:auto;font-size:var(--%NS%kpt-font-size-xs, .75rem);color:var(--%NS%kpt-color-on-surface-muted)}.kpt-data-table__th--sortable{cursor:pointer}.kpt-data-table__th--%NS%sortable:hover{color:var(--%NS%kpt-color-on-surface)}.kpt-data-table__cell--editable{cursor:pointer}.kpt-data-table__cell--%NS%editable:hover{background:var(--%NS%kpt-table-row-hover)}.kpt-data-table__cell--%NS%editable:focus-visible{outline:var(--%NS%kpt-border-width-medium, 2px) solid var(--%NS%kpt-color-focus-ring);outline-offset:-2px}.kpt-data-table__editor{display:block;min-width:8rem}.kpt-data-table__editor .kpt-input-number-host{max-width:6.5rem}.kpt-data-table__editor .kpt-input-number__btn{width:1.75rem}.kpt-data-table__sort{margin-inline-start:.35em;opacity:.35}.kpt-data-table__sort--active{opacity:1}.kpt-data-table__th--draggable{cursor:grab}.kpt-data-table__th--%NS%draggable:active{cursor:grabbing}.kpt-data-table__th--dragover{box-shadow:inset 2px 0 0 0 var(--%NS%kpt-color-primary)}.kpt-data-table__grip{margin-inline-end:.4em;opacity:.45}.kpt-data-table__checkbox{width:1px;white-space:nowrap;text-align:center}.kpt-data-table__checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;display:inline-block;width:1.15rem;height:1.15rem;margin:0;vertical-align:middle;cursor:pointer;border:var(--%NS%kpt-border-width-medium, 2px) solid var(--%NS%kpt-form-field-border);border-radius:var(--%NS%kpt-radius-sm, .25rem);background:var(--%NS%kpt-form-field-bg);transition:background-color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard),border-color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard)}.kpt-data-table__checkbox input[type=checkbox]:after{content:\"\";position:absolute;inset:0;opacity:0;background-color:var(--%NS%kpt-color-on-primary);transition:opacity var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard);-webkit-mask:no-repeat center/.85rem;mask:no-repeat center/.85rem}.kpt-data-table__checkbox input[type=checkbox]:checked,.kpt-data-table__checkbox input[type=checkbox]:indeterminate{background:var(--%NS%kpt-color-primary);border-color:var(--%NS%kpt-color-primary)}.kpt-data-table__checkbox input[type=checkbox]:checked:after{opacity:1;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4.5 6.5 11 3 7.5' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4.5 6.5 11 3 7.5' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\")}.kpt-data-table__checkbox input[type=checkbox]:indeterminate:after{opacity:1;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8h9' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8h9' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E\")}.kpt-data-table__checkbox input[type=checkbox]:focus-visible{outline:var(--%NS%kpt-border-width-medium, 2px) solid var(--%NS%kpt-color-focus-ring);outline-offset:2px}.kpt-data-table__expander{width:2.5rem;min-width:2.5rem;text-align:center;white-space:nowrap}.kpt-data-table__expander-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:var(--%NS%kpt-radius-sm, .25rem);background:transparent;color:var(--%NS%kpt-color-on-surface-muted);cursor:pointer;transition:background-color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard),color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard)}.kpt-data-table__expander-btn kpt-icon{display:inline-flex;transition:transform var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard)}.kpt-data-table__expander-btn:hover{background:var(--%NS%kpt-table-row-hover);color:var(--%NS%kpt-color-on-surface)}.kpt-data-table__expander-btn:focus-visible{outline:var(--%NS%kpt-border-width-medium, 2px) solid var(--%NS%kpt-color-focus-ring);outline-offset:2px}.kpt-data-table__expander-btn--open{color:var(--%NS%kpt-color-primary)}.kpt-data-table__expander-btn--open kpt-icon{transform:rotate(90deg)}.kpt-data-table__detail-row>.kpt-data-table__detail{padding:var(--%NS%kpt-space-4, 1rem);background:var(--%NS%kpt-table-detail-bg, var(--%NS%kpt-color-surface-variant, var(--%NS%kpt-table-row-hover)));border-bottom:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border);box-shadow:inset 3px 0 0 0 var(--%NS%kpt-color-primary)}.kpt-data-table tbody tr{transition:background-color var(--%NS%kpt-motion-duration-fast, .12s) var(--%NS%kpt-motion-easing-standard)}.kpt-data-table tbody tr:hover{background:var(--%NS%kpt-table-row-hover)}.kpt-data-table tbody tr.kpt-data-table__detail-row:hover{background:transparent}.kpt-data-table__row--selected{background:var(--%NS%kpt-table-row-selected)!important}.kpt-data-table__row--expanded{background:var(--%NS%kpt-table-row-hover)}.kpt-data-table__table--frozen .kpt-data-table__checkbox{width:3rem;min-width:3rem}.kpt-data-table__table--frozen .kpt-data-table__expander{width:2.5rem;min-width:2.5rem}.kpt-data-table__cell--frozen{position:sticky;z-index:1;background:var(--%NS%kpt-table-bg);border-inline-end:var(--%NS%kpt-border-width-thin, 1px) solid var(--%NS%kpt-table-border)}.kpt-data-table thead th.kpt-data-table__cell--frozen{z-index:3;background:var(--%NS%kpt-table-header-bg)}.kpt-data-table tfoot th.kpt-data-table__cell--frozen,.kpt-data-table tfoot td.kpt-data-table__cell--frozen{z-index:3;background:var(--%NS%kpt-table-summary-bg, var(--%NS%kpt-table-header-bg))}.kpt-data-table tbody tr:hover .kpt-data-table__cell--frozen{background:var(--%NS%kpt-table-row-hover)}.kpt-data-table__row--selected.kpt-data-table__row--selected .kpt-data-table__cell--frozen,.kpt-data-table tbody tr.kpt-data-table__row--selected .kpt-data-table__cell--frozen{background:var(--%NS%kpt-table-row-selected)}.kpt-data-table__state{padding:var(--%NS%kpt-space-8, 2rem)!important;text-align:center!important;color:var(--%NS%kpt-color-on-surface-muted)}.kpt-data-table__table--virtual td{padding-block:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.kpt-data-table__spacer td{padding:0!important;border:0!important}.kpt-data-table tbody tr:last-child td{border-bottom:0}}\n"], encapsulation: 2 }); }
|
|
10297
10676
|
}
|
|
10298
10677
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(KptDataTable, [{
|
|
10299
10678
|
type: Component,
|
|
@@ -10311,9 +10690,9 @@ class KptDataTable {
|
|
|
10311
10690
|
], host: {
|
|
10312
10691
|
'class': 'kpt-data-table',
|
|
10313
10692
|
'[style.--kpt-thead-offset]': "theadOffset() + 'px'",
|
|
10314
|
-
}, template: "@if (filterable() || exportable()) {\n <div class=\"kpt-data-table__toolbar\">\n @if (filterable()) {\n <input\n class=\"kpt-data-table__filter\"\n type=\"search\"\n [attr.placeholder]=\"i18n.t('dataTable.search')\"\n [value]=\"filterText()\"\n (input)=\"onFilter($event)\"\n />\n }\n @if (exportable()) {\n <kpt-button variant=\"outline\" size=\"sm\" (click)=\"exportCsv()\">{{ i18n.t('dataTable.exportCsv') }}</kpt-button>\n }\n </div>\n}\n\n<div class=\"kpt-data-table__scroll\" #scrollEl [style.max-height]=\"scrollHeight()\" (scroll)=\"onScroll($event)\">\n <table\n class=\"kpt-data-table__table\"\n [class.kpt-data-table__table--frozen]=\"hasFrozen()\"\n [class.kpt-data-table__table--virtual]=\"virtualScroll()\"\n >\n <thead #theadEl>\n @if (hasColumnFilters() && filterRowPosition() === 'top') {\n <ng-container [ngTemplateOutlet]=\"filterRowTpl\" />\n }\n <tr>\n @if (hasRowDetail()) {\n <th class=\"kpt-data-table__expander\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"expanderStickyLeft()\"></th>\n }\n @if (selectable() === 'multiple') {\n <th class=\"kpt-data-table__checkbox\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"checkboxStickyLeft()\">\n <input\n type=\"checkbox\"\n [checked]=\"pageAllSelected()\"\n [indeterminate]=\"pageSomeSelected()\"\n (change)=\"toggleAllOnPage()\"\n [attr.aria-label]=\"i18n.t('dataTable.selectAll')\"\n />\n </th>\n } @else if (selectable() === 'single') {\n <th class=\"kpt-data-table__checkbox\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"checkboxStickyLeft()\"></th>\n }\n @for (col of visibleOrderedColumns(); track col.field) {\n <th\n [attr.draggable]=\"isColDraggable(col) ? true : null\"\n [style.width]=\"col.width\"\n [style.left.px]=\"frozenLeft(col.field)\"\n [attr.data-align]=\"col.align ?? 'start'\"\n [class.kpt-data-table__cell--frozen]=\"isFrozen(col.field)\"\n [class.kpt-data-table__th--sortable]=\"col.sortable\"\n [class.kpt-data-table__th--draggable]=\"isColDraggable(col)\"\n [class.kpt-data-table__th--dragover]=\"dragField() !== null && dragField() !== col.field && !col.frozen\"\n [attr.aria-sort]=\"ariaSort(col)\"\n (click)=\"toggleSort(col)\"\n (dragstart)=\"onColDragStart(col.field, $event)\"\n (dragover)=\"reorderable() ? onColDragOver(col.field, $event) : null\"\n (drop)=\"reorderable() ? onColDrop(col.field, $event) : null\"\n (dragend)=\"onColDragEnd()\"\n >\n @if (isColDraggable(col)) {\n <kpt-icon class=\"kpt-data-table__grip\" name=\"grip-vertical\" />\n }\n <span>{{ col.header }}</span>\n @if (col.sortable) {\n <kpt-icon\n class=\"kpt-data-table__sort\"\n [class.kpt-data-table__sort--active]=\"ariaSort(col) !== 'none'\"\n [name]=\"sortIconName(col)\"\n />\n }\n </th>\n }\n </tr>\n @if (hasColumnFilters() && filterRowPosition() === 'bottom') {\n <ng-container [ngTemplateOutlet]=\"filterRowTpl\" />\n }\n </thead>\n <tbody>\n @if (loading()) {\n <tr><td class=\"kpt-data-table__state\" [attr.colspan]=\"colspan()\">{{ i18n.t('dataTable.loading') }}</td></tr>\n } @else if (displayCount() === 0) {\n <tr><td class=\"kpt-data-table__state\" [attr.colspan]=\"colspan()\">{{ emptyText() }}</td></tr>\n } @else if (virtualScroll()) {\n @if (topPad() > 0) {\n <tr class=\"kpt-data-table__spacer\" aria-hidden=\"true\"><td [attr.colspan]=\"colspan()\" [style.height.px]=\"topPad()\"></td></tr>\n }\n @for (row of virtualRows(); track trackRow(row)) {\n <ng-container [ngTemplateOutlet]=\"rowTpl\" [ngTemplateOutletContext]=\"{ $implicit: row }\" />\n }\n @if (bottomPad() > 0) {\n <tr class=\"kpt-data-table__spacer\" aria-hidden=\"true\"><td [attr.colspan]=\"colspan()\" [style.height.px]=\"bottomPad()\"></td></tr>\n }\n } @else {\n @for (row of paged(); track trackRow(row)) {\n <ng-container [ngTemplateOutlet]=\"rowTpl\" [ngTemplateOutletContext]=\"{ $implicit: row }\" />\n }\n }\n </tbody>\n </table>\n</div>\n\n<ng-template #rowTpl let-row>\n <tr\n [class.kpt-data-table__row--selected]=\"isSelected(row)\"\n [class.kpt-data-table__row--expanded]=\"hasRowDetail() && isExpanded(row)\"\n [style.height.px]=\"virtualScroll() ? rowHeight() : null\"\n (click)=\"onRowClick(row)\"\n >\n @if (hasRowDetail()) {\n <td class=\"kpt-data-table__expander\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"expanderStickyLeft()\">\n <button\n type=\"button\"\n class=\"kpt-data-table__expander-btn\"\n [class.kpt-data-table__expander-btn--open]=\"isExpanded(row)\"\n [attr.aria-expanded]=\"isExpanded(row)\"\n [attr.aria-label]=\"i18n.t('dataTable.expandRow')\"\n (click)=\"$event.stopPropagation(); toggleExpand(row)\"\n >\n <kpt-icon name=\"chevron-right\" />\n </button>\n </td>\n }\n @if (selectable() !== 'none') {\n <td class=\"kpt-data-table__checkbox\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"checkboxStickyLeft()\">\n <input\n type=\"checkbox\"\n [checked]=\"isSelected(row)\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"toggleRow(row)\"\n [attr.aria-label]=\"i18n.t('dataTable.selectRow')\"\n />\n </td>\n }\n @for (col of visibleOrderedColumns(); track col.field) {\n <td\n [attr.data-align]=\"col.align ?? 'start'\"\n [style.left.px]=\"frozenLeft(col.field)\"\n [class.kpt-data-table__cell--frozen]=\"isFrozen(col.field)\"\n [class.kpt-data-table__cell--editable]=\"isEditable(col) && !isEditingCell(row, col.field)\"\n [attr.tabindex]=\"isEditable(col) && !isEditingCell(row, col.field) ? 0 : null\"\n [attr.aria-label]=\"isEditable(col) && !isEditingCell(row, col.field) ? i18n.t('dataTable.editCell', { column: col.header }) : null\"\n (click)=\"isEditable(col) ? startEdit(row, col, $event) : null\"\n (keydown.enter)=\"isEditable(col) && !isEditingCell(row, col.field) ? startEdit(row, col, $event) : null\"\n >\n @if (isEditingCell(row, col.field)) {\n <div\n class=\"kpt-data-table__editor\"\n #editorHost\n (click)=\"$event.stopPropagation()\"\n (focusout)=\"onEditorFocusOut($event)\"\n >\n @if (cellEditTemplate(col.field); as etpl) {\n <ng-container\n [ngTemplateOutlet]=\"etpl\"\n [ngTemplateOutletContext]=\"{ $implicit: editingValue(), row, commit: commitEditValue, cancel: cancelEdit }\"\n />\n } @else {\n @switch (col.edit?.type) {\n @case ('text') {\n <kpt-input\n [value]=\"$any(editingValue()) ?? ''\"\n [placeholder]=\"col.edit.placeholder ?? ''\"\n (valueChange)=\"editingValue.set($event)\"\n (keydown.enter)=\"commitEdit()\"\n (keydown.escape)=\"cancelEdit()\"\n />\n }\n @case ('number') {\n <kpt-input-number\n [value]=\"$any(editingValue())\"\n [min]=\"col.edit.min\"\n [max]=\"col.edit.max\"\n [step]=\"col.edit.step ?? 1\"\n (valueChange)=\"editingValue.set($event)\"\n (keydown.enter)=\"commitEdit()\"\n (keydown.escape)=\"cancelEdit()\"\n />\n }\n @case ('date') {\n <kpt-datepicker\n [value]=\"$any(editingValue()) ?? ''\"\n (valueChange)=\"editingValue.set($event)\"\n [open]=\"editorPanelOpen()\"\n (openChange)=\"onEditorPanelToggle($event)\"\n />\n }\n @case ('select') {\n <kpt-select\n [options]=\"col.edit.options ?? []\"\n [placeholder]=\"col.edit.placeholder ?? ''\"\n [value]=\"editingValue()\"\n (valueChange)=\"editingValue.set($event)\"\n [open]=\"editorPanelOpen()\"\n (openChange)=\"onEditorPanelToggle($event)\"\n />\n }\n @case ('multiselect') {\n <kpt-select\n multiple\n filter\n [options]=\"col.edit.options ?? []\"\n [placeholder]=\"col.edit.placeholder ?? ''\"\n [value]=\"editingValue()\"\n (valueChange)=\"editingValue.set($event)\"\n [open]=\"editorPanelOpen()\"\n (openChange)=\"onEditorPanelToggle($event)\"\n />\n }\n }\n }\n </div>\n } @else if (cellTemplate(col.field); as tpl) {\n <ng-container\n [ngTemplateOutlet]=\"tpl\"\n [ngTemplateOutletContext]=\"{ $implicit: row, value: getValue(row, col.field) }\"\n />\n } @else {\n {{ getValue(row, col.field) }}\n }\n </td>\n }\n </tr>\n @if (hasRowDetail() && isExpanded(row) && !virtualScroll()) {\n <tr class=\"kpt-data-table__detail-row\">\n <td class=\"kpt-data-table__detail\" [attr.colspan]=\"colspan()\">\n <ng-container [ngTemplateOutlet]=\"rowDetailTpl()\" [ngTemplateOutletContext]=\"{ $implicit: row }\" />\n </td>\n </tr>\n }\n</ng-template>\n\n<ng-template #filterRowTpl>\n <tr class=\"kpt-data-table__filter-row\">\n @if (hasRowDetail()) {\n <th class=\"kpt-data-table__expander\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"expanderStickyLeft()\"></th>\n }\n @if (selectable() !== 'none') {\n <th class=\"kpt-data-table__checkbox\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"checkboxStickyLeft()\"></th>\n }\n @for (col of visibleOrderedColumns(); track col.field) {\n <th\n [style.width]=\"col.width\"\n [style.left.px]=\"frozenLeft(col.field)\"\n [attr.data-align]=\"col.align ?? 'start'\"\n [class.kpt-data-table__cell--frozen]=\"isFrozen(col.field)\"\n >\n @switch (col.filter?.type) {\n @case ('text') {\n <input\n class=\"kpt-data-table__fcell\"\n type=\"search\"\n [attr.placeholder]=\"col.filter.placeholder || ''\"\n [attr.aria-label]=\"i18n.t('dataTable.filter', { column: col.header })\"\n [value]=\"$any(columnFilters()[col.field]) || ''\"\n (input)=\"setColumnFilter(col.field, $any($event.target).value)\"\n (click)=\"$event.stopPropagation()\"\n />\n }\n @case ('number') {\n <input\n class=\"kpt-data-table__fcell\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.placeholder]=\"col.filter.placeholder || ''\"\n [attr.aria-label]=\"i18n.t('dataTable.filter', { column: col.header })\"\n [value]=\"$any(columnFilters()[col.field]) || ''\"\n (input)=\"onNumberFilter(col.field, $event)\"\n (click)=\"$event.stopPropagation()\"\n />\n }\n @case ('select') {\n <kpt-select\n [options]=\"col.filter.options || []\"\n [multiple]=\"!!col.filter.multiple\"\n filter\n [placeholder]=\"col.filter.placeholder || i18n.t('dataTable.all')\"\n [value]=\"columnFilters()[col.field] ?? null\"\n (valueChange)=\"setColumnFilter(col.field, $event)\"\n />\n }\n @case ('numberRange') {\n <div class=\"kpt-data-table__frange\">\n <input\n class=\"kpt-data-table__fcell\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.placeholder]=\"i18n.t('dataTable.min')\"\n [attr.aria-label]=\"i18n.t('dataTable.filterMin', { column: col.header })\"\n [value]=\"rangeVal(col.field).min\"\n (input)=\"setRangeFilter(col.field, 'min', $event)\"\n (click)=\"$event.stopPropagation()\"\n />\n <input\n class=\"kpt-data-table__fcell\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.placeholder]=\"i18n.t('dataTable.max')\"\n [attr.aria-label]=\"i18n.t('dataTable.filterMax', { column: col.header })\"\n [value]=\"rangeVal(col.field).max\"\n (input)=\"setRangeFilter(col.field, 'max', $event)\"\n (click)=\"$event.stopPropagation()\"\n />\n </div>\n }\n @case ('slider') {\n <div class=\"kpt-data-table__fslider\" (click)=\"$event.stopPropagation()\">\n <kpt-slider\n range\n [min]=\"col.filter.min ?? 0\"\n [max]=\"col.filter.max ?? 100\"\n [step]=\"col.filter.step ?? 1\"\n [value]=\"sliderVal(col)\"\n (valueChange)=\"setColumnFilter(col.field, $event)\"\n showValue\n />\n </div>\n }\n @case ('dateRange') {\n <kpt-date-range\n [placeholder]=\"col.filter.placeholder || i18n.t('dataTable.dateRange')\"\n [value]=\"$any(columnFilters()[col.field]) || { start: '', end: '' }\"\n (valueChange)=\"setColumnFilter(col.field, $event)\"\n />\n }\n }\n </th>\n }\n </tr>\n</ng-template>\n\n@if (pageSize() > 0 && !virtualScroll()) {\n <div class=\"kpt-data-table__pager\">\n <ng-content select=\"[kptPaginatorActions]\" />\n <kpt-paginator\n [length]=\"filteredCount()\"\n [pageIndex]=\"pageIndex()\"\n (pageIndexChange)=\"pageIndex.set($event)\"\n [pageSize]=\"pageSizeState()\"\n (pageSizeChange)=\"pageSizeState.set($event)\"\n [pageSizeOptions]=\"pageSizeOptions()\"\n />\n </div>\n}\n", styles: ["@layer kpt.components{.kpt-data-table{display:flex;flex-direction:column;background:var(--kpt-table-bg);color:var(--kpt-table-fg);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border);border-radius:var(--kpt-table-radius, .75rem);overflow:hidden;flex-grow:1}.kpt-data-table__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--kpt-space-3, .75rem);padding:var(--kpt-space-3, .75rem);border-bottom:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border)}.kpt-data-table__filter{width:100%;max-width:20rem;height:2.25rem;padding-inline:var(--kpt-space-3, .75rem);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-form-field-border);border-radius:var(--kpt-form-field-radius, .5rem);background:var(--kpt-form-field-bg);color:var(--kpt-form-field-text)}.kpt-data-table__filter:focus-visible{outline:none;border-color:var(--kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--kpt-form-field-border-focus) 30%,transparent)}.kpt-data-table__scroll{overflow:auto}.kpt-data-table__pager{display:flex;align-items:center;gap:var(--kpt-space-2, .5rem)}.kpt-data-table__pager [kptPaginatorActions]{margin-inline-start:.5rem}.kpt-data-table__pager kpt-paginator{flex:1 1 auto;min-width:0}.kpt-data-table__table{width:100%;border-collapse:collapse;font-size:var(--kpt-font-size-sm, .875rem)}.kpt-data-table__table--frozen{width:max-content;min-width:100%}.kpt-data-table__table th,.kpt-data-table__table td{padding:var(--kpt-table-cell-padding, .75rem);text-align:start;border-bottom:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border)}.kpt-data-table__table th[data-align=center],.kpt-data-table__table td[data-align=center]{text-align:center}.kpt-data-table__table th[data-align=end],.kpt-data-table__table td[data-align=end]{text-align:end}.kpt-data-table__table thead th{position:sticky;top:0;z-index:1;background:var(--kpt-table-header-bg);color:var(--kpt-table-header-fg);font-weight:var(--kpt-font-weight-semibold, 600);white-space:nowrap;-webkit-user-select:none;user-select:none}.kpt-data-table__table thead tr:nth-child(2) th{top:var(--kpt-thead-offset, 0px)}.kpt-data-table__filter-row th{padding:var(--kpt-space-2, .5rem);font-weight:var(--kpt-font-weight-normal, 400);cursor:auto}.kpt-data-table__fcell{width:100%;height:2rem;padding-inline:var(--kpt-space-2, .5rem);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-form-field-border);border-radius:var(--kpt-form-field-radius, .5rem);background:var(--kpt-form-field-bg);color:var(--kpt-form-field-text);font:inherit}.kpt-data-table__fcell:focus-visible{outline:none;border-color:var(--kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--kpt-form-field-border-focus) 30%,transparent)}.kpt-data-table__filter-row kpt-select,.kpt-data-table__filter-row kpt-date-range{display:block;width:100%;font-weight:var(--kpt-font-weight-normal, 400)}.kpt-data-table__frange{display:flex;gap:var(--kpt-space-2, .5rem)}.kpt-data-table__frange .kpt-data-table__fcell{min-width:0}.kpt-data-table__fslider .kpt-slider-host{width:100%}.kpt-data-table__fslider .kpt-slider__value{min-width:auto;font-size:var(--kpt-font-size-xs, .75rem);color:var(--kpt-color-on-surface-muted)}.kpt-data-table__th--sortable{cursor:pointer}.kpt-data-table__th--sortable:hover{color:var(--kpt-color-on-surface)}.kpt-data-table__cell--editable{cursor:pointer}.kpt-data-table__cell--editable:hover{background:var(--kpt-table-row-hover)}.kpt-data-table__cell--editable:focus-visible{outline:var(--kpt-border-width-medium, 2px) solid var(--kpt-color-focus-ring);outline-offset:-2px}.kpt-data-table__editor{display:block;min-width:8rem}.kpt-data-table__editor .kpt-input-number-host{max-width:6.5rem}.kpt-data-table__editor .kpt-input-number__btn{width:1.75rem}.kpt-data-table__sort{margin-inline-start:.35em;opacity:.35}.kpt-data-table__sort--active{opacity:1}.kpt-data-table__th--draggable{cursor:grab}.kpt-data-table__th--draggable:active{cursor:grabbing}.kpt-data-table__th--dragover{box-shadow:inset 2px 0 0 0 var(--kpt-color-primary)}.kpt-data-table__grip{margin-inline-end:.4em;opacity:.45}.kpt-data-table__checkbox{width:1px;white-space:nowrap;text-align:center}.kpt-data-table__checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;display:inline-block;width:1.15rem;height:1.15rem;margin:0;vertical-align:middle;cursor:pointer;border:var(--kpt-border-width-medium, 2px) solid var(--kpt-form-field-border);border-radius:var(--kpt-radius-sm, .25rem);background:var(--kpt-form-field-bg);transition:background-color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard),border-color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard)}.kpt-data-table__checkbox input[type=checkbox]:after{content:\"\";position:absolute;inset:0;opacity:0;background-color:var(--kpt-color-on-primary);transition:opacity var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard);-webkit-mask:no-repeat center/.85rem;mask:no-repeat center/.85rem}.kpt-data-table__checkbox input[type=checkbox]:checked,.kpt-data-table__checkbox input[type=checkbox]:indeterminate{background:var(--kpt-color-primary);border-color:var(--kpt-color-primary)}.kpt-data-table__checkbox input[type=checkbox]:checked:after{opacity:1;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4.5 6.5 11 3 7.5' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4.5 6.5 11 3 7.5' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\")}.kpt-data-table__checkbox input[type=checkbox]:indeterminate:after{opacity:1;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8h9' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8h9' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E\")}.kpt-data-table__checkbox input[type=checkbox]:focus-visible{outline:var(--kpt-border-width-medium, 2px) solid var(--kpt-color-focus-ring);outline-offset:2px}.kpt-data-table__expander{width:2.5rem;min-width:2.5rem;text-align:center;white-space:nowrap}.kpt-data-table__expander-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:var(--kpt-radius-sm, .25rem);background:transparent;color:var(--kpt-color-on-surface-muted);cursor:pointer;transition:background-color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard),color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard)}.kpt-data-table__expander-btn kpt-icon{display:inline-flex;transition:transform var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard)}.kpt-data-table__expander-btn:hover{background:var(--kpt-table-row-hover);color:var(--kpt-color-on-surface)}.kpt-data-table__expander-btn:focus-visible{outline:var(--kpt-border-width-medium, 2px) solid var(--kpt-color-focus-ring);outline-offset:2px}.kpt-data-table__expander-btn--open{color:var(--kpt-color-primary)}.kpt-data-table__expander-btn--open kpt-icon{transform:rotate(90deg)}.kpt-data-table__detail-row>.kpt-data-table__detail{padding:var(--kpt-space-4, 1rem);background:var(--kpt-table-detail-bg, var(--kpt-color-surface-variant, var(--kpt-table-row-hover)));border-bottom:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border);box-shadow:inset 3px 0 0 0 var(--kpt-color-primary)}.kpt-data-table tbody tr{transition:background-color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard)}.kpt-data-table tbody tr:hover{background:var(--kpt-table-row-hover)}.kpt-data-table tbody tr.kpt-data-table__detail-row:hover{background:transparent}.kpt-data-table__row--selected{background:var(--kpt-table-row-selected)!important}.kpt-data-table__row--expanded{background:var(--kpt-table-row-hover)}.kpt-data-table__table--frozen .kpt-data-table__checkbox{width:3rem;min-width:3rem}.kpt-data-table__table--frozen .kpt-data-table__expander{width:2.5rem;min-width:2.5rem}.kpt-data-table__cell--frozen{position:sticky;z-index:1;background:var(--kpt-table-bg);border-inline-end:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border)}.kpt-data-table thead th.kpt-data-table__cell--frozen{z-index:3;background:var(--kpt-table-header-bg)}.kpt-data-table tbody tr:hover .kpt-data-table__cell--frozen{background:var(--kpt-table-row-hover)}.kpt-data-table__row--selected.kpt-data-table__row--selected .kpt-data-table__cell--frozen,.kpt-data-table tbody tr.kpt-data-table__row--selected .kpt-data-table__cell--frozen{background:var(--kpt-table-row-selected)}.kpt-data-table__state{padding:var(--kpt-space-8, 2rem)!important;text-align:center!important;color:var(--kpt-color-on-surface-muted)}.kpt-data-table__table--virtual td{padding-block:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.kpt-data-table__spacer td{padding:0!important;border:0!important}.kpt-data-table tbody tr:last-child td{border-bottom:0}}\n"] }]
|
|
10315
|
-
}], () => [], { columns: [{ type: i0.Input, args: [{ isSignal: true, alias: "columns", required: true }] }], data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], filterable: [{ type: i0.Input, args: [{ isSignal: true, alias: "filterable", required: false }] }], filterRowPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "filterRowPosition", required: false }] }], pageSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSize", required: false }] }], pageSizeOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSizeOptions", required: false }] }], selectable: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectable", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], emptyMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "emptyMessage", required: false }] }], rowKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowKey", required: false }] }], scrollHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollHeight", required: false }] }], virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], rowHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowHeight", required: false }] }], reorderable: [{ type: i0.Input, args: [{ isSignal: true, alias: "reorderable", required: false }] }], exportable: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportable", required: false }] }], exportFilename: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportFilename", required: false }] }], lazy: [{ type: i0.Input, args: [{ isSignal: true, alias: "lazy", required: false }] }], totalRecords: [{ type: i0.Input, args: [{ isSignal: true, alias: "totalRecords", required: false }] }], expandable: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandable", required: false }] }], multiExpand: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiExpand", required: false }] }], selection: [{ type: i0.Input, args: [{ isSignal: true, alias: "selection", required: false }] }, { type: i0.Output, args: ["selectionChange"] }], expandedRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandedRows", required: false }] }, { type: i0.Output, args: ["expandedRowsChange"] }], hiddenFields: [{ type: i0.Input, args: [{ isSignal: true, alias: "hiddenFields", required: false }] }, { type: i0.Output, args: ["hiddenFieldsChange"] }], rowClick: [{ type: i0.Output, args: ["rowClick"] }], lazyLoad: [{ type: i0.Output, args: ["lazyLoad"] }], cellEdit: [{ type: i0.Output, args: ["cellEdit"] }], scrollEl: [{ type: i0.ViewChild, args: ['scrollEl', { isSignal: true }] }], theadEl: [{ type: i0.ViewChild, args: ['theadEl', { isSignal: true }] }], editorHost: [{ type: i0.ViewChild, args: ['editorHost', { isSignal: true }] }], cellDefs: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => KptCellDef), { isSignal: true }] }], cellEditDefs: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => KptCellEditDef), { isSignal: true }] }], rowDetailDef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => KptRowDetailDef), { isSignal: true }] }] }); })();
|
|
10316
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KptDataTable, { className: "KptDataTable", filePath: "lib/data-table/data-table.component.ts", lineNumber:
|
|
10693
|
+
}, template: "@if (filterable() || exportable()) {\n <div class=\"kpt-data-table__toolbar\">\n @if (filterable()) {\n <input\n class=\"kpt-data-table__filter\"\n type=\"search\"\n [attr.placeholder]=\"i18n.t('dataTable.search')\"\n [value]=\"filterText()\"\n (input)=\"onFilter($event)\"\n />\n }\n @if (exportable()) {\n <kpt-button variant=\"outline\" size=\"sm\" (click)=\"exportCsv()\">{{ i18n.t('dataTable.exportCsv') }}</kpt-button>\n }\n </div>\n}\n\n<div class=\"kpt-data-table__scroll\" #scrollEl [style.max-height]=\"scrollHeight()\" (scroll)=\"onScroll($event)\">\n <table\n class=\"kpt-data-table__table\"\n [class.kpt-data-table__table--frozen]=\"hasFrozen()\"\n [class.kpt-data-table__table--virtual]=\"virtualScroll()\"\n >\n <thead #theadEl>\n @if (hasColumnFilters() && filterRowPosition() === 'top') {\n <ng-container [ngTemplateOutlet]=\"filterRowTpl\" />\n }\n <tr>\n @if (hasRowDetail()) {\n <th class=\"kpt-data-table__expander\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"expanderStickyLeft()\"></th>\n }\n @if (selectable() === 'multiple') {\n <th class=\"kpt-data-table__checkbox\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"checkboxStickyLeft()\">\n <input\n type=\"checkbox\"\n [checked]=\"pageAllSelected()\"\n [indeterminate]=\"pageSomeSelected()\"\n (change)=\"toggleAllOnPage()\"\n [attr.aria-label]=\"i18n.t('dataTable.selectAll')\"\n />\n </th>\n } @else if (selectable() === 'single') {\n <th class=\"kpt-data-table__checkbox\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"checkboxStickyLeft()\"></th>\n }\n @for (col of visibleOrderedColumns(); track col.field) {\n <th\n [attr.draggable]=\"isColDraggable(col) ? true : null\"\n [style.width]=\"col.width\"\n [style.left.px]=\"frozenLeft(col.field)\"\n [attr.data-align]=\"col.align ?? 'start'\"\n [class.kpt-data-table__cell--frozen]=\"isFrozen(col.field)\"\n [class.kpt-data-table__th--sortable]=\"col.sortable\"\n [class.kpt-data-table__th--draggable]=\"isColDraggable(col)\"\n [class.kpt-data-table__th--dragover]=\"dragField() !== null && dragField() !== col.field && !col.frozen\"\n [attr.aria-sort]=\"ariaSort(col)\"\n (click)=\"toggleSort(col)\"\n (dragstart)=\"onColDragStart(col.field, $event)\"\n (dragover)=\"reorderable() ? onColDragOver(col.field, $event) : null\"\n (drop)=\"reorderable() ? onColDrop(col.field, $event) : null\"\n (dragend)=\"onColDragEnd()\"\n >\n @if (isColDraggable(col)) {\n <kpt-icon class=\"kpt-data-table__grip\" name=\"grip-vertical\" />\n }\n <span>{{ col.header }}</span>\n @if (col.sortable) {\n <kpt-icon\n class=\"kpt-data-table__sort\"\n [class.kpt-data-table__sort--active]=\"ariaSort(col) !== 'none'\"\n [name]=\"sortIconName(col)\"\n />\n }\n </th>\n }\n </tr>\n @if (hasColumnFilters() && filterRowPosition() === 'bottom') {\n <ng-container [ngTemplateOutlet]=\"filterRowTpl\" />\n }\n </thead>\n <tbody>\n @if (loading()) {\n <tr><td class=\"kpt-data-table__state\" [attr.colspan]=\"colspan()\">{{ i18n.t('dataTable.loading') }}</td></tr>\n } @else if (displayCount() === 0) {\n <tr><td class=\"kpt-data-table__state\" [attr.colspan]=\"colspan()\">{{ emptyText() }}</td></tr>\n } @else if (virtualScroll()) {\n @if (topPad() > 0) {\n <tr class=\"kpt-data-table__spacer\" aria-hidden=\"true\"><td [attr.colspan]=\"colspan()\" [style.height.px]=\"topPad()\"></td></tr>\n }\n @for (row of virtualRows(); track trackRow(row)) {\n <ng-container [ngTemplateOutlet]=\"rowTpl\" [ngTemplateOutletContext]=\"{ $implicit: row }\" />\n }\n @if (bottomPad() > 0) {\n <tr class=\"kpt-data-table__spacer\" aria-hidden=\"true\"><td [attr.colspan]=\"colspan()\" [style.height.px]=\"bottomPad()\"></td></tr>\n }\n } @else {\n @for (row of paged(); track trackRow(row)) {\n <ng-container [ngTemplateOutlet]=\"rowTpl\" [ngTemplateOutletContext]=\"{ $implicit: row }\" />\n }\n }\n </tbody>\n @if (hasSummary() && !loading() && displayCount() > 0) {\n <tfoot>\n <tr class=\"kpt-data-table__summary\">\n @if (summaryLabelSpan() > 0) {\n <th\n class=\"kpt-data-table__summary-label\"\n [attr.colspan]=\"summaryLabelSpan()\"\n [class.kpt-data-table__cell--frozen]=\"hasFrozen()\"\n [style.left.px]=\"hasFrozen() ? 0 : null\"\n >\n {{ summaryLabelText() }}\n </th>\n }\n @for (col of visibleOrderedColumns(); track col.field; let i = $index) {\n @if (i >= summaryStartIndex()) {\n <td\n [attr.data-align]=\"col.align ?? 'end'\"\n [style.width]=\"col.width\"\n [style.left.px]=\"frozenLeft(col.field)\"\n [class.kpt-data-table__cell--frozen]=\"isFrozen(col.field)\"\n >\n {{ summaryText(col.field) }}\n </td>\n }\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n<ng-template #rowTpl let-row>\n <tr\n [class.kpt-data-table__row--selected]=\"isSelected(row)\"\n [class.kpt-data-table__row--expanded]=\"hasRowDetail() && isExpanded(row)\"\n [style.height.px]=\"virtualScroll() ? rowHeight() : null\"\n (click)=\"onRowClick(row)\"\n >\n @if (hasRowDetail()) {\n <td class=\"kpt-data-table__expander\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"expanderStickyLeft()\">\n <button\n type=\"button\"\n class=\"kpt-data-table__expander-btn\"\n [class.kpt-data-table__expander-btn--open]=\"isExpanded(row)\"\n [attr.aria-expanded]=\"isExpanded(row)\"\n [attr.aria-label]=\"i18n.t('dataTable.expandRow')\"\n (click)=\"$event.stopPropagation(); toggleExpand(row)\"\n >\n <kpt-icon name=\"chevron-right\" />\n </button>\n </td>\n }\n @if (selectable() !== 'none') {\n <td class=\"kpt-data-table__checkbox\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"checkboxStickyLeft()\">\n <input\n type=\"checkbox\"\n [checked]=\"isSelected(row)\"\n (click)=\"$event.stopPropagation()\"\n (change)=\"toggleRow(row)\"\n [attr.aria-label]=\"i18n.t('dataTable.selectRow')\"\n />\n </td>\n }\n @for (col of visibleOrderedColumns(); track col.field) {\n <td\n [attr.data-align]=\"col.align ?? 'start'\"\n [style.left.px]=\"frozenLeft(col.field)\"\n [class.kpt-data-table__cell--frozen]=\"isFrozen(col.field)\"\n [class.kpt-data-table__cell--editable]=\"isEditable(col) && !isEditingCell(row, col.field)\"\n [attr.tabindex]=\"isEditable(col) && !isEditingCell(row, col.field) ? 0 : null\"\n [attr.aria-label]=\"isEditable(col) && !isEditingCell(row, col.field) ? i18n.t('dataTable.editCell', { column: col.header }) : null\"\n (click)=\"isEditable(col) ? startEdit(row, col, $event) : null\"\n (keydown.enter)=\"isEditable(col) && !isEditingCell(row, col.field) ? startEdit(row, col, $event) : null\"\n >\n @if (isEditingCell(row, col.field)) {\n <div\n class=\"kpt-data-table__editor\"\n #editorHost\n (click)=\"$event.stopPropagation()\"\n (focusout)=\"onEditorFocusOut($event)\"\n >\n @if (cellEditTemplate(col.field); as etpl) {\n <ng-container\n [ngTemplateOutlet]=\"etpl\"\n [ngTemplateOutletContext]=\"{ $implicit: editingValue(), row, commit: commitEditValue, cancel: cancelEdit }\"\n />\n } @else {\n @switch (col.edit?.type) {\n @case ('text') {\n <kpt-input\n [value]=\"$any(editingValue()) ?? ''\"\n [placeholder]=\"col.edit.placeholder ?? ''\"\n (valueChange)=\"editingValue.set($event)\"\n (keydown.enter)=\"commitEdit()\"\n (keydown.escape)=\"cancelEdit()\"\n />\n }\n @case ('number') {\n <kpt-input-number\n [value]=\"$any(editingValue())\"\n [min]=\"col.edit.min\"\n [max]=\"col.edit.max\"\n [step]=\"col.edit.step ?? 1\"\n (valueChange)=\"editingValue.set($event)\"\n (keydown.enter)=\"commitEdit()\"\n (keydown.escape)=\"cancelEdit()\"\n />\n }\n @case ('date') {\n <kpt-datepicker\n [value]=\"$any(editingValue()) ?? ''\"\n (valueChange)=\"editingValue.set($event)\"\n [open]=\"editorPanelOpen()\"\n (openChange)=\"onEditorPanelToggle($event)\"\n />\n }\n @case ('select') {\n <kpt-select\n [options]=\"col.edit.options ?? []\"\n [placeholder]=\"col.edit.placeholder ?? ''\"\n [value]=\"editingValue()\"\n (valueChange)=\"editingValue.set($event)\"\n [open]=\"editorPanelOpen()\"\n (openChange)=\"onEditorPanelToggle($event)\"\n />\n }\n @case ('multiselect') {\n <kpt-select\n multiple\n filter\n [options]=\"col.edit.options ?? []\"\n [placeholder]=\"col.edit.placeholder ?? ''\"\n [value]=\"editingValue()\"\n (valueChange)=\"editingValue.set($event)\"\n [open]=\"editorPanelOpen()\"\n (openChange)=\"onEditorPanelToggle($event)\"\n />\n }\n }\n }\n </div>\n } @else if (cellTemplate(col.field); as tpl) {\n <ng-container\n [ngTemplateOutlet]=\"tpl\"\n [ngTemplateOutletContext]=\"{ $implicit: row, value: getValue(row, col.field) }\"\n />\n } @else {\n {{ getValue(row, col.field) }}\n }\n </td>\n }\n </tr>\n @if (hasRowDetail() && isExpanded(row) && !virtualScroll()) {\n <tr class=\"kpt-data-table__detail-row\">\n <td class=\"kpt-data-table__detail\" [attr.colspan]=\"colspan()\">\n <ng-container [ngTemplateOutlet]=\"rowDetailTpl()\" [ngTemplateOutletContext]=\"{ $implicit: row }\" />\n </td>\n </tr>\n }\n</ng-template>\n\n<ng-template #filterRowTpl>\n <tr class=\"kpt-data-table__filter-row\">\n @if (hasRowDetail()) {\n <th class=\"kpt-data-table__expander\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"expanderStickyLeft()\"></th>\n }\n @if (selectable() !== 'none') {\n <th class=\"kpt-data-table__checkbox\" [class.kpt-data-table__cell--frozen]=\"hasFrozen()\" [style.left.px]=\"checkboxStickyLeft()\"></th>\n }\n @for (col of visibleOrderedColumns(); track col.field) {\n <th\n [style.width]=\"col.width\"\n [style.left.px]=\"frozenLeft(col.field)\"\n [attr.data-align]=\"col.align ?? 'start'\"\n [class.kpt-data-table__cell--frozen]=\"isFrozen(col.field)\"\n >\n @switch (col.filter?.type) {\n @case ('text') {\n <input\n class=\"kpt-data-table__fcell\"\n type=\"search\"\n [attr.placeholder]=\"col.filter.placeholder || ''\"\n [attr.aria-label]=\"i18n.t('dataTable.filter', { column: col.header })\"\n [value]=\"$any(columnFilters()[col.field]) || ''\"\n (input)=\"setColumnFilter(col.field, $any($event.target).value)\"\n (click)=\"$event.stopPropagation()\"\n />\n }\n @case ('number') {\n <input\n class=\"kpt-data-table__fcell\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.placeholder]=\"col.filter.placeholder || ''\"\n [attr.aria-label]=\"i18n.t('dataTable.filter', { column: col.header })\"\n [value]=\"$any(columnFilters()[col.field]) || ''\"\n (input)=\"onNumberFilter(col.field, $event)\"\n (click)=\"$event.stopPropagation()\"\n />\n }\n @case ('select') {\n <kpt-select\n [options]=\"col.filter.options || []\"\n [multiple]=\"!!col.filter.multiple\"\n filter\n [placeholder]=\"col.filter.placeholder || i18n.t('dataTable.all')\"\n [value]=\"columnFilters()[col.field] ?? null\"\n (valueChange)=\"setColumnFilter(col.field, $event)\"\n />\n }\n @case ('numberRange') {\n <div class=\"kpt-data-table__frange\">\n <input\n class=\"kpt-data-table__fcell\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.placeholder]=\"i18n.t('dataTable.min')\"\n [attr.aria-label]=\"i18n.t('dataTable.filterMin', { column: col.header })\"\n [value]=\"rangeVal(col.field).min\"\n (input)=\"setRangeFilter(col.field, 'min', $event)\"\n (click)=\"$event.stopPropagation()\"\n />\n <input\n class=\"kpt-data-table__fcell\"\n type=\"text\"\n inputmode=\"numeric\"\n [attr.placeholder]=\"i18n.t('dataTable.max')\"\n [attr.aria-label]=\"i18n.t('dataTable.filterMax', { column: col.header })\"\n [value]=\"rangeVal(col.field).max\"\n (input)=\"setRangeFilter(col.field, 'max', $event)\"\n (click)=\"$event.stopPropagation()\"\n />\n </div>\n }\n @case ('slider') {\n <div class=\"kpt-data-table__fslider\" (click)=\"$event.stopPropagation()\">\n <kpt-slider\n range\n [min]=\"col.filter.min ?? 0\"\n [max]=\"col.filter.max ?? 100\"\n [step]=\"col.filter.step ?? 1\"\n [value]=\"sliderVal(col)\"\n (valueChange)=\"setColumnFilter(col.field, $event)\"\n showValue\n />\n </div>\n }\n @case ('dateRange') {\n <kpt-date-range\n [placeholder]=\"col.filter.placeholder || i18n.t('dataTable.dateRange')\"\n [value]=\"$any(columnFilters()[col.field]) || { start: '', end: '' }\"\n (valueChange)=\"setColumnFilter(col.field, $event)\"\n />\n }\n }\n </th>\n }\n </tr>\n</ng-template>\n\n@if (pageSize() > 0 && !virtualScroll()) {\n <div class=\"kpt-data-table__pager\">\n <ng-content select=\"[kptPaginatorActions]\" />\n <kpt-paginator\n [length]=\"filteredCount()\"\n [pageIndex]=\"pageIndex()\"\n (pageIndexChange)=\"pageIndex.set($event)\"\n [pageSize]=\"pageSizeState()\"\n (pageSizeChange)=\"pageSizeState.set($event)\"\n [pageSizeOptions]=\"pageSizeOptions()\"\n />\n </div>\n}\n", styles: ["@layer kpt.components{.kpt-data-table{display:flex;flex-direction:column;background:var(--kpt-table-bg);color:var(--kpt-table-fg);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border);border-radius:var(--kpt-table-radius, .75rem);overflow:hidden;flex-grow:1}.kpt-data-table__toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--kpt-space-3, .75rem);padding:var(--kpt-space-3, .75rem);border-bottom:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border)}.kpt-data-table__filter{width:100%;max-width:20rem;height:2.25rem;padding-inline:var(--kpt-space-3, .75rem);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-form-field-border);border-radius:var(--kpt-form-field-radius, .5rem);background:var(--kpt-form-field-bg);color:var(--kpt-form-field-text)}.kpt-data-table__filter:focus-visible{outline:none;border-color:var(--kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--kpt-form-field-border-focus) 30%,transparent)}.kpt-data-table__scroll{overflow:auto}.kpt-data-table__pager{display:flex;align-items:center;gap:var(--kpt-space-2, .5rem)}.kpt-data-table__pager [kptPaginatorActions]{margin-inline-start:.5rem}.kpt-data-table__pager kpt-paginator{flex:1 1 auto;min-width:0}.kpt-data-table__table{width:100%;border-collapse:collapse;font-size:var(--kpt-font-size-sm, .875rem)}.kpt-data-table__table--frozen{width:max-content;min-width:100%}.kpt-data-table__table th,.kpt-data-table__table td{padding:var(--kpt-table-cell-padding, .75rem);text-align:start;border-bottom:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border)}.kpt-data-table__table th[data-align=center],.kpt-data-table__table td[data-align=center]{text-align:center}.kpt-data-table__table th[data-align=end],.kpt-data-table__table td[data-align=end]{text-align:end}.kpt-data-table__table thead th{position:sticky;top:0;z-index:1;background:var(--kpt-table-header-bg);color:var(--kpt-table-header-fg);font-weight:var(--kpt-font-weight-semibold, 600);white-space:nowrap;-webkit-user-select:none;user-select:none}.kpt-data-table__table thead tr:nth-child(2) th{top:var(--kpt-thead-offset, 0px)}.kpt-data-table__table tfoot th,.kpt-data-table__table tfoot td{position:sticky;bottom:0;z-index:1;background:var(--kpt-table-summary-bg, var(--kpt-table-header-bg));color:var(--kpt-table-header-fg);font-weight:var(--kpt-font-weight-semibold, 600);white-space:nowrap;border-bottom:0;border-top:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border)}.kpt-data-table__table .kpt-data-table__summary-label{text-align:end}.kpt-data-table__filter-row th{padding:var(--kpt-space-2, .5rem);font-weight:var(--kpt-font-weight-normal, 400);cursor:auto}.kpt-data-table__fcell{width:100%;height:2rem;padding-inline:var(--kpt-space-2, .5rem);border:var(--kpt-border-width-thin, 1px) solid var(--kpt-form-field-border);border-radius:var(--kpt-form-field-radius, .5rem);background:var(--kpt-form-field-bg);color:var(--kpt-form-field-text);font:inherit}.kpt-data-table__fcell:focus-visible{outline:none;border-color:var(--kpt-form-field-border-focus);box-shadow:0 0 0 2px color-mix(in oklch,var(--kpt-form-field-border-focus) 30%,transparent)}.kpt-data-table__filter-row kpt-select,.kpt-data-table__filter-row kpt-date-range{display:block;width:100%;font-weight:var(--kpt-font-weight-normal, 400)}.kpt-data-table__frange{display:flex;gap:var(--kpt-space-2, .5rem)}.kpt-data-table__frange .kpt-data-table__fcell{min-width:0}.kpt-data-table__fslider .kpt-slider-host{width:100%}.kpt-data-table__fslider .kpt-slider__value{min-width:auto;font-size:var(--kpt-font-size-xs, .75rem);color:var(--kpt-color-on-surface-muted)}.kpt-data-table__th--sortable{cursor:pointer}.kpt-data-table__th--sortable:hover{color:var(--kpt-color-on-surface)}.kpt-data-table__cell--editable{cursor:pointer}.kpt-data-table__cell--editable:hover{background:var(--kpt-table-row-hover)}.kpt-data-table__cell--editable:focus-visible{outline:var(--kpt-border-width-medium, 2px) solid var(--kpt-color-focus-ring);outline-offset:-2px}.kpt-data-table__editor{display:block;min-width:8rem}.kpt-data-table__editor .kpt-input-number-host{max-width:6.5rem}.kpt-data-table__editor .kpt-input-number__btn{width:1.75rem}.kpt-data-table__sort{margin-inline-start:.35em;opacity:.35}.kpt-data-table__sort--active{opacity:1}.kpt-data-table__th--draggable{cursor:grab}.kpt-data-table__th--draggable:active{cursor:grabbing}.kpt-data-table__th--dragover{box-shadow:inset 2px 0 0 0 var(--kpt-color-primary)}.kpt-data-table__grip{margin-inline-end:.4em;opacity:.45}.kpt-data-table__checkbox{width:1px;white-space:nowrap;text-align:center}.kpt-data-table__checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;display:inline-block;width:1.15rem;height:1.15rem;margin:0;vertical-align:middle;cursor:pointer;border:var(--kpt-border-width-medium, 2px) solid var(--kpt-form-field-border);border-radius:var(--kpt-radius-sm, .25rem);background:var(--kpt-form-field-bg);transition:background-color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard),border-color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard)}.kpt-data-table__checkbox input[type=checkbox]:after{content:\"\";position:absolute;inset:0;opacity:0;background-color:var(--kpt-color-on-primary);transition:opacity var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard);-webkit-mask:no-repeat center/.85rem;mask:no-repeat center/.85rem}.kpt-data-table__checkbox input[type=checkbox]:checked,.kpt-data-table__checkbox input[type=checkbox]:indeterminate{background:var(--kpt-color-primary);border-color:var(--kpt-color-primary)}.kpt-data-table__checkbox input[type=checkbox]:checked:after{opacity:1;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4.5 6.5 11 3 7.5' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13 4.5 6.5 11 3 7.5' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\")}.kpt-data-table__checkbox input[type=checkbox]:indeterminate:after{opacity:1;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8h9' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8h9' fill='none' stroke='%23000' stroke-width='2.25' stroke-linecap='round'/%3E%3C/svg%3E\")}.kpt-data-table__checkbox input[type=checkbox]:focus-visible{outline:var(--kpt-border-width-medium, 2px) solid var(--kpt-color-focus-ring);outline-offset:2px}.kpt-data-table__expander{width:2.5rem;min-width:2.5rem;text-align:center;white-space:nowrap}.kpt-data-table__expander-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:var(--kpt-radius-sm, .25rem);background:transparent;color:var(--kpt-color-on-surface-muted);cursor:pointer;transition:background-color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard),color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard)}.kpt-data-table__expander-btn kpt-icon{display:inline-flex;transition:transform var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard)}.kpt-data-table__expander-btn:hover{background:var(--kpt-table-row-hover);color:var(--kpt-color-on-surface)}.kpt-data-table__expander-btn:focus-visible{outline:var(--kpt-border-width-medium, 2px) solid var(--kpt-color-focus-ring);outline-offset:2px}.kpt-data-table__expander-btn--open{color:var(--kpt-color-primary)}.kpt-data-table__expander-btn--open kpt-icon{transform:rotate(90deg)}.kpt-data-table__detail-row>.kpt-data-table__detail{padding:var(--kpt-space-4, 1rem);background:var(--kpt-table-detail-bg, var(--kpt-color-surface-variant, var(--kpt-table-row-hover)));border-bottom:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border);box-shadow:inset 3px 0 0 0 var(--kpt-color-primary)}.kpt-data-table tbody tr{transition:background-color var(--kpt-motion-duration-fast, .12s) var(--kpt-motion-easing-standard)}.kpt-data-table tbody tr:hover{background:var(--kpt-table-row-hover)}.kpt-data-table tbody tr.kpt-data-table__detail-row:hover{background:transparent}.kpt-data-table__row--selected{background:var(--kpt-table-row-selected)!important}.kpt-data-table__row--expanded{background:var(--kpt-table-row-hover)}.kpt-data-table__table--frozen .kpt-data-table__checkbox{width:3rem;min-width:3rem}.kpt-data-table__table--frozen .kpt-data-table__expander{width:2.5rem;min-width:2.5rem}.kpt-data-table__cell--frozen{position:sticky;z-index:1;background:var(--kpt-table-bg);border-inline-end:var(--kpt-border-width-thin, 1px) solid var(--kpt-table-border)}.kpt-data-table thead th.kpt-data-table__cell--frozen{z-index:3;background:var(--kpt-table-header-bg)}.kpt-data-table tfoot th.kpt-data-table__cell--frozen,.kpt-data-table tfoot td.kpt-data-table__cell--frozen{z-index:3;background:var(--kpt-table-summary-bg, var(--kpt-table-header-bg))}.kpt-data-table tbody tr:hover .kpt-data-table__cell--frozen{background:var(--kpt-table-row-hover)}.kpt-data-table__row--selected.kpt-data-table__row--selected .kpt-data-table__cell--frozen,.kpt-data-table tbody tr.kpt-data-table__row--selected .kpt-data-table__cell--frozen{background:var(--kpt-table-row-selected)}.kpt-data-table__state{padding:var(--kpt-space-8, 2rem)!important;text-align:center!important;color:var(--kpt-color-on-surface-muted)}.kpt-data-table__table--virtual td{padding-block:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.kpt-data-table__spacer td{padding:0!important;border:0!important}.kpt-data-table tbody tr:last-child td{border-bottom:0}}\n"] }]
|
|
10694
|
+
}], () => [], { columns: [{ type: i0.Input, args: [{ isSignal: true, alias: "columns", required: true }] }], data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], filterable: [{ type: i0.Input, args: [{ isSignal: true, alias: "filterable", required: false }] }], filterRowPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "filterRowPosition", required: false }] }], pageSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSize", required: false }] }], pageSizeOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "pageSizeOptions", required: false }] }], selectable: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectable", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], emptyMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "emptyMessage", required: false }] }], rowKey: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowKey", required: false }] }], scrollHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollHeight", required: false }] }], virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], rowHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "rowHeight", required: false }] }], reorderable: [{ type: i0.Input, args: [{ isSignal: true, alias: "reorderable", required: false }] }], exportable: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportable", required: false }] }], exportFilename: [{ type: i0.Input, args: [{ isSignal: true, alias: "exportFilename", required: false }] }], lazy: [{ type: i0.Input, args: [{ isSignal: true, alias: "lazy", required: false }] }], totalRecords: [{ type: i0.Input, args: [{ isSignal: true, alias: "totalRecords", required: false }] }], expandable: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandable", required: false }] }], multiExpand: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiExpand", required: false }] }], summaryLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "summaryLabel", required: false }] }], summaryValues: [{ type: i0.Input, args: [{ isSignal: true, alias: "summaryValues", required: false }] }], selection: [{ type: i0.Input, args: [{ isSignal: true, alias: "selection", required: false }] }, { type: i0.Output, args: ["selectionChange"] }], expandedRows: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandedRows", required: false }] }, { type: i0.Output, args: ["expandedRowsChange"] }], hiddenFields: [{ type: i0.Input, args: [{ isSignal: true, alias: "hiddenFields", required: false }] }, { type: i0.Output, args: ["hiddenFieldsChange"] }], rowClick: [{ type: i0.Output, args: ["rowClick"] }], lazyLoad: [{ type: i0.Output, args: ["lazyLoad"] }], cellEdit: [{ type: i0.Output, args: ["cellEdit"] }], scrollEl: [{ type: i0.ViewChild, args: ['scrollEl', { isSignal: true }] }], theadEl: [{ type: i0.ViewChild, args: ['theadEl', { isSignal: true }] }], editorHost: [{ type: i0.ViewChild, args: ['editorHost', { isSignal: true }] }], cellDefs: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => KptCellDef), { isSignal: true }] }], cellEditDefs: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => KptCellEditDef), { isSignal: true }] }], rowDetailDef: [{ type: i0.ContentChild, args: [i0.forwardRef(() => KptRowDetailDef), { isSignal: true }] }] }); })();
|
|
10695
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(KptDataTable, { className: "KptDataTable", filePath: "lib/data-table/data-table.component.ts", lineNumber: 173 }); })();
|
|
10317
10696
|
|
|
10318
10697
|
const _c0$d = a0 => ({ $implicit: a0, level: 0 });
|
|
10319
10698
|
const _c1$4 = (a0, a1) => ({ $implicit: a0, level: a1 });
|