@progress/kendo-angular-grid 23.0.0-develop.1 → 23.0.0-develop.11
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/common/column-info.service.d.ts +1 -1
- package/databinding.directive.d.ts +10 -1
- package/directives.d.ts +6 -3
- package/fesm2022/progress-kendo-angular-grid.mjs +2374 -83
- package/filtering/filter-row.component.d.ts +1 -1
- package/grid.component.d.ts +2 -2
- package/grid.module.d.ts +100 -97
- package/highlight/highlight.directive.d.ts +8 -2
- package/index.d.ts +4 -0
- package/localization/messages.d.ts +65 -1
- package/package-metadata.mjs +2 -2
- package/package.json +24 -24
- package/rendering/toolbar/tools/ai-assistant/ai-assistant.component.d.ts +2 -3
- package/rendering/toolbar/tools/smartbox/models.d.ts +71 -0
- package/rendering/toolbar/tools/smartbox/search.service.d.ts +24 -0
- package/rendering/toolbar/tools/smartbox/segmented-control/models.d.ts +36 -0
- package/rendering/toolbar/tools/smartbox/segmented-control/segmented-control.component.d.ts +45 -0
- package/rendering/toolbar/tools/smartbox/smartbox-component/common.d.ts +38 -0
- package/rendering/toolbar/tools/smartbox/smartbox-component/models.d.ts +177 -0
- package/rendering/toolbar/tools/smartbox/smartbox-component/smartbox.component.d.ts +154 -0
- package/rendering/toolbar/tools/smartbox/smartbox-history-item.template.d.ts +29 -0
- package/rendering/toolbar/tools/smartbox/smartbox-suggestion.template.d.ts +29 -0
- package/rendering/toolbar/tools/smartbox/smartbox-tool.component.d.ts +120 -0
- package/schematics/ngAdd/index.js +7 -7
|
@@ -10,11 +10,11 @@ import { isDocumentAvailable, Keys, hasClasses as hasClasses$1, isPresent as isP
|
|
|
10
10
|
import * as i1 from '@angular/platform-browser';
|
|
11
11
|
import * as i1$1 from '@progress/kendo-angular-icons';
|
|
12
12
|
import { IconWrapperComponent, IconsService, KENDO_ICONS } from '@progress/kendo-angular-icons';
|
|
13
|
-
import { plusIcon, cancelIcon, lockIcon, unlockIcon, caretAltDownIcon, caretAltRightIcon, caretAltLeftIcon, arrowLeftIcon, arrowRightIcon, sortDescSmallIcon, sortAscSmallIcon, filterClearIcon, filterIcon, searchIcon, checkIcon, arrowRotateCcwIcon, columnsIcon, sparklesIcon, fileCsvIcon, filePdfIcon, fileExcelIcon, trashIcon, saveIcon, pencilIcon, chevronUpIcon, chevronDownIcon, chevronRightIcon, displayInlineFlexIcon, maxWidthIcon, stickIcon, unstickIcon, setColumnPositionIcon, slidersIcon, moreVerticalIcon, reorderIcon, minusIcon, insertMiddleIcon, xIcon, xCircleIcon, plusCircleIcon, chevronLeftIcon, undoIcon, redoIcon, arrowsSwapIcon, groupIcon, tableWizardIcon } from '@progress/kendo-svg-icons';
|
|
13
|
+
import { plusIcon, cancelIcon, lockIcon, unlockIcon, caretAltDownIcon, caretAltRightIcon, caretAltLeftIcon, arrowLeftIcon, arrowRightIcon, sortDescSmallIcon, sortAscSmallIcon, filterClearIcon, filterIcon, searchIcon, checkIcon, arrowRotateCcwIcon, columnsIcon, sparklesIcon, fileCsvIcon, filePdfIcon, fileExcelIcon, trashIcon, saveIcon, pencilIcon, chevronUpIcon, chevronDownIcon, chevronRightIcon, displayInlineFlexIcon, maxWidthIcon, stickIcon, unstickIcon, setColumnPositionIcon, slidersIcon, moreVerticalIcon, reorderIcon, minusIcon, insertMiddleIcon, xIcon, xCircleIcon, plusCircleIcon, chevronLeftIcon, undoIcon, redoIcon, arrowsSwapIcon, groupIcon, tableWizardIcon, clockArrowRotateIcon, fileClockOutlineIcon, zoomSparkleIcon, arrowUpOutlineIcon, stopSmIcon, lightbulbOutlineIcon } from '@progress/kendo-svg-icons';
|
|
14
14
|
import { switchMap, take, map, filter, takeUntil, switchMapTo, delay, tap, throttleTime, debounceTime, distinctUntilChanged, skip, auditTime, bufferCount, flatMap } from 'rxjs/operators';
|
|
15
15
|
import * as i1$2 from '@progress/kendo-angular-l10n';
|
|
16
16
|
import { ComponentMessages, LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
|
|
17
|
-
import * as
|
|
17
|
+
import * as i56 from '@progress/kendo-angular-pager';
|
|
18
18
|
import { PagerTemplateDirective, PagerContextService, PagerNavigationService, KENDO_PAGER } from '@progress/kendo-angular-pager';
|
|
19
19
|
import { orderBy, isCompositeFilterDescriptor, filterBy, groupBy, process } from '@progress/kendo-data-query';
|
|
20
20
|
import { NgTemplateOutlet, NgClass, NgStyle, KeyValuePipe } from '@angular/common';
|
|
@@ -24,9 +24,9 @@ import { parseDate } from '@progress/kendo-angular-intl';
|
|
|
24
24
|
import * as i2 from '@progress/kendo-angular-popup';
|
|
25
25
|
import { PopupService } from '@progress/kendo-angular-popup';
|
|
26
26
|
import * as i1$6 from '@progress/kendo-angular-buttons';
|
|
27
|
-
import { ChipListComponent, ChipComponent, ButtonComponent, Button, KENDO_BUTTON, ButtonDirective } from '@progress/kendo-angular-buttons';
|
|
27
|
+
import { ChipListComponent, ChipComponent, ButtonComponent, Button, KENDO_BUTTON, ButtonDirective, KENDO_BUTTONS } from '@progress/kendo-angular-buttons';
|
|
28
28
|
import * as i1$5 from '@progress/kendo-angular-dropdowns';
|
|
29
|
-
import { DropDownListComponent, AutoCompleteComponent } from '@progress/kendo-angular-dropdowns';
|
|
29
|
+
import { DropDownListComponent, AutoCompleteComponent, DataService, SelectionService as SelectionService$1, NavigationService as NavigationService$1, DisabledItemsService } from '@progress/kendo-angular-dropdowns';
|
|
30
30
|
import * as i2$2 from '@angular/forms';
|
|
31
31
|
import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule, FormControl, FormGroup } from '@angular/forms';
|
|
32
32
|
import * as i2$1 from '@progress/kendo-angular-utils';
|
|
@@ -34,8 +34,8 @@ import { DragTargetContainerDirective, DropTargetContainerDirective } from '@pro
|
|
|
34
34
|
import * as i4 from '@progress/kendo-angular-inputs';
|
|
35
35
|
import { TextBoxComponent, NumericTextBoxComponent, NumericTextBoxCustomMessagesComponent, RadioButtonComponent, CheckBoxComponent, TextBoxPrefixTemplateDirective, KENDO_FORMFIELD, KENDO_TEXTBOX, KENDO_NUMERICTEXTBOX, KENDO_CHECKBOX } from '@progress/kendo-angular-inputs';
|
|
36
36
|
import * as i5 from '@progress/kendo-angular-dateinputs';
|
|
37
|
-
import { DatePickerComponent, DatePickerCustomMessagesComponent, KENDO_DATEPICKER, CalendarDOMService, CenturyViewService, DecadeViewService, MonthViewService, YearViewService, NavigationService as NavigationService$
|
|
38
|
-
import * as
|
|
37
|
+
import { DatePickerComponent, DatePickerCustomMessagesComponent, KENDO_DATEPICKER, CalendarDOMService, CenturyViewService, DecadeViewService, MonthViewService, YearViewService, NavigationService as NavigationService$2 } from '@progress/kendo-angular-dateinputs';
|
|
38
|
+
import * as i57 from '@progress/kendo-angular-toolbar';
|
|
39
39
|
import { ToolBarToolComponent, KENDO_TOOLBAR } from '@progress/kendo-angular-toolbar';
|
|
40
40
|
import { trigger, state, transition, style, animate } from '@angular/animations';
|
|
41
41
|
import { TabStripComponent, TabStripTabComponent, TabTitleDirective, TabContentDirective } from '@progress/kendo-angular-layout';
|
|
@@ -4494,12 +4494,12 @@ class NavigationService {
|
|
|
4494
4494
|
}
|
|
4495
4495
|
}
|
|
4496
4496
|
}
|
|
4497
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: NavigationService, deps: [{ token: i0.NgZone }, { token: DomEventsService }, { token:
|
|
4497
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: NavigationService, deps: [{ token: i0.NgZone }, { token: DomEventsService }, { token: i56.PagerContextService }, { token: ScrollRequestService }, { token: GroupsService }, { token: DetailsService }, { token: FocusRoot }, { token: EditService }, { token: i0.ChangeDetectorRef }, { token: ContextService }, { token: ColumnResizingService }, { token: FocusableDirective, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4498
4498
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: NavigationService });
|
|
4499
4499
|
}
|
|
4500
4500
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: NavigationService, decorators: [{
|
|
4501
4501
|
type: Injectable
|
|
4502
|
-
}], ctorParameters: () => [{ type: i0.NgZone }, { type: DomEventsService }, { type:
|
|
4502
|
+
}], ctorParameters: () => [{ type: i0.NgZone }, { type: DomEventsService }, { type: i56.PagerContextService }, { type: ScrollRequestService }, { type: GroupsService }, { type: DetailsService }, { type: FocusRoot }, { type: EditService }, { type: i0.ChangeDetectorRef }, { type: ContextService }, { type: ColumnResizingService }, { type: FocusableDirective, decorators: [{
|
|
4503
4503
|
type: Optional
|
|
4504
4504
|
}] }] });
|
|
4505
4505
|
|
|
@@ -12683,9 +12683,11 @@ class FilterRowComponent {
|
|
|
12683
12683
|
const columnName = column.title || column.field;
|
|
12684
12684
|
return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
|
|
12685
12685
|
}
|
|
12686
|
-
getLogicalColIndex(
|
|
12687
|
-
|
|
12688
|
-
|
|
12686
|
+
getLogicalColIndex(column) {
|
|
12687
|
+
if (!isPresent$1(column.leafIndex)) {
|
|
12688
|
+
return -1;
|
|
12689
|
+
}
|
|
12690
|
+
return column.leafIndex + (this.detailTemplate?.templateRef ? 1 : 0);
|
|
12689
12691
|
}
|
|
12690
12692
|
get isStacked() {
|
|
12691
12693
|
return this.ctx.grid?.isStacked;
|
|
@@ -12716,7 +12718,7 @@ class FilterRowComponent {
|
|
|
12716
12718
|
[filter]="filter"
|
|
12717
12719
|
kendoGridLogicalCell
|
|
12718
12720
|
[logicalRowIndex]="logicalRowIndex"
|
|
12719
|
-
[logicalColIndex]="getLogicalColIndex(
|
|
12721
|
+
[logicalColIndex]="getLogicalColIndex(column)"
|
|
12720
12722
|
></td>
|
|
12721
12723
|
}
|
|
12722
12724
|
`, isInline: true, dependencies: [{ kind: "component", type: FilterCellComponent, selector: "[kendoGridFilterCell]", inputs: ["column", "filter", "size"] }, { kind: "directive", type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
@@ -12750,7 +12752,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
12750
12752
|
[filter]="filter"
|
|
12751
12753
|
kendoGridLogicalCell
|
|
12752
12754
|
[logicalRowIndex]="logicalRowIndex"
|
|
12753
|
-
[logicalColIndex]="getLogicalColIndex(
|
|
12755
|
+
[logicalColIndex]="getLogicalColIndex(column)"
|
|
12754
12756
|
></td>
|
|
12755
12757
|
}
|
|
12756
12758
|
`,
|
|
@@ -13930,13 +13932,13 @@ class ToolbarToolBase {
|
|
|
13930
13932
|
get buttonElement() {
|
|
13931
13933
|
return this.host.getButton();
|
|
13932
13934
|
}
|
|
13933
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ToolbarToolBase, deps: [{ token:
|
|
13935
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ToolbarToolBase, deps: [{ token: i57.ToolBarButtonComponent }, { token: 'command' }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
13934
13936
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: ToolbarToolBase, isStandalone: true, ngImport: i0 });
|
|
13935
13937
|
}
|
|
13936
13938
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ToolbarToolBase, decorators: [{
|
|
13937
13939
|
type: Directive,
|
|
13938
13940
|
args: [{}]
|
|
13939
|
-
}], ctorParameters: () => [{ type:
|
|
13941
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: undefined, decorators: [{
|
|
13940
13942
|
type: Inject,
|
|
13941
13943
|
args: ['command']
|
|
13942
13944
|
}] }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
@@ -14138,7 +14140,7 @@ class ColumnChooserToolbarDirective extends ToolbarToolBase {
|
|
|
14138
14140
|
this.host.selected = false;
|
|
14139
14141
|
focusAnchor && this.buttonElement?.focus({ preventScroll: true });
|
|
14140
14142
|
}
|
|
14141
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i2.PopupService }, { token:
|
|
14143
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i2.PopupService }, { token: i57.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i57.RefreshService }, { token: AdaptiveGridService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
14142
14144
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll", filterable: "filterable", showSelectAll: "showSelectAll" }, usesInheritance: true, ngImport: i0 });
|
|
14143
14145
|
}
|
|
14144
14146
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ColumnChooserToolbarDirective, decorators: [{
|
|
@@ -14147,7 +14149,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
14147
14149
|
selector: '[kendoGridColumnChooserTool]',
|
|
14148
14150
|
standalone: true
|
|
14149
14151
|
}]
|
|
14150
|
-
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i2.PopupService }, { type:
|
|
14152
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i2.PopupService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i57.RefreshService }, { type: AdaptiveGridService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }], propDecorators: { autoSync: [{
|
|
14151
14153
|
type: Input
|
|
14152
14154
|
}], allowHideAll: [{
|
|
14153
14155
|
type: Input
|
|
@@ -17497,7 +17499,7 @@ class CSVCommandToolbarDirective extends ToolbarToolBase {
|
|
|
17497
17499
|
e.preventDefault();
|
|
17498
17500
|
this.csvService.exportClick.emit();
|
|
17499
17501
|
}
|
|
17500
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CSVCommandToolbarDirective, deps: [{ token: CSVService }, { token:
|
|
17502
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CSVCommandToolbarDirective, deps: [{ token: CSVService }, { token: i57.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
17501
17503
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: CSVCommandToolbarDirective, isStandalone: true, selector: "[kendoGridCSVTool]", usesInheritance: true, ngImport: i0 });
|
|
17502
17504
|
}
|
|
17503
17505
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CSVCommandToolbarDirective, decorators: [{
|
|
@@ -17506,7 +17508,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
17506
17508
|
selector: '[kendoGridCSVTool]',
|
|
17507
17509
|
standalone: true
|
|
17508
17510
|
}]
|
|
17509
|
-
}], ctorParameters: () => [{ type: CSVService }, { type:
|
|
17511
|
+
}], ctorParameters: () => [{ type: CSVService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
17510
17512
|
|
|
17511
17513
|
/**
|
|
17512
17514
|
* @hidden
|
|
@@ -19952,14 +19954,15 @@ class HeaderComponent {
|
|
|
19952
19954
|
}
|
|
19953
19955
|
onHeaderKeydown(column, args) {
|
|
19954
19956
|
const code = normalizeKeys(args);
|
|
19955
|
-
|
|
19957
|
+
const isColumnGroupComponent = this.isColumnGroupComponent(column);
|
|
19958
|
+
if (code === Keys.ArrowDown && args.altKey && this.showFilterMenu && this.isFilterable(column) && !isColumnGroupComponent) {
|
|
19956
19959
|
args.preventDefault();
|
|
19957
19960
|
args.stopImmediatePropagation();
|
|
19958
19961
|
const filterMenu = this.filterMenus.find(fm => fm.column === column);
|
|
19959
19962
|
filterMenu.toggle(filterMenu.anchor.nativeElement, filterMenu.template);
|
|
19960
19963
|
return;
|
|
19961
19964
|
}
|
|
19962
|
-
if (code === Keys.ArrowDown && args.altKey && this.showColumnMenu(column)) {
|
|
19965
|
+
if (code === Keys.ArrowDown && args.altKey && this.showColumnMenu(column) && !isColumnGroupComponent) {
|
|
19963
19966
|
args.preventDefault();
|
|
19964
19967
|
args.stopImmediatePropagation();
|
|
19965
19968
|
const columnMenu = this.columnMenus.find(cm => cm.column === column);
|
|
@@ -19968,7 +19971,7 @@ class HeaderComponent {
|
|
|
19968
19971
|
}
|
|
19969
19972
|
const isCtrlOrMeta = args.ctrlKey || args.metaKey;
|
|
19970
19973
|
const isGroupingKeyShortcut = (code === Keys.Enter || code === Keys.Space) && isCtrlOrMeta;
|
|
19971
|
-
if (isGroupingKeyShortcut && this.isGroupable(column)) {
|
|
19974
|
+
if (isGroupingKeyShortcut && this.isGroupable(column) && !isColumnGroupComponent) {
|
|
19972
19975
|
args.preventDefault();
|
|
19973
19976
|
args.stopImmediatePropagation();
|
|
19974
19977
|
const isGroupedByField = this.groups.some(gr => gr.field === column.field);
|
|
@@ -19987,22 +19990,29 @@ class HeaderComponent {
|
|
|
19987
19990
|
const isReorderingKeyShortcut = isLeftOrRightArrow && isCtrlOrMeta;
|
|
19988
19991
|
if (isReorderingKeyShortcut && this.isReorderable(column)) {
|
|
19989
19992
|
args.preventDefault();
|
|
19990
|
-
const
|
|
19993
|
+
const allColumns = sortColumns(this.columnInfoService.list().toArray()).filter(col => col.level === column.level);
|
|
19994
|
+
const columnsCount = allColumns.length;
|
|
19991
19995
|
const reorderDirection = code === Keys.ArrowLeft ? -1 : 1;
|
|
19992
19996
|
const rtlMultiplier = this.contextService.localization.rtl ? -1 : 1;
|
|
19993
19997
|
const reorderDirectionOffset = reorderDirection * rtlMultiplier;
|
|
19994
|
-
const
|
|
19998
|
+
const oldIndex = allColumns.indexOf(column);
|
|
19999
|
+
let newIndex = oldIndex + reorderDirectionOffset;
|
|
20000
|
+
let targetColumn = allColumns[newIndex];
|
|
20001
|
+
while (isPresent(targetColumn) && targetColumn.hidden) {
|
|
20002
|
+
targetColumn = allColumns[newIndex + reorderDirectionOffset];
|
|
20003
|
+
newIndex += reorderDirectionOffset;
|
|
20004
|
+
}
|
|
19995
20005
|
const normalizedNewIndex = Math.min(Math.max(0, newIndex), columnsCount - 1);
|
|
19996
20006
|
const gridInstance = this.contextService.grid;
|
|
19997
20007
|
gridInstance.reorderColumn(column, normalizedNewIndex, { before: reorderDirectionOffset < 0 });
|
|
19998
20008
|
gridInstance.columnReorder.emit(new ColumnReorderEvent({
|
|
19999
20009
|
column,
|
|
20000
20010
|
newIndex: normalizedNewIndex,
|
|
20001
|
-
oldIndex
|
|
20011
|
+
oldIndex
|
|
20002
20012
|
}));
|
|
20003
20013
|
return;
|
|
20004
20014
|
}
|
|
20005
|
-
if (!this.sortable || args.defaultPrevented || column.sortable === false) {
|
|
20015
|
+
if (!this.sortable || args.defaultPrevented || column.sortable === false || isColumnGroupComponent) {
|
|
20006
20016
|
return;
|
|
20007
20017
|
}
|
|
20008
20018
|
if (code === Keys.Enter && isPresent(column.field)) {
|
|
@@ -20296,7 +20306,7 @@ class HeaderComponent {
|
|
|
20296
20306
|
>
|
|
20297
20307
|
</th>
|
|
20298
20308
|
}
|
|
20299
|
-
@for (column of columnsForLevel(levelIndex); track
|
|
20309
|
+
@for (column of columnsForLevel(levelIndex); track $index; let columnIndex = $index; let last = $last) {
|
|
20300
20310
|
@if (!isColumnGroupComponent(column)) {
|
|
20301
20311
|
<th
|
|
20302
20312
|
kendoGridLogicalCell
|
|
@@ -20443,6 +20453,7 @@ class HeaderComponent {
|
|
|
20443
20453
|
[rowSpan]="column.rowspan(totalColumnLevels)"
|
|
20444
20454
|
[colSpan]="column.colspan"
|
|
20445
20455
|
[headerLabelText]="column.title || getColumnComponent(column).field"
|
|
20456
|
+
(keydown)="onHeaderKeydown(getColumnComponent(column), $event)"
|
|
20446
20457
|
kendoDropTarget
|
|
20447
20458
|
kendoDraggable
|
|
20448
20459
|
kendoDraggableColumn
|
|
@@ -20544,7 +20555,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
20544
20555
|
>
|
|
20545
20556
|
</th>
|
|
20546
20557
|
}
|
|
20547
|
-
@for (column of columnsForLevel(levelIndex); track
|
|
20558
|
+
@for (column of columnsForLevel(levelIndex); track $index; let columnIndex = $index; let last = $last) {
|
|
20548
20559
|
@if (!isColumnGroupComponent(column)) {
|
|
20549
20560
|
<th
|
|
20550
20561
|
kendoGridLogicalCell
|
|
@@ -20691,6 +20702,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
20691
20702
|
[rowSpan]="column.rowspan(totalColumnLevels)"
|
|
20692
20703
|
[colSpan]="column.colspan"
|
|
20693
20704
|
[headerLabelText]="column.title || getColumnComponent(column).field"
|
|
20705
|
+
(keydown)="onHeaderKeydown(getColumnComponent(column), $event)"
|
|
20694
20706
|
kendoDropTarget
|
|
20695
20707
|
kendoDraggable
|
|
20696
20708
|
kendoDraggableColumn
|
|
@@ -24124,7 +24136,7 @@ const packageMetadata = {
|
|
|
24124
24136
|
productCode: 'KENDOUIANGULAR',
|
|
24125
24137
|
productCodes: ['KENDOUIANGULAR'],
|
|
24126
24138
|
publishDate: 0,
|
|
24127
|
-
version: '23.0.0-develop.
|
|
24139
|
+
version: '23.0.0-develop.11',
|
|
24128
24140
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
24129
24141
|
};
|
|
24130
24142
|
|
|
@@ -29097,8 +29109,72 @@ class GridMessages extends ComponentMessages {
|
|
|
29097
29109
|
* and the message is rendered as `3 items are selected`.
|
|
29098
29110
|
*/
|
|
29099
29111
|
multiCheckboxFilterSelectedItemsCount;
|
|
29112
|
+
/**
|
|
29113
|
+
* The aria-label for the Speech to Text button of the Smart Bar tool in AI Assistant mode.
|
|
29114
|
+
*/
|
|
29115
|
+
smartBoxSpeechToTextButton;
|
|
29116
|
+
/**
|
|
29117
|
+
* The aria-label for the Submit button of the Smart Bar tool in AI Assistant mode.
|
|
29118
|
+
*/
|
|
29119
|
+
smartBoxSubmitPromptButton;
|
|
29120
|
+
/**
|
|
29121
|
+
* The placeholder text for the SmartBox tool Search mode input
|
|
29122
|
+
*/
|
|
29123
|
+
smartBoxSearchPlaceholder;
|
|
29124
|
+
/**
|
|
29125
|
+
* The placeholder text for the SmartBox tool Semantic Search mode input
|
|
29126
|
+
*/
|
|
29127
|
+
smartBoxSemanticSearchPlaceholder;
|
|
29128
|
+
/**
|
|
29129
|
+
* The placeholder text for the SmartBox tool AI Assistant mode input
|
|
29130
|
+
*/
|
|
29131
|
+
smartBoxAIAssistantPlaceholder;
|
|
29132
|
+
/**
|
|
29133
|
+
* The text for the suggested prompts section in the SmartBox tool AI Assistant mode.
|
|
29134
|
+
*/
|
|
29135
|
+
smartBoxSuggestedPrompts;
|
|
29136
|
+
/**
|
|
29137
|
+
* The text displayed when there are no previous searches in the SmartBox tool.
|
|
29138
|
+
*/
|
|
29139
|
+
smartBoxNoPreviousSearches;
|
|
29140
|
+
/**
|
|
29141
|
+
* The text displayed when there are no previous prompts in the SmartBox tool.
|
|
29142
|
+
*/
|
|
29143
|
+
smartBoxNoPreviousPrompts;
|
|
29144
|
+
/**
|
|
29145
|
+
* The text displayed when there is previous search history in the SmartBox tool.
|
|
29146
|
+
*/
|
|
29147
|
+
smartBoxPreviouslySearched;
|
|
29148
|
+
/**
|
|
29149
|
+
* The text displayed when there is previous ask history in the SmartBox tool.
|
|
29150
|
+
*/
|
|
29151
|
+
smartBoxPreviouslyAsked;
|
|
29152
|
+
/**
|
|
29153
|
+
* The Search mode text displayed in the SmartBox tool search modes list.
|
|
29154
|
+
*/
|
|
29155
|
+
searchModeListItemText;
|
|
29156
|
+
/**
|
|
29157
|
+
* The Search mode description displayed in the SmartBox tool search modes list.
|
|
29158
|
+
*/
|
|
29159
|
+
searchModeListItemDescription;
|
|
29160
|
+
/**
|
|
29161
|
+
* The Semantic Search mode text displayed in the SmartBox tool search modes list.
|
|
29162
|
+
*/
|
|
29163
|
+
semanticSearchModeListItemText;
|
|
29164
|
+
/**
|
|
29165
|
+
* The Semantic Search mode description displayed in the SmartBox tool search modes list.
|
|
29166
|
+
*/
|
|
29167
|
+
semanticSearchModeListItemDescription;
|
|
29168
|
+
/**
|
|
29169
|
+
* The text for the Search mode button in the SmartBox tool popup.
|
|
29170
|
+
*/
|
|
29171
|
+
smartBoxSearchModePopupButton;
|
|
29172
|
+
/**
|
|
29173
|
+
* The text for the AI Assistant mode button in the SmartBox tool popup.
|
|
29174
|
+
*/
|
|
29175
|
+
smartBoxAIAssistantModePopupButton;
|
|
29100
29176
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
29101
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: GridMessages, isStandalone: true, selector: "kendo-grid-messages-base", inputs: { groupPanelEmpty: "groupPanelEmpty", noRecords: "noRecords", pagerLabel: "pagerLabel", pagerFirstPage: "pagerFirstPage", pagerLastPage: "pagerLastPage", pagerPreviousPage: "pagerPreviousPage", pagerNextPage: "pagerNextPage", pagerPage: "pagerPage", pagerItemsPerPage: "pagerItemsPerPage", pagerOf: "pagerOf", pagerItems: "pagerItems", pagerPageNumberInputTitle: "pagerPageNumberInputTitle", pagerInputLabel: "pagerInputLabel", pagerSelectPage: "pagerSelectPage", filter: "filter", filterInputLabel: "filterInputLabel", filterMenuTitle: "filterMenuTitle", filterMenuOperatorsDropDownLabel: "filterMenuOperatorsDropDownLabel", filterMenuLogicDropDownLabel: "filterMenuLogicDropDownLabel", filterCellOperatorLabel: "filterCellOperatorLabel", booleanFilterCellLabel: "booleanFilterCellLabel", aiAssistantApplyButtonText: "aiAssistantApplyButtonText", aiAssistantToolbarToolText: "aiAssistantToolbarToolText", aiAssistantWindowTitle: "aiAssistantWindowTitle", aiAssistantWindowCloseTitle: "aiAssistantWindowCloseTitle", aiAssistantOutputCardTitle: "aiAssistantOutputCardTitle", aiAssistantOutputCardBodyContent: "aiAssistantOutputCardBodyContent", aiAssistantSelectionNotEnabled: "aiAssistantSelectionNotEnabled", aiAssistantSelectionRowModeRequired: "aiAssistantSelectionRowModeRequired", aiAssistantSelectionCellModeRequired: "aiAssistantSelectionCellModeRequired", aiAssistantWindowMaximizeTitle: "aiAssistantWindowMaximizeTitle", aiAssistantWindowMinimizeTitle: "aiAssistantWindowMinimizeTitle", aiAssistantWindowRestoreTitle: "aiAssistantWindowRestoreTitle", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterGteOperator: "filterGteOperator", filterGtOperator: "filterGtOperator", filterLteOperator: "filterLteOperator", filterLtOperator: "filterLtOperator", filterIsTrue: "filterIsTrue", filterIsFalse: "filterIsFalse", filterBooleanAll: "filterBooleanAll", adaptiveFilterOperatorsTitle: "adaptiveFilterOperatorsTitle", filterAfterOrEqualOperator: "filterAfterOrEqualOperator", filterAfterOperator: "filterAfterOperator", filterBeforeOperator: "filterBeforeOperator", filterBeforeOrEqualOperator: "filterBeforeOrEqualOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle", adaptiveBackButtonTitle: "adaptiveBackButtonTitle", filterAndLogic: "filterAndLogic", filterOrLogic: "filterOrLogic", filterToolbarToolText: "filterToolbarToolText", loading: "loading", gridLabel: "gridLabel", columnMenu: "columnMenu", setColumnPosition: "setColumnPosition", columns: "columns", columnChooserSelectAll: "columnChooserSelectAll", columnChooserSearchLabel: "columnChooserSearchLabel", columnChooserSelectedColumnsCount: "columnChooserSelectedColumnsCount", columnsSubtitle: "columnsSubtitle", adaptiveFilterTitle: "adaptiveFilterTitle", adaptiveSortTitle: "adaptiveSortTitle", adaptiveGroupTitle: "adaptiveGroupTitle", filterClearAllButton: "filterClearAllButton", groupClearButton: "groupClearButton", sortClearButton: "sortClearButton", sortDoneButton: "sortDoneButton", groupDoneButton: "groupDoneButton", lock: "lock", unlock: "unlock", stick: "stick", unstick: "unstick", sortable: "sortable", sortAscending: "sortAscending", sortDescending: "sortDescending", autosizeThisColumn: "autosizeThisColumn", autosizeAllColumns: "autosizeAllColumns", sortedAscending: "sortedAscending", sortedDescending: "sortedDescending", sortedDefault: "sortedDefault", sortToolbarToolText: "sortToolbarToolText", columnsApply: "columnsApply", columnsReset: "columnsReset", detailExpand: "detailExpand", detailCollapse: "detailCollapse", filterDateToday: "filterDateToday", filterDateToggle: "filterDateToggle", filterNumericDecrement: "filterNumericDecrement", filterNumericIncrement: "filterNumericIncrement", selectionCheckboxLabel: "selectionCheckboxLabel", selectAllCheckboxLabel: "selectAllCheckboxLabel", groupCollapse: "groupCollapse", groupExpand: "groupExpand", topToolbarLabel: "topToolbarLabel", bottomToolbarLabel: "bottomToolbarLabel", editToolbarToolText: "editToolbarToolText", saveToolbarToolText: "saveToolbarToolText", addToolbarToolText: "addToolbarToolText", cancelToolbarToolText: "cancelToolbarToolText", removeToolbarToolText: "removeToolbarToolText", excelExportToolbarToolText: "excelExportToolbarToolText", csvExportToolbarToolText: "csvExportToolbarToolText", pdfExportToolbarToolText: "pdfExportToolbarToolText", groupPanelLabel: "groupPanelLabel", dragRowHandleLabel: "dragRowHandleLabel", columnMenuFilterTabTitle: "columnMenuFilterTabTitle", columnMenuGeneralTabTitle: "columnMenuGeneralTabTitle", columnMenuColumnsTabTitle: "columnMenuColumnsTabTitle", groupChipMenuPrevious: "groupChipMenuPrevious", groupChipMenuNext: "groupChipMenuNext", groupToolbarToolText: "groupToolbarToolText", formValidationErrorText: "formValidationErrorText", removeConfirmationDialogTitle: "removeConfirmationDialogTitle", removeConfirmationDialogContent: "removeConfirmationDialogContent", removeConfirmationDialogConfirmText: "removeConfirmationDialogConfirmText", removeConfirmationDialogRejectText: "removeConfirmationDialogRejectText", externalEditingTitle: "externalEditingTitle", externalEditingAddTitle: "externalEditingAddTitle", externalEditingSaveText: "externalEditingSaveText", externalEditingCancelText: "externalEditingCancelText", multiCheckboxFilterSearchPlaceholder: "multiCheckboxFilterSearchPlaceholder", multiCheckboxFilterSelectAllLabel: "multiCheckboxFilterSelectAllLabel", multiCheckboxFilterSelectedItemsCount: "multiCheckboxFilterSelectedItemsCount" }, usesInheritance: true, ngImport: i0 });
|
|
29177
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: GridMessages, isStandalone: true, selector: "kendo-grid-messages-base", inputs: { groupPanelEmpty: "groupPanelEmpty", noRecords: "noRecords", pagerLabel: "pagerLabel", pagerFirstPage: "pagerFirstPage", pagerLastPage: "pagerLastPage", pagerPreviousPage: "pagerPreviousPage", pagerNextPage: "pagerNextPage", pagerPage: "pagerPage", pagerItemsPerPage: "pagerItemsPerPage", pagerOf: "pagerOf", pagerItems: "pagerItems", pagerPageNumberInputTitle: "pagerPageNumberInputTitle", pagerInputLabel: "pagerInputLabel", pagerSelectPage: "pagerSelectPage", filter: "filter", filterInputLabel: "filterInputLabel", filterMenuTitle: "filterMenuTitle", filterMenuOperatorsDropDownLabel: "filterMenuOperatorsDropDownLabel", filterMenuLogicDropDownLabel: "filterMenuLogicDropDownLabel", filterCellOperatorLabel: "filterCellOperatorLabel", booleanFilterCellLabel: "booleanFilterCellLabel", aiAssistantApplyButtonText: "aiAssistantApplyButtonText", aiAssistantToolbarToolText: "aiAssistantToolbarToolText", aiAssistantWindowTitle: "aiAssistantWindowTitle", aiAssistantWindowCloseTitle: "aiAssistantWindowCloseTitle", aiAssistantOutputCardTitle: "aiAssistantOutputCardTitle", aiAssistantOutputCardBodyContent: "aiAssistantOutputCardBodyContent", aiAssistantSelectionNotEnabled: "aiAssistantSelectionNotEnabled", aiAssistantSelectionRowModeRequired: "aiAssistantSelectionRowModeRequired", aiAssistantSelectionCellModeRequired: "aiAssistantSelectionCellModeRequired", aiAssistantWindowMaximizeTitle: "aiAssistantWindowMaximizeTitle", aiAssistantWindowMinimizeTitle: "aiAssistantWindowMinimizeTitle", aiAssistantWindowRestoreTitle: "aiAssistantWindowRestoreTitle", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterGteOperator: "filterGteOperator", filterGtOperator: "filterGtOperator", filterLteOperator: "filterLteOperator", filterLtOperator: "filterLtOperator", filterIsTrue: "filterIsTrue", filterIsFalse: "filterIsFalse", filterBooleanAll: "filterBooleanAll", adaptiveFilterOperatorsTitle: "adaptiveFilterOperatorsTitle", filterAfterOrEqualOperator: "filterAfterOrEqualOperator", filterAfterOperator: "filterAfterOperator", filterBeforeOperator: "filterBeforeOperator", filterBeforeOrEqualOperator: "filterBeforeOrEqualOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle", adaptiveBackButtonTitle: "adaptiveBackButtonTitle", filterAndLogic: "filterAndLogic", filterOrLogic: "filterOrLogic", filterToolbarToolText: "filterToolbarToolText", loading: "loading", gridLabel: "gridLabel", columnMenu: "columnMenu", setColumnPosition: "setColumnPosition", columns: "columns", columnChooserSelectAll: "columnChooserSelectAll", columnChooserSearchLabel: "columnChooserSearchLabel", columnChooserSelectedColumnsCount: "columnChooserSelectedColumnsCount", columnsSubtitle: "columnsSubtitle", adaptiveFilterTitle: "adaptiveFilterTitle", adaptiveSortTitle: "adaptiveSortTitle", adaptiveGroupTitle: "adaptiveGroupTitle", filterClearAllButton: "filterClearAllButton", groupClearButton: "groupClearButton", sortClearButton: "sortClearButton", sortDoneButton: "sortDoneButton", groupDoneButton: "groupDoneButton", lock: "lock", unlock: "unlock", stick: "stick", unstick: "unstick", sortable: "sortable", sortAscending: "sortAscending", sortDescending: "sortDescending", autosizeThisColumn: "autosizeThisColumn", autosizeAllColumns: "autosizeAllColumns", sortedAscending: "sortedAscending", sortedDescending: "sortedDescending", sortedDefault: "sortedDefault", sortToolbarToolText: "sortToolbarToolText", columnsApply: "columnsApply", columnsReset: "columnsReset", detailExpand: "detailExpand", detailCollapse: "detailCollapse", filterDateToday: "filterDateToday", filterDateToggle: "filterDateToggle", filterNumericDecrement: "filterNumericDecrement", filterNumericIncrement: "filterNumericIncrement", selectionCheckboxLabel: "selectionCheckboxLabel", selectAllCheckboxLabel: "selectAllCheckboxLabel", groupCollapse: "groupCollapse", groupExpand: "groupExpand", topToolbarLabel: "topToolbarLabel", bottomToolbarLabel: "bottomToolbarLabel", editToolbarToolText: "editToolbarToolText", saveToolbarToolText: "saveToolbarToolText", addToolbarToolText: "addToolbarToolText", cancelToolbarToolText: "cancelToolbarToolText", removeToolbarToolText: "removeToolbarToolText", excelExportToolbarToolText: "excelExportToolbarToolText", csvExportToolbarToolText: "csvExportToolbarToolText", pdfExportToolbarToolText: "pdfExportToolbarToolText", groupPanelLabel: "groupPanelLabel", dragRowHandleLabel: "dragRowHandleLabel", columnMenuFilterTabTitle: "columnMenuFilterTabTitle", columnMenuGeneralTabTitle: "columnMenuGeneralTabTitle", columnMenuColumnsTabTitle: "columnMenuColumnsTabTitle", groupChipMenuPrevious: "groupChipMenuPrevious", groupChipMenuNext: "groupChipMenuNext", groupToolbarToolText: "groupToolbarToolText", formValidationErrorText: "formValidationErrorText", removeConfirmationDialogTitle: "removeConfirmationDialogTitle", removeConfirmationDialogContent: "removeConfirmationDialogContent", removeConfirmationDialogConfirmText: "removeConfirmationDialogConfirmText", removeConfirmationDialogRejectText: "removeConfirmationDialogRejectText", externalEditingTitle: "externalEditingTitle", externalEditingAddTitle: "externalEditingAddTitle", externalEditingSaveText: "externalEditingSaveText", externalEditingCancelText: "externalEditingCancelText", multiCheckboxFilterSearchPlaceholder: "multiCheckboxFilterSearchPlaceholder", multiCheckboxFilterSelectAllLabel: "multiCheckboxFilterSelectAllLabel", multiCheckboxFilterSelectedItemsCount: "multiCheckboxFilterSelectedItemsCount", smartBoxSpeechToTextButton: "smartBoxSpeechToTextButton", smartBoxSubmitPromptButton: "smartBoxSubmitPromptButton", smartBoxSearchPlaceholder: "smartBoxSearchPlaceholder", smartBoxSemanticSearchPlaceholder: "smartBoxSemanticSearchPlaceholder", smartBoxAIAssistantPlaceholder: "smartBoxAIAssistantPlaceholder", smartBoxSuggestedPrompts: "smartBoxSuggestedPrompts", smartBoxNoPreviousSearches: "smartBoxNoPreviousSearches", smartBoxNoPreviousPrompts: "smartBoxNoPreviousPrompts", smartBoxPreviouslySearched: "smartBoxPreviouslySearched", smartBoxPreviouslyAsked: "smartBoxPreviouslyAsked", searchModeListItemText: "searchModeListItemText", searchModeListItemDescription: "searchModeListItemDescription", semanticSearchModeListItemText: "semanticSearchModeListItemText", semanticSearchModeListItemDescription: "semanticSearchModeListItemDescription", smartBoxSearchModePopupButton: "smartBoxSearchModePopupButton", smartBoxAIAssistantModePopupButton: "smartBoxAIAssistantModePopupButton" }, usesInheritance: true, ngImport: i0 });
|
|
29102
29178
|
}
|
|
29103
29179
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridMessages, decorators: [{
|
|
29104
29180
|
type: Directive,
|
|
@@ -29374,6 +29450,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
29374
29450
|
type: Input
|
|
29375
29451
|
}], multiCheckboxFilterSelectedItemsCount: [{
|
|
29376
29452
|
type: Input
|
|
29453
|
+
}], smartBoxSpeechToTextButton: [{
|
|
29454
|
+
type: Input
|
|
29455
|
+
}], smartBoxSubmitPromptButton: [{
|
|
29456
|
+
type: Input
|
|
29457
|
+
}], smartBoxSearchPlaceholder: [{
|
|
29458
|
+
type: Input
|
|
29459
|
+
}], smartBoxSemanticSearchPlaceholder: [{
|
|
29460
|
+
type: Input
|
|
29461
|
+
}], smartBoxAIAssistantPlaceholder: [{
|
|
29462
|
+
type: Input
|
|
29463
|
+
}], smartBoxSuggestedPrompts: [{
|
|
29464
|
+
type: Input
|
|
29465
|
+
}], smartBoxNoPreviousSearches: [{
|
|
29466
|
+
type: Input
|
|
29467
|
+
}], smartBoxNoPreviousPrompts: [{
|
|
29468
|
+
type: Input
|
|
29469
|
+
}], smartBoxPreviouslySearched: [{
|
|
29470
|
+
type: Input
|
|
29471
|
+
}], smartBoxPreviouslyAsked: [{
|
|
29472
|
+
type: Input
|
|
29473
|
+
}], searchModeListItemText: [{
|
|
29474
|
+
type: Input
|
|
29475
|
+
}], searchModeListItemDescription: [{
|
|
29476
|
+
type: Input
|
|
29477
|
+
}], semanticSearchModeListItemText: [{
|
|
29478
|
+
type: Input
|
|
29479
|
+
}], semanticSearchModeListItemDescription: [{
|
|
29480
|
+
type: Input
|
|
29481
|
+
}], smartBoxSearchModePopupButton: [{
|
|
29482
|
+
type: Input
|
|
29483
|
+
}], smartBoxAIAssistantModePopupButton: [{
|
|
29484
|
+
type: Input
|
|
29377
29485
|
}] } });
|
|
29378
29486
|
|
|
29379
29487
|
/**
|
|
@@ -31944,6 +32052,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
31944
32052
|
args: [GroupToolbarToolComponent]
|
|
31945
32053
|
}] } });
|
|
31946
32054
|
|
|
32055
|
+
/**
|
|
32056
|
+
* @hidden
|
|
32057
|
+
*/
|
|
32058
|
+
class SearchService {
|
|
32059
|
+
/**
|
|
32060
|
+
* Fires when the search descriptor is set.
|
|
32061
|
+
*/
|
|
32062
|
+
changes = new Subject();
|
|
32063
|
+
/**
|
|
32064
|
+
* Sets the search descriptor.
|
|
32065
|
+
*
|
|
32066
|
+
* @param {CompositeFilterDescriptor} value - The search descriptor to set.
|
|
32067
|
+
*/
|
|
32068
|
+
search(value) {
|
|
32069
|
+
this.changes.next(value);
|
|
32070
|
+
}
|
|
32071
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SearchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
32072
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SearchService });
|
|
32073
|
+
}
|
|
32074
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SearchService, decorators: [{
|
|
32075
|
+
type: Injectable
|
|
32076
|
+
}] });
|
|
32077
|
+
|
|
31947
32078
|
const createControl = (source) => (acc, key) => {
|
|
31948
32079
|
acc[key] = new FormControl(source[key]);
|
|
31949
32080
|
return acc;
|
|
@@ -33127,7 +33258,7 @@ class GridComponent {
|
|
|
33127
33258
|
}
|
|
33128
33259
|
/**
|
|
33129
33260
|
* Builds the request body for the AI service based on the provided prompt message.
|
|
33130
|
-
* Allows developers to construct
|
|
33261
|
+
* Allows developers to construct the AI service requests manually ([see example](slug:ai_assistant_tools_setup#manual-integration)).
|
|
33131
33262
|
*
|
|
33132
33263
|
* @param promptMessage - The prompt message to send to the AI service.
|
|
33133
33264
|
* @returns The request body object ready to be sent to the AI service.
|
|
@@ -33147,7 +33278,7 @@ class GridComponent {
|
|
|
33147
33278
|
}
|
|
33148
33279
|
/**
|
|
33149
33280
|
* Processes an AI service response and applies the commands to the Grid.
|
|
33150
|
-
* Allows developers to handle
|
|
33281
|
+
* Allows developers to handle the AI service responses manually ([see example](slug:ai_assistant_tools_setup#manual-integration)).
|
|
33151
33282
|
*
|
|
33152
33283
|
* @param response - The AI service response containing optional message and commands array.
|
|
33153
33284
|
*
|
|
@@ -34407,7 +34538,8 @@ class GridComponent {
|
|
|
34407
34538
|
AdaptiveGridService,
|
|
34408
34539
|
ColumnMenuService,
|
|
34409
34540
|
MenuTabbingService,
|
|
34410
|
-
DataMappingService
|
|
34541
|
+
DataMappingService,
|
|
34542
|
+
SearchService
|
|
34411
34543
|
], queries: [{ propertyName: "columns", predicate: ColumnBase }, { propertyName: "detailTemplateChildren", predicate: DetailTemplateDirective }, { propertyName: "cellLoadingTemplateChildren", predicate: CellLoadingTemplateDirective }, { propertyName: "loadingTemplateChildren", predicate: LoadingTemplateDirective }, { propertyName: "statusBarTemplateChildren", predicate: StatusBarTemplateDirective }, { propertyName: "noRecordsTemplateChildren", predicate: NoRecordsTemplateDirective }, { propertyName: "pagerTemplateChildren", predicate: PagerTemplateDirective }, { propertyName: "toolbarTemplateChildren", predicate: ToolbarTemplateDirective }, { propertyName: "columnMenuTemplates", predicate: ColumnMenuTemplateDirective }], viewQueries: [{ propertyName: "lockedHeader", first: true, predicate: ["lockedHeader"], descendants: true }, { propertyName: "header", first: true, predicate: ["header"], descendants: true }, { propertyName: "ariaRoot", first: true, predicate: ["ariaRoot"], descendants: true, static: true }, { propertyName: "dragTargetContainer", first: true, predicate: DragTargetContainerDirective, descendants: true }, { propertyName: "dropTargetContainer", first: true, predicate: DropTargetContainerDirective, descendants: true }, { propertyName: "dialogContainer", first: true, predicate: ["dialogContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "windowContainer", first: true, predicate: ["windowContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "adaptiveRenderer", first: true, predicate: AdaptiveRendererComponent, descendants: true }, { propertyName: "listComponent", first: true, predicate: ListComponent, descendants: true }, { propertyName: "footer", predicate: ["footer"], descendants: true }], exportAs: ["kendoGrid"], usesOnChanges: true, ngImport: i0, template: `
|
|
34412
34544
|
<ng-container kendoGridLocalizedMessages
|
|
34413
34545
|
i18n-groupPanelEmpty="kendo.grid.groupPanelEmpty|The label visible in the Grid group panel when it is empty"
|
|
@@ -34811,6 +34943,54 @@ class GridComponent {
|
|
|
34811
34943
|
|
|
34812
34944
|
i18n-multiCheckboxFilterSelectedItemsCount="kendo.grid.multiCheckboxFilterSelectedItemsCount|The text for the multi-checkbox filter selected items count"
|
|
34813
34945
|
multiCheckboxFilterSelectedItemsCount="{{ '{selectedItemsCount} selected items' }}"
|
|
34946
|
+
|
|
34947
|
+
i18n-smartBoxSpeechToTextButton="kendo.grid.smartBoxSpeechToTextButton|The aria-label for the Speech to Text button of the SmartBox tool in AI Assistant mode."
|
|
34948
|
+
smartBoxSpeechToTextButton="Voice input"
|
|
34949
|
+
|
|
34950
|
+
i18n-smartBoxSubmitPromptButton="kendo.grid.smartBoxSubmitPromptButton|The aria-label for the Submit button of the SmartBox tool in AI Assistant mode."
|
|
34951
|
+
smartBoxSubmitPromptButton="Submit prompt"
|
|
34952
|
+
|
|
34953
|
+
i18n-smartBoxSearchPlaceholder="kendo.grid.smartBoxSearchPlaceholder|The placeholder text for the SmartBox tool Search mode input"
|
|
34954
|
+
smartBoxSearchPlaceholder="Search..."
|
|
34955
|
+
|
|
34956
|
+
i18n-smartBoxSemanticSearchPlaceholder="kendo.grid.smartBoxSemanticSearchPlaceholder|The placeholder text for the SmartBox tool Semantic Search mode input"
|
|
34957
|
+
smartBoxSemanticSearchPlaceholder="Semantic Search"
|
|
34958
|
+
|
|
34959
|
+
i18n-smartBoxAIAssistantPlaceholder="kendo.grid.smartBoxAIAssistantPlaceholder|The placeholder text for the SmartBox tool AI Assistant mode input"
|
|
34960
|
+
smartBoxAIAssistantPlaceholder="Sort, Filter, or group with AI"
|
|
34961
|
+
|
|
34962
|
+
i18n-smartBoxSuggestedPrompts="kendo.grid.smartBoxSuggestedPrompts|The text for the suggested prompts section in the SmartBox tool AI Assistant mode."
|
|
34963
|
+
smartBoxSuggestedPrompts="Suggested prompts"
|
|
34964
|
+
|
|
34965
|
+
i18n-smartBoxNoPreviousSearches="kendo.grid.smartBoxNoPreviousSearches|The text displayed when there are no previous searches in the SmartBox tool."
|
|
34966
|
+
smartBoxNoPreviousSearches="No previous searches"
|
|
34967
|
+
|
|
34968
|
+
i18n-smartBoxNoPreviousPrompts="kendo.grid.smartBoxNoPreviousPrompts|The text displayed when there are no previous prompts in the SmartBox tool."
|
|
34969
|
+
smartBoxNoPreviousPrompts="No previous prompts"
|
|
34970
|
+
|
|
34971
|
+
i18n-smartBoxPreviouslySearched="kendo.grid.smartBoxPreviouslySearched|The text displayed when there is previous search history in the SmartBox tool."
|
|
34972
|
+
smartBoxPreviouslySearched="Previously Searched"
|
|
34973
|
+
|
|
34974
|
+
i18n-smartBoxPreviouslyAsked="kendo.grid.smartBoxPreviouslyAsked|The text displayed when there is previous ask history in the SmartBox tool."
|
|
34975
|
+
smartBoxPreviouslyAsked="Previously Asked"
|
|
34976
|
+
|
|
34977
|
+
i18n-searchModeListItemText="kendo.grid.searchModeListItemText|The Search mode text displayed in the SmartBox tool search modes list."
|
|
34978
|
+
searchModeListItemText="Search"
|
|
34979
|
+
|
|
34980
|
+
i18n-searchModeListItemDescription="kendo.grid.searchModeListItemDescription|The Search mode description displayed in the SmartBox tool search modes list."
|
|
34981
|
+
searchModeListItemDescription="Looks for exact word matches accross your data."
|
|
34982
|
+
|
|
34983
|
+
i18n-semanticSearchModeListItemText="kendo.grid.semanticSearchModeListItemText|The Semantic Search mode text displayed in the SmartBox tool search modes list."
|
|
34984
|
+
semanticSearchModeListItemText="Semantic Search"
|
|
34985
|
+
|
|
34986
|
+
i18n-semanticSearchModeListItemDescription="kendo.grid.semanticSearchModeListItemDescription|The Semantic Search mode description displayed in the SmartBox tool search modes list."
|
|
34987
|
+
semanticSearchModeListItemDescription="Understands context to surface the most relevant results."
|
|
34988
|
+
|
|
34989
|
+
i18n-smartBoxSearchModePopupButton="kendo.grid.smartBoxSearchModePopupButton|The text for the Search mode button in the SmartBox tool popup."
|
|
34990
|
+
smartBoxSearchModePopupButton="Search"
|
|
34991
|
+
|
|
34992
|
+
i18n-smartBoxAIAssistantModePopupButton="kendo.grid.smartBoxAIAssistantModePopupButton|The text for the AI Assistant mode button in the SmartBox tool popup."
|
|
34993
|
+
smartBoxAIAssistantModePopupButton="AI Assistant"
|
|
34814
34994
|
>
|
|
34815
34995
|
</ng-container>
|
|
34816
34996
|
@if (showTopToolbar) {
|
|
@@ -34832,6 +35012,7 @@ class GridComponent {
|
|
|
34832
35012
|
[skip]="skip"
|
|
34833
35013
|
[size]="size"
|
|
34834
35014
|
[responsive]="normalizedPageableSettings.responsive && !pagerTemplate"
|
|
35015
|
+
[adaptiveMode]="adaptiveMode"
|
|
34835
35016
|
[buttonCount]="normalizedPageableSettings.buttonCount"
|
|
34836
35017
|
[info]="normalizedPageableSettings.info"
|
|
34837
35018
|
[pageSizeValues]="normalizedPageableSettings.pageSizes"
|
|
@@ -35181,6 +35362,7 @@ class GridComponent {
|
|
|
35181
35362
|
[skip]="skip"
|
|
35182
35363
|
[size]="size"
|
|
35183
35364
|
[responsive]="normalizedPageableSettings.responsive && !pagerTemplate"
|
|
35365
|
+
[adaptiveMode]="adaptiveMode"
|
|
35184
35366
|
[buttonCount]="normalizedPageableSettings.buttonCount"
|
|
35185
35367
|
[info]="normalizedPageableSettings.info"
|
|
35186
35368
|
[pageSizeValues]="normalizedPageableSettings.pageSizes"
|
|
@@ -35253,7 +35435,8 @@ class GridComponent {
|
|
|
35253
35435
|
<kendo-pager-page-sizes
|
|
35254
35436
|
[size]="size"
|
|
35255
35437
|
[pageSizes]="normalizedPageableSettings.pageSizes"
|
|
35256
|
-
[showItemsText]="showPagerItemsText"
|
|
35438
|
+
[showItemsText]="showPagerItemsText"
|
|
35439
|
+
[adaptiveMode]="adaptiveMode">
|
|
35257
35440
|
</kendo-pager-page-sizes>
|
|
35258
35441
|
}
|
|
35259
35442
|
@if (normalizedPageableSettings.info) {
|
|
@@ -35274,7 +35457,7 @@ class GridComponent {
|
|
|
35274
35457
|
@if (showLicenseWatermark) {
|
|
35275
35458
|
<div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
|
|
35276
35459
|
}
|
|
35277
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { kind: "component", type: ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { kind: "component", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { kind: "directive", type: TableDirective, selector: "[kendoGridResizableTable]", inputs: ["locked", "virtualColumns"] }, { kind: "directive", type: GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { kind: "component", type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { kind: "component", type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "totalColumns", "tabIndex", "size"] }, { kind: "directive", type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { kind: "component", type: ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { kind: "directive", type: DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode", "cursorStyle", "hintContext"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { kind: "directive", type: DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }, { kind: "component", type: FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex", "totalColumns", "totalColumnsCount"] }, { kind: "component", type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "rowsToRender", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "totalColumns", "rowClass", "rowHeight", "detailRowHeight"] }, { kind: "component", type: LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }, { kind: "component", type: StatusBarComponent, selector: "kendo-grid-status-bar", inputs: ["statusBarTemplate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]", inputs: ["licenseMessage"] }, { kind: "component", type:
|
|
35460
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { kind: "component", type: ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { kind: "component", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { kind: "directive", type: TableDirective, selector: "[kendoGridResizableTable]", inputs: ["locked", "virtualColumns"] }, { kind: "directive", type: GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { kind: "component", type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { kind: "component", type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "totalColumns", "tabIndex", "size"] }, { kind: "directive", type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { kind: "component", type: ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { kind: "directive", type: DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode", "cursorStyle", "hintContext"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { kind: "directive", type: DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }, { kind: "component", type: FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex", "totalColumns", "totalColumnsCount"] }, { kind: "component", type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "rowsToRender", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "totalColumns", "rowClass", "rowHeight", "detailRowHeight"] }, { kind: "component", type: LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }, { kind: "component", type: StatusBarComponent, selector: "kendo-grid-status-bar", inputs: ["statusBarTemplate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]", inputs: ["licenseMessage"] }, { kind: "component", type: i56.CustomMessagesComponent, selector: "kendo-datapager-messages, kendo-pager-messages" }, { kind: "component", type: i56.PagerInfoComponent, selector: "kendo-datapager-info, kendo-pager-info" }, { kind: "component", type: i56.PagerInputComponent, selector: "kendo-datapager-input, kendo-pager-input", inputs: ["showPageText", "size"] }, { kind: "component", type: i56.PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons, kendo-pager-next-buttons", inputs: ["size"] }, { kind: "component", type: i56.PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons, kendo-pager-numeric-buttons", inputs: ["buttonCount", "size"] }, { kind: "component", type: i56.PagerPageSizesComponent, selector: "kendo-datapager-page-sizes, kendo-pager-page-sizes", inputs: ["showItemsText", "pageSizes", "size", "adaptiveMode"] }, { kind: "component", type: i56.PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons, kendo-pager-prev-buttons", inputs: ["size"] }, { kind: "directive", type: i56.PagerTemplateDirective, selector: "[kendoDataPagerTemplate], [kendoPagerTemplate]" }, { kind: "component", type: i56.PagerComponent, selector: "kendo-datapager, kendo-pager", inputs: ["externalTemplate", "total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext", "navigable", "size", "responsive", "adaptiveMode"], outputs: ["pageChange", "pageSizeChange", "pagerInputVisibilityChange", "pageTextVisibilityChange", "itemsTextVisibilityChange"], exportAs: ["kendoDataPager", "kendoPager"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AdaptiveRendererComponent, selector: "kendo-grid-adaptive-renderer" }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
35278
35461
|
}
|
|
35279
35462
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridComponent, decorators: [{
|
|
35280
35463
|
type: Component,
|
|
@@ -35333,7 +35516,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
35333
35516
|
AdaptiveGridService,
|
|
35334
35517
|
ColumnMenuService,
|
|
35335
35518
|
MenuTabbingService,
|
|
35336
|
-
DataMappingService
|
|
35519
|
+
DataMappingService,
|
|
35520
|
+
SearchService
|
|
35337
35521
|
],
|
|
35338
35522
|
selector: 'kendo-grid',
|
|
35339
35523
|
template: `
|
|
@@ -35739,6 +35923,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
35739
35923
|
|
|
35740
35924
|
i18n-multiCheckboxFilterSelectedItemsCount="kendo.grid.multiCheckboxFilterSelectedItemsCount|The text for the multi-checkbox filter selected items count"
|
|
35741
35925
|
multiCheckboxFilterSelectedItemsCount="{{ '{selectedItemsCount} selected items' }}"
|
|
35926
|
+
|
|
35927
|
+
i18n-smartBoxSpeechToTextButton="kendo.grid.smartBoxSpeechToTextButton|The aria-label for the Speech to Text button of the SmartBox tool in AI Assistant mode."
|
|
35928
|
+
smartBoxSpeechToTextButton="Voice input"
|
|
35929
|
+
|
|
35930
|
+
i18n-smartBoxSubmitPromptButton="kendo.grid.smartBoxSubmitPromptButton|The aria-label for the Submit button of the SmartBox tool in AI Assistant mode."
|
|
35931
|
+
smartBoxSubmitPromptButton="Submit prompt"
|
|
35932
|
+
|
|
35933
|
+
i18n-smartBoxSearchPlaceholder="kendo.grid.smartBoxSearchPlaceholder|The placeholder text for the SmartBox tool Search mode input"
|
|
35934
|
+
smartBoxSearchPlaceholder="Search..."
|
|
35935
|
+
|
|
35936
|
+
i18n-smartBoxSemanticSearchPlaceholder="kendo.grid.smartBoxSemanticSearchPlaceholder|The placeholder text for the SmartBox tool Semantic Search mode input"
|
|
35937
|
+
smartBoxSemanticSearchPlaceholder="Semantic Search"
|
|
35938
|
+
|
|
35939
|
+
i18n-smartBoxAIAssistantPlaceholder="kendo.grid.smartBoxAIAssistantPlaceholder|The placeholder text for the SmartBox tool AI Assistant mode input"
|
|
35940
|
+
smartBoxAIAssistantPlaceholder="Sort, Filter, or group with AI"
|
|
35941
|
+
|
|
35942
|
+
i18n-smartBoxSuggestedPrompts="kendo.grid.smartBoxSuggestedPrompts|The text for the suggested prompts section in the SmartBox tool AI Assistant mode."
|
|
35943
|
+
smartBoxSuggestedPrompts="Suggested prompts"
|
|
35944
|
+
|
|
35945
|
+
i18n-smartBoxNoPreviousSearches="kendo.grid.smartBoxNoPreviousSearches|The text displayed when there are no previous searches in the SmartBox tool."
|
|
35946
|
+
smartBoxNoPreviousSearches="No previous searches"
|
|
35947
|
+
|
|
35948
|
+
i18n-smartBoxNoPreviousPrompts="kendo.grid.smartBoxNoPreviousPrompts|The text displayed when there are no previous prompts in the SmartBox tool."
|
|
35949
|
+
smartBoxNoPreviousPrompts="No previous prompts"
|
|
35950
|
+
|
|
35951
|
+
i18n-smartBoxPreviouslySearched="kendo.grid.smartBoxPreviouslySearched|The text displayed when there is previous search history in the SmartBox tool."
|
|
35952
|
+
smartBoxPreviouslySearched="Previously Searched"
|
|
35953
|
+
|
|
35954
|
+
i18n-smartBoxPreviouslyAsked="kendo.grid.smartBoxPreviouslyAsked|The text displayed when there is previous ask history in the SmartBox tool."
|
|
35955
|
+
smartBoxPreviouslyAsked="Previously Asked"
|
|
35956
|
+
|
|
35957
|
+
i18n-searchModeListItemText="kendo.grid.searchModeListItemText|The Search mode text displayed in the SmartBox tool search modes list."
|
|
35958
|
+
searchModeListItemText="Search"
|
|
35959
|
+
|
|
35960
|
+
i18n-searchModeListItemDescription="kendo.grid.searchModeListItemDescription|The Search mode description displayed in the SmartBox tool search modes list."
|
|
35961
|
+
searchModeListItemDescription="Looks for exact word matches accross your data."
|
|
35962
|
+
|
|
35963
|
+
i18n-semanticSearchModeListItemText="kendo.grid.semanticSearchModeListItemText|The Semantic Search mode text displayed in the SmartBox tool search modes list."
|
|
35964
|
+
semanticSearchModeListItemText="Semantic Search"
|
|
35965
|
+
|
|
35966
|
+
i18n-semanticSearchModeListItemDescription="kendo.grid.semanticSearchModeListItemDescription|The Semantic Search mode description displayed in the SmartBox tool search modes list."
|
|
35967
|
+
semanticSearchModeListItemDescription="Understands context to surface the most relevant results."
|
|
35968
|
+
|
|
35969
|
+
i18n-smartBoxSearchModePopupButton="kendo.grid.smartBoxSearchModePopupButton|The text for the Search mode button in the SmartBox tool popup."
|
|
35970
|
+
smartBoxSearchModePopupButton="Search"
|
|
35971
|
+
|
|
35972
|
+
i18n-smartBoxAIAssistantModePopupButton="kendo.grid.smartBoxAIAssistantModePopupButton|The text for the AI Assistant mode button in the SmartBox tool popup."
|
|
35973
|
+
smartBoxAIAssistantModePopupButton="AI Assistant"
|
|
35742
35974
|
>
|
|
35743
35975
|
</ng-container>
|
|
35744
35976
|
@if (showTopToolbar) {
|
|
@@ -35760,6 +35992,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
35760
35992
|
[skip]="skip"
|
|
35761
35993
|
[size]="size"
|
|
35762
35994
|
[responsive]="normalizedPageableSettings.responsive && !pagerTemplate"
|
|
35995
|
+
[adaptiveMode]="adaptiveMode"
|
|
35763
35996
|
[buttonCount]="normalizedPageableSettings.buttonCount"
|
|
35764
35997
|
[info]="normalizedPageableSettings.info"
|
|
35765
35998
|
[pageSizeValues]="normalizedPageableSettings.pageSizes"
|
|
@@ -36109,6 +36342,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
36109
36342
|
[skip]="skip"
|
|
36110
36343
|
[size]="size"
|
|
36111
36344
|
[responsive]="normalizedPageableSettings.responsive && !pagerTemplate"
|
|
36345
|
+
[adaptiveMode]="adaptiveMode"
|
|
36112
36346
|
[buttonCount]="normalizedPageableSettings.buttonCount"
|
|
36113
36347
|
[info]="normalizedPageableSettings.info"
|
|
36114
36348
|
[pageSizeValues]="normalizedPageableSettings.pageSizes"
|
|
@@ -36181,7 +36415,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
36181
36415
|
<kendo-pager-page-sizes
|
|
36182
36416
|
[size]="size"
|
|
36183
36417
|
[pageSizes]="normalizedPageableSettings.pageSizes"
|
|
36184
|
-
[showItemsText]="showPagerItemsText"
|
|
36418
|
+
[showItemsText]="showPagerItemsText"
|
|
36419
|
+
[adaptiveMode]="adaptiveMode">
|
|
36185
36420
|
</kendo-pager-page-sizes>
|
|
36186
36421
|
}
|
|
36187
36422
|
@if (normalizedPageableSettings.info) {
|
|
@@ -36525,6 +36760,7 @@ class DataBindingDirective {
|
|
|
36525
36760
|
changeDetector;
|
|
36526
36761
|
localDataChangesService;
|
|
36527
36762
|
rowReorderService;
|
|
36763
|
+
searchService;
|
|
36528
36764
|
/**
|
|
36529
36765
|
* Sets the number of records to skip in the Grid.
|
|
36530
36766
|
*
|
|
@@ -36586,11 +36822,14 @@ class DataBindingDirective {
|
|
|
36586
36822
|
stateChangeSubscription;
|
|
36587
36823
|
dataChangedSubscription;
|
|
36588
36824
|
rowReorderSubscription;
|
|
36589
|
-
|
|
36825
|
+
searchSubscription;
|
|
36826
|
+
searchFilter;
|
|
36827
|
+
constructor(grid, changeDetector, localDataChangesService, rowReorderService, searchService, ctx) {
|
|
36590
36828
|
this.grid = grid;
|
|
36591
36829
|
this.changeDetector = changeDetector;
|
|
36592
36830
|
this.localDataChangesService = localDataChangesService;
|
|
36593
36831
|
this.rowReorderService = rowReorderService;
|
|
36832
|
+
this.searchService = searchService;
|
|
36594
36833
|
if (localDataChangesService) {
|
|
36595
36834
|
this.dataChangedSubscription = this.localDataChangesService.changes.subscribe(this.rebind.bind(this));
|
|
36596
36835
|
}
|
|
@@ -36609,6 +36848,13 @@ class DataBindingDirective {
|
|
|
36609
36848
|
.rowReorder
|
|
36610
36849
|
.subscribe(this.onRowReorder.bind(this));
|
|
36611
36850
|
}
|
|
36851
|
+
if (this.searchService) {
|
|
36852
|
+
this.searchSubscription = this.searchService
|
|
36853
|
+
.changes
|
|
36854
|
+
.subscribe((searchFilter) => {
|
|
36855
|
+
this.onSearch.bind(this)(searchFilter);
|
|
36856
|
+
});
|
|
36857
|
+
}
|
|
36612
36858
|
}
|
|
36613
36859
|
/**
|
|
36614
36860
|
* @hidden
|
|
@@ -36623,6 +36869,9 @@ class DataBindingDirective {
|
|
|
36623
36869
|
if (this.rowReorderSubscription) {
|
|
36624
36870
|
this.rowReorderSubscription.unsubscribe();
|
|
36625
36871
|
}
|
|
36872
|
+
if (this.searchSubscription) {
|
|
36873
|
+
this.searchSubscription.unsubscribe();
|
|
36874
|
+
}
|
|
36626
36875
|
}
|
|
36627
36876
|
ngOnChanges(changes) {
|
|
36628
36877
|
if (anyChanged(["pageSize", "skip", "sort", "group", "filter"], changes)) {
|
|
@@ -36648,6 +36897,18 @@ class DataBindingDirective {
|
|
|
36648
36897
|
this.rowReorderService.reorderRows(ev, this.originalData);
|
|
36649
36898
|
this.rebind();
|
|
36650
36899
|
}
|
|
36900
|
+
/**
|
|
36901
|
+
* @hidden
|
|
36902
|
+
*/
|
|
36903
|
+
onSearch(searchFilter) {
|
|
36904
|
+
this.searchFilter = searchFilter;
|
|
36905
|
+
const combinedFilter = this.combineFilters();
|
|
36906
|
+
const state = { ...this.state, filter: combinedFilter };
|
|
36907
|
+
this.grid.data = this.process(state);
|
|
36908
|
+
this.grid.updateNavigationMetadata();
|
|
36909
|
+
this.grid.ngDoCheck();
|
|
36910
|
+
this.dataChanged = false;
|
|
36911
|
+
}
|
|
36651
36912
|
/**
|
|
36652
36913
|
* @hidden
|
|
36653
36914
|
*/
|
|
@@ -36694,12 +36955,31 @@ class DataBindingDirective {
|
|
|
36694
36955
|
this.state.take = this.grid.pageSize;
|
|
36695
36956
|
}
|
|
36696
36957
|
}
|
|
36697
|
-
|
|
36958
|
+
let combinedFilter = null;
|
|
36959
|
+
if (this.searchFilter) {
|
|
36960
|
+
combinedFilter = this.combineFilters();
|
|
36961
|
+
const state = { ...this.state, filter: combinedFilter };
|
|
36962
|
+
this.grid.data = this.process(state);
|
|
36963
|
+
}
|
|
36964
|
+
else {
|
|
36965
|
+
this.grid.data = this.process(this.state);
|
|
36966
|
+
}
|
|
36698
36967
|
this.grid.updateNavigationMetadata();
|
|
36699
36968
|
this.grid.ngDoCheck();
|
|
36700
36969
|
this.dataChanged = false;
|
|
36701
36970
|
}
|
|
36702
|
-
|
|
36971
|
+
combineFilters() {
|
|
36972
|
+
let combinedFilter = null;
|
|
36973
|
+
if (this.state.filter && this.searchFilter) {
|
|
36974
|
+
combinedFilter = {
|
|
36975
|
+
logic: 'and',
|
|
36976
|
+
filters: [...this.state.filter.filters, this.searchFilter]
|
|
36977
|
+
};
|
|
36978
|
+
return combinedFilter;
|
|
36979
|
+
}
|
|
36980
|
+
return this.searchFilter || this.state.filter;
|
|
36981
|
+
}
|
|
36982
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: DataBindingDirective, deps: [{ token: GridComponent }, { token: i0.ChangeDetectorRef }, { token: LocalDataChangesService }, { token: RowReorderService }, { token: SearchService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
36703
36983
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: DataBindingDirective, isStandalone: true, selector: "[kendoGridBinding]", inputs: { skip: "skip", sort: "sort", filter: "filter", pageSize: "pageSize", group: "group", data: ["kendoGridBinding", "data"] }, exportAs: ["kendoGridBinding"], usesOnChanges: true, ngImport: i0 });
|
|
36704
36984
|
}
|
|
36705
36985
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: DataBindingDirective, decorators: [{
|
|
@@ -36709,7 +36989,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
36709
36989
|
exportAs: 'kendoGridBinding',
|
|
36710
36990
|
standalone: true
|
|
36711
36991
|
}]
|
|
36712
|
-
}], ctorParameters: () => [{ type: GridComponent }, { type: i0.ChangeDetectorRef }, { type: LocalDataChangesService }, { type: RowReorderService }, { type: ContextService }], propDecorators: { skip: [{
|
|
36992
|
+
}], ctorParameters: () => [{ type: GridComponent }, { type: i0.ChangeDetectorRef }, { type: LocalDataChangesService }, { type: RowReorderService }, { type: SearchService }, { type: ContextService }], propDecorators: { skip: [{
|
|
36713
36993
|
type: Input
|
|
36714
36994
|
}], sort: [{
|
|
36715
36995
|
type: Input
|
|
@@ -37994,7 +38274,7 @@ class PDFCommandToolbarDirective extends ToolbarToolBase {
|
|
|
37994
38274
|
e.preventDefault();
|
|
37995
38275
|
this.pdfService.exportClick.emit();
|
|
37996
38276
|
}
|
|
37997
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PDFCommandToolbarDirective, deps: [{ token: PDFService }, { token:
|
|
38277
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PDFCommandToolbarDirective, deps: [{ token: PDFService }, { token: i57.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
37998
38278
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: PDFCommandToolbarDirective, isStandalone: true, selector: "[kendoGridPDFTool]", usesInheritance: true, ngImport: i0 });
|
|
37999
38279
|
}
|
|
38000
38280
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PDFCommandToolbarDirective, decorators: [{
|
|
@@ -38003,7 +38283,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38003
38283
|
selector: '[kendoGridPDFTool]',
|
|
38004
38284
|
standalone: true
|
|
38005
38285
|
}]
|
|
38006
|
-
}], ctorParameters: () => [{ type: PDFService }, { type:
|
|
38286
|
+
}], ctorParameters: () => [{ type: PDFService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
38007
38287
|
|
|
38008
38288
|
/**
|
|
38009
38289
|
* Represents the **Export to Excel** toolbar tool of the Grid.
|
|
@@ -38039,7 +38319,7 @@ class ExcelCommandToolbarDirective extends ToolbarToolBase {
|
|
|
38039
38319
|
e.preventDefault();
|
|
38040
38320
|
this.excelService.exportClick.emit();
|
|
38041
38321
|
}
|
|
38042
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelCommandToolbarDirective, deps: [{ token: ExcelService }, { token:
|
|
38322
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelCommandToolbarDirective, deps: [{ token: ExcelService }, { token: i57.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
38043
38323
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: ExcelCommandToolbarDirective, isStandalone: true, selector: "[kendoGridExcelTool]", usesInheritance: true, ngImport: i0 });
|
|
38044
38324
|
}
|
|
38045
38325
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelCommandToolbarDirective, decorators: [{
|
|
@@ -38048,7 +38328,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38048
38328
|
selector: '[kendoGridExcelTool]',
|
|
38049
38329
|
standalone: true
|
|
38050
38330
|
}]
|
|
38051
|
-
}], ctorParameters: () => [{ type: ExcelService }, { type:
|
|
38331
|
+
}], ctorParameters: () => [{ type: ExcelService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
38052
38332
|
|
|
38053
38333
|
/**
|
|
38054
38334
|
* @hidden
|
|
@@ -38121,13 +38401,13 @@ class ToolbarEditingToolBase extends ToolbarToolBase {
|
|
|
38121
38401
|
get isSelectionPresent() {
|
|
38122
38402
|
return isPresent$1(this.lastSelectionIndex) && this.lastSelectionIndex > -1;
|
|
38123
38403
|
}
|
|
38124
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ToolbarEditingToolBase, deps: [{ token:
|
|
38404
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ToolbarEditingToolBase, deps: [{ token: i57.ToolBarButtonComponent }, { token: 'command' }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: EditService }, { token: SelectionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
38125
38405
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: ToolbarEditingToolBase, isStandalone: true, usesInheritance: true, ngImport: i0 });
|
|
38126
38406
|
}
|
|
38127
38407
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ToolbarEditingToolBase, decorators: [{
|
|
38128
38408
|
type: Directive,
|
|
38129
38409
|
args: [{}]
|
|
38130
|
-
}], ctorParameters: () => [{ type:
|
|
38410
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: undefined, decorators: [{
|
|
38131
38411
|
type: Inject,
|
|
38132
38412
|
args: ['command']
|
|
38133
38413
|
}] }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: EditService }, { type: SelectionService }] });
|
|
@@ -38167,7 +38447,7 @@ class AddCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
38167
38447
|
e.preventDefault();
|
|
38168
38448
|
this.editService.beginAdd();
|
|
38169
38449
|
}
|
|
38170
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AddCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
38450
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AddCommandToolbarDirective, deps: [{ token: EditService }, { token: i57.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
38171
38451
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: AddCommandToolbarDirective, isStandalone: true, selector: "[kendoGridAddTool]", usesInheritance: true, ngImport: i0 });
|
|
38172
38452
|
}
|
|
38173
38453
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AddCommandToolbarDirective, decorators: [{
|
|
@@ -38176,7 +38456,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38176
38456
|
selector: '[kendoGridAddTool]',
|
|
38177
38457
|
standalone: true
|
|
38178
38458
|
}]
|
|
38179
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
38459
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
38180
38460
|
|
|
38181
38461
|
/**
|
|
38182
38462
|
* @hidden
|
|
@@ -38727,7 +39007,7 @@ class UndoCommandToolbarDirective {
|
|
|
38727
39007
|
e.preventDefault();
|
|
38728
39008
|
this.undoRedoService.onUndo.next(undefined);
|
|
38729
39009
|
}
|
|
38730
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: UndoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token:
|
|
39010
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: UndoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token: i57.ToolBarButtonComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
38731
39011
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: UndoCommandToolbarDirective, isStandalone: true, selector: "[kendoGridUndoTool]", ngImport: i0 });
|
|
38732
39012
|
}
|
|
38733
39013
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: UndoCommandToolbarDirective, decorators: [{
|
|
@@ -38736,7 +39016,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38736
39016
|
selector: '[kendoGridUndoTool]',
|
|
38737
39017
|
standalone: true,
|
|
38738
39018
|
}]
|
|
38739
|
-
}], ctorParameters: () => [{ type: UndoRedoService }, { type:
|
|
39019
|
+
}], ctorParameters: () => [{ type: UndoRedoService }, { type: i57.ToolBarButtonComponent }] });
|
|
38740
39020
|
|
|
38741
39021
|
/**
|
|
38742
39022
|
* Represents the command that triggers the redo action in the Grid.
|
|
@@ -38790,7 +39070,7 @@ class RedoCommandToolbarDirective {
|
|
|
38790
39070
|
e.preventDefault();
|
|
38791
39071
|
this.undoRedoService.onRedo.next(undefined);
|
|
38792
39072
|
}
|
|
38793
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RedoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token:
|
|
39073
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RedoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token: i57.ToolBarButtonComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
38794
39074
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: RedoCommandToolbarDirective, isStandalone: true, selector: "[kendoGridRedoTool]", ngImport: i0 });
|
|
38795
39075
|
}
|
|
38796
39076
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RedoCommandToolbarDirective, decorators: [{
|
|
@@ -38799,7 +39079,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38799
39079
|
selector: '[kendoGridRedoTool]',
|
|
38800
39080
|
standalone: true,
|
|
38801
39081
|
}]
|
|
38802
|
-
}], ctorParameters: () => [{ type: UndoRedoService }, { type:
|
|
39082
|
+
}], ctorParameters: () => [{ type: UndoRedoService }, { type: i57.ToolBarButtonComponent }] });
|
|
38803
39083
|
|
|
38804
39084
|
let incrementingId$2 = 0;
|
|
38805
39085
|
/**
|
|
@@ -38990,7 +39270,7 @@ class SortCommandToolbarDirective {
|
|
|
38990
39270
|
get buttonElement() {
|
|
38991
39271
|
return this.host.getButton();
|
|
38992
39272
|
}
|
|
38993
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SortCommandToolbarDirective, deps: [{ token:
|
|
39273
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SortCommandToolbarDirective, deps: [{ token: i57.ToolBarButtonComponent }, { token: i2.PopupService }, { token: ContextService }, { token: SortService }, { token: ColumnInfoService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
38994
39274
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: SortCommandToolbarDirective, isStandalone: true, selector: "[kendoGridSortTool]", ngImport: i0 });
|
|
38995
39275
|
}
|
|
38996
39276
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SortCommandToolbarDirective, decorators: [{
|
|
@@ -38999,7 +39279,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38999
39279
|
selector: '[kendoGridSortTool]',
|
|
39000
39280
|
standalone: true
|
|
39001
39281
|
}]
|
|
39002
|
-
}], ctorParameters: () => [{ type:
|
|
39282
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: SortService }, { type: ColumnInfoService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }] });
|
|
39003
39283
|
|
|
39004
39284
|
/**
|
|
39005
39285
|
* @hidden
|
|
@@ -39322,7 +39602,7 @@ class FilterCommandToolbarDirective {
|
|
|
39322
39602
|
get buttonElement() {
|
|
39323
39603
|
return this.host.getButton();
|
|
39324
39604
|
}
|
|
39325
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: FilterCommandToolbarDirective, deps: [{ token:
|
|
39605
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: FilterCommandToolbarDirective, deps: [{ token: i57.ToolBarButtonComponent }, { token: i2.PopupService }, { token: ContextService }, { token: FilterService }, { token: ColumnInfoService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39326
39606
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: FilterCommandToolbarDirective, isStandalone: true, selector: "[kendoGridFilterTool]", ngImport: i0 });
|
|
39327
39607
|
}
|
|
39328
39608
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: FilterCommandToolbarDirective, decorators: [{
|
|
@@ -39331,7 +39611,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39331
39611
|
selector: '[kendoGridFilterTool]',
|
|
39332
39612
|
standalone: true
|
|
39333
39613
|
}]
|
|
39334
|
-
}], ctorParameters: () => [{ type:
|
|
39614
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: FilterService }, { type: ColumnInfoService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }] });
|
|
39335
39615
|
|
|
39336
39616
|
/**
|
|
39337
39617
|
* Represents the `edit` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -39367,7 +39647,7 @@ class EditCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
39367
39647
|
}
|
|
39368
39648
|
this.editService.beginEdit(this.lastSelectionIndex);
|
|
39369
39649
|
}
|
|
39370
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: EditCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
39650
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: EditCommandToolbarDirective, deps: [{ token: EditService }, { token: i57.ToolBarButtonComponent }, { token: SelectionService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39371
39651
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: EditCommandToolbarDirective, isStandalone: true, selector: "[kendoGridEditTool]", usesInheritance: true, ngImport: i0 });
|
|
39372
39652
|
}
|
|
39373
39653
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: EditCommandToolbarDirective, decorators: [{
|
|
@@ -39376,7 +39656,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39376
39656
|
selector: '[kendoGridEditTool]',
|
|
39377
39657
|
standalone: true
|
|
39378
39658
|
}]
|
|
39379
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
39659
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
39380
39660
|
|
|
39381
39661
|
/**
|
|
39382
39662
|
* Represents the `save` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -39417,7 +39697,7 @@ class SaveCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
39417
39697
|
this.editService.editedIndices.forEach(i => this.editService.save(i.index));
|
|
39418
39698
|
}
|
|
39419
39699
|
}
|
|
39420
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SaveCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
39700
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SaveCommandToolbarDirective, deps: [{ token: EditService }, { token: i57.ToolBarButtonComponent }, { token: SelectionService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39421
39701
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: SaveCommandToolbarDirective, isStandalone: true, selector: "[kendoGridSaveTool]", usesInheritance: true, ngImport: i0 });
|
|
39422
39702
|
}
|
|
39423
39703
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SaveCommandToolbarDirective, decorators: [{
|
|
@@ -39426,7 +39706,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39426
39706
|
selector: '[kendoGridSaveTool]',
|
|
39427
39707
|
standalone: true
|
|
39428
39708
|
}]
|
|
39429
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
39709
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
39430
39710
|
|
|
39431
39711
|
/**
|
|
39432
39712
|
* Represents the `remove` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -39463,7 +39743,7 @@ class RemoveCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
39463
39743
|
this.editService.remove(this.lastSelectionIndex);
|
|
39464
39744
|
}
|
|
39465
39745
|
}
|
|
39466
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RemoveCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
39746
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RemoveCommandToolbarDirective, deps: [{ token: EditService }, { token: i57.ToolBarButtonComponent }, { token: SelectionService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39467
39747
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: RemoveCommandToolbarDirective, isStandalone: true, selector: "[kendoGridRemoveTool]", usesInheritance: true, ngImport: i0 });
|
|
39468
39748
|
}
|
|
39469
39749
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RemoveCommandToolbarDirective, decorators: [{
|
|
@@ -39472,7 +39752,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39472
39752
|
selector: '[kendoGridRemoveTool]',
|
|
39473
39753
|
standalone: true
|
|
39474
39754
|
}]
|
|
39475
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
39755
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
39476
39756
|
|
|
39477
39757
|
/**
|
|
39478
39758
|
* Represents the `cancel` command in the Grid.
|
|
@@ -39512,7 +39792,7 @@ class CancelCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
39512
39792
|
this.editService.editedIndices.forEach(i => this.editService.endEdit(i.index));
|
|
39513
39793
|
}
|
|
39514
39794
|
}
|
|
39515
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CancelCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
39795
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CancelCommandToolbarDirective, deps: [{ token: EditService }, { token: i57.ToolBarButtonComponent }, { token: SelectionService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39516
39796
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: CancelCommandToolbarDirective, isStandalone: true, selector: "[kendoGridCancelTool]", usesInheritance: true, ngImport: i0 });
|
|
39517
39797
|
}
|
|
39518
39798
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CancelCommandToolbarDirective, decorators: [{
|
|
@@ -39521,7 +39801,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39521
39801
|
selector: '[kendoGridCancelTool]',
|
|
39522
39802
|
standalone: true
|
|
39523
39803
|
}]
|
|
39524
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
39804
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
39525
39805
|
|
|
39526
39806
|
let incrementingId = 0;
|
|
39527
39807
|
/**
|
|
@@ -39702,7 +39982,7 @@ class GroupCommandToolbarDirective {
|
|
|
39702
39982
|
isGroupingApplied(group) {
|
|
39703
39983
|
return isPresent$1(group) && group.length > 0;
|
|
39704
39984
|
}
|
|
39705
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GroupCommandToolbarDirective, deps: [{ token:
|
|
39985
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GroupCommandToolbarDirective, deps: [{ token: i57.ToolBarButtonComponent }, { token: i2.PopupService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: AdaptiveGridService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39706
39986
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: GroupCommandToolbarDirective, isStandalone: true, selector: "[kendoGridGroupTool]", ngImport: i0 });
|
|
39707
39987
|
}
|
|
39708
39988
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GroupCommandToolbarDirective, decorators: [{
|
|
@@ -39711,7 +39991,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39711
39991
|
selector: '[kendoGridGroupTool]',
|
|
39712
39992
|
standalone: true
|
|
39713
39993
|
}]
|
|
39714
|
-
}], ctorParameters: () => [{ type:
|
|
39994
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }] });
|
|
39715
39995
|
|
|
39716
39996
|
/**
|
|
39717
39997
|
* Stores the row and cell highlight state of the Grid.
|
|
@@ -39740,14 +40020,19 @@ class HighlightDirective {
|
|
|
39740
40020
|
* Sets the column key for a data cell. The Grid uses the column index as the default column key.
|
|
39741
40021
|
*/
|
|
39742
40022
|
highlightColumnKey;
|
|
40023
|
+
/**
|
|
40024
|
+
* Emits when the `highlightedKeys` collection changes.
|
|
40025
|
+
*/
|
|
40026
|
+
highlightedKeysChange = new EventEmitter();
|
|
39743
40027
|
rowHighlightState = new Set();
|
|
39744
40028
|
cellHighlightState = new PairSet();
|
|
40029
|
+
lastHighlightState;
|
|
39745
40030
|
constructor(ctx) {
|
|
39746
40031
|
this.ctx = ctx;
|
|
39747
40032
|
this.ctx.highlightDirective = this;
|
|
39748
40033
|
}
|
|
39749
40034
|
ngOnChanges(changes) {
|
|
39750
|
-
if (isPresent$1(changes['highlightedKeys'])) {
|
|
40035
|
+
if (isPresent$1(changes['highlightedKeys']) && this.lastHighlightState !== this.highlightedKeys) {
|
|
39751
40036
|
this.setState(this.highlightedKeys);
|
|
39752
40037
|
}
|
|
39753
40038
|
}
|
|
@@ -39801,6 +40086,8 @@ class HighlightDirective {
|
|
|
39801
40086
|
setState(highlightedKeys) {
|
|
39802
40087
|
this.reset();
|
|
39803
40088
|
if (!highlightedKeys || highlightedKeys.length === 0) {
|
|
40089
|
+
this.highlightedKeys = [];
|
|
40090
|
+
this.notifyChange();
|
|
39804
40091
|
return;
|
|
39805
40092
|
}
|
|
39806
40093
|
const rowHighlights = highlightedKeys.filter(item => !isPresent$1(item.columnKey));
|
|
@@ -39813,13 +40100,19 @@ class HighlightDirective {
|
|
|
39813
40100
|
this.rowHighlightState.add(item.itemKey);
|
|
39814
40101
|
});
|
|
39815
40102
|
}
|
|
40103
|
+
this.highlightedKeys = highlightedKeys;
|
|
40104
|
+
this.notifyChange();
|
|
40105
|
+
}
|
|
40106
|
+
notifyChange() {
|
|
40107
|
+
this.lastHighlightState = this.highlightedKeys;
|
|
40108
|
+
this.highlightedKeysChange.emit(this.highlightedKeys);
|
|
39816
40109
|
}
|
|
39817
40110
|
reset() {
|
|
39818
40111
|
this.rowHighlightState.clear();
|
|
39819
40112
|
this.cellHighlightState.clear();
|
|
39820
40113
|
}
|
|
39821
40114
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: HighlightDirective, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39822
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: HighlightDirective, isStandalone: true, selector: "[kendoGridHighlight]", inputs: { highlightedKeys: "highlightedKeys", highlightItemKey: ["kendoGridHighlight", "highlightItemKey"], highlightColumnKey: "highlightColumnKey" }, usesOnChanges: true, ngImport: i0 });
|
|
40115
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: HighlightDirective, isStandalone: true, selector: "[kendoGridHighlight]", inputs: { highlightedKeys: "highlightedKeys", highlightItemKey: ["kendoGridHighlight", "highlightItemKey"], highlightColumnKey: "highlightColumnKey" }, outputs: { highlightedKeysChange: "highlightedKeysChange" }, usesOnChanges: true, ngImport: i0 });
|
|
39823
40116
|
}
|
|
39824
40117
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: HighlightDirective, decorators: [{
|
|
39825
40118
|
type: Directive,
|
|
@@ -39834,6 +40127,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39834
40127
|
args: ["kendoGridHighlight"]
|
|
39835
40128
|
}], highlightColumnKey: [{
|
|
39836
40129
|
type: Input
|
|
40130
|
+
}], highlightedKeysChange: [{
|
|
40131
|
+
type: Output
|
|
39837
40132
|
}] } });
|
|
39838
40133
|
|
|
39839
40134
|
/**
|
|
@@ -39881,7 +40176,6 @@ class AiAssistantComponent {
|
|
|
39881
40176
|
http;
|
|
39882
40177
|
ctx;
|
|
39883
40178
|
columnInfoService;
|
|
39884
|
-
zone;
|
|
39885
40179
|
aiRequestResponseService;
|
|
39886
40180
|
aiPrompt;
|
|
39887
40181
|
activeView = 0;
|
|
@@ -39900,11 +40194,10 @@ class AiAssistantComponent {
|
|
|
39900
40194
|
columns = [];
|
|
39901
40195
|
leafColumns = [];
|
|
39902
40196
|
idCounter = 0;
|
|
39903
|
-
constructor(http, ctx, columnInfoService,
|
|
40197
|
+
constructor(http, ctx, columnInfoService, aiRequestResponseService) {
|
|
39904
40198
|
this.http = http;
|
|
39905
40199
|
this.ctx = ctx;
|
|
39906
40200
|
this.columnInfoService = columnInfoService;
|
|
39907
|
-
this.zone = zone;
|
|
39908
40201
|
this.aiRequestResponseService = aiRequestResponseService;
|
|
39909
40202
|
}
|
|
39910
40203
|
ngAfterViewInit() {
|
|
@@ -40022,7 +40315,7 @@ class AiAssistantComponent {
|
|
|
40022
40315
|
this.currentRequestSubscription = null;
|
|
40023
40316
|
}
|
|
40024
40317
|
}
|
|
40025
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AiAssistantComponent, deps: [{ token: i1$8.HttpClient }, { token: ContextService }, { token: ColumnInfoService }, { token:
|
|
40318
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AiAssistantComponent, deps: [{ token: i1$8.HttpClient }, { token: ContextService }, { token: ColumnInfoService }, { token: GridAIRequestResponseService }], target: i0.ɵɵFactoryTarget.Component });
|
|
40026
40319
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: AiAssistantComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "aiPrompt", first: true, predicate: AIPromptComponent, descendants: true }], ngImport: i0, template: `
|
|
40027
40320
|
<kendo-aiprompt
|
|
40028
40321
|
#aiPrompt
|
|
@@ -40126,7 +40419,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
40126
40419
|
</kendo-aiprompt>
|
|
40127
40420
|
`
|
|
40128
40421
|
}]
|
|
40129
|
-
}], ctorParameters: () => [{ type: i1$8.HttpClient }, { type: ContextService }, { type: ColumnInfoService }, { type:
|
|
40422
|
+
}], ctorParameters: () => [{ type: i1$8.HttpClient }, { type: ContextService }, { type: ColumnInfoService }, { type: GridAIRequestResponseService }], propDecorators: { aiPrompt: [{
|
|
40130
40423
|
type: ViewChild,
|
|
40131
40424
|
args: [AIPromptComponent]
|
|
40132
40425
|
}] } });
|
|
@@ -40350,7 +40643,7 @@ class AIAssistantToolbarDirective extends ToolbarToolBase {
|
|
|
40350
40643
|
this.host.selected = false;
|
|
40351
40644
|
focusAnchor && this.buttonElement?.focus();
|
|
40352
40645
|
}
|
|
40353
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AIAssistantToolbarDirective, deps: [{ token: i1$7.WindowService }, { token:
|
|
40646
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AIAssistantToolbarDirective, deps: [{ token: i1$7.WindowService }, { token: i57.ToolBarButtonComponent }, { token: ContextService }, { token: i0.NgZone }, { token: i57.RefreshService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
40354
40647
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: AIAssistantToolbarDirective, isStandalone: true, selector: "[kendoGridAIAssistantTool]", inputs: { requestUrl: "requestUrl", requestOptions: "requestOptions", aiWindowSettings: "aiWindowSettings", aiPromptSettings: "aiPromptSettings", autoClose: "autoClose", keepOutputHistory: "keepOutputHistory" }, outputs: { promptRequest: "promptRequest", cancelRequest: "cancelRequest", responseSuccess: "responseSuccess", responseError: "responseError", close: "close", open: "open" }, usesInheritance: true, ngImport: i0 });
|
|
40355
40648
|
}
|
|
40356
40649
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AIAssistantToolbarDirective, decorators: [{
|
|
@@ -40359,7 +40652,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
40359
40652
|
selector: '[kendoGridAIAssistantTool]',
|
|
40360
40653
|
standalone: true
|
|
40361
40654
|
}]
|
|
40362
|
-
}], ctorParameters: () => [{ type: i1$7.WindowService }, { type:
|
|
40655
|
+
}], ctorParameters: () => [{ type: i1$7.WindowService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i57.RefreshService }, { type: i0.ChangeDetectorRef }], propDecorators: { requestUrl: [{
|
|
40363
40656
|
type: Input
|
|
40364
40657
|
}], requestOptions: [{
|
|
40365
40658
|
type: Input
|
|
@@ -40464,6 +40757,2001 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
40464
40757
|
}]
|
|
40465
40758
|
}], ctorParameters: () => [{ type: IdService }, { type: ContextService }] });
|
|
40466
40759
|
|
|
40760
|
+
/**
|
|
40761
|
+
* @hidden
|
|
40762
|
+
*/
|
|
40763
|
+
class SmartBoxResponseErrorEvent extends PreventableEvent$1 {
|
|
40764
|
+
/**
|
|
40765
|
+
* The HTTP error response from the AI service.
|
|
40766
|
+
*/
|
|
40767
|
+
error;
|
|
40768
|
+
constructor(error) {
|
|
40769
|
+
super();
|
|
40770
|
+
this.error = error;
|
|
40771
|
+
}
|
|
40772
|
+
}
|
|
40773
|
+
/**
|
|
40774
|
+
* @hidden
|
|
40775
|
+
*/
|
|
40776
|
+
class SmartBoxResponseSuccessEvent extends PreventableEvent$1 {
|
|
40777
|
+
/**
|
|
40778
|
+
* The HTTP response from the AI service.
|
|
40779
|
+
*/
|
|
40780
|
+
response;
|
|
40781
|
+
constructor(response) {
|
|
40782
|
+
super();
|
|
40783
|
+
this.response = response;
|
|
40784
|
+
}
|
|
40785
|
+
}
|
|
40786
|
+
/**
|
|
40787
|
+
* @hidden
|
|
40788
|
+
*/
|
|
40789
|
+
class SmartBoxSearchEvent extends PreventableEvent$1 {
|
|
40790
|
+
/**
|
|
40791
|
+
* The user's input value.
|
|
40792
|
+
*/
|
|
40793
|
+
searchValue;
|
|
40794
|
+
/**
|
|
40795
|
+
* The input-based filters that will be applied to the Grid.
|
|
40796
|
+
*/
|
|
40797
|
+
filters;
|
|
40798
|
+
/**
|
|
40799
|
+
* The logic applied to the filters.
|
|
40800
|
+
*/
|
|
40801
|
+
logic;
|
|
40802
|
+
/**
|
|
40803
|
+
* @hidden
|
|
40804
|
+
*/
|
|
40805
|
+
constructor() {
|
|
40806
|
+
super();
|
|
40807
|
+
}
|
|
40808
|
+
}
|
|
40809
|
+
|
|
40810
|
+
/**
|
|
40811
|
+
* Represents the event data when the AI Assistant request completes with an error.
|
|
40812
|
+
*/
|
|
40813
|
+
class GridSmartBoxResponseErrorEvent extends SmartBoxResponseErrorEvent {
|
|
40814
|
+
/**
|
|
40815
|
+
* @hidden
|
|
40816
|
+
*/
|
|
40817
|
+
constructor(error) {
|
|
40818
|
+
super(error);
|
|
40819
|
+
}
|
|
40820
|
+
}
|
|
40821
|
+
/**
|
|
40822
|
+
* Represents the event data when the AI Assistant request completes successfully.
|
|
40823
|
+
*/
|
|
40824
|
+
class GridSmartBoxResponseSuccessEvent extends SmartBoxResponseSuccessEvent {
|
|
40825
|
+
/**
|
|
40826
|
+
* @hidden
|
|
40827
|
+
*/
|
|
40828
|
+
constructor(response) {
|
|
40829
|
+
super(response);
|
|
40830
|
+
}
|
|
40831
|
+
}
|
|
40832
|
+
/**
|
|
40833
|
+
* Represents the event data when the user types in Search mode.
|
|
40834
|
+
*/
|
|
40835
|
+
class GridSmartBoxSearchEvent extends SmartBoxSearchEvent {
|
|
40836
|
+
/**
|
|
40837
|
+
* @hidden
|
|
40838
|
+
*/
|
|
40839
|
+
constructor() {
|
|
40840
|
+
super();
|
|
40841
|
+
}
|
|
40842
|
+
}
|
|
40843
|
+
|
|
40844
|
+
const DEFAULT_SIZE$1 = 'medium';
|
|
40845
|
+
const SIZES_MAP = {
|
|
40846
|
+
small: 'sm',
|
|
40847
|
+
medium: 'md',
|
|
40848
|
+
large: 'lg'
|
|
40849
|
+
};
|
|
40850
|
+
/**
|
|
40851
|
+
* @hidden
|
|
40852
|
+
*/
|
|
40853
|
+
class SegmentedControlComponent {
|
|
40854
|
+
renderer;
|
|
40855
|
+
wrapper;
|
|
40856
|
+
cdr;
|
|
40857
|
+
zone;
|
|
40858
|
+
hostClasses = true;
|
|
40859
|
+
hostRole = 'group';
|
|
40860
|
+
thumb;
|
|
40861
|
+
/**
|
|
40862
|
+
* Specifies the collection of buttons that will be rendered inside the SegmentedControlComponent.
|
|
40863
|
+
*/
|
|
40864
|
+
buttons = [];
|
|
40865
|
+
/**
|
|
40866
|
+
* Sets the padding of the control.
|
|
40867
|
+
*
|
|
40868
|
+
* @default 'medium'
|
|
40869
|
+
*/
|
|
40870
|
+
set size(size) {
|
|
40871
|
+
const newSize = size || DEFAULT_SIZE$1;
|
|
40872
|
+
this.handleSizeClass(newSize, this._size);
|
|
40873
|
+
this._size = newSize;
|
|
40874
|
+
}
|
|
40875
|
+
get size() {
|
|
40876
|
+
return this._size;
|
|
40877
|
+
}
|
|
40878
|
+
/**
|
|
40879
|
+
* Fires when a button is clicked.
|
|
40880
|
+
*/
|
|
40881
|
+
buttonClick = new EventEmitter();
|
|
40882
|
+
ngAfterViewInit() {
|
|
40883
|
+
this.handleSizeClass(this._size, null);
|
|
40884
|
+
this.selectedButtonIndex = this.buttons.indexOf(this.buttons.find(b => b.selected)) || 0;
|
|
40885
|
+
this.cdr.detectChanges();
|
|
40886
|
+
this.zone.onStable.pipe(take(1)).subscribe(() => this.showSelectionIndicator());
|
|
40887
|
+
}
|
|
40888
|
+
handleClick(button, index) {
|
|
40889
|
+
this.selectedButtonIndex = index;
|
|
40890
|
+
this.cdr.detectChanges();
|
|
40891
|
+
this.buttonClick.emit(button);
|
|
40892
|
+
this.showSelectionIndicator();
|
|
40893
|
+
}
|
|
40894
|
+
getInnerIconClass(button) {
|
|
40895
|
+
const baseClass = 'k-segmented-control-button-icon';
|
|
40896
|
+
return button.iconInnerCssClass ? `${baseClass} ${button.iconInnerCssClass}` : baseClass;
|
|
40897
|
+
}
|
|
40898
|
+
constructor(renderer, wrapper, cdr, zone) {
|
|
40899
|
+
this.renderer = renderer;
|
|
40900
|
+
this.wrapper = wrapper;
|
|
40901
|
+
this.cdr = cdr;
|
|
40902
|
+
this.zone = zone;
|
|
40903
|
+
}
|
|
40904
|
+
showSelectionIndicator() {
|
|
40905
|
+
const element = this.wrapper.nativeElement;
|
|
40906
|
+
const controlRect = element.getBoundingClientRect();
|
|
40907
|
+
const selectedItem = element.querySelector('.k-segmented-control-button.k-selected');
|
|
40908
|
+
const selectionIndicator = this.thumb ? this.thumb.nativeElement : null;
|
|
40909
|
+
if (!selectedItem || !selectionIndicator) {
|
|
40910
|
+
return;
|
|
40911
|
+
}
|
|
40912
|
+
const itemRect = selectedItem.getBoundingClientRect();
|
|
40913
|
+
const left = itemRect.left - controlRect.left;
|
|
40914
|
+
const right = controlRect.right - itemRect.right;
|
|
40915
|
+
this.renderer.setStyle(selectionIndicator, 'left', `${left}px`);
|
|
40916
|
+
this.renderer.setStyle(selectionIndicator, 'right', `${right}px`);
|
|
40917
|
+
}
|
|
40918
|
+
selectedButtonIndex = 0;
|
|
40919
|
+
_size = DEFAULT_SIZE$1;
|
|
40920
|
+
handleSizeClass(newValue, prevValue) {
|
|
40921
|
+
if (!this.wrapper) {
|
|
40922
|
+
return;
|
|
40923
|
+
}
|
|
40924
|
+
const elem = this.wrapper.nativeElement;
|
|
40925
|
+
const classToRemove = prevValue ? `k-segmented-control-${SIZES_MAP[prevValue]}` : null;
|
|
40926
|
+
const classToAdd = newValue ? `k-segmented-control-${SIZES_MAP[newValue]}` : `k-segmented-control-${SIZES_MAP[DEFAULT_SIZE$1]}`;
|
|
40927
|
+
classToRemove && this.renderer.removeClass(elem, classToRemove);
|
|
40928
|
+
classToAdd && this.renderer.addClass(elem, classToAdd);
|
|
40929
|
+
}
|
|
40930
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SegmentedControlComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
40931
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: SegmentedControlComponent, isStandalone: true, selector: "kendo-segmented-control", inputs: { buttons: "buttons", size: "size" }, outputs: { buttonClick: "buttonClick" }, host: { properties: { "class.k-segmented-control": "this.hostClasses", "class.k-segmented-control-stretched": "this.hostClasses", "attr.role": "this.hostRole" } }, viewQueries: [{ propertyName: "thumb", first: true, predicate: ["thumb"], descendants: true }], ngImport: i0, template: `
|
|
40932
|
+
<div class="k-segmented-control-thumb" #thumb [attr.aria-hidden]="true"></div>
|
|
40933
|
+
@for (button of buttons; track $index; let idx = $index) {
|
|
40934
|
+
<button type="button"
|
|
40935
|
+
class="k-segmented-control-button"
|
|
40936
|
+
[class.k-disabled]="button.disabled"
|
|
40937
|
+
[attr.disabled]="button.disabled ? true : null"
|
|
40938
|
+
(click)="handleClick(button, idx)"
|
|
40939
|
+
[class.k-selected]="selectedButtonIndex === idx"
|
|
40940
|
+
[attr.aria-pressed]="selectedButtonIndex === idx ? 'true' : 'false'">
|
|
40941
|
+
<kendo-icon-wrapper
|
|
40942
|
+
[innerCssClass]="getInnerIconClass(button)"
|
|
40943
|
+
[name]="button.icon"
|
|
40944
|
+
[svgIcon]="button.svgIcon">
|
|
40945
|
+
</kendo-icon-wrapper>
|
|
40946
|
+
<span class="k-segmented-control-button-text">{{button.text}}</span>
|
|
40947
|
+
</button>
|
|
40948
|
+
}
|
|
40949
|
+
`, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
40950
|
+
}
|
|
40951
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SegmentedControlComponent, decorators: [{
|
|
40952
|
+
type: Component,
|
|
40953
|
+
args: [{
|
|
40954
|
+
selector: 'kendo-segmented-control',
|
|
40955
|
+
standalone: true,
|
|
40956
|
+
imports: [IconWrapperComponent],
|
|
40957
|
+
template: `
|
|
40958
|
+
<div class="k-segmented-control-thumb" #thumb [attr.aria-hidden]="true"></div>
|
|
40959
|
+
@for (button of buttons; track $index; let idx = $index) {
|
|
40960
|
+
<button type="button"
|
|
40961
|
+
class="k-segmented-control-button"
|
|
40962
|
+
[class.k-disabled]="button.disabled"
|
|
40963
|
+
[attr.disabled]="button.disabled ? true : null"
|
|
40964
|
+
(click)="handleClick(button, idx)"
|
|
40965
|
+
[class.k-selected]="selectedButtonIndex === idx"
|
|
40966
|
+
[attr.aria-pressed]="selectedButtonIndex === idx ? 'true' : 'false'">
|
|
40967
|
+
<kendo-icon-wrapper
|
|
40968
|
+
[innerCssClass]="getInnerIconClass(button)"
|
|
40969
|
+
[name]="button.icon"
|
|
40970
|
+
[svgIcon]="button.svgIcon">
|
|
40971
|
+
</kendo-icon-wrapper>
|
|
40972
|
+
<span class="k-segmented-control-button-text">{{button.text}}</span>
|
|
40973
|
+
</button>
|
|
40974
|
+
}
|
|
40975
|
+
`
|
|
40976
|
+
}]
|
|
40977
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }], propDecorators: { hostClasses: [{
|
|
40978
|
+
type: HostBinding,
|
|
40979
|
+
args: ['class.k-segmented-control']
|
|
40980
|
+
}, {
|
|
40981
|
+
type: HostBinding,
|
|
40982
|
+
args: ['class.k-segmented-control-stretched']
|
|
40983
|
+
}], hostRole: [{
|
|
40984
|
+
type: HostBinding,
|
|
40985
|
+
args: ['attr.role']
|
|
40986
|
+
}], thumb: [{
|
|
40987
|
+
type: ViewChild,
|
|
40988
|
+
args: ['thumb']
|
|
40989
|
+
}], buttons: [{
|
|
40990
|
+
type: Input
|
|
40991
|
+
}], size: [{
|
|
40992
|
+
type: Input
|
|
40993
|
+
}], buttonClick: [{
|
|
40994
|
+
type: Output
|
|
40995
|
+
}] } });
|
|
40996
|
+
|
|
40997
|
+
/**
|
|
40998
|
+
* Renders the prompt suggestion content.
|
|
40999
|
+
*
|
|
41000
|
+
* To define the suggestion template, nest a `<ng-template>` tag with the `kendoGridSmartBoxPromptSuggestionTemplate` directive inside the component tag.
|
|
41001
|
+
*
|
|
41002
|
+
* The template context is set to the current suggestion. Use the `let-suggestion` directive to reference the current suggestion.
|
|
41003
|
+
*
|
|
41004
|
+
* @example
|
|
41005
|
+
* ```html
|
|
41006
|
+
* <kendo-smartbox>
|
|
41007
|
+
* <ng-template kendoGridSmartBoxPromptSuggestionTemplate let-suggestion>
|
|
41008
|
+
* <kendo-icon-wrapper name="sort-asc" [svgIcon]="sortAscIcon"></kendo-icon-wrapper>
|
|
41009
|
+
* <span>{{suggestion}}</span>
|
|
41010
|
+
* </ng-template>
|
|
41011
|
+
* </kendo-smartbox>
|
|
41012
|
+
* ```
|
|
41013
|
+
*/
|
|
41014
|
+
class GridSmartBoxPromptSuggestionTemplateDirective {
|
|
41015
|
+
templateRef;
|
|
41016
|
+
constructor(templateRef) {
|
|
41017
|
+
this.templateRef = templateRef;
|
|
41018
|
+
}
|
|
41019
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridSmartBoxPromptSuggestionTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
41020
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: GridSmartBoxPromptSuggestionTemplateDirective, isStandalone: true, selector: "[kendoGridSmartBoxPromptSuggestionTemplate]", ngImport: i0 });
|
|
41021
|
+
}
|
|
41022
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridSmartBoxPromptSuggestionTemplateDirective, decorators: [{
|
|
41023
|
+
type: Directive,
|
|
41024
|
+
args: [{
|
|
41025
|
+
selector: '[kendoGridSmartBoxPromptSuggestionTemplate]',
|
|
41026
|
+
standalone: true
|
|
41027
|
+
}]
|
|
41028
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
41029
|
+
|
|
41030
|
+
/**
|
|
41031
|
+
* Renders the history item content.
|
|
41032
|
+
*
|
|
41033
|
+
* To define the history item template, nest a `<ng-template>` tag with the `kendoGridSmartBoxHistoryItemTemplate` directive inside the component tag.
|
|
41034
|
+
*
|
|
41035
|
+
* The template context is set to the current history item. Use the `let-item` directive to reference the current history item.
|
|
41036
|
+
*
|
|
41037
|
+
* @example
|
|
41038
|
+
* ```html
|
|
41039
|
+
* <kendo-smartbox>
|
|
41040
|
+
* <ng-template kendoGridSmartBoxHistoryItemTemplate let-item>
|
|
41041
|
+
* <kendo-icon-wrapper name="clock" [svgIcon]="clockIcon"></kendo-icon-wrapper>
|
|
41042
|
+
* <span>{{item.text}} ({{ item.timestamp | date: 'shortTime' }})</span>
|
|
41043
|
+
* </ng-template>
|
|
41044
|
+
* </kendo-smartbox>
|
|
41045
|
+
* ```
|
|
41046
|
+
*/
|
|
41047
|
+
class GridSmartBoxHistoryItemTemplateDirective {
|
|
41048
|
+
templateRef;
|
|
41049
|
+
constructor(templateRef) {
|
|
41050
|
+
this.templateRef = templateRef;
|
|
41051
|
+
}
|
|
41052
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridSmartBoxHistoryItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
41053
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: GridSmartBoxHistoryItemTemplateDirective, isStandalone: true, selector: "[kendoGridSmartBoxHistoryItemTemplate]", ngImport: i0 });
|
|
41054
|
+
}
|
|
41055
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridSmartBoxHistoryItemTemplateDirective, decorators: [{
|
|
41056
|
+
type: Directive,
|
|
41057
|
+
args: [{
|
|
41058
|
+
selector: '[kendoGridSmartBoxHistoryItemTemplate]',
|
|
41059
|
+
standalone: true
|
|
41060
|
+
}]
|
|
41061
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
41062
|
+
|
|
41063
|
+
/**
|
|
41064
|
+
* @hidden
|
|
41065
|
+
*/
|
|
41066
|
+
const DEFAULT_HISTORY_SETTINGS = {
|
|
41067
|
+
size: 5,
|
|
41068
|
+
timestampFormat: 'HH:mm:ss'
|
|
41069
|
+
};
|
|
41070
|
+
/**
|
|
41071
|
+
* @hidden
|
|
41072
|
+
*/
|
|
41073
|
+
const STB_DEFAULT_SETTINGS = {
|
|
41074
|
+
continuous: false,
|
|
41075
|
+
disabled: false,
|
|
41076
|
+
fillMode: 'clear',
|
|
41077
|
+
integrationMode: 'webSpeech',
|
|
41078
|
+
interimResults: false,
|
|
41079
|
+
lang: 'en-US',
|
|
41080
|
+
maxAlternatives: 1,
|
|
41081
|
+
rounded: 'full',
|
|
41082
|
+
size: 'small',
|
|
41083
|
+
themeColor: 'base'
|
|
41084
|
+
};
|
|
41085
|
+
/**
|
|
41086
|
+
* @hidden
|
|
41087
|
+
*/
|
|
41088
|
+
const DEFAULT_SEARCH_SETTINGS = {
|
|
41089
|
+
history: DEFAULT_HISTORY_SETTINGS,
|
|
41090
|
+
placeholder: null,
|
|
41091
|
+
delay: 300,
|
|
41092
|
+
enabled: true,
|
|
41093
|
+
fields: []
|
|
41094
|
+
};
|
|
41095
|
+
/**
|
|
41096
|
+
* @hidden
|
|
41097
|
+
*/
|
|
41098
|
+
const DEFAULT_SEMANTIC_SEARCH_SETTINGS = {
|
|
41099
|
+
history: DEFAULT_HISTORY_SETTINGS,
|
|
41100
|
+
placeholder: null,
|
|
41101
|
+
delay: 700,
|
|
41102
|
+
enabled: true
|
|
41103
|
+
};
|
|
41104
|
+
/**
|
|
41105
|
+
* @hidden
|
|
41106
|
+
*/
|
|
41107
|
+
const DEFAULT_AI_ASSISTANT_SETTINGS = {
|
|
41108
|
+
history: DEFAULT_HISTORY_SETTINGS,
|
|
41109
|
+
placeholder: null,
|
|
41110
|
+
enabled: true,
|
|
41111
|
+
promptSuggestions: [],
|
|
41112
|
+
requestUrl: '',
|
|
41113
|
+
requestOptions: DEFAULT_AI_REQUEST_OPTIONS,
|
|
41114
|
+
speechToTextButton: true
|
|
41115
|
+
};
|
|
41116
|
+
/**
|
|
41117
|
+
* @hidden
|
|
41118
|
+
*/
|
|
41119
|
+
const DEFAULT_SIZE = 'medium';
|
|
41120
|
+
/**
|
|
41121
|
+
* @hidden
|
|
41122
|
+
*/
|
|
41123
|
+
const SIZES = {
|
|
41124
|
+
small: 'sm',
|
|
41125
|
+
medium: 'md',
|
|
41126
|
+
large: 'lg'
|
|
41127
|
+
};
|
|
41128
|
+
|
|
41129
|
+
/**
|
|
41130
|
+
* @hidden
|
|
41131
|
+
*/
|
|
41132
|
+
class SmartBoxComponent {
|
|
41133
|
+
popupService;
|
|
41134
|
+
wrapper;
|
|
41135
|
+
cdr;
|
|
41136
|
+
zone;
|
|
41137
|
+
intl;
|
|
41138
|
+
ctx;
|
|
41139
|
+
aiRequestResponseService;
|
|
41140
|
+
http;
|
|
41141
|
+
renderer;
|
|
41142
|
+
columnInfoService;
|
|
41143
|
+
searchService;
|
|
41144
|
+
popupTemplate;
|
|
41145
|
+
input;
|
|
41146
|
+
innerWrapper;
|
|
41147
|
+
set searchMode(mode) {
|
|
41148
|
+
const settingsFromComponent = { placeholder: this.placeholder, history: this.history };
|
|
41149
|
+
if (mode === true) {
|
|
41150
|
+
this._searchMode = { ...DEFAULT_SEARCH_SETTINGS, ...settingsFromComponent, enabled: true };
|
|
41151
|
+
}
|
|
41152
|
+
else if (mode === false) {
|
|
41153
|
+
this._searchMode = null;
|
|
41154
|
+
}
|
|
41155
|
+
else {
|
|
41156
|
+
this._searchMode = { ...DEFAULT_SEARCH_SETTINGS, ...settingsFromComponent, ...mode };
|
|
41157
|
+
}
|
|
41158
|
+
this.updateSearchListData();
|
|
41159
|
+
this.updateSelectedView();
|
|
41160
|
+
}
|
|
41161
|
+
get searchMode() {
|
|
41162
|
+
return this._searchMode;
|
|
41163
|
+
}
|
|
41164
|
+
set semanticSearchMode(mode) {
|
|
41165
|
+
const settingsFromComponent = { placeholder: this.placeholder, history: this.history };
|
|
41166
|
+
if (mode === true) {
|
|
41167
|
+
this._semanticSearchMode = { ...DEFAULT_SEMANTIC_SEARCH_SETTINGS, ...settingsFromComponent, enabled: true };
|
|
41168
|
+
}
|
|
41169
|
+
else if (mode === false) {
|
|
41170
|
+
this._semanticSearchMode = null;
|
|
41171
|
+
}
|
|
41172
|
+
else {
|
|
41173
|
+
this._semanticSearchMode = { ...DEFAULT_SEMANTIC_SEARCH_SETTINGS, ...settingsFromComponent, ...mode };
|
|
41174
|
+
}
|
|
41175
|
+
this.updateSearchListData();
|
|
41176
|
+
this.updateSelectedView();
|
|
41177
|
+
}
|
|
41178
|
+
get semanticSearchMode() {
|
|
41179
|
+
return this._semanticSearchMode;
|
|
41180
|
+
}
|
|
41181
|
+
set aiAssistantMode(mode) {
|
|
41182
|
+
const settingsFromComponent = { placeholder: this.placeholder, history: this.history };
|
|
41183
|
+
if (mode === true) {
|
|
41184
|
+
this._aiAssistantMode = { ...DEFAULT_AI_ASSISTANT_SETTINGS, ...settingsFromComponent, enabled: true };
|
|
41185
|
+
}
|
|
41186
|
+
else if (mode === false) {
|
|
41187
|
+
this._aiAssistantMode = null;
|
|
41188
|
+
}
|
|
41189
|
+
else {
|
|
41190
|
+
const mergedRequestOptions = mode?.requestOptions ?
|
|
41191
|
+
{ ...DEFAULT_AI_ASSISTANT_SETTINGS.requestOptions, ...mode.requestOptions } :
|
|
41192
|
+
DEFAULT_AI_ASSISTANT_SETTINGS.requestOptions;
|
|
41193
|
+
this._aiAssistantMode = {
|
|
41194
|
+
...DEFAULT_AI_ASSISTANT_SETTINGS,
|
|
41195
|
+
...settingsFromComponent,
|
|
41196
|
+
...mode,
|
|
41197
|
+
requestOptions: mergedRequestOptions
|
|
41198
|
+
};
|
|
41199
|
+
}
|
|
41200
|
+
this.updateSelectedView();
|
|
41201
|
+
this.speechToTextButton = this._aiAssistantMode?.speechToTextButton;
|
|
41202
|
+
}
|
|
41203
|
+
get aiAssistantMode() {
|
|
41204
|
+
return this._aiAssistantMode;
|
|
41205
|
+
}
|
|
41206
|
+
set speechToTextButton(value) {
|
|
41207
|
+
if (value === true) {
|
|
41208
|
+
this._speechToTextButton = STB_DEFAULT_SETTINGS;
|
|
41209
|
+
}
|
|
41210
|
+
else if (value === false) {
|
|
41211
|
+
this._speechToTextButton = null;
|
|
41212
|
+
}
|
|
41213
|
+
else {
|
|
41214
|
+
this._speechToTextButton = { ...STB_DEFAULT_SETTINGS, ...value };
|
|
41215
|
+
}
|
|
41216
|
+
}
|
|
41217
|
+
get speechToTextButton() {
|
|
41218
|
+
return this._speechToTextButton;
|
|
41219
|
+
}
|
|
41220
|
+
get searchHistorySettings() {
|
|
41221
|
+
if (!isPresent$1(this.searchMode?.history)) {
|
|
41222
|
+
return null;
|
|
41223
|
+
}
|
|
41224
|
+
if (typeof this.searchMode.history === 'boolean') {
|
|
41225
|
+
return this.searchMode.history ? DEFAULT_HISTORY_SETTINGS : null;
|
|
41226
|
+
}
|
|
41227
|
+
else {
|
|
41228
|
+
return { ...DEFAULT_HISTORY_SETTINGS, ...this.searchMode.history };
|
|
41229
|
+
}
|
|
41230
|
+
}
|
|
41231
|
+
get semanticSearchHistorySettings() {
|
|
41232
|
+
if (!isPresent$1(this.semanticSearchMode?.history)) {
|
|
41233
|
+
return null;
|
|
41234
|
+
}
|
|
41235
|
+
if (typeof this.semanticSearchMode.history === 'boolean') {
|
|
41236
|
+
return this.semanticSearchMode.history ? DEFAULT_HISTORY_SETTINGS : null;
|
|
41237
|
+
}
|
|
41238
|
+
else {
|
|
41239
|
+
return { ...DEFAULT_HISTORY_SETTINGS, ...this.semanticSearchMode.history };
|
|
41240
|
+
}
|
|
41241
|
+
}
|
|
41242
|
+
get aiAssistantHistorySettings() {
|
|
41243
|
+
if (!isPresent$1(this.aiAssistantMode?.history)) {
|
|
41244
|
+
return null;
|
|
41245
|
+
}
|
|
41246
|
+
if (typeof this.aiAssistantMode.history === 'boolean') {
|
|
41247
|
+
return this.aiAssistantMode.history ? DEFAULT_HISTORY_SETTINGS : null;
|
|
41248
|
+
}
|
|
41249
|
+
else {
|
|
41250
|
+
return { ...DEFAULT_HISTORY_SETTINGS, ...this.aiAssistantMode.history };
|
|
41251
|
+
}
|
|
41252
|
+
}
|
|
41253
|
+
get inputPlaceholder() {
|
|
41254
|
+
return this[`${this.selectedView}Placeholder`] || '';
|
|
41255
|
+
}
|
|
41256
|
+
set activeMode(value) {
|
|
41257
|
+
this._activeMode = value;
|
|
41258
|
+
this.updateSelectedView();
|
|
41259
|
+
}
|
|
41260
|
+
get activeMode() {
|
|
41261
|
+
return this._activeMode;
|
|
41262
|
+
}
|
|
41263
|
+
set history(value) {
|
|
41264
|
+
if (value === true || !isPresent$1(value)) {
|
|
41265
|
+
this._history = DEFAULT_HISTORY_SETTINGS;
|
|
41266
|
+
}
|
|
41267
|
+
else if (value === false) {
|
|
41268
|
+
this._history = null;
|
|
41269
|
+
}
|
|
41270
|
+
else {
|
|
41271
|
+
this._history = {
|
|
41272
|
+
size: value.size ?? DEFAULT_HISTORY_SETTINGS.size,
|
|
41273
|
+
timestampFormat: value.timestampFormat ?? DEFAULT_HISTORY_SETTINGS.timestampFormat
|
|
41274
|
+
};
|
|
41275
|
+
}
|
|
41276
|
+
}
|
|
41277
|
+
get history() {
|
|
41278
|
+
return this._history;
|
|
41279
|
+
}
|
|
41280
|
+
placeholder;
|
|
41281
|
+
set size(size) {
|
|
41282
|
+
const newSize = size || DEFAULT_SIZE;
|
|
41283
|
+
this.handleSizeClass(newSize);
|
|
41284
|
+
this._size = newSize;
|
|
41285
|
+
}
|
|
41286
|
+
get size() {
|
|
41287
|
+
return this._size;
|
|
41288
|
+
}
|
|
41289
|
+
promptSuggestionTemplate;
|
|
41290
|
+
historyItemTemplate;
|
|
41291
|
+
loading = false;
|
|
41292
|
+
open = new EventEmitter();
|
|
41293
|
+
close = new EventEmitter();
|
|
41294
|
+
focus = new EventEmitter();
|
|
41295
|
+
blur = new EventEmitter();
|
|
41296
|
+
aiAssistantPromptRequest = new EventEmitter();
|
|
41297
|
+
aiAssistantResponseSuccess = new EventEmitter();
|
|
41298
|
+
aiAssistantResponseError = new EventEmitter();
|
|
41299
|
+
aiAssistantCancelRequest = new EventEmitter();
|
|
41300
|
+
search = new EventEmitter();
|
|
41301
|
+
semanticSearch = new EventEmitter();
|
|
41302
|
+
modeChange = new EventEmitter();
|
|
41303
|
+
constructor(popupService, wrapper, cdr, zone, intl, ctx, aiRequestResponseService, http, renderer, columnInfoService, searchService) {
|
|
41304
|
+
this.popupService = popupService;
|
|
41305
|
+
this.wrapper = wrapper;
|
|
41306
|
+
this.cdr = cdr;
|
|
41307
|
+
this.zone = zone;
|
|
41308
|
+
this.intl = intl;
|
|
41309
|
+
this.ctx = ctx;
|
|
41310
|
+
this.aiRequestResponseService = aiRequestResponseService;
|
|
41311
|
+
this.http = http;
|
|
41312
|
+
this.renderer = renderer;
|
|
41313
|
+
this.columnInfoService = columnInfoService;
|
|
41314
|
+
this.searchService = searchService;
|
|
41315
|
+
}
|
|
41316
|
+
ngOnChanges(changes) {
|
|
41317
|
+
if (changes['history'] || changes['placeholder']) {
|
|
41318
|
+
this.updateModeSettingsFromSharedInputs();
|
|
41319
|
+
}
|
|
41320
|
+
if (changes['searchMode']) {
|
|
41321
|
+
this.updateSearchListData();
|
|
41322
|
+
this.updateSelectedView();
|
|
41323
|
+
this.updateHistoryData();
|
|
41324
|
+
}
|
|
41325
|
+
if (changes['semanticSearchMode']) {
|
|
41326
|
+
this.updateSearchListData();
|
|
41327
|
+
this.updateSelectedView();
|
|
41328
|
+
this.updateHistoryData();
|
|
41329
|
+
}
|
|
41330
|
+
if (changes['aiAssistantMode']) {
|
|
41331
|
+
this.updateSelectedView();
|
|
41332
|
+
this.updateHistoryData();
|
|
41333
|
+
this.speechToTextButton = this._aiAssistantMode?.speechToTextButton;
|
|
41334
|
+
}
|
|
41335
|
+
if (changes['activeMode']) {
|
|
41336
|
+
this.updateSelectedView();
|
|
41337
|
+
}
|
|
41338
|
+
}
|
|
41339
|
+
ngAfterViewInit() {
|
|
41340
|
+
// Preserve a flat columns array (fields) for highlight utilities.
|
|
41341
|
+
// Use leafNamedColumns as the canonical list of leaf columns with display titles.
|
|
41342
|
+
this.leafColumns = this.columnInfoService.leafNamedColumns || [];
|
|
41343
|
+
this.columns = this.leafColumns.map((col) => ({ field: col.field }));
|
|
41344
|
+
this.handleSizeClass(this._size);
|
|
41345
|
+
this.updateSearchListData();
|
|
41346
|
+
this.updateSelectedView();
|
|
41347
|
+
}
|
|
41348
|
+
ngOnDestroy() {
|
|
41349
|
+
this.destroyPopup();
|
|
41350
|
+
this.clearTypingTimeout();
|
|
41351
|
+
this.unsubscribeCurrentRequest();
|
|
41352
|
+
}
|
|
41353
|
+
focusableId = `k-${guid()}`;
|
|
41354
|
+
selectedView;
|
|
41355
|
+
isOpen = false;
|
|
41356
|
+
checkIcon = checkIcon;
|
|
41357
|
+
clockArrowRotateIcon = clockArrowRotateIcon;
|
|
41358
|
+
fileClockOutlineIcon = fileClockOutlineIcon;
|
|
41359
|
+
searchIcon = searchIcon;
|
|
41360
|
+
zoomSparkleIcon = zoomSparkleIcon;
|
|
41361
|
+
sparklesIcon = sparklesIcon;
|
|
41362
|
+
arrowUpOutlineIcon = arrowUpOutlineIcon;
|
|
41363
|
+
stopSmIcon = stopSmIcon;
|
|
41364
|
+
xIcon = xIcon;
|
|
41365
|
+
lightbulbOutlineIcon = lightbulbOutlineIcon;
|
|
41366
|
+
searchListData = [];
|
|
41367
|
+
aiAssistantHistory = [];
|
|
41368
|
+
searchHistory = [];
|
|
41369
|
+
semanticSearchHistory = [];
|
|
41370
|
+
get segmentedControlButtons() {
|
|
41371
|
+
const buttons = [];
|
|
41372
|
+
if ((this.searchMode?.enabled || this.semanticSearchMode?.enabled) && this.aiAssistantMode?.enabled) {
|
|
41373
|
+
if (this.searchMode?.enabled && !this.semanticSearchMode?.enabled) {
|
|
41374
|
+
buttons.push({ text: this.messageFor('smartBoxSearchModePopupButton'), svgIcon: searchIcon, icon: 'search', selected: this.selectedView === 'search' });
|
|
41375
|
+
}
|
|
41376
|
+
else if (!this.searchMode?.enabled && this.semanticSearchMode?.enabled) {
|
|
41377
|
+
buttons.push({ text: this.messageFor('smartBoxSearchModePopupButton'), svgIcon: zoomSparkleIcon, icon: 'zoom-sparkle', selected: this.selectedView === 'semanticSearch', iconInnerCssClass: this.selectedView === 'semanticSearch' ? 'k-accent-icon' : '' });
|
|
41378
|
+
}
|
|
41379
|
+
else if (this.searchMode?.enabled && this.semanticSearchMode?.enabled) {
|
|
41380
|
+
buttons.push({ text: this.messageFor('smartBoxSearchModePopupButton'), svgIcon: searchIcon, icon: 'search', selected: this.selectedView === 'search' || this.selectedView === 'semanticSearch', iconInnerCssClass: this.selectedView === 'semanticSearch' ? 'k-accent-icon' : '' });
|
|
41381
|
+
}
|
|
41382
|
+
buttons.push({ text: this.messageFor('smartBoxAIAssistantModePopupButton'), svgIcon: sparklesIcon, icon: 'sparkles', selected: this.selectedView === 'aiAssistant', iconInnerCssClass: this.selectedView === 'aiAssistant' ? 'k-accent-icon' : '' });
|
|
41383
|
+
}
|
|
41384
|
+
return buttons;
|
|
41385
|
+
}
|
|
41386
|
+
get prefixIconName() {
|
|
41387
|
+
switch (this.selectedView) {
|
|
41388
|
+
case 'search':
|
|
41389
|
+
return 'search';
|
|
41390
|
+
case 'semanticSearch':
|
|
41391
|
+
return 'zoom-sparkle';
|
|
41392
|
+
case 'aiAssistant':
|
|
41393
|
+
return 'sparkles';
|
|
41394
|
+
default:
|
|
41395
|
+
return 'search';
|
|
41396
|
+
}
|
|
41397
|
+
}
|
|
41398
|
+
get prefixSVGIcon() {
|
|
41399
|
+
switch (this.selectedView) {
|
|
41400
|
+
case 'search':
|
|
41401
|
+
return this.searchIcon;
|
|
41402
|
+
case 'semanticSearch':
|
|
41403
|
+
return this.zoomSparkleIcon;
|
|
41404
|
+
case 'aiAssistant':
|
|
41405
|
+
return this.sparklesIcon;
|
|
41406
|
+
default:
|
|
41407
|
+
return this.searchIcon;
|
|
41408
|
+
}
|
|
41409
|
+
}
|
|
41410
|
+
messageFor(message) {
|
|
41411
|
+
return this.ctx.localization.get(message);
|
|
41412
|
+
}
|
|
41413
|
+
formatDate(date, format) {
|
|
41414
|
+
return this.intl.formatDate(date, format);
|
|
41415
|
+
}
|
|
41416
|
+
onModeChange(button) {
|
|
41417
|
+
this.clearTypingTimeout();
|
|
41418
|
+
let previousView;
|
|
41419
|
+
if (this.searchListData.length > 0) {
|
|
41420
|
+
previousView = this.searchListData.find(i => i.selected)?.text;
|
|
41421
|
+
}
|
|
41422
|
+
if (button.text === 'Search') {
|
|
41423
|
+
if (previousView === 'Search') {
|
|
41424
|
+
this.selectedView = 'search';
|
|
41425
|
+
}
|
|
41426
|
+
else if (previousView === 'Semantic Search') {
|
|
41427
|
+
this.selectedView = 'semanticSearch';
|
|
41428
|
+
}
|
|
41429
|
+
else if (this.searchMode?.enabled) {
|
|
41430
|
+
this.selectedView = 'search';
|
|
41431
|
+
}
|
|
41432
|
+
else if (this.semanticSearchMode?.enabled) {
|
|
41433
|
+
this.selectedView = 'semanticSearch';
|
|
41434
|
+
}
|
|
41435
|
+
}
|
|
41436
|
+
else if (button.text === 'AI Assistant') {
|
|
41437
|
+
this.selectedView = 'aiAssistant';
|
|
41438
|
+
}
|
|
41439
|
+
this.modeChange.emit(this.selectedView);
|
|
41440
|
+
this.clearValue();
|
|
41441
|
+
this.cdr.detectChanges();
|
|
41442
|
+
}
|
|
41443
|
+
onSearchItemClick(item) {
|
|
41444
|
+
this.clearTypingTimeout();
|
|
41445
|
+
this.searchListData.forEach(i => i.selected = false);
|
|
41446
|
+
this.searchListData.find(i => i.text === item.text).selected = true;
|
|
41447
|
+
this.selectedView = item.text === 'Search' ? 'search' : 'semanticSearch';
|
|
41448
|
+
this.modeChange.emit(this.selectedView);
|
|
41449
|
+
this.clearValue();
|
|
41450
|
+
this.cdr.markForCheck();
|
|
41451
|
+
}
|
|
41452
|
+
onListItemClick(item) {
|
|
41453
|
+
if (!this.selectedView) {
|
|
41454
|
+
return;
|
|
41455
|
+
}
|
|
41456
|
+
this.input.nativeElement.value = item;
|
|
41457
|
+
this.togglePopup(false);
|
|
41458
|
+
this.input.nativeElement.focus();
|
|
41459
|
+
if (this.selectedView === 'aiAssistant') {
|
|
41460
|
+
return;
|
|
41461
|
+
}
|
|
41462
|
+
let ev;
|
|
41463
|
+
const fields = this.searchMode?.fields.length > 0 ? this.searchMode.fields :
|
|
41464
|
+
this.ctx.grid.columnList.toArray().map((item) => item.field);
|
|
41465
|
+
const filters = [];
|
|
41466
|
+
fields.forEach(field => {
|
|
41467
|
+
filters.push({
|
|
41468
|
+
field,
|
|
41469
|
+
operator: 'contains',
|
|
41470
|
+
value: this.input.nativeElement.value
|
|
41471
|
+
});
|
|
41472
|
+
});
|
|
41473
|
+
const eventArgs = {
|
|
41474
|
+
searchValue: this.input.nativeElement.value,
|
|
41475
|
+
filters,
|
|
41476
|
+
logic: 'or'
|
|
41477
|
+
};
|
|
41478
|
+
if (this.selectedView === 'search') {
|
|
41479
|
+
ev = Object.assign(new SmartBoxSearchEvent(), eventArgs);
|
|
41480
|
+
}
|
|
41481
|
+
else if (this.selectedView === 'semanticSearch') {
|
|
41482
|
+
ev = { searchValue: this.input.nativeElement.value };
|
|
41483
|
+
}
|
|
41484
|
+
this[this.selectedView].emit(ev);
|
|
41485
|
+
if (this.selectedView === 'search' && !ev.isDefaultPrevented()) {
|
|
41486
|
+
this.zone.run(() => {
|
|
41487
|
+
if (this.input.nativeElement.value === '' || !this.input.nativeElement.value) {
|
|
41488
|
+
this.searchService.changes.next(undefined);
|
|
41489
|
+
}
|
|
41490
|
+
else {
|
|
41491
|
+
this.searchService.changes.next({ filters: ev.filters, logic: ev.logic });
|
|
41492
|
+
}
|
|
41493
|
+
});
|
|
41494
|
+
}
|
|
41495
|
+
if (this.input.nativeElement.value) {
|
|
41496
|
+
const historyItem = {
|
|
41497
|
+
text: this.input.nativeElement.value,
|
|
41498
|
+
timestamp: new Date(),
|
|
41499
|
+
format: this[`${this.selectedView}HistorySettings`].timestampFormat
|
|
41500
|
+
};
|
|
41501
|
+
this[`${this.selectedView}History`].unshift(historyItem);
|
|
41502
|
+
if (this[`${this.selectedView}History`]?.length > this[`${this.selectedView}HistorySettings`].size) {
|
|
41503
|
+
this[`${this.selectedView}History`].splice(this[`${this.selectedView}HistorySettings`].size);
|
|
41504
|
+
}
|
|
41505
|
+
}
|
|
41506
|
+
}
|
|
41507
|
+
handleInput = (_event) => {
|
|
41508
|
+
if (this.input.nativeElement.value) {
|
|
41509
|
+
this.togglePopup(false);
|
|
41510
|
+
}
|
|
41511
|
+
else {
|
|
41512
|
+
this.togglePopup(true);
|
|
41513
|
+
}
|
|
41514
|
+
this.clearTypingTimeout();
|
|
41515
|
+
if (this.selectedView === 'aiAssistant') {
|
|
41516
|
+
return;
|
|
41517
|
+
}
|
|
41518
|
+
this.handleInputValueChange();
|
|
41519
|
+
};
|
|
41520
|
+
handleInputValueChange() {
|
|
41521
|
+
if (!this.selectedView) {
|
|
41522
|
+
return;
|
|
41523
|
+
}
|
|
41524
|
+
const inputValue = this.input.nativeElement.value;
|
|
41525
|
+
let ev;
|
|
41526
|
+
let delay;
|
|
41527
|
+
if (this.selectedView === 'search') {
|
|
41528
|
+
const fields = this.searchMode.fields.length > 0 ? this.searchMode.fields :
|
|
41529
|
+
this.ctx.grid.columnList.toArray().map((item) => item.field);
|
|
41530
|
+
const filters = [];
|
|
41531
|
+
fields.forEach(field => {
|
|
41532
|
+
filters.push({
|
|
41533
|
+
field,
|
|
41534
|
+
operator: 'contains',
|
|
41535
|
+
value: inputValue
|
|
41536
|
+
});
|
|
41537
|
+
});
|
|
41538
|
+
const eventArgs = {
|
|
41539
|
+
searchValue: inputValue,
|
|
41540
|
+
filters,
|
|
41541
|
+
logic: 'or'
|
|
41542
|
+
};
|
|
41543
|
+
ev = Object.assign(new SmartBoxSearchEvent(), eventArgs);
|
|
41544
|
+
delay = this.searchMode.delay;
|
|
41545
|
+
}
|
|
41546
|
+
else if (this.selectedView === 'semanticSearch') {
|
|
41547
|
+
const fields = this.ctx.grid.columnList.toArray().map((item) => item.field);
|
|
41548
|
+
const filters = [];
|
|
41549
|
+
fields.forEach(field => {
|
|
41550
|
+
filters.push({
|
|
41551
|
+
field,
|
|
41552
|
+
operator: 'contains',
|
|
41553
|
+
value: inputValue
|
|
41554
|
+
});
|
|
41555
|
+
});
|
|
41556
|
+
ev = {
|
|
41557
|
+
searchValue: inputValue,
|
|
41558
|
+
filters,
|
|
41559
|
+
logic: 'or'
|
|
41560
|
+
};
|
|
41561
|
+
delay = this.semanticSearchMode.delay;
|
|
41562
|
+
}
|
|
41563
|
+
this.searchTypingTimeout = setTimeout(() => {
|
|
41564
|
+
this.zone.run(() => {
|
|
41565
|
+
this[this.selectedView].emit(ev);
|
|
41566
|
+
});
|
|
41567
|
+
if (this.selectedView === 'search' && !ev.isDefaultPrevented()) {
|
|
41568
|
+
this.zone.run(() => {
|
|
41569
|
+
if (inputValue === '' || !inputValue) {
|
|
41570
|
+
this.searchService.changes.next(undefined);
|
|
41571
|
+
}
|
|
41572
|
+
else {
|
|
41573
|
+
this.searchService.changes.next({ filters: ev.filters, logic: ev.logic });
|
|
41574
|
+
}
|
|
41575
|
+
});
|
|
41576
|
+
}
|
|
41577
|
+
if (inputValue) {
|
|
41578
|
+
const historyItem = {
|
|
41579
|
+
text: inputValue,
|
|
41580
|
+
timestamp: new Date(),
|
|
41581
|
+
format: this[`${this.selectedView}HistorySettings`].timestampFormat
|
|
41582
|
+
};
|
|
41583
|
+
this[`${this.selectedView}History`].unshift(historyItem);
|
|
41584
|
+
if (this[`${this.selectedView}History`]?.length > this[`${this.selectedView}HistorySettings`].size) {
|
|
41585
|
+
this[`${this.selectedView}History`].splice(this[`${this.selectedView}HistorySettings`].size);
|
|
41586
|
+
}
|
|
41587
|
+
}
|
|
41588
|
+
}, delay);
|
|
41589
|
+
}
|
|
41590
|
+
handleInputFocus = () => {
|
|
41591
|
+
if (hasObservers(this.focus)) {
|
|
41592
|
+
this.zone.run(() => {
|
|
41593
|
+
this.focus.emit();
|
|
41594
|
+
});
|
|
41595
|
+
}
|
|
41596
|
+
this.togglePopup(true);
|
|
41597
|
+
};
|
|
41598
|
+
handleInputBlur = () => {
|
|
41599
|
+
if (hasObservers(this.blur)) {
|
|
41600
|
+
this.zone.run(() => {
|
|
41601
|
+
this.blur.emit();
|
|
41602
|
+
});
|
|
41603
|
+
}
|
|
41604
|
+
this.togglePopup(false);
|
|
41605
|
+
};
|
|
41606
|
+
handleInputClick = () => {
|
|
41607
|
+
if (!this.input.nativeElement.value) {
|
|
41608
|
+
this.togglePopup(true);
|
|
41609
|
+
}
|
|
41610
|
+
};
|
|
41611
|
+
handleInputKeydown = (event) => {
|
|
41612
|
+
const code = normalizeKeys(event);
|
|
41613
|
+
const isEnter = code === Keys.Enter;
|
|
41614
|
+
if (!isEnter) {
|
|
41615
|
+
return;
|
|
41616
|
+
}
|
|
41617
|
+
if (this.selectedView === 'aiAssistant') {
|
|
41618
|
+
this.zone.run(() => {
|
|
41619
|
+
this.onPromptSubmit();
|
|
41620
|
+
});
|
|
41621
|
+
}
|
|
41622
|
+
else if (this.selectedView === 'semanticSearch') {
|
|
41623
|
+
this.zone.run(() => {
|
|
41624
|
+
this.clearTypingTimeout();
|
|
41625
|
+
this.handleInputValueChange();
|
|
41626
|
+
});
|
|
41627
|
+
}
|
|
41628
|
+
};
|
|
41629
|
+
onIconClick = () => {
|
|
41630
|
+
this.togglePopup(!this.isOpen);
|
|
41631
|
+
this.input.nativeElement.focus();
|
|
41632
|
+
};
|
|
41633
|
+
onIconMouseDown = (args) => {
|
|
41634
|
+
args.preventDefault();
|
|
41635
|
+
};
|
|
41636
|
+
clearButtonClick(event) {
|
|
41637
|
+
event.stopImmediatePropagation();
|
|
41638
|
+
this.clearValue();
|
|
41639
|
+
this.togglePopup(true);
|
|
41640
|
+
this.clearTypingTimeout();
|
|
41641
|
+
this.handleInputValueChange();
|
|
41642
|
+
}
|
|
41643
|
+
_searchMode;
|
|
41644
|
+
_semanticSearchMode;
|
|
41645
|
+
_aiAssistantMode;
|
|
41646
|
+
_activeMode = 'search';
|
|
41647
|
+
_history;
|
|
41648
|
+
_size = DEFAULT_SIZE;
|
|
41649
|
+
_speechToTextButton;
|
|
41650
|
+
popupRef;
|
|
41651
|
+
popupMouseDownHandler = (event) => event.preventDefault();
|
|
41652
|
+
requestData;
|
|
41653
|
+
currentRequestSubscription = null;
|
|
41654
|
+
columns = [];
|
|
41655
|
+
leafColumns = [];
|
|
41656
|
+
searchTypingTimeout;
|
|
41657
|
+
togglePopup(open) {
|
|
41658
|
+
const sameState = this.isOpen === open;
|
|
41659
|
+
if (sameState) {
|
|
41660
|
+
return;
|
|
41661
|
+
}
|
|
41662
|
+
this._toggle(open);
|
|
41663
|
+
}
|
|
41664
|
+
onPromptSubmit() {
|
|
41665
|
+
if (this.loading) {
|
|
41666
|
+
this.handleResponseCancel();
|
|
41667
|
+
return;
|
|
41668
|
+
}
|
|
41669
|
+
if (this.input.nativeElement.value.length === 0) {
|
|
41670
|
+
return;
|
|
41671
|
+
}
|
|
41672
|
+
this.loading = true;
|
|
41673
|
+
const historyItem = {
|
|
41674
|
+
text: this.input.nativeElement.value,
|
|
41675
|
+
timestamp: new Date(),
|
|
41676
|
+
format: this.aiAssistantHistorySettings?.timestampFormat
|
|
41677
|
+
};
|
|
41678
|
+
this.aiAssistantHistory.unshift(historyItem);
|
|
41679
|
+
if (this.aiAssistantHistory.length > this.aiAssistantHistorySettings?.size) {
|
|
41680
|
+
this.aiAssistantHistory.splice(this.aiAssistantHistorySettings.size);
|
|
41681
|
+
}
|
|
41682
|
+
this.unsubscribeCurrentRequest();
|
|
41683
|
+
this.requestData = {
|
|
41684
|
+
columns: [],
|
|
41685
|
+
promptMessage: this.input.nativeElement.value,
|
|
41686
|
+
url: this.aiAssistantMode.requestUrl,
|
|
41687
|
+
requestOptions: {
|
|
41688
|
+
...this.aiAssistantMode.requestOptions
|
|
41689
|
+
}
|
|
41690
|
+
};
|
|
41691
|
+
if (!this.aiAssistantMode.requestOptions.body) {
|
|
41692
|
+
this.requestData.requestOptions.body = this.aiRequestResponseService.buildRequestBody(this.requestData.promptMessage, this.requestData.requestOptions.role);
|
|
41693
|
+
}
|
|
41694
|
+
this.zone.run(() => {
|
|
41695
|
+
this.aiAssistantPromptRequest.emit({ requestData: this.requestData });
|
|
41696
|
+
});
|
|
41697
|
+
this.togglePopup(false);
|
|
41698
|
+
this.input.nativeElement.value = '';
|
|
41699
|
+
if (!this.aiAssistantMode.requestUrl) {
|
|
41700
|
+
return;
|
|
41701
|
+
}
|
|
41702
|
+
this.currentRequestSubscription = this.sendPromptRequest().subscribe((res) => {
|
|
41703
|
+
if (res.body) {
|
|
41704
|
+
this.zone.run(() => {
|
|
41705
|
+
this.processResponse(res);
|
|
41706
|
+
this.loading = false;
|
|
41707
|
+
});
|
|
41708
|
+
}
|
|
41709
|
+
this.currentRequestSubscription = null;
|
|
41710
|
+
}, (error) => {
|
|
41711
|
+
this.zone.run(() => {
|
|
41712
|
+
this.handleError(error);
|
|
41713
|
+
this.loading = false;
|
|
41714
|
+
this.currentRequestSubscription = null;
|
|
41715
|
+
});
|
|
41716
|
+
});
|
|
41717
|
+
}
|
|
41718
|
+
onSpeechToTextResult(event) {
|
|
41719
|
+
if (event.alternatives && event.alternatives.length > 0) {
|
|
41720
|
+
if (!isPresent$1(this.input.nativeElement.value)) {
|
|
41721
|
+
this.clearValue();
|
|
41722
|
+
}
|
|
41723
|
+
const newValue = event.alternatives[0].transcript + ' ';
|
|
41724
|
+
this.input.nativeElement.value = newValue;
|
|
41725
|
+
}
|
|
41726
|
+
}
|
|
41727
|
+
onSpeechToTextError(event) {
|
|
41728
|
+
if (isDevMode()) {
|
|
41729
|
+
console.error('Speech to Text error:', event.errorMessage);
|
|
41730
|
+
}
|
|
41731
|
+
}
|
|
41732
|
+
get searchPlaceholder() {
|
|
41733
|
+
return this.searchMode?.placeholder || this.placeholder || this.messageFor('smartBoxSearchPlaceholder');
|
|
41734
|
+
}
|
|
41735
|
+
get semanticSearchPlaceholder() {
|
|
41736
|
+
return this.semanticSearchMode?.placeholder || this.placeholder || this.messageFor('smartBoxSemanticSearchPlaceholder');
|
|
41737
|
+
}
|
|
41738
|
+
get aiAssistantPlaceholder() {
|
|
41739
|
+
return this.aiAssistantMode?.placeholder || this.placeholder || this.messageFor('smartBoxAIAssistantPlaceholder');
|
|
41740
|
+
}
|
|
41741
|
+
get inputDisabled() {
|
|
41742
|
+
return !(this.searchMode?.enabled || this.semanticSearchMode?.enabled || this.aiAssistantMode?.enabled);
|
|
41743
|
+
}
|
|
41744
|
+
createPopup() {
|
|
41745
|
+
this.popupRef = this.popupService.open({
|
|
41746
|
+
anchor: this.wrapper.nativeElement,
|
|
41747
|
+
content: this.popupTemplate,
|
|
41748
|
+
popupClass: 'k-smart-box-popup',
|
|
41749
|
+
positionMode: 'absolute',
|
|
41750
|
+
margin: { horizontal: 0, vertical: 2 }
|
|
41751
|
+
});
|
|
41752
|
+
const popupWrapper = this.popupRef.popupElement;
|
|
41753
|
+
const { min, max } = this.popupWidth;
|
|
41754
|
+
popupWrapper.style.minWidth = min;
|
|
41755
|
+
popupWrapper.style.width = max;
|
|
41756
|
+
popupWrapper.addEventListener('mousedown', this.popupMouseDownHandler);
|
|
41757
|
+
this.popupRef.popupOpen.subscribe(() => {
|
|
41758
|
+
this.open.emit();
|
|
41759
|
+
});
|
|
41760
|
+
this.popupRef.popupClose.subscribe(() => {
|
|
41761
|
+
this.close.emit();
|
|
41762
|
+
});
|
|
41763
|
+
this.popupRef.popupAnchorViewportLeave.subscribe(() => this.togglePopup(false));
|
|
41764
|
+
}
|
|
41765
|
+
destroyPopup() {
|
|
41766
|
+
if (this.popupRef) {
|
|
41767
|
+
this.popupRef.popupElement
|
|
41768
|
+
.removeEventListener('mousedown', this.popupMouseDownHandler);
|
|
41769
|
+
this.popupRef.close();
|
|
41770
|
+
this.popupRef = null;
|
|
41771
|
+
}
|
|
41772
|
+
}
|
|
41773
|
+
_toggle(open) {
|
|
41774
|
+
this.isOpen = open;
|
|
41775
|
+
this.destroyPopup();
|
|
41776
|
+
if (this.isOpen) {
|
|
41777
|
+
this.createPopup();
|
|
41778
|
+
}
|
|
41779
|
+
}
|
|
41780
|
+
clearTypingTimeout() {
|
|
41781
|
+
if (this.searchTypingTimeout) {
|
|
41782
|
+
clearTimeout(this.searchTypingTimeout);
|
|
41783
|
+
this.searchTypingTimeout = null;
|
|
41784
|
+
}
|
|
41785
|
+
}
|
|
41786
|
+
sendPromptRequest() {
|
|
41787
|
+
const request = new HttpRequest(this.requestData.requestOptions.method, this.requestData.url, this.requestData.requestOptions.body, this.requestData.requestOptions);
|
|
41788
|
+
return this.http.request(request);
|
|
41789
|
+
}
|
|
41790
|
+
handleResponseCancel() {
|
|
41791
|
+
this.aiAssistantCancelRequest.emit();
|
|
41792
|
+
this.unsubscribeCurrentRequest();
|
|
41793
|
+
this.loading = false;
|
|
41794
|
+
}
|
|
41795
|
+
unsubscribeCurrentRequest() {
|
|
41796
|
+
if (this.currentRequestSubscription) {
|
|
41797
|
+
this.currentRequestSubscription.unsubscribe();
|
|
41798
|
+
this.currentRequestSubscription = null;
|
|
41799
|
+
}
|
|
41800
|
+
}
|
|
41801
|
+
get popupWidth() {
|
|
41802
|
+
let wrapperOffsetWidth = 0;
|
|
41803
|
+
if (isDocumentAvailable()) {
|
|
41804
|
+
wrapperOffsetWidth = this.wrapper.nativeElement.offsetWidth;
|
|
41805
|
+
}
|
|
41806
|
+
const width = wrapperOffsetWidth;
|
|
41807
|
+
const minWidth = isNaN(wrapperOffsetWidth) ? wrapperOffsetWidth : `${wrapperOffsetWidth}px`;
|
|
41808
|
+
const maxWidth = isNaN(width) ? width : `${width}px`;
|
|
41809
|
+
return { min: minWidth, max: maxWidth };
|
|
41810
|
+
}
|
|
41811
|
+
handleSizeClass(currentValue) {
|
|
41812
|
+
const elem = this.innerWrapper?.nativeElement;
|
|
41813
|
+
if (!isPresent$1(elem)) {
|
|
41814
|
+
return;
|
|
41815
|
+
}
|
|
41816
|
+
const prevSizeClass = `k-input-${SIZES[this._size]}`;
|
|
41817
|
+
const newSizeClass = `k-input-${SIZES[currentValue]}`;
|
|
41818
|
+
if (prevSizeClass) {
|
|
41819
|
+
this.renderer.removeClass(elem, prevSizeClass);
|
|
41820
|
+
}
|
|
41821
|
+
if (newSizeClass) {
|
|
41822
|
+
this.renderer.addClass(elem, newSizeClass);
|
|
41823
|
+
}
|
|
41824
|
+
}
|
|
41825
|
+
updateModeSettingsFromSharedInputs() {
|
|
41826
|
+
if (this._searchMode && typeof this._searchMode === 'object') {
|
|
41827
|
+
const currentSettings = { ...this._searchMode };
|
|
41828
|
+
const modeSpecificHistory = currentSettings.history;
|
|
41829
|
+
const modeSpecificPlaceholder = currentSettings.placeholder;
|
|
41830
|
+
delete currentSettings.history;
|
|
41831
|
+
delete currentSettings.placeholder;
|
|
41832
|
+
const settingsFromComponent = {
|
|
41833
|
+
placeholder: modeSpecificPlaceholder ?? this.placeholder,
|
|
41834
|
+
history: modeSpecificHistory ?? this.history
|
|
41835
|
+
};
|
|
41836
|
+
this._searchMode = { ...DEFAULT_SEARCH_SETTINGS, ...currentSettings, ...settingsFromComponent };
|
|
41837
|
+
}
|
|
41838
|
+
if (this._semanticSearchMode && typeof this._semanticSearchMode === 'object') {
|
|
41839
|
+
const currentSettings = { ...this._semanticSearchMode };
|
|
41840
|
+
const modeSpecificHistory = currentSettings.history;
|
|
41841
|
+
const modeSpecificPlaceholder = currentSettings.placeholder;
|
|
41842
|
+
delete currentSettings.history;
|
|
41843
|
+
delete currentSettings.placeholder;
|
|
41844
|
+
const settingsFromComponent = {
|
|
41845
|
+
placeholder: modeSpecificPlaceholder ?? this.placeholder,
|
|
41846
|
+
history: modeSpecificHistory ?? this.history
|
|
41847
|
+
};
|
|
41848
|
+
this._semanticSearchMode = { ...DEFAULT_SEMANTIC_SEARCH_SETTINGS, ...currentSettings, ...settingsFromComponent };
|
|
41849
|
+
}
|
|
41850
|
+
if (this._aiAssistantMode && typeof this._aiAssistantMode === 'object') {
|
|
41851
|
+
const currentSettings = { ...this._aiAssistantMode };
|
|
41852
|
+
const modeSpecificHistory = currentSettings.history;
|
|
41853
|
+
const modeSpecificPlaceholder = currentSettings.placeholder;
|
|
41854
|
+
delete currentSettings.history;
|
|
41855
|
+
delete currentSettings.placeholder;
|
|
41856
|
+
const settingsFromComponent = {
|
|
41857
|
+
placeholder: modeSpecificPlaceholder ?? this.placeholder,
|
|
41858
|
+
history: modeSpecificHistory ?? this.history
|
|
41859
|
+
};
|
|
41860
|
+
this._aiAssistantMode = { ...DEFAULT_AI_ASSISTANT_SETTINGS, ...currentSettings, ...settingsFromComponent };
|
|
41861
|
+
}
|
|
41862
|
+
}
|
|
41863
|
+
updateSearchListData() {
|
|
41864
|
+
if (!this.ctx?.localization) {
|
|
41865
|
+
return;
|
|
41866
|
+
}
|
|
41867
|
+
if (this.searchMode?.enabled && this.semanticSearchMode?.enabled) {
|
|
41868
|
+
this.searchListData = [
|
|
41869
|
+
{ text: this.messageFor('searchModeListItemText'), description: this.messageFor('searchModeListItemDescription'), selected: this.selectedView === 'search' },
|
|
41870
|
+
{ text: this.messageFor('semanticSearchModeListItemText'), description: this.messageFor('semanticSearchModeListItemDescription'), selected: this.selectedView === 'semanticSearch' }
|
|
41871
|
+
];
|
|
41872
|
+
}
|
|
41873
|
+
else {
|
|
41874
|
+
this.searchListData = [];
|
|
41875
|
+
}
|
|
41876
|
+
}
|
|
41877
|
+
updateSelectedView() {
|
|
41878
|
+
if (this._activeMode) {
|
|
41879
|
+
const modeSettings = this[`${this._activeMode}Mode`];
|
|
41880
|
+
if (modeSettings?.enabled) {
|
|
41881
|
+
this.selectedView = this._activeMode;
|
|
41882
|
+
return;
|
|
41883
|
+
}
|
|
41884
|
+
}
|
|
41885
|
+
if (this.selectedView && this[`${this.selectedView}Mode`]?.enabled) {
|
|
41886
|
+
return;
|
|
41887
|
+
}
|
|
41888
|
+
if (this.searchMode?.enabled) {
|
|
41889
|
+
this.selectedView = 'search';
|
|
41890
|
+
}
|
|
41891
|
+
else if (this.semanticSearchMode?.enabled) {
|
|
41892
|
+
this.selectedView = 'semanticSearch';
|
|
41893
|
+
}
|
|
41894
|
+
else if (this.aiAssistantMode?.enabled) {
|
|
41895
|
+
this.selectedView = 'aiAssistant';
|
|
41896
|
+
}
|
|
41897
|
+
else {
|
|
41898
|
+
this.selectedView = null;
|
|
41899
|
+
}
|
|
41900
|
+
}
|
|
41901
|
+
updateHistoryData() {
|
|
41902
|
+
if (this.searchHistorySettings && this.searchHistory.length > this.searchHistorySettings.size) {
|
|
41903
|
+
this.searchHistory.splice(this.searchHistorySettings.size);
|
|
41904
|
+
}
|
|
41905
|
+
if (this.semanticSearchHistorySettings && this.semanticSearchHistory.length > this.semanticSearchHistorySettings.size) {
|
|
41906
|
+
this.semanticSearchHistory.splice(this.semanticSearchHistorySettings.size);
|
|
41907
|
+
}
|
|
41908
|
+
if (this.aiAssistantHistorySettings && this.aiAssistantHistory.length > this.aiAssistantHistorySettings.size) {
|
|
41909
|
+
this.aiAssistantHistory.splice(this.aiAssistantHistorySettings.size);
|
|
41910
|
+
}
|
|
41911
|
+
if (this.searchHistorySettings && this.searchHistorySettings.timestampFormat !== this.searchHistory[0]?.format) {
|
|
41912
|
+
this.searchHistory = this.searchHistory.map(item => ({ ...item, format: this.searchHistorySettings.timestampFormat }));
|
|
41913
|
+
}
|
|
41914
|
+
if (this.semanticSearchHistorySettings && this.semanticSearchHistorySettings.timestampFormat !== this.semanticSearchHistory[0]?.format) {
|
|
41915
|
+
this.semanticSearchHistory = this.semanticSearchHistory.map(item => ({ ...item, format: this.semanticSearchHistorySettings.timestampFormat }));
|
|
41916
|
+
}
|
|
41917
|
+
if (this.aiAssistantHistorySettings && this.aiAssistantHistorySettings.timestampFormat !== this.aiAssistantHistory[0]?.format) {
|
|
41918
|
+
this.aiAssistantHistory = this.aiAssistantHistory.map(item => ({ ...item, format: this.aiAssistantHistorySettings.timestampFormat }));
|
|
41919
|
+
}
|
|
41920
|
+
}
|
|
41921
|
+
processResponse(response) {
|
|
41922
|
+
const responseBody = response.body || { commands: [] };
|
|
41923
|
+
const responseSuccessEvent = new GridSmartBoxResponseSuccessEvent(response);
|
|
41924
|
+
this.aiAssistantResponseSuccess.emit(responseSuccessEvent);
|
|
41925
|
+
this.aiRequestResponseService.processCommands(responseBody.commands || [], this.columns, this.leafColumns);
|
|
41926
|
+
}
|
|
41927
|
+
handleError(error) {
|
|
41928
|
+
const responseErrorEvent = new GridSmartBoxResponseErrorEvent(error);
|
|
41929
|
+
this.aiAssistantResponseError.emit(responseErrorEvent);
|
|
41930
|
+
}
|
|
41931
|
+
clearValue() {
|
|
41932
|
+
this.input.nativeElement.value = '';
|
|
41933
|
+
this.input.nativeElement.focus();
|
|
41934
|
+
}
|
|
41935
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SmartBoxComponent, deps: [{ token: i2.PopupService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1$4.IntlService }, { token: ContextService }, { token: GridAIRequestResponseService }, { token: i1$8.HttpClient }, { token: i0.Renderer2 }, { token: ColumnInfoService }, { token: SearchService }], target: i0.ɵɵFactoryTarget.Component });
|
|
41936
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.18", type: SmartBoxComponent, isStandalone: true, selector: "kendo-smartbox", inputs: { searchMode: "searchMode", semanticSearchMode: "semanticSearchMode", aiAssistantMode: "aiAssistantMode", activeMode: "activeMode", history: "history", placeholder: "placeholder", size: "size", promptSuggestionTemplate: "promptSuggestionTemplate", historyItemTemplate: "historyItemTemplate", loading: "loading" }, outputs: { open: "open", close: "close", focus: "focus", blur: "blur", aiAssistantPromptRequest: "aiAssistantPromptRequest", aiAssistantResponseSuccess: "aiAssistantResponseSuccess", aiAssistantResponseError: "aiAssistantResponseError", aiAssistantCancelRequest: "aiAssistantCancelRequest", search: "search", semanticSearch: "semanticSearch", modeChange: "modeChange" }, providers: [DataService, SelectionService$1, NavigationService$1, DisabledItemsService], viewQueries: [{ propertyName: "popupTemplate", first: true, predicate: ["popupTemplate"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "innerWrapper", first: true, predicate: ["innerWrapper"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
41937
|
+
<span #innerWrapper
|
|
41938
|
+
class="k-smart-box k-input"
|
|
41939
|
+
[class.k-loading]="loading">
|
|
41940
|
+
@if (!inputDisabled) {
|
|
41941
|
+
<span class="k-input-prefix k-input-prefix-horizontal">
|
|
41942
|
+
<kendo-icon-wrapper
|
|
41943
|
+
class="k-icon"
|
|
41944
|
+
[name]="prefixIconName"
|
|
41945
|
+
[svgIcon]="prefixSVGIcon"
|
|
41946
|
+
[innerCssClass]="(selectedView === 'aiAssistant' || selectedView === 'semanticSearch') ? 'k-accent-icon' : ''"
|
|
41947
|
+
[kendoEventsOutsideAngular]="{
|
|
41948
|
+
click: onIconClick,
|
|
41949
|
+
mousedown: onIconMouseDown
|
|
41950
|
+
}">
|
|
41951
|
+
</kendo-icon-wrapper>
|
|
41952
|
+
</span>
|
|
41953
|
+
}
|
|
41954
|
+
<input #input
|
|
41955
|
+
type="text"
|
|
41956
|
+
class="k-input-inner"
|
|
41957
|
+
[class.k-disabled]="inputDisabled"
|
|
41958
|
+
[disabled]="inputDisabled"
|
|
41959
|
+
[id]="focusableId"
|
|
41960
|
+
[placeholder]="inputPlaceholder"
|
|
41961
|
+
[kendoEventsOutsideAngular]="{
|
|
41962
|
+
input: handleInput,
|
|
41963
|
+
focus: handleInputFocus,
|
|
41964
|
+
blur: handleInputBlur,
|
|
41965
|
+
click: handleInputClick,
|
|
41966
|
+
keydown: handleInputKeydown
|
|
41967
|
+
}"
|
|
41968
|
+
/>
|
|
41969
|
+
@if (input.value.length > 0 && (selectedView === 'search' || selectedView === 'semanticSearch')) {
|
|
41970
|
+
<span
|
|
41971
|
+
class="k-clear-value"
|
|
41972
|
+
[attr.title]="messageFor('smartBoxToolClearTitle')"
|
|
41973
|
+
role="button"
|
|
41974
|
+
tabindex="-1"
|
|
41975
|
+
(click)="clearButtonClick($event)"
|
|
41976
|
+
(mousedown)="$event.preventDefault()">
|
|
41977
|
+
<kendo-icon-wrapper
|
|
41978
|
+
class="k-icon"
|
|
41979
|
+
name="x"
|
|
41980
|
+
[svgIcon]="xIcon">
|
|
41981
|
+
</kendo-icon-wrapper>
|
|
41982
|
+
</span>
|
|
41983
|
+
}
|
|
41984
|
+
@if (selectedView === 'aiAssistant') {
|
|
41985
|
+
<span class="k-input-suffix k-input-suffix-horizontal">
|
|
41986
|
+
@if (speechToTextButton) {
|
|
41987
|
+
<button kendoSpeechToTextButton
|
|
41988
|
+
role="button"
|
|
41989
|
+
[continuous]="speechToTextButton?.continuous"
|
|
41990
|
+
[disabled]="speechToTextButton?.disabled"
|
|
41991
|
+
[fillMode]="speechToTextButton?.fillMode"
|
|
41992
|
+
[integrationMode]="speechToTextButton?.integrationMode"
|
|
41993
|
+
[interimResults]="speechToTextButton?.interimResults"
|
|
41994
|
+
[lang]="speechToTextButton?.lang"
|
|
41995
|
+
[maxAlternatives]="speechToTextButton?.maxAlternatives"
|
|
41996
|
+
[rounded]="speechToTextButton?.rounded"
|
|
41997
|
+
[size]="speechToTextButton?.size"
|
|
41998
|
+
[themeColor]="speechToTextButton?.themeColor"
|
|
41999
|
+
[attr.aria-label]="messageFor('smartBoxSpeechToTextButton')"
|
|
42000
|
+
[attr.title]="messageFor('smartBoxSpeechToTextButton')"
|
|
42001
|
+
[attr.aria-disabled]="speechToTextButton?.disabled"
|
|
42002
|
+
(error)="onSpeechToTextError($event)"
|
|
42003
|
+
(result)="onSpeechToTextResult($event)"
|
|
42004
|
+
></button>
|
|
42005
|
+
}
|
|
42006
|
+
<button kendoButton
|
|
42007
|
+
class="k-smart-box-send"
|
|
42008
|
+
[class.k-processing]="loading"
|
|
42009
|
+
[class.k-active]="loading"
|
|
42010
|
+
type="button"
|
|
42011
|
+
rounded="full"
|
|
42012
|
+
size="small"
|
|
42013
|
+
[attr.title]="messageFor('smartBoxSubmitPromptButton')"
|
|
42014
|
+
[attr.aria-label]="messageFor('smartBoxSubmitPromptButton')"
|
|
42015
|
+
[attr.aria-disabled]="input.value.length === 0"
|
|
42016
|
+
[svgIcon]="loading ? stopSmIcon : arrowUpOutlineIcon"
|
|
42017
|
+
[icon]="loading ? 'stop-sm' : 'arrow-up-outline'"
|
|
42018
|
+
[disabled]="input.value.length === 0"
|
|
42019
|
+
(click)="onPromptSubmit()">
|
|
42020
|
+
</button>
|
|
42021
|
+
</span>
|
|
42022
|
+
}
|
|
42023
|
+
</span>
|
|
42024
|
+
|
|
42025
|
+
<ng-template #popupTemplate>
|
|
42026
|
+
@if (segmentedControlButtons.length > 0) {
|
|
42027
|
+
<kendo-segmented-control
|
|
42028
|
+
[buttons]="segmentedControlButtons"
|
|
42029
|
+
(buttonClick)="onModeChange($event)">
|
|
42030
|
+
</kendo-segmented-control>
|
|
42031
|
+
}
|
|
42032
|
+
<div class="k-list k-list-md">
|
|
42033
|
+
<div class="k-list-content">
|
|
42034
|
+
<ul class="k-list-ul">
|
|
42035
|
+
@if ((selectedView === 'search' || selectedView === 'semanticSearch') && searchListData.length > 0) {
|
|
42036
|
+
@for (item of searchListData; track item) {
|
|
42037
|
+
<li class="k-list-item"
|
|
42038
|
+
(click)="onSearchItemClick(item)">
|
|
42039
|
+
@if (item.selected) {
|
|
42040
|
+
<kendo-icon-wrapper
|
|
42041
|
+
innerCssClass="k-list-item-icon"
|
|
42042
|
+
name="check"
|
|
42043
|
+
[svgIcon]="checkIcon"
|
|
42044
|
+
class="k-list-item-icon-wrapper">
|
|
42045
|
+
</kendo-icon-wrapper>
|
|
42046
|
+
}
|
|
42047
|
+
@if (item.text) {
|
|
42048
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42049
|
+
}
|
|
42050
|
+
@if (item.description) {
|
|
42051
|
+
<span class="k-list-item-description">{{item.description}}</span>
|
|
42052
|
+
}
|
|
42053
|
+
</li>
|
|
42054
|
+
}
|
|
42055
|
+
} @else if (selectedView === 'aiAssistant' && aiAssistantMode.promptSuggestions.length > 0) {
|
|
42056
|
+
<li class="k-list-group-item">
|
|
42057
|
+
<kendo-icon-wrapper
|
|
42058
|
+
innerCssClass="k-list-item-icon"
|
|
42059
|
+
name="lightbulb-outline"
|
|
42060
|
+
[svgIcon]="lightbulbOutlineIcon"
|
|
42061
|
+
class="k-list-item-icon-wrapper">
|
|
42062
|
+
</kendo-icon-wrapper>
|
|
42063
|
+
<span class="k-list-item-text">{{messageFor('smartBoxSuggestedPrompts')}}</span>
|
|
42064
|
+
</li>
|
|
42065
|
+
|
|
42066
|
+
@for (suggestion of aiAssistantMode.promptSuggestions; track $index) {
|
|
42067
|
+
@if (promptSuggestionTemplate?.templateRef) {
|
|
42068
|
+
<ng-template
|
|
42069
|
+
[templateContext]="{ templateRef: promptSuggestionTemplate?.templateRef, $implicit: suggestion }"
|
|
42070
|
+
></ng-template>
|
|
42071
|
+
} @else {
|
|
42072
|
+
<li class="k-list-item"
|
|
42073
|
+
(click)="onListItemClick(suggestion)"
|
|
42074
|
+
[attr.title]="suggestion">
|
|
42075
|
+
<span class="k-list-item-text">{{suggestion}}</span>
|
|
42076
|
+
</li>
|
|
42077
|
+
}
|
|
42078
|
+
}
|
|
42079
|
+
}
|
|
42080
|
+
</ul>
|
|
42081
|
+
|
|
42082
|
+
@if (selectedView === 'search') {
|
|
42083
|
+
@if (searchHistory.length === 0 && !semanticSearchMode?.enabled) {
|
|
42084
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42085
|
+
<kendo-icon-wrapper
|
|
42086
|
+
icon="file-report"
|
|
42087
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42088
|
+
size="xxxlarge">
|
|
42089
|
+
</kendo-icon-wrapper>
|
|
42090
|
+
<span>{{messageFor('smartBoxNoPreviousSearches')}}</span>
|
|
42091
|
+
</span>
|
|
42092
|
+
} @else if (searchHistory.length > 0) {
|
|
42093
|
+
<ul class="k-list-ul">
|
|
42094
|
+
<li class="k-list-group-item">
|
|
42095
|
+
<kendo-icon-wrapper
|
|
42096
|
+
innerCssClass="k-list-item-icon"
|
|
42097
|
+
name="clock-arrow-rotate"
|
|
42098
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42099
|
+
class="k-list-item-icon-wrapper">
|
|
42100
|
+
</kendo-icon-wrapper>
|
|
42101
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslySearched')}}</span>
|
|
42102
|
+
</li>
|
|
42103
|
+
|
|
42104
|
+
@for (item of searchHistory; track $index) {
|
|
42105
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42106
|
+
<ng-template
|
|
42107
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42108
|
+
></ng-template>
|
|
42109
|
+
} @else {
|
|
42110
|
+
<li class="k-list-item"
|
|
42111
|
+
(click)="onListItemClick(item.text)"
|
|
42112
|
+
[attr.title]="item.text">
|
|
42113
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42114
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, searchHistorySettings?.timestampFormat)}}</span>
|
|
42115
|
+
</li>
|
|
42116
|
+
}
|
|
42117
|
+
}
|
|
42118
|
+
</ul>
|
|
42119
|
+
}
|
|
42120
|
+
} @else if (selectedView === 'semanticSearch') {
|
|
42121
|
+
@if (semanticSearchHistory.length === 0 && !searchMode?.enabled) {
|
|
42122
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42123
|
+
<kendo-icon-wrapper
|
|
42124
|
+
icon="file-report"
|
|
42125
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42126
|
+
size="xxxlarge">
|
|
42127
|
+
</kendo-icon-wrapper>
|
|
42128
|
+
<span>{{messageFor('smartBoxNoPreviousSearches')}}</span>
|
|
42129
|
+
</span>
|
|
42130
|
+
} @else if (semanticSearchHistory.length > 0) {
|
|
42131
|
+
<ul class="k-list-ul">
|
|
42132
|
+
<li class="k-list-group-item">
|
|
42133
|
+
<kendo-icon-wrapper
|
|
42134
|
+
innerCssClass="k-list-item-icon"
|
|
42135
|
+
name="clock-arrow-rotate"
|
|
42136
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42137
|
+
class="k-list-item-icon-wrapper">
|
|
42138
|
+
</kendo-icon-wrapper>
|
|
42139
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslySearched')}}</span>
|
|
42140
|
+
</li>
|
|
42141
|
+
|
|
42142
|
+
@for (item of semanticSearchHistory; track $index) {
|
|
42143
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42144
|
+
<ng-template
|
|
42145
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42146
|
+
></ng-template>
|
|
42147
|
+
} @else {
|
|
42148
|
+
<li class="k-list-item"
|
|
42149
|
+
(click)="onListItemClick(item.text)"
|
|
42150
|
+
[attr.title]="item.text">
|
|
42151
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42152
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, semanticSearchHistorySettings?.timestampFormat)}}</span>
|
|
42153
|
+
</li>
|
|
42154
|
+
}
|
|
42155
|
+
}
|
|
42156
|
+
</ul>
|
|
42157
|
+
}
|
|
42158
|
+
} @else if (selectedView === 'aiAssistant') {
|
|
42159
|
+
@if (aiAssistantHistory.length === 0 && aiAssistantMode?.promptSuggestions.length === 0) {
|
|
42160
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42161
|
+
<kendo-icon-wrapper
|
|
42162
|
+
icon="file-report"
|
|
42163
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42164
|
+
size="xxxlarge">
|
|
42165
|
+
</kendo-icon-wrapper>
|
|
42166
|
+
<span>{{messageFor('smartBoxNoPreviousPrompts')}}</span>
|
|
42167
|
+
</span>
|
|
42168
|
+
} @else if (aiAssistantHistory.length > 0) {
|
|
42169
|
+
<ul class="k-list-ul">
|
|
42170
|
+
<li class="k-list-group-item">
|
|
42171
|
+
<kendo-icon-wrapper
|
|
42172
|
+
innerCssClass="k-list-item-icon"
|
|
42173
|
+
name="clock-arrow-rotate"
|
|
42174
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42175
|
+
class="k-list-item-icon-wrapper">
|
|
42176
|
+
</kendo-icon-wrapper>
|
|
42177
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslyAsked')}}</span>
|
|
42178
|
+
</li>
|
|
42179
|
+
|
|
42180
|
+
@for (item of aiAssistantHistory; track $index) {
|
|
42181
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42182
|
+
<ng-template
|
|
42183
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42184
|
+
></ng-template>
|
|
42185
|
+
} @else {
|
|
42186
|
+
<li class="k-list-item"
|
|
42187
|
+
(click)="onListItemClick(item.text)"
|
|
42188
|
+
[attr.title]="item.text">
|
|
42189
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42190
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, aiAssistantHistorySettings?.timestampFormat)}}</span>
|
|
42191
|
+
</li>
|
|
42192
|
+
}
|
|
42193
|
+
}
|
|
42194
|
+
</ul>
|
|
42195
|
+
}
|
|
42196
|
+
}
|
|
42197
|
+
</div>
|
|
42198
|
+
</div>
|
|
42199
|
+
</ng-template>
|
|
42200
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SegmentedControlComponent, selector: "kendo-segmented-control", inputs: ["buttons", "size"], outputs: ["buttonClick"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: i1$6.ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "component", type: i1$6.SpeechToTextButtonComponent, selector: "button[kendoSpeechToTextButton]", inputs: ["disabled", "size", "rounded", "fillMode", "themeColor", "integrationMode", "lang", "continuous", "interimResults", "maxAlternatives"], outputs: ["start", "end", "result", "error", "click"], exportAs: ["kendoSpeechToTextButton"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
|
|
42201
|
+
}
|
|
42202
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SmartBoxComponent, decorators: [{
|
|
42203
|
+
type: Component,
|
|
42204
|
+
args: [{
|
|
42205
|
+
selector: 'kendo-smartbox',
|
|
42206
|
+
standalone: true,
|
|
42207
|
+
imports: [SegmentedControlComponent, EventsOutsideAngularDirective, IconWrapperComponent, KENDO_BUTTONS, TemplateContextDirective],
|
|
42208
|
+
providers: [DataService, SelectionService$1, NavigationService$1, DisabledItemsService],
|
|
42209
|
+
template: `
|
|
42210
|
+
<span #innerWrapper
|
|
42211
|
+
class="k-smart-box k-input"
|
|
42212
|
+
[class.k-loading]="loading">
|
|
42213
|
+
@if (!inputDisabled) {
|
|
42214
|
+
<span class="k-input-prefix k-input-prefix-horizontal">
|
|
42215
|
+
<kendo-icon-wrapper
|
|
42216
|
+
class="k-icon"
|
|
42217
|
+
[name]="prefixIconName"
|
|
42218
|
+
[svgIcon]="prefixSVGIcon"
|
|
42219
|
+
[innerCssClass]="(selectedView === 'aiAssistant' || selectedView === 'semanticSearch') ? 'k-accent-icon' : ''"
|
|
42220
|
+
[kendoEventsOutsideAngular]="{
|
|
42221
|
+
click: onIconClick,
|
|
42222
|
+
mousedown: onIconMouseDown
|
|
42223
|
+
}">
|
|
42224
|
+
</kendo-icon-wrapper>
|
|
42225
|
+
</span>
|
|
42226
|
+
}
|
|
42227
|
+
<input #input
|
|
42228
|
+
type="text"
|
|
42229
|
+
class="k-input-inner"
|
|
42230
|
+
[class.k-disabled]="inputDisabled"
|
|
42231
|
+
[disabled]="inputDisabled"
|
|
42232
|
+
[id]="focusableId"
|
|
42233
|
+
[placeholder]="inputPlaceholder"
|
|
42234
|
+
[kendoEventsOutsideAngular]="{
|
|
42235
|
+
input: handleInput,
|
|
42236
|
+
focus: handleInputFocus,
|
|
42237
|
+
blur: handleInputBlur,
|
|
42238
|
+
click: handleInputClick,
|
|
42239
|
+
keydown: handleInputKeydown
|
|
42240
|
+
}"
|
|
42241
|
+
/>
|
|
42242
|
+
@if (input.value.length > 0 && (selectedView === 'search' || selectedView === 'semanticSearch')) {
|
|
42243
|
+
<span
|
|
42244
|
+
class="k-clear-value"
|
|
42245
|
+
[attr.title]="messageFor('smartBoxToolClearTitle')"
|
|
42246
|
+
role="button"
|
|
42247
|
+
tabindex="-1"
|
|
42248
|
+
(click)="clearButtonClick($event)"
|
|
42249
|
+
(mousedown)="$event.preventDefault()">
|
|
42250
|
+
<kendo-icon-wrapper
|
|
42251
|
+
class="k-icon"
|
|
42252
|
+
name="x"
|
|
42253
|
+
[svgIcon]="xIcon">
|
|
42254
|
+
</kendo-icon-wrapper>
|
|
42255
|
+
</span>
|
|
42256
|
+
}
|
|
42257
|
+
@if (selectedView === 'aiAssistant') {
|
|
42258
|
+
<span class="k-input-suffix k-input-suffix-horizontal">
|
|
42259
|
+
@if (speechToTextButton) {
|
|
42260
|
+
<button kendoSpeechToTextButton
|
|
42261
|
+
role="button"
|
|
42262
|
+
[continuous]="speechToTextButton?.continuous"
|
|
42263
|
+
[disabled]="speechToTextButton?.disabled"
|
|
42264
|
+
[fillMode]="speechToTextButton?.fillMode"
|
|
42265
|
+
[integrationMode]="speechToTextButton?.integrationMode"
|
|
42266
|
+
[interimResults]="speechToTextButton?.interimResults"
|
|
42267
|
+
[lang]="speechToTextButton?.lang"
|
|
42268
|
+
[maxAlternatives]="speechToTextButton?.maxAlternatives"
|
|
42269
|
+
[rounded]="speechToTextButton?.rounded"
|
|
42270
|
+
[size]="speechToTextButton?.size"
|
|
42271
|
+
[themeColor]="speechToTextButton?.themeColor"
|
|
42272
|
+
[attr.aria-label]="messageFor('smartBoxSpeechToTextButton')"
|
|
42273
|
+
[attr.title]="messageFor('smartBoxSpeechToTextButton')"
|
|
42274
|
+
[attr.aria-disabled]="speechToTextButton?.disabled"
|
|
42275
|
+
(error)="onSpeechToTextError($event)"
|
|
42276
|
+
(result)="onSpeechToTextResult($event)"
|
|
42277
|
+
></button>
|
|
42278
|
+
}
|
|
42279
|
+
<button kendoButton
|
|
42280
|
+
class="k-smart-box-send"
|
|
42281
|
+
[class.k-processing]="loading"
|
|
42282
|
+
[class.k-active]="loading"
|
|
42283
|
+
type="button"
|
|
42284
|
+
rounded="full"
|
|
42285
|
+
size="small"
|
|
42286
|
+
[attr.title]="messageFor('smartBoxSubmitPromptButton')"
|
|
42287
|
+
[attr.aria-label]="messageFor('smartBoxSubmitPromptButton')"
|
|
42288
|
+
[attr.aria-disabled]="input.value.length === 0"
|
|
42289
|
+
[svgIcon]="loading ? stopSmIcon : arrowUpOutlineIcon"
|
|
42290
|
+
[icon]="loading ? 'stop-sm' : 'arrow-up-outline'"
|
|
42291
|
+
[disabled]="input.value.length === 0"
|
|
42292
|
+
(click)="onPromptSubmit()">
|
|
42293
|
+
</button>
|
|
42294
|
+
</span>
|
|
42295
|
+
}
|
|
42296
|
+
</span>
|
|
42297
|
+
|
|
42298
|
+
<ng-template #popupTemplate>
|
|
42299
|
+
@if (segmentedControlButtons.length > 0) {
|
|
42300
|
+
<kendo-segmented-control
|
|
42301
|
+
[buttons]="segmentedControlButtons"
|
|
42302
|
+
(buttonClick)="onModeChange($event)">
|
|
42303
|
+
</kendo-segmented-control>
|
|
42304
|
+
}
|
|
42305
|
+
<div class="k-list k-list-md">
|
|
42306
|
+
<div class="k-list-content">
|
|
42307
|
+
<ul class="k-list-ul">
|
|
42308
|
+
@if ((selectedView === 'search' || selectedView === 'semanticSearch') && searchListData.length > 0) {
|
|
42309
|
+
@for (item of searchListData; track item) {
|
|
42310
|
+
<li class="k-list-item"
|
|
42311
|
+
(click)="onSearchItemClick(item)">
|
|
42312
|
+
@if (item.selected) {
|
|
42313
|
+
<kendo-icon-wrapper
|
|
42314
|
+
innerCssClass="k-list-item-icon"
|
|
42315
|
+
name="check"
|
|
42316
|
+
[svgIcon]="checkIcon"
|
|
42317
|
+
class="k-list-item-icon-wrapper">
|
|
42318
|
+
</kendo-icon-wrapper>
|
|
42319
|
+
}
|
|
42320
|
+
@if (item.text) {
|
|
42321
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42322
|
+
}
|
|
42323
|
+
@if (item.description) {
|
|
42324
|
+
<span class="k-list-item-description">{{item.description}}</span>
|
|
42325
|
+
}
|
|
42326
|
+
</li>
|
|
42327
|
+
}
|
|
42328
|
+
} @else if (selectedView === 'aiAssistant' && aiAssistantMode.promptSuggestions.length > 0) {
|
|
42329
|
+
<li class="k-list-group-item">
|
|
42330
|
+
<kendo-icon-wrapper
|
|
42331
|
+
innerCssClass="k-list-item-icon"
|
|
42332
|
+
name="lightbulb-outline"
|
|
42333
|
+
[svgIcon]="lightbulbOutlineIcon"
|
|
42334
|
+
class="k-list-item-icon-wrapper">
|
|
42335
|
+
</kendo-icon-wrapper>
|
|
42336
|
+
<span class="k-list-item-text">{{messageFor('smartBoxSuggestedPrompts')}}</span>
|
|
42337
|
+
</li>
|
|
42338
|
+
|
|
42339
|
+
@for (suggestion of aiAssistantMode.promptSuggestions; track $index) {
|
|
42340
|
+
@if (promptSuggestionTemplate?.templateRef) {
|
|
42341
|
+
<ng-template
|
|
42342
|
+
[templateContext]="{ templateRef: promptSuggestionTemplate?.templateRef, $implicit: suggestion }"
|
|
42343
|
+
></ng-template>
|
|
42344
|
+
} @else {
|
|
42345
|
+
<li class="k-list-item"
|
|
42346
|
+
(click)="onListItemClick(suggestion)"
|
|
42347
|
+
[attr.title]="suggestion">
|
|
42348
|
+
<span class="k-list-item-text">{{suggestion}}</span>
|
|
42349
|
+
</li>
|
|
42350
|
+
}
|
|
42351
|
+
}
|
|
42352
|
+
}
|
|
42353
|
+
</ul>
|
|
42354
|
+
|
|
42355
|
+
@if (selectedView === 'search') {
|
|
42356
|
+
@if (searchHistory.length === 0 && !semanticSearchMode?.enabled) {
|
|
42357
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42358
|
+
<kendo-icon-wrapper
|
|
42359
|
+
icon="file-report"
|
|
42360
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42361
|
+
size="xxxlarge">
|
|
42362
|
+
</kendo-icon-wrapper>
|
|
42363
|
+
<span>{{messageFor('smartBoxNoPreviousSearches')}}</span>
|
|
42364
|
+
</span>
|
|
42365
|
+
} @else if (searchHistory.length > 0) {
|
|
42366
|
+
<ul class="k-list-ul">
|
|
42367
|
+
<li class="k-list-group-item">
|
|
42368
|
+
<kendo-icon-wrapper
|
|
42369
|
+
innerCssClass="k-list-item-icon"
|
|
42370
|
+
name="clock-arrow-rotate"
|
|
42371
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42372
|
+
class="k-list-item-icon-wrapper">
|
|
42373
|
+
</kendo-icon-wrapper>
|
|
42374
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslySearched')}}</span>
|
|
42375
|
+
</li>
|
|
42376
|
+
|
|
42377
|
+
@for (item of searchHistory; track $index) {
|
|
42378
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42379
|
+
<ng-template
|
|
42380
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42381
|
+
></ng-template>
|
|
42382
|
+
} @else {
|
|
42383
|
+
<li class="k-list-item"
|
|
42384
|
+
(click)="onListItemClick(item.text)"
|
|
42385
|
+
[attr.title]="item.text">
|
|
42386
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42387
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, searchHistorySettings?.timestampFormat)}}</span>
|
|
42388
|
+
</li>
|
|
42389
|
+
}
|
|
42390
|
+
}
|
|
42391
|
+
</ul>
|
|
42392
|
+
}
|
|
42393
|
+
} @else if (selectedView === 'semanticSearch') {
|
|
42394
|
+
@if (semanticSearchHistory.length === 0 && !searchMode?.enabled) {
|
|
42395
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42396
|
+
<kendo-icon-wrapper
|
|
42397
|
+
icon="file-report"
|
|
42398
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42399
|
+
size="xxxlarge">
|
|
42400
|
+
</kendo-icon-wrapper>
|
|
42401
|
+
<span>{{messageFor('smartBoxNoPreviousSearches')}}</span>
|
|
42402
|
+
</span>
|
|
42403
|
+
} @else if (semanticSearchHistory.length > 0) {
|
|
42404
|
+
<ul class="k-list-ul">
|
|
42405
|
+
<li class="k-list-group-item">
|
|
42406
|
+
<kendo-icon-wrapper
|
|
42407
|
+
innerCssClass="k-list-item-icon"
|
|
42408
|
+
name="clock-arrow-rotate"
|
|
42409
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42410
|
+
class="k-list-item-icon-wrapper">
|
|
42411
|
+
</kendo-icon-wrapper>
|
|
42412
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslySearched')}}</span>
|
|
42413
|
+
</li>
|
|
42414
|
+
|
|
42415
|
+
@for (item of semanticSearchHistory; track $index) {
|
|
42416
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42417
|
+
<ng-template
|
|
42418
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42419
|
+
></ng-template>
|
|
42420
|
+
} @else {
|
|
42421
|
+
<li class="k-list-item"
|
|
42422
|
+
(click)="onListItemClick(item.text)"
|
|
42423
|
+
[attr.title]="item.text">
|
|
42424
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42425
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, semanticSearchHistorySettings?.timestampFormat)}}</span>
|
|
42426
|
+
</li>
|
|
42427
|
+
}
|
|
42428
|
+
}
|
|
42429
|
+
</ul>
|
|
42430
|
+
}
|
|
42431
|
+
} @else if (selectedView === 'aiAssistant') {
|
|
42432
|
+
@if (aiAssistantHistory.length === 0 && aiAssistantMode?.promptSuggestions.length === 0) {
|
|
42433
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42434
|
+
<kendo-icon-wrapper
|
|
42435
|
+
icon="file-report"
|
|
42436
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42437
|
+
size="xxxlarge">
|
|
42438
|
+
</kendo-icon-wrapper>
|
|
42439
|
+
<span>{{messageFor('smartBoxNoPreviousPrompts')}}</span>
|
|
42440
|
+
</span>
|
|
42441
|
+
} @else if (aiAssistantHistory.length > 0) {
|
|
42442
|
+
<ul class="k-list-ul">
|
|
42443
|
+
<li class="k-list-group-item">
|
|
42444
|
+
<kendo-icon-wrapper
|
|
42445
|
+
innerCssClass="k-list-item-icon"
|
|
42446
|
+
name="clock-arrow-rotate"
|
|
42447
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42448
|
+
class="k-list-item-icon-wrapper">
|
|
42449
|
+
</kendo-icon-wrapper>
|
|
42450
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslyAsked')}}</span>
|
|
42451
|
+
</li>
|
|
42452
|
+
|
|
42453
|
+
@for (item of aiAssistantHistory; track $index) {
|
|
42454
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42455
|
+
<ng-template
|
|
42456
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42457
|
+
></ng-template>
|
|
42458
|
+
} @else {
|
|
42459
|
+
<li class="k-list-item"
|
|
42460
|
+
(click)="onListItemClick(item.text)"
|
|
42461
|
+
[attr.title]="item.text">
|
|
42462
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42463
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, aiAssistantHistorySettings?.timestampFormat)}}</span>
|
|
42464
|
+
</li>
|
|
42465
|
+
}
|
|
42466
|
+
}
|
|
42467
|
+
</ul>
|
|
42468
|
+
}
|
|
42469
|
+
}
|
|
42470
|
+
</div>
|
|
42471
|
+
</div>
|
|
42472
|
+
</ng-template>
|
|
42473
|
+
`
|
|
42474
|
+
}]
|
|
42475
|
+
}], ctorParameters: () => [{ type: i2.PopupService }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i1$4.IntlService }, { type: ContextService }, { type: GridAIRequestResponseService }, { type: i1$8.HttpClient }, { type: i0.Renderer2 }, { type: ColumnInfoService }, { type: SearchService }], propDecorators: { popupTemplate: [{
|
|
42476
|
+
type: ViewChild,
|
|
42477
|
+
args: ['popupTemplate']
|
|
42478
|
+
}], input: [{
|
|
42479
|
+
type: ViewChild,
|
|
42480
|
+
args: ['input']
|
|
42481
|
+
}], innerWrapper: [{
|
|
42482
|
+
type: ViewChild,
|
|
42483
|
+
args: ['innerWrapper']
|
|
42484
|
+
}], searchMode: [{
|
|
42485
|
+
type: Input
|
|
42486
|
+
}], semanticSearchMode: [{
|
|
42487
|
+
type: Input
|
|
42488
|
+
}], aiAssistantMode: [{
|
|
42489
|
+
type: Input
|
|
42490
|
+
}], activeMode: [{
|
|
42491
|
+
type: Input
|
|
42492
|
+
}], history: [{
|
|
42493
|
+
type: Input
|
|
42494
|
+
}], placeholder: [{
|
|
42495
|
+
type: Input
|
|
42496
|
+
}], size: [{
|
|
42497
|
+
type: Input
|
|
42498
|
+
}], promptSuggestionTemplate: [{
|
|
42499
|
+
type: Input
|
|
42500
|
+
}], historyItemTemplate: [{
|
|
42501
|
+
type: Input
|
|
42502
|
+
}], loading: [{
|
|
42503
|
+
type: Input
|
|
42504
|
+
}], open: [{
|
|
42505
|
+
type: Output
|
|
42506
|
+
}], close: [{
|
|
42507
|
+
type: Output
|
|
42508
|
+
}], focus: [{
|
|
42509
|
+
type: Output
|
|
42510
|
+
}], blur: [{
|
|
42511
|
+
type: Output
|
|
42512
|
+
}], aiAssistantPromptRequest: [{
|
|
42513
|
+
type: Output
|
|
42514
|
+
}], aiAssistantResponseSuccess: [{
|
|
42515
|
+
type: Output
|
|
42516
|
+
}], aiAssistantResponseError: [{
|
|
42517
|
+
type: Output
|
|
42518
|
+
}], aiAssistantCancelRequest: [{
|
|
42519
|
+
type: Output
|
|
42520
|
+
}], search: [{
|
|
42521
|
+
type: Output
|
|
42522
|
+
}], semanticSearch: [{
|
|
42523
|
+
type: Output
|
|
42524
|
+
}], modeChange: [{
|
|
42525
|
+
type: Output
|
|
42526
|
+
}] } });
|
|
42527
|
+
|
|
42528
|
+
/**
|
|
42529
|
+
* Represents the toolbar tool for showing a smart bar.
|
|
42530
|
+
* Use this component inside a ToolbarComponent in the Grid.
|
|
42531
|
+
*
|
|
42532
|
+
* @example
|
|
42533
|
+
* ```html
|
|
42534
|
+
* <kendo-grid>
|
|
42535
|
+
* <kendo-toolbar>
|
|
42536
|
+
* <kendo-grid-smartbox-tool></kendo-grid-smartbox-tool>
|
|
42537
|
+
* </kendo-toolbar>
|
|
42538
|
+
* </kendo-grid>
|
|
42539
|
+
* ```
|
|
42540
|
+
*/
|
|
42541
|
+
class SmartBoxToolbarToolComponent extends ToolBarToolComponent {
|
|
42542
|
+
promptSuggestionTemplate;
|
|
42543
|
+
historyItemTemplate;
|
|
42544
|
+
/**
|
|
42545
|
+
* Controls the visibility and settings of the Search mode. By default, the mode is enabled.
|
|
42546
|
+
*
|
|
42547
|
+
* @default true
|
|
42548
|
+
*/
|
|
42549
|
+
searchMode = true;
|
|
42550
|
+
/**
|
|
42551
|
+
* Controls the visibility and settings of the Semantic Search mode. By default, the mode is disabled.
|
|
42552
|
+
*
|
|
42553
|
+
* @default false
|
|
42554
|
+
*/
|
|
42555
|
+
semanticSearchMode = false;
|
|
42556
|
+
/**
|
|
42557
|
+
* Controls the visibility and settings of the AI Assistant mode. By default, the mode is disabled.
|
|
42558
|
+
*
|
|
42559
|
+
* @default false
|
|
42560
|
+
*/
|
|
42561
|
+
aiAssistantMode = false;
|
|
42562
|
+
/**
|
|
42563
|
+
* Sets the initially active mode of the tool.
|
|
42564
|
+
*
|
|
42565
|
+
* @default 'search'
|
|
42566
|
+
*/
|
|
42567
|
+
activeMode = 'search';
|
|
42568
|
+
/**
|
|
42569
|
+
* Controls the visibility and settings of the history for each mode.
|
|
42570
|
+
*/
|
|
42571
|
+
history;
|
|
42572
|
+
/**
|
|
42573
|
+
* Sets the placeholder of the input element in the SmartBox and applies to all modes.
|
|
42574
|
+
*/
|
|
42575
|
+
placeholder;
|
|
42576
|
+
/**
|
|
42577
|
+
* Specifies the padding of the input.
|
|
42578
|
+
*
|
|
42579
|
+
* @default 'medium'
|
|
42580
|
+
*/
|
|
42581
|
+
size;
|
|
42582
|
+
/**
|
|
42583
|
+
* Emits when the SmartBox tool opens.
|
|
42584
|
+
*/
|
|
42585
|
+
open = new EventEmitter();
|
|
42586
|
+
/**
|
|
42587
|
+
* Emits when the SmartBox tool closes.
|
|
42588
|
+
*/
|
|
42589
|
+
close = new EventEmitter();
|
|
42590
|
+
/**
|
|
42591
|
+
* Emits when the SmartBox tool input is focused.
|
|
42592
|
+
*/
|
|
42593
|
+
inputFocus = new EventEmitter();
|
|
42594
|
+
/**
|
|
42595
|
+
* Emits when the SmartBox tool input is blurred.
|
|
42596
|
+
*/
|
|
42597
|
+
inputBlur = new EventEmitter();
|
|
42598
|
+
/**
|
|
42599
|
+
* Emits before the SmartBox tool sends the AI request.
|
|
42600
|
+
* - When you provide a `requestUrl`, you can handle the event to modify the request options.
|
|
42601
|
+
* - When you do not provide a `requestUrl`, you can handle the event to perform an entirely custom request.
|
|
42602
|
+
*/
|
|
42603
|
+
aiAssistantPromptRequest = new EventEmitter();
|
|
42604
|
+
/**
|
|
42605
|
+
* Emits when the SmartBox tool completes the AI request successfully.
|
|
42606
|
+
* The event contains the response from the AI service and is preventable to allow stopping the default response handling.
|
|
42607
|
+
*/
|
|
42608
|
+
aiAssistantResponseSuccess = new EventEmitter();
|
|
42609
|
+
/**
|
|
42610
|
+
* Emits when the SmartBox tool completes the AI request with an error.
|
|
42611
|
+
* The event contains the error response from the AI service and is preventable to allow stopping the default error handling.
|
|
42612
|
+
*/
|
|
42613
|
+
aiAssistantResponseError = new EventEmitter();
|
|
42614
|
+
/**
|
|
42615
|
+
* Emits when the user clicks the Cancel button.
|
|
42616
|
+
*/
|
|
42617
|
+
aiAssistantCancelRequest = new EventEmitter();
|
|
42618
|
+
/**
|
|
42619
|
+
* Emits when the user types in Search mode. The event contains the search query and the filter descriptors created based on the query.
|
|
42620
|
+
*/
|
|
42621
|
+
search = new EventEmitter();
|
|
42622
|
+
/**
|
|
42623
|
+
* Emits when the user types in Semantic Search mode. The event contains the search query and the filter descriptors created based on the query.
|
|
42624
|
+
*/
|
|
42625
|
+
semanticSearch = new EventEmitter();
|
|
42626
|
+
/**
|
|
42627
|
+
* Emits when the mode of the SmartBox tool changes. The event contains the new mode.
|
|
42628
|
+
*/
|
|
42629
|
+
modeChange = new EventEmitter();
|
|
42630
|
+
/**
|
|
42631
|
+
* Indicates whether the SmartBox tool is in a loading state. Use this to show a loading indicator in the UI.
|
|
42632
|
+
*/
|
|
42633
|
+
loading = false;
|
|
42634
|
+
constructor() { super(); }
|
|
42635
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SmartBoxToolbarToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
42636
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.18", type: SmartBoxToolbarToolComponent, isStandalone: true, selector: "kendo-grid-smartbox-tool", inputs: { searchMode: "searchMode", semanticSearchMode: "semanticSearchMode", aiAssistantMode: "aiAssistantMode", activeMode: "activeMode", history: "history", placeholder: "placeholder", size: "size" }, outputs: { open: "open", close: "close", inputFocus: "inputFocus", inputBlur: "inputBlur", aiAssistantPromptRequest: "aiAssistantPromptRequest", aiAssistantResponseSuccess: "aiAssistantResponseSuccess", aiAssistantResponseError: "aiAssistantResponseError", aiAssistantCancelRequest: "aiAssistantCancelRequest", search: "search", semanticSearch: "semanticSearch", modeChange: "modeChange" }, providers: [
|
|
42637
|
+
{
|
|
42638
|
+
provide: ToolBarToolComponent,
|
|
42639
|
+
useExisting: forwardRef(() => SmartBoxToolbarToolComponent)
|
|
42640
|
+
}
|
|
42641
|
+
], queries: [{ propertyName: "promptSuggestionTemplate", first: true, predicate: GridSmartBoxPromptSuggestionTemplateDirective, descendants: true }, { propertyName: "historyItemTemplate", first: true, predicate: GridSmartBoxHistoryItemTemplateDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
42642
|
+
<ng-template #toolbarTemplate #sectionTemplate #popupTemplate>
|
|
42643
|
+
<kendo-smartbox
|
|
42644
|
+
[searchMode]="searchMode"
|
|
42645
|
+
[semanticSearchMode]="semanticSearchMode"
|
|
42646
|
+
[aiAssistantMode]="aiAssistantMode"
|
|
42647
|
+
[activeMode]="activeMode"
|
|
42648
|
+
[history]="history"
|
|
42649
|
+
[placeholder]="placeholder"
|
|
42650
|
+
[size]="size"
|
|
42651
|
+
(open)="open.emit($event)"
|
|
42652
|
+
(close)="close.emit($event)"
|
|
42653
|
+
(focus)="inputFocus.emit($event)"
|
|
42654
|
+
(blur)="inputBlur.emit($event)"
|
|
42655
|
+
(search)="search.emit($event)"
|
|
42656
|
+
(semanticSearch)="semanticSearch.emit($event)"
|
|
42657
|
+
(aiAssistantPromptRequest)="aiAssistantPromptRequest.emit($event)"
|
|
42658
|
+
(aiAssistantResponseSuccess)="aiAssistantResponseSuccess.emit($event)"
|
|
42659
|
+
(aiAssistantResponseError)="aiAssistantResponseError.emit($event)"
|
|
42660
|
+
(aiAssistantCancelRequest)="aiAssistantCancelRequest.emit()"
|
|
42661
|
+
(modeChange)="modeChange.emit($event)"
|
|
42662
|
+
[promptSuggestionTemplate]="promptSuggestionTemplate"
|
|
42663
|
+
[historyItemTemplate]="historyItemTemplate"
|
|
42664
|
+
[loading]="loading"
|
|
42665
|
+
>
|
|
42666
|
+
</kendo-smartbox>
|
|
42667
|
+
</ng-template>
|
|
42668
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SmartBoxComponent, selector: "kendo-smartbox", inputs: ["searchMode", "semanticSearchMode", "aiAssistantMode", "activeMode", "history", "placeholder", "size", "promptSuggestionTemplate", "historyItemTemplate", "loading"], outputs: ["open", "close", "focus", "blur", "aiAssistantPromptRequest", "aiAssistantResponseSuccess", "aiAssistantResponseError", "aiAssistantCancelRequest", "search", "semanticSearch", "modeChange"] }] });
|
|
42669
|
+
}
|
|
42670
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SmartBoxToolbarToolComponent, decorators: [{
|
|
42671
|
+
type: Component,
|
|
42672
|
+
args: [{
|
|
42673
|
+
providers: [
|
|
42674
|
+
{
|
|
42675
|
+
provide: ToolBarToolComponent,
|
|
42676
|
+
useExisting: forwardRef(() => SmartBoxToolbarToolComponent)
|
|
42677
|
+
}
|
|
42678
|
+
],
|
|
42679
|
+
selector: 'kendo-grid-smartbox-tool',
|
|
42680
|
+
template: `
|
|
42681
|
+
<ng-template #toolbarTemplate #sectionTemplate #popupTemplate>
|
|
42682
|
+
<kendo-smartbox
|
|
42683
|
+
[searchMode]="searchMode"
|
|
42684
|
+
[semanticSearchMode]="semanticSearchMode"
|
|
42685
|
+
[aiAssistantMode]="aiAssistantMode"
|
|
42686
|
+
[activeMode]="activeMode"
|
|
42687
|
+
[history]="history"
|
|
42688
|
+
[placeholder]="placeholder"
|
|
42689
|
+
[size]="size"
|
|
42690
|
+
(open)="open.emit($event)"
|
|
42691
|
+
(close)="close.emit($event)"
|
|
42692
|
+
(focus)="inputFocus.emit($event)"
|
|
42693
|
+
(blur)="inputBlur.emit($event)"
|
|
42694
|
+
(search)="search.emit($event)"
|
|
42695
|
+
(semanticSearch)="semanticSearch.emit($event)"
|
|
42696
|
+
(aiAssistantPromptRequest)="aiAssistantPromptRequest.emit($event)"
|
|
42697
|
+
(aiAssistantResponseSuccess)="aiAssistantResponseSuccess.emit($event)"
|
|
42698
|
+
(aiAssistantResponseError)="aiAssistantResponseError.emit($event)"
|
|
42699
|
+
(aiAssistantCancelRequest)="aiAssistantCancelRequest.emit()"
|
|
42700
|
+
(modeChange)="modeChange.emit($event)"
|
|
42701
|
+
[promptSuggestionTemplate]="promptSuggestionTemplate"
|
|
42702
|
+
[historyItemTemplate]="historyItemTemplate"
|
|
42703
|
+
[loading]="loading"
|
|
42704
|
+
>
|
|
42705
|
+
</kendo-smartbox>
|
|
42706
|
+
</ng-template>
|
|
42707
|
+
`,
|
|
42708
|
+
standalone: true,
|
|
42709
|
+
imports: [SmartBoxComponent]
|
|
42710
|
+
}]
|
|
42711
|
+
}], ctorParameters: () => [], propDecorators: { promptSuggestionTemplate: [{
|
|
42712
|
+
type: ContentChild,
|
|
42713
|
+
args: [GridSmartBoxPromptSuggestionTemplateDirective]
|
|
42714
|
+
}], historyItemTemplate: [{
|
|
42715
|
+
type: ContentChild,
|
|
42716
|
+
args: [GridSmartBoxHistoryItemTemplateDirective]
|
|
42717
|
+
}], searchMode: [{
|
|
42718
|
+
type: Input
|
|
42719
|
+
}], semanticSearchMode: [{
|
|
42720
|
+
type: Input
|
|
42721
|
+
}], aiAssistantMode: [{
|
|
42722
|
+
type: Input
|
|
42723
|
+
}], activeMode: [{
|
|
42724
|
+
type: Input
|
|
42725
|
+
}], history: [{
|
|
42726
|
+
type: Input
|
|
42727
|
+
}], placeholder: [{
|
|
42728
|
+
type: Input
|
|
42729
|
+
}], size: [{
|
|
42730
|
+
type: Input
|
|
42731
|
+
}], open: [{
|
|
42732
|
+
type: Output
|
|
42733
|
+
}], close: [{
|
|
42734
|
+
type: Output
|
|
42735
|
+
}], inputFocus: [{
|
|
42736
|
+
type: Output
|
|
42737
|
+
}], inputBlur: [{
|
|
42738
|
+
type: Output
|
|
42739
|
+
}], aiAssistantPromptRequest: [{
|
|
42740
|
+
type: Output
|
|
42741
|
+
}], aiAssistantResponseSuccess: [{
|
|
42742
|
+
type: Output
|
|
42743
|
+
}], aiAssistantResponseError: [{
|
|
42744
|
+
type: Output
|
|
42745
|
+
}], aiAssistantCancelRequest: [{
|
|
42746
|
+
type: Output
|
|
42747
|
+
}], search: [{
|
|
42748
|
+
type: Output
|
|
42749
|
+
}], semanticSearch: [{
|
|
42750
|
+
type: Output
|
|
42751
|
+
}], modeChange: [{
|
|
42752
|
+
type: Output
|
|
42753
|
+
}] } });
|
|
42754
|
+
|
|
40467
42755
|
// DRAGGABLE COLUMN
|
|
40468
42756
|
/**
|
|
40469
42757
|
* @hidden
|
|
@@ -40694,7 +42982,10 @@ const KENDO_GRID_BODY_EXPORTS = [
|
|
|
40694
42982
|
FilterCommandToolbarDirective,
|
|
40695
42983
|
AIAssistantToolbarDirective,
|
|
40696
42984
|
GroupCommandToolbarDirective,
|
|
40697
|
-
SelectAllToolbarToolComponent
|
|
42985
|
+
SelectAllToolbarToolComponent,
|
|
42986
|
+
SmartBoxToolbarToolComponent,
|
|
42987
|
+
GridSmartBoxHistoryItemTemplateDirective,
|
|
42988
|
+
GridSmartBoxPromptSuggestionTemplateDirective
|
|
40698
42989
|
];
|
|
40699
42990
|
/**
|
|
40700
42991
|
* @hidden
|
|
@@ -40845,9 +43136,9 @@ const KENDO_GRID = [
|
|
|
40845
43136
|
*/
|
|
40846
43137
|
class GridModule {
|
|
40847
43138
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
40848
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: GridModule, imports: [GroupHeaderTemplateDirective, GroupHeaderColumnTemplateDirective, GroupFooterTemplateDirective, GroupHeaderComponent, GroupPanelComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, CommandColumnComponent, CheckboxColumnComponent, SelectionCheckboxDirective, CellTemplateDirective, EditTemplateDirective, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, TableBodyComponent, NoRecordsTemplateDirective, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, AddCommandToolbarDirective, EditCommandToolbarDirective, SaveCommandToolbarDirective, RemoveCommandToolbarDirective, CancelCommandToolbarDirective, CellLoadingTemplateDirective, LoadingTemplateDirective, RowReorderColumnComponent, SortCommandToolbarDirective, FilterCommandToolbarDirective, AIAssistantToolbarDirective, GroupCommandToolbarDirective, SelectAllToolbarToolComponent, HeaderComponent, HeaderTemplateDirective, ColumnHandleDirective, SelectAllCheckboxDirective, FooterComponent,
|
|
43139
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.18", ngImport: i0, type: GridModule, imports: [GroupHeaderTemplateDirective, GroupHeaderColumnTemplateDirective, GroupFooterTemplateDirective, GroupHeaderComponent, GroupPanelComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, CommandColumnComponent, CheckboxColumnComponent, SelectionCheckboxDirective, CellTemplateDirective, EditTemplateDirective, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, TableBodyComponent, NoRecordsTemplateDirective, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, AddCommandToolbarDirective, EditCommandToolbarDirective, SaveCommandToolbarDirective, RemoveCommandToolbarDirective, CancelCommandToolbarDirective, CellLoadingTemplateDirective, LoadingTemplateDirective, RowReorderColumnComponent, SortCommandToolbarDirective, FilterCommandToolbarDirective, AIAssistantToolbarDirective, GroupCommandToolbarDirective, SelectAllToolbarToolComponent, SmartBoxToolbarToolComponent, GridSmartBoxHistoryItemTemplateDirective, GridSmartBoxPromptSuggestionTemplateDirective, HeaderComponent, HeaderTemplateDirective, ColumnHandleDirective, SelectAllCheckboxDirective, FooterComponent, i56.CustomMessagesComponent, i56.PagerFocusableDirective, i56.PagerInfoComponent, i56.PagerInputComponent, i56.PagerNextButtonsComponent, i56.PagerNumericButtonsComponent, i56.PagerPageSizesComponent, i56.PagerPrevButtonsComponent, i56.PagerTemplateDirective, i56.PagerComponent, i56.PagerSpacerComponent, i57.ToolBarComponent, i57.ToolbarCustomMessagesComponent, i57.ToolBarButtonComponent, i57.ToolBarButtonGroupComponent, i57.ToolBarDropDownButtonComponent, i57.ToolBarSeparatorComponent, i57.ToolBarSpacerComponent, i57.ToolBarSplitButtonComponent, i57.ToolBarToolComponent, FilterRowComponent, FilterCellComponent, FilterCellTemplateDirective, StringFilterCellComponent, NumericFilterCellComponent, AutoCompleteFilterCellComponent, BooleanFilterCellComponent, FilterCellHostDirective, FilterCellWrapperComponent, DateFilterCellComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterInputDirective, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterInputDirective, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuInputWrapperComponent, StringFilterMenuInputComponent, StringFilterMenuComponent, FilterMenuTemplateDirective, NumericFilterMenuComponent, NumericFilterMenuInputComponent, DateFilterMenuInputComponent, DateFilterMenuComponent, FilterMenuHostDirective, BooleanFilterMenuComponent, FilterMenuDropDownListDirective, BooleanFilterRadioButtonDirective, ColumnListComponent, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnMenuChooserComponent, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuSortComponent, ColumnMenuComponent, ColumnMenuLockComponent, ColumnMenuTemplateDirective, ColumnMenuContainerComponent, ColumnMenuItemDirective, ColumnMenuStickComponent, ColumnMenuPositionComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuAutoSizeAllColumnsComponent, GridComponent, ListComponent, ToolbarComponent, LocalizedMessagesDirective, CustomMessagesComponent, DataBindingDirective, ToolbarTemplateDirective, SelectionDirective, HighlightDirective, TemplateEditingDirective, ReactiveEditingDirective, InCellEditingDirective, ExternalEditingDirective, ExpandDetailsDirective, ExpandGroupDirective, GridMarqueeDirective, GridSpacerComponent, GridToolbarFocusableDirective, StatusBarComponent, StatusBarTemplateDirective, GridClipboardDirective, FormComponent, DialogFormComponent, FormFormFieldComponent, UndoRedoDirective, i57.ToolBarComponent, i57.ToolbarCustomMessagesComponent, i57.ToolBarButtonComponent, i57.ToolBarButtonGroupComponent, i57.ToolBarDropDownButtonComponent, i57.ToolBarSeparatorComponent, i57.ToolBarSpacerComponent, i57.ToolBarSplitButtonComponent, i57.ToolBarToolComponent, TableDirective,
|
|
40849
43140
|
UndoCommandToolbarDirective,
|
|
40850
|
-
RedoCommandToolbarDirective], exports: [GridComponent, ToolbarTemplateDirective, ToolbarComponent, GridSpacerComponent, StatusBarTemplateDirective, DataBindingDirective, SelectionDirective, HighlightDirective, CustomMessagesComponent, TemplateEditingDirective, ReactiveEditingDirective, InCellEditingDirective, ExternalEditingDirective, ExpandDetailsDirective, ExpandGroupDirective, GridToolbarFocusableDirective, GroupHeaderTemplateDirective, GroupHeaderColumnTemplateDirective, GroupFooterTemplateDirective, GroupHeaderComponent, GroupPanelComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, CommandColumnComponent, CheckboxColumnComponent, SelectionCheckboxDirective, CellTemplateDirective, EditTemplateDirective, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, TableBodyComponent, NoRecordsTemplateDirective, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, AddCommandToolbarDirective, EditCommandToolbarDirective, SaveCommandToolbarDirective, RemoveCommandToolbarDirective, CancelCommandToolbarDirective, CellLoadingTemplateDirective, LoadingTemplateDirective, RowReorderColumnComponent, SortCommandToolbarDirective, FilterCommandToolbarDirective, AIAssistantToolbarDirective, GroupCommandToolbarDirective, SelectAllToolbarToolComponent, HeaderComponent, HeaderTemplateDirective, ColumnHandleDirective, SelectAllCheckboxDirective, FilterRowComponent, FilterCellComponent, FilterCellTemplateDirective, StringFilterCellComponent, NumericFilterCellComponent, AutoCompleteFilterCellComponent, BooleanFilterCellComponent, FilterCellHostDirective, FilterCellWrapperComponent, DateFilterCellComponent, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuInputWrapperComponent, StringFilterMenuInputComponent, StringFilterMenuComponent, FilterMenuTemplateDirective, NumericFilterMenuComponent, NumericFilterMenuInputComponent, DateFilterMenuInputComponent, DateFilterMenuComponent, FilterMenuHostDirective, BooleanFilterMenuComponent, FilterMenuDropDownListDirective, BooleanFilterRadioButtonDirective, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuSortComponent, ColumnMenuLockComponent, ColumnMenuStickComponent, ColumnMenuPositionComponent, ColumnMenuChooserComponent, ColumnMenuTemplateDirective, ColumnMenuContainerComponent, ColumnMenuItemDirective, ColumnMenuComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuAutoSizeAllColumnsComponent, GridClipboardDirective, UndoRedoDirective, UndoCommandToolbarDirective, RedoCommandToolbarDirective,
|
|
43141
|
+
RedoCommandToolbarDirective], exports: [GridComponent, ToolbarTemplateDirective, ToolbarComponent, GridSpacerComponent, StatusBarTemplateDirective, DataBindingDirective, SelectionDirective, HighlightDirective, CustomMessagesComponent, TemplateEditingDirective, ReactiveEditingDirective, InCellEditingDirective, ExternalEditingDirective, ExpandDetailsDirective, ExpandGroupDirective, GridToolbarFocusableDirective, GroupHeaderTemplateDirective, GroupHeaderColumnTemplateDirective, GroupFooterTemplateDirective, GroupHeaderComponent, GroupPanelComponent, ColumnComponent, ColumnGroupComponent, LogicalCellDirective, LogicalRowDirective, FocusableDirective, FooterTemplateDirective, ColGroupComponent, ResizableContainerDirective, i1$3.TemplateContextDirective, FieldAccessorPipe, DetailTemplateDirective, SpanColumnComponent, LoadingComponent, GridTableDirective, CommandColumnComponent, CheckboxColumnComponent, SelectionCheckboxDirective, CellTemplateDirective, EditTemplateDirective, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, TableBodyComponent, NoRecordsTemplateDirective, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, AddCommandToolbarDirective, EditCommandToolbarDirective, SaveCommandToolbarDirective, RemoveCommandToolbarDirective, CancelCommandToolbarDirective, CellLoadingTemplateDirective, LoadingTemplateDirective, RowReorderColumnComponent, SortCommandToolbarDirective, FilterCommandToolbarDirective, AIAssistantToolbarDirective, GroupCommandToolbarDirective, SelectAllToolbarToolComponent, SmartBoxToolbarToolComponent, GridSmartBoxHistoryItemTemplateDirective, GridSmartBoxPromptSuggestionTemplateDirective, HeaderComponent, HeaderTemplateDirective, ColumnHandleDirective, SelectAllCheckboxDirective, FilterRowComponent, FilterCellComponent, FilterCellTemplateDirective, StringFilterCellComponent, NumericFilterCellComponent, AutoCompleteFilterCellComponent, BooleanFilterCellComponent, FilterCellHostDirective, FilterCellWrapperComponent, DateFilterCellComponent, FilterCellOperatorsComponent, ContainsFilterOperatorComponent, DoesNotContainFilterOperatorComponent, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, NotEqualFilterOperatorComponent, StartsWithFilterOperatorComponent, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, AfterFilterOperatorComponent, AfterEqFilterOperatorComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuInputWrapperComponent, StringFilterMenuInputComponent, StringFilterMenuComponent, FilterMenuTemplateDirective, NumericFilterMenuComponent, NumericFilterMenuInputComponent, DateFilterMenuInputComponent, DateFilterMenuComponent, FilterMenuHostDirective, BooleanFilterMenuComponent, FilterMenuDropDownListDirective, BooleanFilterRadioButtonDirective, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuSortComponent, ColumnMenuLockComponent, ColumnMenuStickComponent, ColumnMenuPositionComponent, ColumnMenuChooserComponent, ColumnMenuTemplateDirective, ColumnMenuContainerComponent, ColumnMenuItemDirective, ColumnMenuComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuAutoSizeAllColumnsComponent, GridClipboardDirective, UndoRedoDirective, UndoCommandToolbarDirective, RedoCommandToolbarDirective, i57.ToolBarComponent, i57.ToolbarCustomMessagesComponent, i57.ToolBarButtonComponent, i57.ToolBarButtonGroupComponent, i57.ToolBarDropDownButtonComponent, i57.ToolBarSeparatorComponent, i57.ToolBarSpacerComponent, i57.ToolBarSplitButtonComponent, i57.ToolBarToolComponent, i56.CustomMessagesComponent, i56.PagerFocusableDirective, i56.PagerInfoComponent, i56.PagerInputComponent, i56.PagerNextButtonsComponent, i56.PagerNumericButtonsComponent, i56.PagerPageSizesComponent, i56.PagerPrevButtonsComponent, i56.PagerTemplateDirective, i56.PagerComponent, i56.PagerSpacerComponent] });
|
|
40851
43142
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridModule, providers: [
|
|
40852
43143
|
PopupService,
|
|
40853
43144
|
ResizeBatchService,
|
|
@@ -40861,8 +43152,8 @@ class GridModule {
|
|
|
40861
43152
|
DecadeViewService,
|
|
40862
43153
|
MonthViewService,
|
|
40863
43154
|
YearViewService,
|
|
40864
|
-
NavigationService$
|
|
40865
|
-
], imports: [GroupHeaderComponent, GroupPanelComponent, TableBodyComponent, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, SelectAllToolbarToolComponent, HeaderComponent,
|
|
43155
|
+
NavigationService$2
|
|
43156
|
+
], imports: [GroupHeaderComponent, GroupPanelComponent, TableBodyComponent, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, SelectAllToolbarToolComponent, SmartBoxToolbarToolComponent, HeaderComponent, i56.CustomMessagesComponent, i56.PagerInfoComponent, i56.PagerInputComponent, i56.PagerNextButtonsComponent, i56.PagerNumericButtonsComponent, i56.PagerPageSizesComponent, i56.PagerPrevButtonsComponent, i56.PagerComponent, i56.PagerSpacerComponent, i57.ToolBarComponent, i57.ToolbarCustomMessagesComponent, i57.ToolBarButtonComponent, i57.ToolBarButtonGroupComponent, i57.ToolBarDropDownButtonComponent, i57.ToolBarSeparatorComponent, i57.ToolBarSpacerComponent, i57.ToolBarSplitButtonComponent, StringFilterCellComponent, NumericFilterCellComponent, AutoCompleteFilterCellComponent, BooleanFilterCellComponent, FilterCellWrapperComponent, DateFilterCellComponent, FilterCellOperatorsComponent, FilterCellOperatorsComponent, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuInputWrapperComponent, StringFilterMenuInputComponent, StringFilterMenuComponent, NumericFilterMenuComponent, NumericFilterMenuInputComponent, DateFilterMenuInputComponent, DateFilterMenuComponent, BooleanFilterMenuComponent, ColumnListComponent, ColumnChooserComponent, ColumnMenuChooserComponent, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuSortComponent, ColumnMenuComponent, ColumnMenuLockComponent, ColumnMenuStickComponent, ColumnMenuPositionComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuAutoSizeAllColumnsComponent, GridComponent, ListComponent, FormComponent, DialogFormComponent, FormFormFieldComponent, i57.ToolBarComponent, i57.ToolbarCustomMessagesComponent, i57.ToolBarButtonComponent, i57.ToolBarButtonGroupComponent, i57.ToolBarDropDownButtonComponent, i57.ToolBarSeparatorComponent, i57.ToolBarSpacerComponent, i57.ToolBarSplitButtonComponent] });
|
|
40866
43157
|
}
|
|
40867
43158
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridModule, decorators: [{
|
|
40868
43159
|
type: NgModule,
|
|
@@ -40898,7 +43189,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
40898
43189
|
DecadeViewService,
|
|
40899
43190
|
MonthViewService,
|
|
40900
43191
|
YearViewService,
|
|
40901
|
-
NavigationService$
|
|
43192
|
+
NavigationService$2
|
|
40902
43193
|
]
|
|
40903
43194
|
}]
|
|
40904
43195
|
}] });
|
|
@@ -41007,5 +43298,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
41007
43298
|
* Generated bundle index. Do not edit.
|
|
41008
43299
|
*/
|
|
41009
43300
|
|
|
41010
|
-
export { AIAssistantToolbarDirective, AdaptiveGridService, AddCommandDirective, AddCommandToolbarDirective, AfterEqFilterOperatorComponent, AfterFilterOperatorComponent, AutoCompleteFilterCellComponent, BaseFilterCellComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, BooleanFilterCellComponent, BooleanFilterComponent, BooleanFilterMenuComponent, BooleanFilterRadioButtonDirective, BrowserSupportService, CELL_CONTEXT, CSVCommandDirective, CSVCommandToolbarDirective, CSVComponent, CSVExportEvent, CSVModule, CSVService, CancelCommandDirective, CancelCommandToolbarDirective, CellCloseEvent, CellComponent, CellLoadingTemplateDirective, CellSelectionAggregateService, CellSelectionService, CellTemplateDirective, ChangeNotificationService, CheckboxColumnComponent, ColGroupComponent, ColumnBase, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnComponent, ColumnGroupComponent, ColumnHandleDirective, ColumnInfoService, ColumnListComponent, ColumnLockedChangeEvent, ColumnMenuAutoSizeAllColumnsComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuChooserComponent, ColumnMenuComponent, ColumnMenuContainerComponent, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuItemDirective, ColumnMenuLockComponent, ColumnMenuPositionComponent, ColumnMenuService, ColumnMenuSortComponent, ColumnMenuStickComponent, ColumnMenuTemplateDirective, ColumnReorderEvent, ColumnReorderService, ColumnResizingService, ColumnStickyChangeEvent, ColumnVisibilityChangeEvent, ColumnsContainer, CommandColumnComponent, ContainsFilterOperatorComponent, ContextService, CustomMessagesComponent, DEFAULT_AI_REQUEST_OPTIONS, DEFAULT_SCROLLER_FACTORY, DataBindingDirective, DateFilterCellComponent, DateFilterComponent, DateFilterMenuComponent, DateFilterMenuInputComponent, DetailCollapseEvent, DetailExpandEvent, DetailTemplateDirective, DetailsService, DoesNotContainFilterOperatorComponent, DomEventsService, DragAndDropService, DragHintService, DropCueService, EditCommandDirective, EditCommandToolbarDirective, EditService as EditServiceClass, EditTemplateDirective, EditingDirectiveBase, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, ExcelCommandDirective, ExcelCommandToolbarDirective, ExcelComponent, ExcelExportEvent, ExcelModule, ExcelService, ExpandDetailsDirective, ExpandGroupDirective, ExternalEditingDirective, FieldAccessorPipe, FilterCellComponent, FilterCellHostDirective, FilterCellOperatorsComponent, FilterCellTemplateDirective, FilterCellWrapperComponent, FilterCommandToolbarDirective, FilterInputDirective, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuDropDownListDirective, FilterMenuHostDirective, FilterMenuInputWrapperComponent, FilterMenuTemplateDirective, FilterOperatorBase, FilterRowComponent, FilterService, FocusRoot, FocusableDirective, FooterComponent, FooterTemplateDirective, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, GridAIAssistantResponseErrorEvent, GridAIAssistantResponseSuccessEvent, GridClipboardDirective, GridComponent, GridModule, GridSpacerComponent, GridTableDirective, GridToolbarFocusableDirective, GridToolbarNavigationService, GroupCommandToolbarDirective, GroupFooterTemplateDirective, GroupHeaderColumnTemplateDirective, GroupHeaderComponent, GroupHeaderTemplateDirective, GroupInfoService, GroupPanelComponent, GroupsService, HeaderComponent, HeaderTemplateDirective, HighlightDirective, IdService, InCellEditingDirective, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, KENDO_GRID, KENDO_GRID_BODY_EXPORTS, KENDO_GRID_COLUMN_DRAGANDDROP, KENDO_GRID_COLUMN_MENU_DECLARATIONS, KENDO_GRID_COLUMN_MENU_EXPORTS, KENDO_GRID_CSV_EXPORT, KENDO_GRID_DECLARATIONS, KENDO_GRID_EXCEL_EXPORT, KENDO_GRID_EXPORTS, KENDO_GRID_FILTER_MENU, KENDO_GRID_FILTER_MENU_EXPORTS, KENDO_GRID_FILTER_OPERATORS, KENDO_GRID_FILTER_ROW, KENDO_GRID_FILTER_ROW_EXPORTS, KENDO_GRID_FILTER_SHARED, KENDO_GRID_FOOTER_EXPORTS, KENDO_GRID_GROUP_EXPORTS, KENDO_GRID_HEADER_EXPORTS, KENDO_GRID_PDF_EXPORT, KENDO_GRID_SHARED, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, ListComponent, LoadingComponent, LoadingTemplateDirective, LocalDataChangesService, LogicalCellDirective, LogicalRowDirective, MenuTabbingService, MultiCheckboxFilterComponent, NavigationService, NoRecordsTemplateDirective, NotEqualFilterOperatorComponent, NumericFilterCellComponent, NumericFilterComponent, NumericFilterMenuComponent, NumericFilterMenuInputComponent, PDFCommandDirective, PDFCommandToolbarDirective, PDFComponent, PDFMarginComponent, PDFModule, PDFService, PDFTemplateDirective, PopupCloseEvent, ReactiveEditingDirective, RedoCommandToolbarDirective, RemoveCommandDirective, RemoveCommandToolbarDirective, ResizableContainerDirective, ResizeService, ResponsiveService, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, RowEditingDirectiveBase, RowReorderColumnComponent, RowReorderService, SaveCommandDirective, SaveCommandToolbarDirective, ScrollRequestService, ScrollSyncService, SelectAllCheckboxDirective, SelectAllToolbarToolComponent, SelectionCheckboxDirective, SelectionDirective, SelectionService, SinglePopupService, SizingOptionsService, Skip, SortCommandToolbarDirective, SortService, SpanColumnComponent, StartsWithFilterOperatorComponent, StatusBarTemplateDirective, StringFilterCellComponent, StringFilterComponent, StringFilterMenuComponent, StringFilterMenuInputComponent, SuspendService, TableBodyComponent, TableDirective, TemplateEditingDirective, ToolbarComponent, ToolbarTemplateDirective, UndoCommandToolbarDirective, UndoRedoDirective, UndoRedoEvent, defaultTrackBy, hasFilterMenu, hasFilterRow, isFilterable };
|
|
43301
|
+
export { AIAssistantToolbarDirective, AdaptiveGridService, AddCommandDirective, AddCommandToolbarDirective, AfterEqFilterOperatorComponent, AfterFilterOperatorComponent, AutoCompleteFilterCellComponent, BaseFilterCellComponent, BeforeEqFilterOperatorComponent, BeforeFilterOperatorComponent, BooleanFilterCellComponent, BooleanFilterComponent, BooleanFilterMenuComponent, BooleanFilterRadioButtonDirective, BrowserSupportService, CELL_CONTEXT, CSVCommandDirective, CSVCommandToolbarDirective, CSVComponent, CSVExportEvent, CSVModule, CSVService, CancelCommandDirective, CancelCommandToolbarDirective, CellCloseEvent, CellComponent, CellLoadingTemplateDirective, CellSelectionAggregateService, CellSelectionService, CellTemplateDirective, ChangeNotificationService, CheckboxColumnComponent, ColGroupComponent, ColumnBase, ColumnChooserComponent, ColumnChooserToolbarDirective, ColumnComponent, ColumnGroupComponent, ColumnHandleDirective, ColumnInfoService, ColumnListComponent, ColumnLockedChangeEvent, ColumnMenuAutoSizeAllColumnsComponent, ColumnMenuAutoSizeColumnComponent, ColumnMenuChooserComponent, ColumnMenuComponent, ColumnMenuContainerComponent, ColumnMenuFilterComponent, ColumnMenuItemComponent, ColumnMenuItemContentTemplateDirective, ColumnMenuItemDirective, ColumnMenuLockComponent, ColumnMenuPositionComponent, ColumnMenuService, ColumnMenuSortComponent, ColumnMenuStickComponent, ColumnMenuTemplateDirective, ColumnReorderEvent, ColumnReorderService, ColumnResizingService, ColumnStickyChangeEvent, ColumnVisibilityChangeEvent, ColumnsContainer, CommandColumnComponent, ContainsFilterOperatorComponent, ContextService, CustomMessagesComponent, DEFAULT_AI_REQUEST_OPTIONS, DEFAULT_SCROLLER_FACTORY, DataBindingDirective, DateFilterCellComponent, DateFilterComponent, DateFilterMenuComponent, DateFilterMenuInputComponent, DetailCollapseEvent, DetailExpandEvent, DetailTemplateDirective, DetailsService, DoesNotContainFilterOperatorComponent, DomEventsService, DragAndDropService, DragHintService, DropCueService, EditCommandDirective, EditCommandToolbarDirective, EditService as EditServiceClass, EditTemplateDirective, EditingDirectiveBase, EndsWithFilterOperatorComponent, EqualFilterOperatorComponent, ExcelCommandDirective, ExcelCommandToolbarDirective, ExcelComponent, ExcelExportEvent, ExcelModule, ExcelService, ExpandDetailsDirective, ExpandGroupDirective, ExternalEditingDirective, FieldAccessorPipe, FilterCellComponent, FilterCellHostDirective, FilterCellOperatorsComponent, FilterCellTemplateDirective, FilterCellWrapperComponent, FilterCommandToolbarDirective, FilterInputDirective, FilterMenuComponent, FilterMenuContainerComponent, FilterMenuDropDownListDirective, FilterMenuHostDirective, FilterMenuInputWrapperComponent, FilterMenuTemplateDirective, FilterOperatorBase, FilterRowComponent, FilterService, FocusRoot, FocusableDirective, FooterComponent, FooterTemplateDirective, GreaterFilterOperatorComponent, GreaterOrEqualToFilterOperatorComponent, GridAIAssistantResponseErrorEvent, GridAIAssistantResponseSuccessEvent, GridClipboardDirective, GridComponent, GridModule, GridSmartBoxHistoryItemTemplateDirective, GridSmartBoxPromptSuggestionTemplateDirective, GridSmartBoxResponseErrorEvent, GridSmartBoxResponseSuccessEvent, GridSmartBoxSearchEvent, GridSpacerComponent, GridTableDirective, GridToolbarFocusableDirective, GridToolbarNavigationService, GroupCommandToolbarDirective, GroupFooterTemplateDirective, GroupHeaderColumnTemplateDirective, GroupHeaderComponent, GroupHeaderTemplateDirective, GroupInfoService, GroupPanelComponent, GroupsService, HeaderComponent, HeaderTemplateDirective, HighlightDirective, IdService, InCellEditingDirective, IsEmptyFilterOperatorComponent, IsNotEmptyFilterOperatorComponent, IsNotNullFilterOperatorComponent, IsNullFilterOperatorComponent, KENDO_GRID, KENDO_GRID_BODY_EXPORTS, KENDO_GRID_COLUMN_DRAGANDDROP, KENDO_GRID_COLUMN_MENU_DECLARATIONS, KENDO_GRID_COLUMN_MENU_EXPORTS, KENDO_GRID_CSV_EXPORT, KENDO_GRID_DECLARATIONS, KENDO_GRID_EXCEL_EXPORT, KENDO_GRID_EXPORTS, KENDO_GRID_FILTER_MENU, KENDO_GRID_FILTER_MENU_EXPORTS, KENDO_GRID_FILTER_OPERATORS, KENDO_GRID_FILTER_ROW, KENDO_GRID_FILTER_ROW_EXPORTS, KENDO_GRID_FILTER_SHARED, KENDO_GRID_FOOTER_EXPORTS, KENDO_GRID_GROUP_EXPORTS, KENDO_GRID_HEADER_EXPORTS, KENDO_GRID_PDF_EXPORT, KENDO_GRID_SHARED, LessFilterOperatorComponent, LessOrEqualToFilterOperatorComponent, ListComponent, LoadingComponent, LoadingTemplateDirective, LocalDataChangesService, LogicalCellDirective, LogicalRowDirective, MenuTabbingService, MultiCheckboxFilterComponent, NavigationService, NoRecordsTemplateDirective, NotEqualFilterOperatorComponent, NumericFilterCellComponent, NumericFilterComponent, NumericFilterMenuComponent, NumericFilterMenuInputComponent, PDFCommandDirective, PDFCommandToolbarDirective, PDFComponent, PDFMarginComponent, PDFModule, PDFService, PDFTemplateDirective, PopupCloseEvent, ReactiveEditingDirective, RedoCommandToolbarDirective, RemoveCommandDirective, RemoveCommandToolbarDirective, ResizableContainerDirective, ResizeService, ResponsiveService, RowDragHandleTemplateDirective, RowDragHintTemplateDirective, RowEditingDirectiveBase, RowReorderColumnComponent, RowReorderService, SaveCommandDirective, SaveCommandToolbarDirective, ScrollRequestService, ScrollSyncService, SelectAllCheckboxDirective, SelectAllToolbarToolComponent, SelectionCheckboxDirective, SelectionDirective, SelectionService, SinglePopupService, SizingOptionsService, Skip, SmartBoxToolbarToolComponent, SortCommandToolbarDirective, SortService, SpanColumnComponent, StartsWithFilterOperatorComponent, StatusBarTemplateDirective, StringFilterCellComponent, StringFilterComponent, StringFilterMenuComponent, StringFilterMenuInputComponent, SuspendService, TableBodyComponent, TableDirective, TemplateEditingDirective, ToolbarComponent, ToolbarTemplateDirective, UndoCommandToolbarDirective, UndoRedoDirective, UndoRedoEvent, defaultTrackBy, hasFilterMenu, hasFilterRow, isFilterable };
|
|
41011
43302
|
|