@progress/kendo-angular-grid 23.0.0-develop.1 → 23.0.0-develop.10
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 +2348 -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 +57 -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.10',
|
|
24128
24140
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
24129
24141
|
};
|
|
24130
24142
|
|
|
@@ -29097,8 +29109,64 @@ 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;
|
|
29100
29168
|
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 });
|
|
29169
|
+
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" }, usesInheritance: true, ngImport: i0 });
|
|
29102
29170
|
}
|
|
29103
29171
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridMessages, decorators: [{
|
|
29104
29172
|
type: Directive,
|
|
@@ -29374,6 +29442,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
29374
29442
|
type: Input
|
|
29375
29443
|
}], multiCheckboxFilterSelectedItemsCount: [{
|
|
29376
29444
|
type: Input
|
|
29445
|
+
}], smartBoxSpeechToTextButton: [{
|
|
29446
|
+
type: Input
|
|
29447
|
+
}], smartBoxSubmitPromptButton: [{
|
|
29448
|
+
type: Input
|
|
29449
|
+
}], smartBoxSearchPlaceholder: [{
|
|
29450
|
+
type: Input
|
|
29451
|
+
}], smartBoxSemanticSearchPlaceholder: [{
|
|
29452
|
+
type: Input
|
|
29453
|
+
}], smartBoxAIAssistantPlaceholder: [{
|
|
29454
|
+
type: Input
|
|
29455
|
+
}], smartBoxSuggestedPrompts: [{
|
|
29456
|
+
type: Input
|
|
29457
|
+
}], smartBoxNoPreviousSearches: [{
|
|
29458
|
+
type: Input
|
|
29459
|
+
}], smartBoxNoPreviousPrompts: [{
|
|
29460
|
+
type: Input
|
|
29461
|
+
}], smartBoxPreviouslySearched: [{
|
|
29462
|
+
type: Input
|
|
29463
|
+
}], smartBoxPreviouslyAsked: [{
|
|
29464
|
+
type: Input
|
|
29465
|
+
}], searchModeListItemText: [{
|
|
29466
|
+
type: Input
|
|
29467
|
+
}], searchModeListItemDescription: [{
|
|
29468
|
+
type: Input
|
|
29469
|
+
}], semanticSearchModeListItemText: [{
|
|
29470
|
+
type: Input
|
|
29471
|
+
}], semanticSearchModeListItemDescription: [{
|
|
29472
|
+
type: Input
|
|
29377
29473
|
}] } });
|
|
29378
29474
|
|
|
29379
29475
|
/**
|
|
@@ -31944,6 +32040,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
31944
32040
|
args: [GroupToolbarToolComponent]
|
|
31945
32041
|
}] } });
|
|
31946
32042
|
|
|
32043
|
+
/**
|
|
32044
|
+
* @hidden
|
|
32045
|
+
*/
|
|
32046
|
+
class SearchService {
|
|
32047
|
+
/**
|
|
32048
|
+
* Fires when the search descriptor is set.
|
|
32049
|
+
*/
|
|
32050
|
+
changes = new Subject();
|
|
32051
|
+
/**
|
|
32052
|
+
* Sets the search descriptor.
|
|
32053
|
+
*
|
|
32054
|
+
* @param {CompositeFilterDescriptor} value - The search descriptor to set.
|
|
32055
|
+
*/
|
|
32056
|
+
search(value) {
|
|
32057
|
+
this.changes.next(value);
|
|
32058
|
+
}
|
|
32059
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SearchService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
32060
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SearchService });
|
|
32061
|
+
}
|
|
32062
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SearchService, decorators: [{
|
|
32063
|
+
type: Injectable
|
|
32064
|
+
}] });
|
|
32065
|
+
|
|
31947
32066
|
const createControl = (source) => (acc, key) => {
|
|
31948
32067
|
acc[key] = new FormControl(source[key]);
|
|
31949
32068
|
return acc;
|
|
@@ -33127,7 +33246,7 @@ class GridComponent {
|
|
|
33127
33246
|
}
|
|
33128
33247
|
/**
|
|
33129
33248
|
* Builds the request body for the AI service based on the provided prompt message.
|
|
33130
|
-
* Allows developers to construct
|
|
33249
|
+
* Allows developers to construct the AI service requests manually ([see example](slug:ai_assistant_tools_setup#manual-integration)).
|
|
33131
33250
|
*
|
|
33132
33251
|
* @param promptMessage - The prompt message to send to the AI service.
|
|
33133
33252
|
* @returns The request body object ready to be sent to the AI service.
|
|
@@ -33147,7 +33266,7 @@ class GridComponent {
|
|
|
33147
33266
|
}
|
|
33148
33267
|
/**
|
|
33149
33268
|
* Processes an AI service response and applies the commands to the Grid.
|
|
33150
|
-
* Allows developers to handle
|
|
33269
|
+
* Allows developers to handle the AI service responses manually ([see example](slug:ai_assistant_tools_setup#manual-integration)).
|
|
33151
33270
|
*
|
|
33152
33271
|
* @param response - The AI service response containing optional message and commands array.
|
|
33153
33272
|
*
|
|
@@ -34407,7 +34526,8 @@ class GridComponent {
|
|
|
34407
34526
|
AdaptiveGridService,
|
|
34408
34527
|
ColumnMenuService,
|
|
34409
34528
|
MenuTabbingService,
|
|
34410
|
-
DataMappingService
|
|
34529
|
+
DataMappingService,
|
|
34530
|
+
SearchService
|
|
34411
34531
|
], 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
34532
|
<ng-container kendoGridLocalizedMessages
|
|
34413
34533
|
i18n-groupPanelEmpty="kendo.grid.groupPanelEmpty|The label visible in the Grid group panel when it is empty"
|
|
@@ -34811,6 +34931,48 @@ class GridComponent {
|
|
|
34811
34931
|
|
|
34812
34932
|
i18n-multiCheckboxFilterSelectedItemsCount="kendo.grid.multiCheckboxFilterSelectedItemsCount|The text for the multi-checkbox filter selected items count"
|
|
34813
34933
|
multiCheckboxFilterSelectedItemsCount="{{ '{selectedItemsCount} selected items' }}"
|
|
34934
|
+
|
|
34935
|
+
i18n-smartBoxSpeechToTextButton="kendo.grid.smartBoxSpeechToTextButton|The aria-label for the Speech to Text button of the SmartBox tool in AI Assistant mode."
|
|
34936
|
+
smartBoxSpeechToTextButton="Voice input"
|
|
34937
|
+
|
|
34938
|
+
i18n-smartBoxSubmitPromptButton="kendo.grid.smartBoxSubmitPromptButton|The aria-label for the Submit button of the SmartBox tool in AI Assistant mode."
|
|
34939
|
+
smartBoxSubmitPromptButton="Submit prompt"
|
|
34940
|
+
|
|
34941
|
+
i18n-smartBoxSearchPlaceholder="kendo.grid.smartBoxSearchPlaceholder|The placeholder text for the SmartBox tool Search mode input"
|
|
34942
|
+
smartBoxSearchPlaceholder="Search..."
|
|
34943
|
+
|
|
34944
|
+
i18n-smartBoxSemanticSearchPlaceholder="kendo.grid.smartBoxSemanticSearchPlaceholder|The placeholder text for the SmartBox tool Semantic Search mode input"
|
|
34945
|
+
smartBoxSemanticSearchPlaceholder="Semantic Search"
|
|
34946
|
+
|
|
34947
|
+
i18n-smartBoxAIAssistantPlaceholder="kendo.grid.smartBoxAIAssistantPlaceholder|The placeholder text for the SmartBox tool AI Assistant mode input"
|
|
34948
|
+
smartBoxAIAssistantPlaceholder="Sort, Filter, or group with AI"
|
|
34949
|
+
|
|
34950
|
+
i18n-smartBoxSuggestedPrompts="kendo.grid.smartBoxSuggestedPrompts|The text for the suggested prompts section in the SmartBox tool AI Assistant mode."
|
|
34951
|
+
smartBoxSuggestedPrompts="Suggested prompts"
|
|
34952
|
+
|
|
34953
|
+
i18n-smartBoxNoPreviousSearches="kendo.grid.smartBoxNoPreviousSearches|The text displayed when there are no previous searches in the SmartBox tool."
|
|
34954
|
+
smartBoxNoPreviousSearches="No previous searches"
|
|
34955
|
+
|
|
34956
|
+
i18n-smartBoxNoPreviousPrompts="kendo.grid.smartBoxNoPreviousPrompts|The text displayed when there are no previous prompts in the SmartBox tool."
|
|
34957
|
+
smartBoxNoPreviousPrompts="No previous prompts"
|
|
34958
|
+
|
|
34959
|
+
i18n-smartBoxPreviouslySearched="kendo.grid.smartBoxPreviouslySearched|The text displayed when there is previous search history in the SmartBox tool."
|
|
34960
|
+
smartBoxPreviouslySearched="Previously Searched"
|
|
34961
|
+
|
|
34962
|
+
i18n-smartBoxPreviouslyAsked="kendo.grid.smartBoxPreviouslyAsked|The text displayed when there is previous ask history in the SmartBox tool."
|
|
34963
|
+
smartBoxPreviouslyAsked="Previously Asked"
|
|
34964
|
+
|
|
34965
|
+
i18n-searchModeListItemText="kendo.grid.searchModeListItemText|The Search mode text displayed in the SmartBox tool search modes list."
|
|
34966
|
+
searchModeListItemText="Search"
|
|
34967
|
+
|
|
34968
|
+
i18n-searchModeListItemDescription="kendo.grid.searchModeListItemDescription|The Search mode description displayed in the SmartBox tool search modes list."
|
|
34969
|
+
searchModeListItemDescription="Looks for exact word matches accross your data."
|
|
34970
|
+
|
|
34971
|
+
i18n-semanticSearchModeListItemText="kendo.grid.semanticSearchModeListItemText|The Semantic Search mode text displayed in the SmartBox tool search modes list."
|
|
34972
|
+
semanticSearchModeListItemText="Semantic Search"
|
|
34973
|
+
|
|
34974
|
+
i18n-semanticSearchModeListItemDescription="kendo.grid.semanticSearchModeListItemDescription|The Semantic Search mode description displayed in the SmartBox tool search modes list."
|
|
34975
|
+
semanticSearchModeListItemDescription="Understands context to surface the most relevant results."
|
|
34814
34976
|
>
|
|
34815
34977
|
</ng-container>
|
|
34816
34978
|
@if (showTopToolbar) {
|
|
@@ -34832,6 +34994,7 @@ class GridComponent {
|
|
|
34832
34994
|
[skip]="skip"
|
|
34833
34995
|
[size]="size"
|
|
34834
34996
|
[responsive]="normalizedPageableSettings.responsive && !pagerTemplate"
|
|
34997
|
+
[adaptiveMode]="adaptiveMode"
|
|
34835
34998
|
[buttonCount]="normalizedPageableSettings.buttonCount"
|
|
34836
34999
|
[info]="normalizedPageableSettings.info"
|
|
34837
35000
|
[pageSizeValues]="normalizedPageableSettings.pageSizes"
|
|
@@ -35181,6 +35344,7 @@ class GridComponent {
|
|
|
35181
35344
|
[skip]="skip"
|
|
35182
35345
|
[size]="size"
|
|
35183
35346
|
[responsive]="normalizedPageableSettings.responsive && !pagerTemplate"
|
|
35347
|
+
[adaptiveMode]="adaptiveMode"
|
|
35184
35348
|
[buttonCount]="normalizedPageableSettings.buttonCount"
|
|
35185
35349
|
[info]="normalizedPageableSettings.info"
|
|
35186
35350
|
[pageSizeValues]="normalizedPageableSettings.pageSizes"
|
|
@@ -35253,7 +35417,8 @@ class GridComponent {
|
|
|
35253
35417
|
<kendo-pager-page-sizes
|
|
35254
35418
|
[size]="size"
|
|
35255
35419
|
[pageSizes]="normalizedPageableSettings.pageSizes"
|
|
35256
|
-
[showItemsText]="showPagerItemsText"
|
|
35420
|
+
[showItemsText]="showPagerItemsText"
|
|
35421
|
+
[adaptiveMode]="adaptiveMode">
|
|
35257
35422
|
</kendo-pager-page-sizes>
|
|
35258
35423
|
}
|
|
35259
35424
|
@if (normalizedPageableSettings.info) {
|
|
@@ -35274,7 +35439,7 @@ class GridComponent {
|
|
|
35274
35439
|
@if (showLicenseWatermark) {
|
|
35275
35440
|
<div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
|
|
35276
35441
|
}
|
|
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:
|
|
35442
|
+
`, 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
35443
|
}
|
|
35279
35444
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridComponent, decorators: [{
|
|
35280
35445
|
type: Component,
|
|
@@ -35333,7 +35498,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
35333
35498
|
AdaptiveGridService,
|
|
35334
35499
|
ColumnMenuService,
|
|
35335
35500
|
MenuTabbingService,
|
|
35336
|
-
DataMappingService
|
|
35501
|
+
DataMappingService,
|
|
35502
|
+
SearchService
|
|
35337
35503
|
],
|
|
35338
35504
|
selector: 'kendo-grid',
|
|
35339
35505
|
template: `
|
|
@@ -35739,6 +35905,48 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
35739
35905
|
|
|
35740
35906
|
i18n-multiCheckboxFilterSelectedItemsCount="kendo.grid.multiCheckboxFilterSelectedItemsCount|The text for the multi-checkbox filter selected items count"
|
|
35741
35907
|
multiCheckboxFilterSelectedItemsCount="{{ '{selectedItemsCount} selected items' }}"
|
|
35908
|
+
|
|
35909
|
+
i18n-smartBoxSpeechToTextButton="kendo.grid.smartBoxSpeechToTextButton|The aria-label for the Speech to Text button of the SmartBox tool in AI Assistant mode."
|
|
35910
|
+
smartBoxSpeechToTextButton="Voice input"
|
|
35911
|
+
|
|
35912
|
+
i18n-smartBoxSubmitPromptButton="kendo.grid.smartBoxSubmitPromptButton|The aria-label for the Submit button of the SmartBox tool in AI Assistant mode."
|
|
35913
|
+
smartBoxSubmitPromptButton="Submit prompt"
|
|
35914
|
+
|
|
35915
|
+
i18n-smartBoxSearchPlaceholder="kendo.grid.smartBoxSearchPlaceholder|The placeholder text for the SmartBox tool Search mode input"
|
|
35916
|
+
smartBoxSearchPlaceholder="Search..."
|
|
35917
|
+
|
|
35918
|
+
i18n-smartBoxSemanticSearchPlaceholder="kendo.grid.smartBoxSemanticSearchPlaceholder|The placeholder text for the SmartBox tool Semantic Search mode input"
|
|
35919
|
+
smartBoxSemanticSearchPlaceholder="Semantic Search"
|
|
35920
|
+
|
|
35921
|
+
i18n-smartBoxAIAssistantPlaceholder="kendo.grid.smartBoxAIAssistantPlaceholder|The placeholder text for the SmartBox tool AI Assistant mode input"
|
|
35922
|
+
smartBoxAIAssistantPlaceholder="Sort, Filter, or group with AI"
|
|
35923
|
+
|
|
35924
|
+
i18n-smartBoxSuggestedPrompts="kendo.grid.smartBoxSuggestedPrompts|The text for the suggested prompts section in the SmartBox tool AI Assistant mode."
|
|
35925
|
+
smartBoxSuggestedPrompts="Suggested prompts"
|
|
35926
|
+
|
|
35927
|
+
i18n-smartBoxNoPreviousSearches="kendo.grid.smartBoxNoPreviousSearches|The text displayed when there are no previous searches in the SmartBox tool."
|
|
35928
|
+
smartBoxNoPreviousSearches="No previous searches"
|
|
35929
|
+
|
|
35930
|
+
i18n-smartBoxNoPreviousPrompts="kendo.grid.smartBoxNoPreviousPrompts|The text displayed when there are no previous prompts in the SmartBox tool."
|
|
35931
|
+
smartBoxNoPreviousPrompts="No previous prompts"
|
|
35932
|
+
|
|
35933
|
+
i18n-smartBoxPreviouslySearched="kendo.grid.smartBoxPreviouslySearched|The text displayed when there is previous search history in the SmartBox tool."
|
|
35934
|
+
smartBoxPreviouslySearched="Previously Searched"
|
|
35935
|
+
|
|
35936
|
+
i18n-smartBoxPreviouslyAsked="kendo.grid.smartBoxPreviouslyAsked|The text displayed when there is previous ask history in the SmartBox tool."
|
|
35937
|
+
smartBoxPreviouslyAsked="Previously Asked"
|
|
35938
|
+
|
|
35939
|
+
i18n-searchModeListItemText="kendo.grid.searchModeListItemText|The Search mode text displayed in the SmartBox tool search modes list."
|
|
35940
|
+
searchModeListItemText="Search"
|
|
35941
|
+
|
|
35942
|
+
i18n-searchModeListItemDescription="kendo.grid.searchModeListItemDescription|The Search mode description displayed in the SmartBox tool search modes list."
|
|
35943
|
+
searchModeListItemDescription="Looks for exact word matches accross your data."
|
|
35944
|
+
|
|
35945
|
+
i18n-semanticSearchModeListItemText="kendo.grid.semanticSearchModeListItemText|The Semantic Search mode text displayed in the SmartBox tool search modes list."
|
|
35946
|
+
semanticSearchModeListItemText="Semantic Search"
|
|
35947
|
+
|
|
35948
|
+
i18n-semanticSearchModeListItemDescription="kendo.grid.semanticSearchModeListItemDescription|The Semantic Search mode description displayed in the SmartBox tool search modes list."
|
|
35949
|
+
semanticSearchModeListItemDescription="Understands context to surface the most relevant results."
|
|
35742
35950
|
>
|
|
35743
35951
|
</ng-container>
|
|
35744
35952
|
@if (showTopToolbar) {
|
|
@@ -35760,6 +35968,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
35760
35968
|
[skip]="skip"
|
|
35761
35969
|
[size]="size"
|
|
35762
35970
|
[responsive]="normalizedPageableSettings.responsive && !pagerTemplate"
|
|
35971
|
+
[adaptiveMode]="adaptiveMode"
|
|
35763
35972
|
[buttonCount]="normalizedPageableSettings.buttonCount"
|
|
35764
35973
|
[info]="normalizedPageableSettings.info"
|
|
35765
35974
|
[pageSizeValues]="normalizedPageableSettings.pageSizes"
|
|
@@ -36109,6 +36318,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
36109
36318
|
[skip]="skip"
|
|
36110
36319
|
[size]="size"
|
|
36111
36320
|
[responsive]="normalizedPageableSettings.responsive && !pagerTemplate"
|
|
36321
|
+
[adaptiveMode]="adaptiveMode"
|
|
36112
36322
|
[buttonCount]="normalizedPageableSettings.buttonCount"
|
|
36113
36323
|
[info]="normalizedPageableSettings.info"
|
|
36114
36324
|
[pageSizeValues]="normalizedPageableSettings.pageSizes"
|
|
@@ -36181,7 +36391,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
36181
36391
|
<kendo-pager-page-sizes
|
|
36182
36392
|
[size]="size"
|
|
36183
36393
|
[pageSizes]="normalizedPageableSettings.pageSizes"
|
|
36184
|
-
[showItemsText]="showPagerItemsText"
|
|
36394
|
+
[showItemsText]="showPagerItemsText"
|
|
36395
|
+
[adaptiveMode]="adaptiveMode">
|
|
36185
36396
|
</kendo-pager-page-sizes>
|
|
36186
36397
|
}
|
|
36187
36398
|
@if (normalizedPageableSettings.info) {
|
|
@@ -36525,6 +36736,7 @@ class DataBindingDirective {
|
|
|
36525
36736
|
changeDetector;
|
|
36526
36737
|
localDataChangesService;
|
|
36527
36738
|
rowReorderService;
|
|
36739
|
+
searchService;
|
|
36528
36740
|
/**
|
|
36529
36741
|
* Sets the number of records to skip in the Grid.
|
|
36530
36742
|
*
|
|
@@ -36586,11 +36798,14 @@ class DataBindingDirective {
|
|
|
36586
36798
|
stateChangeSubscription;
|
|
36587
36799
|
dataChangedSubscription;
|
|
36588
36800
|
rowReorderSubscription;
|
|
36589
|
-
|
|
36801
|
+
searchSubscription;
|
|
36802
|
+
searchFilter;
|
|
36803
|
+
constructor(grid, changeDetector, localDataChangesService, rowReorderService, searchService, ctx) {
|
|
36590
36804
|
this.grid = grid;
|
|
36591
36805
|
this.changeDetector = changeDetector;
|
|
36592
36806
|
this.localDataChangesService = localDataChangesService;
|
|
36593
36807
|
this.rowReorderService = rowReorderService;
|
|
36808
|
+
this.searchService = searchService;
|
|
36594
36809
|
if (localDataChangesService) {
|
|
36595
36810
|
this.dataChangedSubscription = this.localDataChangesService.changes.subscribe(this.rebind.bind(this));
|
|
36596
36811
|
}
|
|
@@ -36609,6 +36824,13 @@ class DataBindingDirective {
|
|
|
36609
36824
|
.rowReorder
|
|
36610
36825
|
.subscribe(this.onRowReorder.bind(this));
|
|
36611
36826
|
}
|
|
36827
|
+
if (this.searchService) {
|
|
36828
|
+
this.searchSubscription = this.searchService
|
|
36829
|
+
.changes
|
|
36830
|
+
.subscribe((searchFilter) => {
|
|
36831
|
+
this.onSearch.bind(this)(searchFilter);
|
|
36832
|
+
});
|
|
36833
|
+
}
|
|
36612
36834
|
}
|
|
36613
36835
|
/**
|
|
36614
36836
|
* @hidden
|
|
@@ -36623,6 +36845,9 @@ class DataBindingDirective {
|
|
|
36623
36845
|
if (this.rowReorderSubscription) {
|
|
36624
36846
|
this.rowReorderSubscription.unsubscribe();
|
|
36625
36847
|
}
|
|
36848
|
+
if (this.searchSubscription) {
|
|
36849
|
+
this.searchSubscription.unsubscribe();
|
|
36850
|
+
}
|
|
36626
36851
|
}
|
|
36627
36852
|
ngOnChanges(changes) {
|
|
36628
36853
|
if (anyChanged(["pageSize", "skip", "sort", "group", "filter"], changes)) {
|
|
@@ -36648,6 +36873,18 @@ class DataBindingDirective {
|
|
|
36648
36873
|
this.rowReorderService.reorderRows(ev, this.originalData);
|
|
36649
36874
|
this.rebind();
|
|
36650
36875
|
}
|
|
36876
|
+
/**
|
|
36877
|
+
* @hidden
|
|
36878
|
+
*/
|
|
36879
|
+
onSearch(searchFilter) {
|
|
36880
|
+
this.searchFilter = searchFilter;
|
|
36881
|
+
const combinedFilter = this.combineFilters();
|
|
36882
|
+
const state = { ...this.state, filter: combinedFilter };
|
|
36883
|
+
this.grid.data = this.process(state);
|
|
36884
|
+
this.grid.updateNavigationMetadata();
|
|
36885
|
+
this.grid.ngDoCheck();
|
|
36886
|
+
this.dataChanged = false;
|
|
36887
|
+
}
|
|
36651
36888
|
/**
|
|
36652
36889
|
* @hidden
|
|
36653
36890
|
*/
|
|
@@ -36694,12 +36931,31 @@ class DataBindingDirective {
|
|
|
36694
36931
|
this.state.take = this.grid.pageSize;
|
|
36695
36932
|
}
|
|
36696
36933
|
}
|
|
36697
|
-
|
|
36934
|
+
let combinedFilter = null;
|
|
36935
|
+
if (this.searchFilter) {
|
|
36936
|
+
combinedFilter = this.combineFilters();
|
|
36937
|
+
const state = { ...this.state, filter: combinedFilter };
|
|
36938
|
+
this.grid.data = this.process(state);
|
|
36939
|
+
}
|
|
36940
|
+
else {
|
|
36941
|
+
this.grid.data = this.process(this.state);
|
|
36942
|
+
}
|
|
36698
36943
|
this.grid.updateNavigationMetadata();
|
|
36699
36944
|
this.grid.ngDoCheck();
|
|
36700
36945
|
this.dataChanged = false;
|
|
36701
36946
|
}
|
|
36702
|
-
|
|
36947
|
+
combineFilters() {
|
|
36948
|
+
let combinedFilter = null;
|
|
36949
|
+
if (this.state.filter && this.searchFilter) {
|
|
36950
|
+
combinedFilter = {
|
|
36951
|
+
logic: 'and',
|
|
36952
|
+
filters: [...this.state.filter.filters, this.searchFilter]
|
|
36953
|
+
};
|
|
36954
|
+
return combinedFilter;
|
|
36955
|
+
}
|
|
36956
|
+
return this.searchFilter || this.state.filter;
|
|
36957
|
+
}
|
|
36958
|
+
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
36959
|
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
36960
|
}
|
|
36705
36961
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: DataBindingDirective, decorators: [{
|
|
@@ -36709,7 +36965,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
36709
36965
|
exportAs: 'kendoGridBinding',
|
|
36710
36966
|
standalone: true
|
|
36711
36967
|
}]
|
|
36712
|
-
}], ctorParameters: () => [{ type: GridComponent }, { type: i0.ChangeDetectorRef }, { type: LocalDataChangesService }, { type: RowReorderService }, { type: ContextService }], propDecorators: { skip: [{
|
|
36968
|
+
}], ctorParameters: () => [{ type: GridComponent }, { type: i0.ChangeDetectorRef }, { type: LocalDataChangesService }, { type: RowReorderService }, { type: SearchService }, { type: ContextService }], propDecorators: { skip: [{
|
|
36713
36969
|
type: Input
|
|
36714
36970
|
}], sort: [{
|
|
36715
36971
|
type: Input
|
|
@@ -37994,7 +38250,7 @@ class PDFCommandToolbarDirective extends ToolbarToolBase {
|
|
|
37994
38250
|
e.preventDefault();
|
|
37995
38251
|
this.pdfService.exportClick.emit();
|
|
37996
38252
|
}
|
|
37997
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PDFCommandToolbarDirective, deps: [{ token: PDFService }, { token:
|
|
38253
|
+
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
38254
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: PDFCommandToolbarDirective, isStandalone: true, selector: "[kendoGridPDFTool]", usesInheritance: true, ngImport: i0 });
|
|
37999
38255
|
}
|
|
38000
38256
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: PDFCommandToolbarDirective, decorators: [{
|
|
@@ -38003,7 +38259,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38003
38259
|
selector: '[kendoGridPDFTool]',
|
|
38004
38260
|
standalone: true
|
|
38005
38261
|
}]
|
|
38006
|
-
}], ctorParameters: () => [{ type: PDFService }, { type:
|
|
38262
|
+
}], ctorParameters: () => [{ type: PDFService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
38007
38263
|
|
|
38008
38264
|
/**
|
|
38009
38265
|
* Represents the **Export to Excel** toolbar tool of the Grid.
|
|
@@ -38039,7 +38295,7 @@ class ExcelCommandToolbarDirective extends ToolbarToolBase {
|
|
|
38039
38295
|
e.preventDefault();
|
|
38040
38296
|
this.excelService.exportClick.emit();
|
|
38041
38297
|
}
|
|
38042
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelCommandToolbarDirective, deps: [{ token: ExcelService }, { token:
|
|
38298
|
+
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
38299
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: ExcelCommandToolbarDirective, isStandalone: true, selector: "[kendoGridExcelTool]", usesInheritance: true, ngImport: i0 });
|
|
38044
38300
|
}
|
|
38045
38301
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ExcelCommandToolbarDirective, decorators: [{
|
|
@@ -38048,7 +38304,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38048
38304
|
selector: '[kendoGridExcelTool]',
|
|
38049
38305
|
standalone: true
|
|
38050
38306
|
}]
|
|
38051
|
-
}], ctorParameters: () => [{ type: ExcelService }, { type:
|
|
38307
|
+
}], ctorParameters: () => [{ type: ExcelService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
38052
38308
|
|
|
38053
38309
|
/**
|
|
38054
38310
|
* @hidden
|
|
@@ -38121,13 +38377,13 @@ class ToolbarEditingToolBase extends ToolbarToolBase {
|
|
|
38121
38377
|
get isSelectionPresent() {
|
|
38122
38378
|
return isPresent$1(this.lastSelectionIndex) && this.lastSelectionIndex > -1;
|
|
38123
38379
|
}
|
|
38124
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ToolbarEditingToolBase, deps: [{ token:
|
|
38380
|
+
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
38381
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: ToolbarEditingToolBase, isStandalone: true, usesInheritance: true, ngImport: i0 });
|
|
38126
38382
|
}
|
|
38127
38383
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: ToolbarEditingToolBase, decorators: [{
|
|
38128
38384
|
type: Directive,
|
|
38129
38385
|
args: [{}]
|
|
38130
|
-
}], ctorParameters: () => [{ type:
|
|
38386
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: undefined, decorators: [{
|
|
38131
38387
|
type: Inject,
|
|
38132
38388
|
args: ['command']
|
|
38133
38389
|
}] }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: EditService }, { type: SelectionService }] });
|
|
@@ -38167,7 +38423,7 @@ class AddCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
38167
38423
|
e.preventDefault();
|
|
38168
38424
|
this.editService.beginAdd();
|
|
38169
38425
|
}
|
|
38170
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AddCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
38426
|
+
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
38427
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: AddCommandToolbarDirective, isStandalone: true, selector: "[kendoGridAddTool]", usesInheritance: true, ngImport: i0 });
|
|
38172
38428
|
}
|
|
38173
38429
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AddCommandToolbarDirective, decorators: [{
|
|
@@ -38176,7 +38432,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38176
38432
|
selector: '[kendoGridAddTool]',
|
|
38177
38433
|
standalone: true
|
|
38178
38434
|
}]
|
|
38179
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
38435
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
38180
38436
|
|
|
38181
38437
|
/**
|
|
38182
38438
|
* @hidden
|
|
@@ -38727,7 +38983,7 @@ class UndoCommandToolbarDirective {
|
|
|
38727
38983
|
e.preventDefault();
|
|
38728
38984
|
this.undoRedoService.onUndo.next(undefined);
|
|
38729
38985
|
}
|
|
38730
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: UndoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token:
|
|
38986
|
+
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
38987
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: UndoCommandToolbarDirective, isStandalone: true, selector: "[kendoGridUndoTool]", ngImport: i0 });
|
|
38732
38988
|
}
|
|
38733
38989
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: UndoCommandToolbarDirective, decorators: [{
|
|
@@ -38736,7 +38992,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38736
38992
|
selector: '[kendoGridUndoTool]',
|
|
38737
38993
|
standalone: true,
|
|
38738
38994
|
}]
|
|
38739
|
-
}], ctorParameters: () => [{ type: UndoRedoService }, { type:
|
|
38995
|
+
}], ctorParameters: () => [{ type: UndoRedoService }, { type: i57.ToolBarButtonComponent }] });
|
|
38740
38996
|
|
|
38741
38997
|
/**
|
|
38742
38998
|
* Represents the command that triggers the redo action in the Grid.
|
|
@@ -38790,7 +39046,7 @@ class RedoCommandToolbarDirective {
|
|
|
38790
39046
|
e.preventDefault();
|
|
38791
39047
|
this.undoRedoService.onRedo.next(undefined);
|
|
38792
39048
|
}
|
|
38793
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RedoCommandToolbarDirective, deps: [{ token: UndoRedoService }, { token:
|
|
39049
|
+
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
39050
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: RedoCommandToolbarDirective, isStandalone: true, selector: "[kendoGridRedoTool]", ngImport: i0 });
|
|
38795
39051
|
}
|
|
38796
39052
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RedoCommandToolbarDirective, decorators: [{
|
|
@@ -38799,7 +39055,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38799
39055
|
selector: '[kendoGridRedoTool]',
|
|
38800
39056
|
standalone: true,
|
|
38801
39057
|
}]
|
|
38802
|
-
}], ctorParameters: () => [{ type: UndoRedoService }, { type:
|
|
39058
|
+
}], ctorParameters: () => [{ type: UndoRedoService }, { type: i57.ToolBarButtonComponent }] });
|
|
38803
39059
|
|
|
38804
39060
|
let incrementingId$2 = 0;
|
|
38805
39061
|
/**
|
|
@@ -38990,7 +39246,7 @@ class SortCommandToolbarDirective {
|
|
|
38990
39246
|
get buttonElement() {
|
|
38991
39247
|
return this.host.getButton();
|
|
38992
39248
|
}
|
|
38993
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SortCommandToolbarDirective, deps: [{ token:
|
|
39249
|
+
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
39250
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: SortCommandToolbarDirective, isStandalone: true, selector: "[kendoGridSortTool]", ngImport: i0 });
|
|
38995
39251
|
}
|
|
38996
39252
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SortCommandToolbarDirective, decorators: [{
|
|
@@ -38999,7 +39255,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
38999
39255
|
selector: '[kendoGridSortTool]',
|
|
39000
39256
|
standalone: true
|
|
39001
39257
|
}]
|
|
39002
|
-
}], ctorParameters: () => [{ type:
|
|
39258
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: SortService }, { type: ColumnInfoService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }] });
|
|
39003
39259
|
|
|
39004
39260
|
/**
|
|
39005
39261
|
* @hidden
|
|
@@ -39322,7 +39578,7 @@ class FilterCommandToolbarDirective {
|
|
|
39322
39578
|
get buttonElement() {
|
|
39323
39579
|
return this.host.getButton();
|
|
39324
39580
|
}
|
|
39325
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: FilterCommandToolbarDirective, deps: [{ token:
|
|
39581
|
+
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
39582
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: FilterCommandToolbarDirective, isStandalone: true, selector: "[kendoGridFilterTool]", ngImport: i0 });
|
|
39327
39583
|
}
|
|
39328
39584
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: FilterCommandToolbarDirective, decorators: [{
|
|
@@ -39331,7 +39587,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39331
39587
|
selector: '[kendoGridFilterTool]',
|
|
39332
39588
|
standalone: true
|
|
39333
39589
|
}]
|
|
39334
|
-
}], ctorParameters: () => [{ type:
|
|
39590
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: FilterService }, { type: ColumnInfoService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }] });
|
|
39335
39591
|
|
|
39336
39592
|
/**
|
|
39337
39593
|
* Represents the `edit` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -39367,7 +39623,7 @@ class EditCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
39367
39623
|
}
|
|
39368
39624
|
this.editService.beginEdit(this.lastSelectionIndex);
|
|
39369
39625
|
}
|
|
39370
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: EditCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
39626
|
+
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
39627
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: EditCommandToolbarDirective, isStandalone: true, selector: "[kendoGridEditTool]", usesInheritance: true, ngImport: i0 });
|
|
39372
39628
|
}
|
|
39373
39629
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: EditCommandToolbarDirective, decorators: [{
|
|
@@ -39376,7 +39632,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39376
39632
|
selector: '[kendoGridEditTool]',
|
|
39377
39633
|
standalone: true
|
|
39378
39634
|
}]
|
|
39379
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
39635
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
39380
39636
|
|
|
39381
39637
|
/**
|
|
39382
39638
|
* Represents the `save` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -39417,7 +39673,7 @@ class SaveCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
39417
39673
|
this.editService.editedIndices.forEach(i => this.editService.save(i.index));
|
|
39418
39674
|
}
|
|
39419
39675
|
}
|
|
39420
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SaveCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
39676
|
+
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
39677
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: SaveCommandToolbarDirective, isStandalone: true, selector: "[kendoGridSaveTool]", usesInheritance: true, ngImport: i0 });
|
|
39422
39678
|
}
|
|
39423
39679
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SaveCommandToolbarDirective, decorators: [{
|
|
@@ -39426,7 +39682,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39426
39682
|
selector: '[kendoGridSaveTool]',
|
|
39427
39683
|
standalone: true
|
|
39428
39684
|
}]
|
|
39429
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
39685
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
39430
39686
|
|
|
39431
39687
|
/**
|
|
39432
39688
|
* Represents the `remove` command in the Grid. Apply this directive to any `kendo-toolbar-button`
|
|
@@ -39463,7 +39719,7 @@ class RemoveCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
39463
39719
|
this.editService.remove(this.lastSelectionIndex);
|
|
39464
39720
|
}
|
|
39465
39721
|
}
|
|
39466
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RemoveCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
39722
|
+
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
39723
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: RemoveCommandToolbarDirective, isStandalone: true, selector: "[kendoGridRemoveTool]", usesInheritance: true, ngImport: i0 });
|
|
39468
39724
|
}
|
|
39469
39725
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: RemoveCommandToolbarDirective, decorators: [{
|
|
@@ -39472,7 +39728,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39472
39728
|
selector: '[kendoGridRemoveTool]',
|
|
39473
39729
|
standalone: true
|
|
39474
39730
|
}]
|
|
39475
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
39731
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
39476
39732
|
|
|
39477
39733
|
/**
|
|
39478
39734
|
* Represents the `cancel` command in the Grid.
|
|
@@ -39512,7 +39768,7 @@ class CancelCommandToolbarDirective extends ToolbarEditingToolBase {
|
|
|
39512
39768
|
this.editService.editedIndices.forEach(i => this.editService.endEdit(i.index));
|
|
39513
39769
|
}
|
|
39514
39770
|
}
|
|
39515
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CancelCommandToolbarDirective, deps: [{ token: EditService }, { token:
|
|
39771
|
+
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
39772
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: CancelCommandToolbarDirective, isStandalone: true, selector: "[kendoGridCancelTool]", usesInheritance: true, ngImport: i0 });
|
|
39517
39773
|
}
|
|
39518
39774
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: CancelCommandToolbarDirective, decorators: [{
|
|
@@ -39521,7 +39777,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39521
39777
|
selector: '[kendoGridCancelTool]',
|
|
39522
39778
|
standalone: true
|
|
39523
39779
|
}]
|
|
39524
|
-
}], ctorParameters: () => [{ type: EditService }, { type:
|
|
39780
|
+
}], ctorParameters: () => [{ type: EditService }, { type: i57.ToolBarButtonComponent }, { type: SelectionService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }] });
|
|
39525
39781
|
|
|
39526
39782
|
let incrementingId = 0;
|
|
39527
39783
|
/**
|
|
@@ -39702,7 +39958,7 @@ class GroupCommandToolbarDirective {
|
|
|
39702
39958
|
isGroupingApplied(group) {
|
|
39703
39959
|
return isPresent$1(group) && group.length > 0;
|
|
39704
39960
|
}
|
|
39705
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GroupCommandToolbarDirective, deps: [{ token:
|
|
39961
|
+
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
39962
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: GroupCommandToolbarDirective, isStandalone: true, selector: "[kendoGridGroupTool]", ngImport: i0 });
|
|
39707
39963
|
}
|
|
39708
39964
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GroupCommandToolbarDirective, decorators: [{
|
|
@@ -39711,7 +39967,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39711
39967
|
selector: '[kendoGridGroupTool]',
|
|
39712
39968
|
standalone: true
|
|
39713
39969
|
}]
|
|
39714
|
-
}], ctorParameters: () => [{ type:
|
|
39970
|
+
}], ctorParameters: () => [{ type: i57.ToolBarButtonComponent }, { type: i2.PopupService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: AdaptiveGridService }] });
|
|
39715
39971
|
|
|
39716
39972
|
/**
|
|
39717
39973
|
* Stores the row and cell highlight state of the Grid.
|
|
@@ -39740,14 +39996,19 @@ class HighlightDirective {
|
|
|
39740
39996
|
* Sets the column key for a data cell. The Grid uses the column index as the default column key.
|
|
39741
39997
|
*/
|
|
39742
39998
|
highlightColumnKey;
|
|
39999
|
+
/**
|
|
40000
|
+
* Emits when the `highlightedKeys` collection changes.
|
|
40001
|
+
*/
|
|
40002
|
+
highlightedKeysChange = new EventEmitter();
|
|
39743
40003
|
rowHighlightState = new Set();
|
|
39744
40004
|
cellHighlightState = new PairSet();
|
|
40005
|
+
lastHighlightState;
|
|
39745
40006
|
constructor(ctx) {
|
|
39746
40007
|
this.ctx = ctx;
|
|
39747
40008
|
this.ctx.highlightDirective = this;
|
|
39748
40009
|
}
|
|
39749
40010
|
ngOnChanges(changes) {
|
|
39750
|
-
if (isPresent$1(changes['highlightedKeys'])) {
|
|
40011
|
+
if (isPresent$1(changes['highlightedKeys']) && this.lastHighlightState !== this.highlightedKeys) {
|
|
39751
40012
|
this.setState(this.highlightedKeys);
|
|
39752
40013
|
}
|
|
39753
40014
|
}
|
|
@@ -39801,6 +40062,8 @@ class HighlightDirective {
|
|
|
39801
40062
|
setState(highlightedKeys) {
|
|
39802
40063
|
this.reset();
|
|
39803
40064
|
if (!highlightedKeys || highlightedKeys.length === 0) {
|
|
40065
|
+
this.highlightedKeys = [];
|
|
40066
|
+
this.notifyChange();
|
|
39804
40067
|
return;
|
|
39805
40068
|
}
|
|
39806
40069
|
const rowHighlights = highlightedKeys.filter(item => !isPresent$1(item.columnKey));
|
|
@@ -39813,13 +40076,19 @@ class HighlightDirective {
|
|
|
39813
40076
|
this.rowHighlightState.add(item.itemKey);
|
|
39814
40077
|
});
|
|
39815
40078
|
}
|
|
40079
|
+
this.highlightedKeys = highlightedKeys;
|
|
40080
|
+
this.notifyChange();
|
|
40081
|
+
}
|
|
40082
|
+
notifyChange() {
|
|
40083
|
+
this.lastHighlightState = this.highlightedKeys;
|
|
40084
|
+
this.highlightedKeysChange.emit(this.highlightedKeys);
|
|
39816
40085
|
}
|
|
39817
40086
|
reset() {
|
|
39818
40087
|
this.rowHighlightState.clear();
|
|
39819
40088
|
this.cellHighlightState.clear();
|
|
39820
40089
|
}
|
|
39821
40090
|
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 });
|
|
40091
|
+
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
40092
|
}
|
|
39824
40093
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: HighlightDirective, decorators: [{
|
|
39825
40094
|
type: Directive,
|
|
@@ -39834,6 +40103,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
39834
40103
|
args: ["kendoGridHighlight"]
|
|
39835
40104
|
}], highlightColumnKey: [{
|
|
39836
40105
|
type: Input
|
|
40106
|
+
}], highlightedKeysChange: [{
|
|
40107
|
+
type: Output
|
|
39837
40108
|
}] } });
|
|
39838
40109
|
|
|
39839
40110
|
/**
|
|
@@ -39881,7 +40152,6 @@ class AiAssistantComponent {
|
|
|
39881
40152
|
http;
|
|
39882
40153
|
ctx;
|
|
39883
40154
|
columnInfoService;
|
|
39884
|
-
zone;
|
|
39885
40155
|
aiRequestResponseService;
|
|
39886
40156
|
aiPrompt;
|
|
39887
40157
|
activeView = 0;
|
|
@@ -39900,11 +40170,10 @@ class AiAssistantComponent {
|
|
|
39900
40170
|
columns = [];
|
|
39901
40171
|
leafColumns = [];
|
|
39902
40172
|
idCounter = 0;
|
|
39903
|
-
constructor(http, ctx, columnInfoService,
|
|
40173
|
+
constructor(http, ctx, columnInfoService, aiRequestResponseService) {
|
|
39904
40174
|
this.http = http;
|
|
39905
40175
|
this.ctx = ctx;
|
|
39906
40176
|
this.columnInfoService = columnInfoService;
|
|
39907
|
-
this.zone = zone;
|
|
39908
40177
|
this.aiRequestResponseService = aiRequestResponseService;
|
|
39909
40178
|
}
|
|
39910
40179
|
ngAfterViewInit() {
|
|
@@ -40022,7 +40291,7 @@ class AiAssistantComponent {
|
|
|
40022
40291
|
this.currentRequestSubscription = null;
|
|
40023
40292
|
}
|
|
40024
40293
|
}
|
|
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:
|
|
40294
|
+
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
40295
|
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
40296
|
<kendo-aiprompt
|
|
40028
40297
|
#aiPrompt
|
|
@@ -40126,7 +40395,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
40126
40395
|
</kendo-aiprompt>
|
|
40127
40396
|
`
|
|
40128
40397
|
}]
|
|
40129
|
-
}], ctorParameters: () => [{ type: i1$8.HttpClient }, { type: ContextService }, { type: ColumnInfoService }, { type:
|
|
40398
|
+
}], ctorParameters: () => [{ type: i1$8.HttpClient }, { type: ContextService }, { type: ColumnInfoService }, { type: GridAIRequestResponseService }], propDecorators: { aiPrompt: [{
|
|
40130
40399
|
type: ViewChild,
|
|
40131
40400
|
args: [AIPromptComponent]
|
|
40132
40401
|
}] } });
|
|
@@ -40350,7 +40619,7 @@ class AIAssistantToolbarDirective extends ToolbarToolBase {
|
|
|
40350
40619
|
this.host.selected = false;
|
|
40351
40620
|
focusAnchor && this.buttonElement?.focus();
|
|
40352
40621
|
}
|
|
40353
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AIAssistantToolbarDirective, deps: [{ token: i1$7.WindowService }, { token:
|
|
40622
|
+
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
40623
|
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
40624
|
}
|
|
40356
40625
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AIAssistantToolbarDirective, decorators: [{
|
|
@@ -40359,7 +40628,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
40359
40628
|
selector: '[kendoGridAIAssistantTool]',
|
|
40360
40629
|
standalone: true
|
|
40361
40630
|
}]
|
|
40362
|
-
}], ctorParameters: () => [{ type: i1$7.WindowService }, { type:
|
|
40631
|
+
}], ctorParameters: () => [{ type: i1$7.WindowService }, { type: i57.ToolBarButtonComponent }, { type: ContextService }, { type: i0.NgZone }, { type: i57.RefreshService }, { type: i0.ChangeDetectorRef }], propDecorators: { requestUrl: [{
|
|
40363
40632
|
type: Input
|
|
40364
40633
|
}], requestOptions: [{
|
|
40365
40634
|
type: Input
|
|
@@ -40464,6 +40733,1999 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
40464
40733
|
}]
|
|
40465
40734
|
}], ctorParameters: () => [{ type: IdService }, { type: ContextService }] });
|
|
40466
40735
|
|
|
40736
|
+
/**
|
|
40737
|
+
* @hidden
|
|
40738
|
+
*/
|
|
40739
|
+
class SmartBoxResponseErrorEvent extends PreventableEvent$1 {
|
|
40740
|
+
/**
|
|
40741
|
+
* The HTTP error response from the AI service.
|
|
40742
|
+
*/
|
|
40743
|
+
error;
|
|
40744
|
+
constructor(error) {
|
|
40745
|
+
super();
|
|
40746
|
+
this.error = error;
|
|
40747
|
+
}
|
|
40748
|
+
}
|
|
40749
|
+
/**
|
|
40750
|
+
* @hidden
|
|
40751
|
+
*/
|
|
40752
|
+
class SmartBoxResponseSuccessEvent extends PreventableEvent$1 {
|
|
40753
|
+
/**
|
|
40754
|
+
* The HTTP response from the AI service.
|
|
40755
|
+
*/
|
|
40756
|
+
response;
|
|
40757
|
+
constructor(response) {
|
|
40758
|
+
super();
|
|
40759
|
+
this.response = response;
|
|
40760
|
+
}
|
|
40761
|
+
}
|
|
40762
|
+
/**
|
|
40763
|
+
* @hidden
|
|
40764
|
+
*/
|
|
40765
|
+
class SmartBoxSearchEvent extends PreventableEvent$1 {
|
|
40766
|
+
/**
|
|
40767
|
+
* The user's input value.
|
|
40768
|
+
*/
|
|
40769
|
+
searchValue;
|
|
40770
|
+
/**
|
|
40771
|
+
* The input-based filters that will be applied to the Grid.
|
|
40772
|
+
*/
|
|
40773
|
+
filters;
|
|
40774
|
+
/**
|
|
40775
|
+
* The logic applied to the filters.
|
|
40776
|
+
*/
|
|
40777
|
+
logic;
|
|
40778
|
+
/**
|
|
40779
|
+
* @hidden
|
|
40780
|
+
*/
|
|
40781
|
+
constructor() {
|
|
40782
|
+
super();
|
|
40783
|
+
}
|
|
40784
|
+
}
|
|
40785
|
+
|
|
40786
|
+
/**
|
|
40787
|
+
* Represents the event data when the AI Assistant request completes with an error.
|
|
40788
|
+
*/
|
|
40789
|
+
class GridSmartBoxResponseErrorEvent extends SmartBoxResponseErrorEvent {
|
|
40790
|
+
/**
|
|
40791
|
+
* @hidden
|
|
40792
|
+
*/
|
|
40793
|
+
constructor(error) {
|
|
40794
|
+
super(error);
|
|
40795
|
+
}
|
|
40796
|
+
}
|
|
40797
|
+
/**
|
|
40798
|
+
* Represents the event data when the AI Assistant request completes successfully.
|
|
40799
|
+
*/
|
|
40800
|
+
class GridSmartBoxResponseSuccessEvent extends SmartBoxResponseSuccessEvent {
|
|
40801
|
+
/**
|
|
40802
|
+
* @hidden
|
|
40803
|
+
*/
|
|
40804
|
+
constructor(response) {
|
|
40805
|
+
super(response);
|
|
40806
|
+
}
|
|
40807
|
+
}
|
|
40808
|
+
/**
|
|
40809
|
+
* Represents the event data when the user types in Search mode.
|
|
40810
|
+
*/
|
|
40811
|
+
class GridSmartBoxSearchEvent extends SmartBoxSearchEvent {
|
|
40812
|
+
/**
|
|
40813
|
+
* @hidden
|
|
40814
|
+
*/
|
|
40815
|
+
constructor() {
|
|
40816
|
+
super();
|
|
40817
|
+
}
|
|
40818
|
+
}
|
|
40819
|
+
|
|
40820
|
+
const DEFAULT_SIZE$1 = 'medium';
|
|
40821
|
+
const SIZES_MAP = {
|
|
40822
|
+
small: 'sm',
|
|
40823
|
+
medium: 'md',
|
|
40824
|
+
large: 'lg'
|
|
40825
|
+
};
|
|
40826
|
+
/**
|
|
40827
|
+
* @hidden
|
|
40828
|
+
*/
|
|
40829
|
+
class SegmentedControlComponent {
|
|
40830
|
+
renderer;
|
|
40831
|
+
wrapper;
|
|
40832
|
+
cdr;
|
|
40833
|
+
zone;
|
|
40834
|
+
hostClasses = true;
|
|
40835
|
+
hostRole = 'group';
|
|
40836
|
+
thumb;
|
|
40837
|
+
/**
|
|
40838
|
+
* Specifies the collection of buttons that will be rendered inside the SegmentedControlComponent.
|
|
40839
|
+
*/
|
|
40840
|
+
buttons = [];
|
|
40841
|
+
/**
|
|
40842
|
+
* Sets the padding of the control.
|
|
40843
|
+
*
|
|
40844
|
+
* @default 'medium'
|
|
40845
|
+
*/
|
|
40846
|
+
set size(size) {
|
|
40847
|
+
const newSize = size || DEFAULT_SIZE$1;
|
|
40848
|
+
this.handleSizeClass(newSize, this._size);
|
|
40849
|
+
this._size = newSize;
|
|
40850
|
+
}
|
|
40851
|
+
get size() {
|
|
40852
|
+
return this._size;
|
|
40853
|
+
}
|
|
40854
|
+
/**
|
|
40855
|
+
* Fires when a button is clicked.
|
|
40856
|
+
*/
|
|
40857
|
+
buttonClick = new EventEmitter();
|
|
40858
|
+
ngAfterViewInit() {
|
|
40859
|
+
this.handleSizeClass(this._size, null);
|
|
40860
|
+
this.selectedButtonIndex = this.buttons.indexOf(this.buttons.find(b => b.selected)) || 0;
|
|
40861
|
+
this.cdr.detectChanges();
|
|
40862
|
+
this.zone.onStable.pipe(take(1)).subscribe(() => this.showSelectionIndicator());
|
|
40863
|
+
}
|
|
40864
|
+
handleClick(button, index) {
|
|
40865
|
+
this.selectedButtonIndex = index;
|
|
40866
|
+
this.cdr.detectChanges();
|
|
40867
|
+
this.buttonClick.emit(button);
|
|
40868
|
+
this.showSelectionIndicator();
|
|
40869
|
+
}
|
|
40870
|
+
getInnerIconClass(button) {
|
|
40871
|
+
const baseClass = 'k-segmented-control-button-icon';
|
|
40872
|
+
return button.iconInnerCssClass ? `${baseClass} ${button.iconInnerCssClass}` : baseClass;
|
|
40873
|
+
}
|
|
40874
|
+
constructor(renderer, wrapper, cdr, zone) {
|
|
40875
|
+
this.renderer = renderer;
|
|
40876
|
+
this.wrapper = wrapper;
|
|
40877
|
+
this.cdr = cdr;
|
|
40878
|
+
this.zone = zone;
|
|
40879
|
+
}
|
|
40880
|
+
showSelectionIndicator() {
|
|
40881
|
+
const element = this.wrapper.nativeElement;
|
|
40882
|
+
const controlRect = element.getBoundingClientRect();
|
|
40883
|
+
const selectedItem = element.querySelector('.k-segmented-control-button.k-selected');
|
|
40884
|
+
const selectionIndicator = this.thumb ? this.thumb.nativeElement : null;
|
|
40885
|
+
if (!selectedItem || !selectionIndicator) {
|
|
40886
|
+
return;
|
|
40887
|
+
}
|
|
40888
|
+
const itemRect = selectedItem.getBoundingClientRect();
|
|
40889
|
+
const left = itemRect.left - controlRect.left;
|
|
40890
|
+
const right = controlRect.right - itemRect.right;
|
|
40891
|
+
this.renderer.setStyle(selectionIndicator, 'left', `${left}px`);
|
|
40892
|
+
this.renderer.setStyle(selectionIndicator, 'right', `${right}px`);
|
|
40893
|
+
}
|
|
40894
|
+
selectedButtonIndex = 0;
|
|
40895
|
+
_size = DEFAULT_SIZE$1;
|
|
40896
|
+
handleSizeClass(newValue, prevValue) {
|
|
40897
|
+
if (!this.wrapper) {
|
|
40898
|
+
return;
|
|
40899
|
+
}
|
|
40900
|
+
const elem = this.wrapper.nativeElement;
|
|
40901
|
+
const classToRemove = prevValue ? `k-segmented-control-${SIZES_MAP[prevValue]}` : null;
|
|
40902
|
+
const classToAdd = newValue ? `k-segmented-control-${SIZES_MAP[newValue]}` : `k-segmented-control-${SIZES_MAP[DEFAULT_SIZE$1]}`;
|
|
40903
|
+
classToRemove && this.renderer.removeClass(elem, classToRemove);
|
|
40904
|
+
classToAdd && this.renderer.addClass(elem, classToAdd);
|
|
40905
|
+
}
|
|
40906
|
+
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 });
|
|
40907
|
+
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: `
|
|
40908
|
+
<div class="k-segmented-control-thumb" #thumb [attr.aria-hidden]="true"></div>
|
|
40909
|
+
@for (button of buttons; track $index; let idx = $index) {
|
|
40910
|
+
<button type="button"
|
|
40911
|
+
class="k-segmented-control-button"
|
|
40912
|
+
[class.k-disabled]="button.disabled"
|
|
40913
|
+
[attr.disabled]="button.disabled ? true : null"
|
|
40914
|
+
(click)="handleClick(button, idx)"
|
|
40915
|
+
[class.k-selected]="selectedButtonIndex === idx"
|
|
40916
|
+
[attr.aria-pressed]="selectedButtonIndex === idx ? 'true' : 'false'">
|
|
40917
|
+
<kendo-icon-wrapper
|
|
40918
|
+
[innerCssClass]="getInnerIconClass(button)"
|
|
40919
|
+
[name]="button.icon"
|
|
40920
|
+
[svgIcon]="button.svgIcon">
|
|
40921
|
+
</kendo-icon-wrapper>
|
|
40922
|
+
<span class="k-segmented-control-button-text">{{button.text}}</span>
|
|
40923
|
+
</button>
|
|
40924
|
+
}
|
|
40925
|
+
`, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
40926
|
+
}
|
|
40927
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SegmentedControlComponent, decorators: [{
|
|
40928
|
+
type: Component,
|
|
40929
|
+
args: [{
|
|
40930
|
+
selector: 'kendo-segmented-control',
|
|
40931
|
+
standalone: true,
|
|
40932
|
+
imports: [IconWrapperComponent],
|
|
40933
|
+
template: `
|
|
40934
|
+
<div class="k-segmented-control-thumb" #thumb [attr.aria-hidden]="true"></div>
|
|
40935
|
+
@for (button of buttons; track $index; let idx = $index) {
|
|
40936
|
+
<button type="button"
|
|
40937
|
+
class="k-segmented-control-button"
|
|
40938
|
+
[class.k-disabled]="button.disabled"
|
|
40939
|
+
[attr.disabled]="button.disabled ? true : null"
|
|
40940
|
+
(click)="handleClick(button, idx)"
|
|
40941
|
+
[class.k-selected]="selectedButtonIndex === idx"
|
|
40942
|
+
[attr.aria-pressed]="selectedButtonIndex === idx ? 'true' : 'false'">
|
|
40943
|
+
<kendo-icon-wrapper
|
|
40944
|
+
[innerCssClass]="getInnerIconClass(button)"
|
|
40945
|
+
[name]="button.icon"
|
|
40946
|
+
[svgIcon]="button.svgIcon">
|
|
40947
|
+
</kendo-icon-wrapper>
|
|
40948
|
+
<span class="k-segmented-control-button-text">{{button.text}}</span>
|
|
40949
|
+
</button>
|
|
40950
|
+
}
|
|
40951
|
+
`
|
|
40952
|
+
}]
|
|
40953
|
+
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }], propDecorators: { hostClasses: [{
|
|
40954
|
+
type: HostBinding,
|
|
40955
|
+
args: ['class.k-segmented-control']
|
|
40956
|
+
}, {
|
|
40957
|
+
type: HostBinding,
|
|
40958
|
+
args: ['class.k-segmented-control-stretched']
|
|
40959
|
+
}], hostRole: [{
|
|
40960
|
+
type: HostBinding,
|
|
40961
|
+
args: ['attr.role']
|
|
40962
|
+
}], thumb: [{
|
|
40963
|
+
type: ViewChild,
|
|
40964
|
+
args: ['thumb']
|
|
40965
|
+
}], buttons: [{
|
|
40966
|
+
type: Input
|
|
40967
|
+
}], size: [{
|
|
40968
|
+
type: Input
|
|
40969
|
+
}], buttonClick: [{
|
|
40970
|
+
type: Output
|
|
40971
|
+
}] } });
|
|
40972
|
+
|
|
40973
|
+
/**
|
|
40974
|
+
* Renders the prompt suggestion content.
|
|
40975
|
+
*
|
|
40976
|
+
* To define the suggestion template, nest a `<ng-template>` tag with the `kendoGridSmartBoxPromptSuggestionTemplate` directive inside the component tag.
|
|
40977
|
+
*
|
|
40978
|
+
* The template context is set to the current suggestion. Use the `let-suggestion` directive to reference the current suggestion.
|
|
40979
|
+
*
|
|
40980
|
+
* @example
|
|
40981
|
+
* ```html
|
|
40982
|
+
* <kendo-smartbox>
|
|
40983
|
+
* <ng-template kendoGridSmartBoxPromptSuggestionTemplate let-suggestion>
|
|
40984
|
+
* <kendo-icon-wrapper name="sort-asc" [svgIcon]="sortAscIcon"></kendo-icon-wrapper>
|
|
40985
|
+
* <span>{{suggestion}}</span>
|
|
40986
|
+
* </ng-template>
|
|
40987
|
+
* </kendo-smartbox>
|
|
40988
|
+
* ```
|
|
40989
|
+
*/
|
|
40990
|
+
class GridSmartBoxPromptSuggestionTemplateDirective {
|
|
40991
|
+
templateRef;
|
|
40992
|
+
constructor(templateRef) {
|
|
40993
|
+
this.templateRef = templateRef;
|
|
40994
|
+
}
|
|
40995
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridSmartBoxPromptSuggestionTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
40996
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: GridSmartBoxPromptSuggestionTemplateDirective, isStandalone: true, selector: "[kendoGridSmartBoxPromptSuggestionTemplate]", ngImport: i0 });
|
|
40997
|
+
}
|
|
40998
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridSmartBoxPromptSuggestionTemplateDirective, decorators: [{
|
|
40999
|
+
type: Directive,
|
|
41000
|
+
args: [{
|
|
41001
|
+
selector: '[kendoGridSmartBoxPromptSuggestionTemplate]',
|
|
41002
|
+
standalone: true
|
|
41003
|
+
}]
|
|
41004
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
41005
|
+
|
|
41006
|
+
/**
|
|
41007
|
+
* Renders the history item content.
|
|
41008
|
+
*
|
|
41009
|
+
* To define the history item template, nest a `<ng-template>` tag with the `kendoGridSmartBoxHistoryItemTemplate` directive inside the component tag.
|
|
41010
|
+
*
|
|
41011
|
+
* The template context is set to the current history item. Use the `let-item` directive to reference the current history item.
|
|
41012
|
+
*
|
|
41013
|
+
* @example
|
|
41014
|
+
* ```html
|
|
41015
|
+
* <kendo-smartbox>
|
|
41016
|
+
* <ng-template kendoGridSmartBoxHistoryItemTemplate let-item>
|
|
41017
|
+
* <kendo-icon-wrapper name="clock" [svgIcon]="clockIcon"></kendo-icon-wrapper>
|
|
41018
|
+
* <span>{{item.text}} ({{ item.timestamp | date: 'shortTime' }})</span>
|
|
41019
|
+
* </ng-template>
|
|
41020
|
+
* </kendo-smartbox>
|
|
41021
|
+
* ```
|
|
41022
|
+
*/
|
|
41023
|
+
class GridSmartBoxHistoryItemTemplateDirective {
|
|
41024
|
+
templateRef;
|
|
41025
|
+
constructor(templateRef) {
|
|
41026
|
+
this.templateRef = templateRef;
|
|
41027
|
+
}
|
|
41028
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridSmartBoxHistoryItemTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
41029
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.18", type: GridSmartBoxHistoryItemTemplateDirective, isStandalone: true, selector: "[kendoGridSmartBoxHistoryItemTemplate]", ngImport: i0 });
|
|
41030
|
+
}
|
|
41031
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridSmartBoxHistoryItemTemplateDirective, decorators: [{
|
|
41032
|
+
type: Directive,
|
|
41033
|
+
args: [{
|
|
41034
|
+
selector: '[kendoGridSmartBoxHistoryItemTemplate]',
|
|
41035
|
+
standalone: true
|
|
41036
|
+
}]
|
|
41037
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
41038
|
+
|
|
41039
|
+
/**
|
|
41040
|
+
* @hidden
|
|
41041
|
+
*/
|
|
41042
|
+
const DEFAULT_HISTORY_SETTINGS = {
|
|
41043
|
+
size: 5,
|
|
41044
|
+
timestampFormat: 'HH:mm:ss'
|
|
41045
|
+
};
|
|
41046
|
+
/**
|
|
41047
|
+
* @hidden
|
|
41048
|
+
*/
|
|
41049
|
+
const STB_DEFAULT_SETTINGS = {
|
|
41050
|
+
continuous: false,
|
|
41051
|
+
disabled: false,
|
|
41052
|
+
fillMode: 'clear',
|
|
41053
|
+
integrationMode: 'webSpeech',
|
|
41054
|
+
interimResults: false,
|
|
41055
|
+
lang: 'en-US',
|
|
41056
|
+
maxAlternatives: 1,
|
|
41057
|
+
rounded: 'full',
|
|
41058
|
+
size: 'small',
|
|
41059
|
+
themeColor: 'base'
|
|
41060
|
+
};
|
|
41061
|
+
/**
|
|
41062
|
+
* @hidden
|
|
41063
|
+
*/
|
|
41064
|
+
const DEFAULT_SEARCH_SETTINGS = {
|
|
41065
|
+
history: DEFAULT_HISTORY_SETTINGS,
|
|
41066
|
+
placeholder: null,
|
|
41067
|
+
delay: 300,
|
|
41068
|
+
enabled: true,
|
|
41069
|
+
fields: []
|
|
41070
|
+
};
|
|
41071
|
+
/**
|
|
41072
|
+
* @hidden
|
|
41073
|
+
*/
|
|
41074
|
+
const DEFAULT_SEMANTIC_SEARCH_SETTINGS = {
|
|
41075
|
+
history: DEFAULT_HISTORY_SETTINGS,
|
|
41076
|
+
placeholder: null,
|
|
41077
|
+
delay: 700,
|
|
41078
|
+
enabled: true
|
|
41079
|
+
};
|
|
41080
|
+
/**
|
|
41081
|
+
* @hidden
|
|
41082
|
+
*/
|
|
41083
|
+
const DEFAULT_AI_ASSISTANT_SETTINGS = {
|
|
41084
|
+
history: DEFAULT_HISTORY_SETTINGS,
|
|
41085
|
+
placeholder: null,
|
|
41086
|
+
enabled: true,
|
|
41087
|
+
promptSuggestions: [],
|
|
41088
|
+
requestUrl: '',
|
|
41089
|
+
requestOptions: DEFAULT_AI_REQUEST_OPTIONS,
|
|
41090
|
+
speechToTextButton: true
|
|
41091
|
+
};
|
|
41092
|
+
/**
|
|
41093
|
+
* @hidden
|
|
41094
|
+
*/
|
|
41095
|
+
const DEFAULT_SIZE = 'medium';
|
|
41096
|
+
/**
|
|
41097
|
+
* @hidden
|
|
41098
|
+
*/
|
|
41099
|
+
const SIZES = {
|
|
41100
|
+
small: 'sm',
|
|
41101
|
+
medium: 'md',
|
|
41102
|
+
large: 'lg'
|
|
41103
|
+
};
|
|
41104
|
+
|
|
41105
|
+
/**
|
|
41106
|
+
* @hidden
|
|
41107
|
+
*/
|
|
41108
|
+
class SmartBoxComponent {
|
|
41109
|
+
popupService;
|
|
41110
|
+
wrapper;
|
|
41111
|
+
cdr;
|
|
41112
|
+
zone;
|
|
41113
|
+
intl;
|
|
41114
|
+
ctx;
|
|
41115
|
+
aiRequestResponseService;
|
|
41116
|
+
http;
|
|
41117
|
+
renderer;
|
|
41118
|
+
columnInfoService;
|
|
41119
|
+
searchService;
|
|
41120
|
+
popupTemplate;
|
|
41121
|
+
input;
|
|
41122
|
+
innerWrapper;
|
|
41123
|
+
set searchMode(mode) {
|
|
41124
|
+
const settingsFromComponent = { placeholder: this.placeholder, history: this.history };
|
|
41125
|
+
if (mode === true) {
|
|
41126
|
+
this._searchMode = { ...DEFAULT_SEARCH_SETTINGS, ...settingsFromComponent, enabled: true };
|
|
41127
|
+
}
|
|
41128
|
+
else if (mode === false) {
|
|
41129
|
+
this._searchMode = null;
|
|
41130
|
+
}
|
|
41131
|
+
else {
|
|
41132
|
+
this._searchMode = { ...DEFAULT_SEARCH_SETTINGS, ...settingsFromComponent, ...mode };
|
|
41133
|
+
}
|
|
41134
|
+
this.updateSearchListData();
|
|
41135
|
+
this.updateSelectedView();
|
|
41136
|
+
}
|
|
41137
|
+
get searchMode() {
|
|
41138
|
+
return this._searchMode;
|
|
41139
|
+
}
|
|
41140
|
+
set semanticSearchMode(mode) {
|
|
41141
|
+
const settingsFromComponent = { placeholder: this.placeholder, history: this.history };
|
|
41142
|
+
if (mode === true) {
|
|
41143
|
+
this._semanticSearchMode = { ...DEFAULT_SEMANTIC_SEARCH_SETTINGS, ...settingsFromComponent, enabled: true };
|
|
41144
|
+
}
|
|
41145
|
+
else if (mode === false) {
|
|
41146
|
+
this._semanticSearchMode = null;
|
|
41147
|
+
}
|
|
41148
|
+
else {
|
|
41149
|
+
this._semanticSearchMode = { ...DEFAULT_SEMANTIC_SEARCH_SETTINGS, ...settingsFromComponent, ...mode };
|
|
41150
|
+
}
|
|
41151
|
+
this.updateSearchListData();
|
|
41152
|
+
this.updateSelectedView();
|
|
41153
|
+
}
|
|
41154
|
+
get semanticSearchMode() {
|
|
41155
|
+
return this._semanticSearchMode;
|
|
41156
|
+
}
|
|
41157
|
+
set aiAssistantMode(mode) {
|
|
41158
|
+
const settingsFromComponent = { placeholder: this.placeholder, history: this.history };
|
|
41159
|
+
if (mode === true) {
|
|
41160
|
+
this._aiAssistantMode = { ...DEFAULT_AI_ASSISTANT_SETTINGS, ...settingsFromComponent, enabled: true };
|
|
41161
|
+
}
|
|
41162
|
+
else if (mode === false) {
|
|
41163
|
+
this._aiAssistantMode = null;
|
|
41164
|
+
}
|
|
41165
|
+
else {
|
|
41166
|
+
const mergedRequestOptions = mode?.requestOptions ?
|
|
41167
|
+
{ ...DEFAULT_AI_ASSISTANT_SETTINGS.requestOptions, ...mode.requestOptions } :
|
|
41168
|
+
DEFAULT_AI_ASSISTANT_SETTINGS.requestOptions;
|
|
41169
|
+
this._aiAssistantMode = {
|
|
41170
|
+
...DEFAULT_AI_ASSISTANT_SETTINGS,
|
|
41171
|
+
...settingsFromComponent,
|
|
41172
|
+
...mode,
|
|
41173
|
+
requestOptions: mergedRequestOptions
|
|
41174
|
+
};
|
|
41175
|
+
}
|
|
41176
|
+
this.updateSelectedView();
|
|
41177
|
+
this.speechToTextButton = this._aiAssistantMode?.speechToTextButton;
|
|
41178
|
+
}
|
|
41179
|
+
get aiAssistantMode() {
|
|
41180
|
+
return this._aiAssistantMode;
|
|
41181
|
+
}
|
|
41182
|
+
set speechToTextButton(value) {
|
|
41183
|
+
if (value === true) {
|
|
41184
|
+
this._speechToTextButton = STB_DEFAULT_SETTINGS;
|
|
41185
|
+
}
|
|
41186
|
+
else if (value === false) {
|
|
41187
|
+
this._speechToTextButton = null;
|
|
41188
|
+
}
|
|
41189
|
+
else {
|
|
41190
|
+
this._speechToTextButton = { ...STB_DEFAULT_SETTINGS, ...value };
|
|
41191
|
+
}
|
|
41192
|
+
}
|
|
41193
|
+
get speechToTextButton() {
|
|
41194
|
+
return this._speechToTextButton;
|
|
41195
|
+
}
|
|
41196
|
+
get searchHistorySettings() {
|
|
41197
|
+
if (!isPresent$1(this.searchMode?.history)) {
|
|
41198
|
+
return null;
|
|
41199
|
+
}
|
|
41200
|
+
if (typeof this.searchMode.history === 'boolean') {
|
|
41201
|
+
return this.searchMode.history ? DEFAULT_HISTORY_SETTINGS : null;
|
|
41202
|
+
}
|
|
41203
|
+
else {
|
|
41204
|
+
return { ...DEFAULT_HISTORY_SETTINGS, ...this.searchMode.history };
|
|
41205
|
+
}
|
|
41206
|
+
}
|
|
41207
|
+
get semanticSearchHistorySettings() {
|
|
41208
|
+
if (!isPresent$1(this.semanticSearchMode?.history)) {
|
|
41209
|
+
return null;
|
|
41210
|
+
}
|
|
41211
|
+
if (typeof this.semanticSearchMode.history === 'boolean') {
|
|
41212
|
+
return this.semanticSearchMode.history ? DEFAULT_HISTORY_SETTINGS : null;
|
|
41213
|
+
}
|
|
41214
|
+
else {
|
|
41215
|
+
return { ...DEFAULT_HISTORY_SETTINGS, ...this.semanticSearchMode.history };
|
|
41216
|
+
}
|
|
41217
|
+
}
|
|
41218
|
+
get aiAssistantHistorySettings() {
|
|
41219
|
+
if (!isPresent$1(this.aiAssistantMode?.history)) {
|
|
41220
|
+
return null;
|
|
41221
|
+
}
|
|
41222
|
+
if (typeof this.aiAssistantMode.history === 'boolean') {
|
|
41223
|
+
return this.aiAssistantMode.history ? DEFAULT_HISTORY_SETTINGS : null;
|
|
41224
|
+
}
|
|
41225
|
+
else {
|
|
41226
|
+
return { ...DEFAULT_HISTORY_SETTINGS, ...this.aiAssistantMode.history };
|
|
41227
|
+
}
|
|
41228
|
+
}
|
|
41229
|
+
get inputPlaceholder() {
|
|
41230
|
+
return this[`${this.selectedView}Placeholder`] || '';
|
|
41231
|
+
}
|
|
41232
|
+
set activeMode(value) {
|
|
41233
|
+
this._activeMode = value;
|
|
41234
|
+
this.updateSelectedView();
|
|
41235
|
+
}
|
|
41236
|
+
get activeMode() {
|
|
41237
|
+
return this._activeMode;
|
|
41238
|
+
}
|
|
41239
|
+
set history(value) {
|
|
41240
|
+
if (value === true || !isPresent$1(value)) {
|
|
41241
|
+
this._history = DEFAULT_HISTORY_SETTINGS;
|
|
41242
|
+
}
|
|
41243
|
+
else if (value === false) {
|
|
41244
|
+
this._history = null;
|
|
41245
|
+
}
|
|
41246
|
+
else {
|
|
41247
|
+
this._history = {
|
|
41248
|
+
size: value.size ?? DEFAULT_HISTORY_SETTINGS.size,
|
|
41249
|
+
timestampFormat: value.timestampFormat ?? DEFAULT_HISTORY_SETTINGS.timestampFormat
|
|
41250
|
+
};
|
|
41251
|
+
}
|
|
41252
|
+
}
|
|
41253
|
+
get history() {
|
|
41254
|
+
return this._history;
|
|
41255
|
+
}
|
|
41256
|
+
placeholder;
|
|
41257
|
+
set size(size) {
|
|
41258
|
+
const newSize = size || DEFAULT_SIZE;
|
|
41259
|
+
this.handleSizeClass(newSize);
|
|
41260
|
+
this._size = newSize;
|
|
41261
|
+
}
|
|
41262
|
+
get size() {
|
|
41263
|
+
return this._size;
|
|
41264
|
+
}
|
|
41265
|
+
promptSuggestionTemplate;
|
|
41266
|
+
historyItemTemplate;
|
|
41267
|
+
loading = false;
|
|
41268
|
+
open = new EventEmitter();
|
|
41269
|
+
close = new EventEmitter();
|
|
41270
|
+
focus = new EventEmitter();
|
|
41271
|
+
blur = new EventEmitter();
|
|
41272
|
+
aiAssistantPromptRequest = new EventEmitter();
|
|
41273
|
+
aiAssistantResponseSuccess = new EventEmitter();
|
|
41274
|
+
aiAssistantResponseError = new EventEmitter();
|
|
41275
|
+
aiAssistantCancelRequest = new EventEmitter();
|
|
41276
|
+
search = new EventEmitter();
|
|
41277
|
+
semanticSearch = new EventEmitter();
|
|
41278
|
+
modeChange = new EventEmitter();
|
|
41279
|
+
constructor(popupService, wrapper, cdr, zone, intl, ctx, aiRequestResponseService, http, renderer, columnInfoService, searchService) {
|
|
41280
|
+
this.popupService = popupService;
|
|
41281
|
+
this.wrapper = wrapper;
|
|
41282
|
+
this.cdr = cdr;
|
|
41283
|
+
this.zone = zone;
|
|
41284
|
+
this.intl = intl;
|
|
41285
|
+
this.ctx = ctx;
|
|
41286
|
+
this.aiRequestResponseService = aiRequestResponseService;
|
|
41287
|
+
this.http = http;
|
|
41288
|
+
this.renderer = renderer;
|
|
41289
|
+
this.columnInfoService = columnInfoService;
|
|
41290
|
+
this.searchService = searchService;
|
|
41291
|
+
}
|
|
41292
|
+
ngOnChanges(changes) {
|
|
41293
|
+
if (changes['history'] || changes['placeholder']) {
|
|
41294
|
+
this.updateModeSettingsFromSharedInputs();
|
|
41295
|
+
}
|
|
41296
|
+
if (changes['searchMode']) {
|
|
41297
|
+
this.updateSearchListData();
|
|
41298
|
+
this.updateSelectedView();
|
|
41299
|
+
this.updateHistoryData();
|
|
41300
|
+
}
|
|
41301
|
+
if (changes['semanticSearchMode']) {
|
|
41302
|
+
this.updateSearchListData();
|
|
41303
|
+
this.updateSelectedView();
|
|
41304
|
+
this.updateHistoryData();
|
|
41305
|
+
}
|
|
41306
|
+
if (changes['aiAssistantMode']) {
|
|
41307
|
+
this.updateSelectedView();
|
|
41308
|
+
this.updateHistoryData();
|
|
41309
|
+
this.speechToTextButton = this._aiAssistantMode?.speechToTextButton;
|
|
41310
|
+
}
|
|
41311
|
+
if (changes['activeMode']) {
|
|
41312
|
+
this.updateSelectedView();
|
|
41313
|
+
}
|
|
41314
|
+
}
|
|
41315
|
+
ngAfterViewInit() {
|
|
41316
|
+
// Preserve a flat columns array (fields) for highlight utilities.
|
|
41317
|
+
// Use leafNamedColumns as the canonical list of leaf columns with display titles.
|
|
41318
|
+
this.leafColumns = this.columnInfoService.leafNamedColumns || [];
|
|
41319
|
+
this.columns = this.leafColumns.map((col) => ({ field: col.field }));
|
|
41320
|
+
this.handleSizeClass(this._size);
|
|
41321
|
+
this.updateSearchListData();
|
|
41322
|
+
this.updateSelectedView();
|
|
41323
|
+
}
|
|
41324
|
+
ngOnDestroy() {
|
|
41325
|
+
this.destroyPopup();
|
|
41326
|
+
this.clearTypingTimeout();
|
|
41327
|
+
this.unsubscribeCurrentRequest();
|
|
41328
|
+
}
|
|
41329
|
+
focusableId = `k-${guid()}`;
|
|
41330
|
+
selectedView;
|
|
41331
|
+
isOpen = false;
|
|
41332
|
+
checkIcon = checkIcon;
|
|
41333
|
+
clockArrowRotateIcon = clockArrowRotateIcon;
|
|
41334
|
+
fileClockOutlineIcon = fileClockOutlineIcon;
|
|
41335
|
+
searchIcon = searchIcon;
|
|
41336
|
+
zoomSparkleIcon = zoomSparkleIcon;
|
|
41337
|
+
sparklesIcon = sparklesIcon;
|
|
41338
|
+
arrowUpOutlineIcon = arrowUpOutlineIcon;
|
|
41339
|
+
stopSmIcon = stopSmIcon;
|
|
41340
|
+
xIcon = xIcon;
|
|
41341
|
+
lightbulbOutlineIcon = lightbulbOutlineIcon;
|
|
41342
|
+
searchListData = [];
|
|
41343
|
+
aiAssistantHistory = [];
|
|
41344
|
+
searchHistory = [];
|
|
41345
|
+
semanticSearchHistory = [];
|
|
41346
|
+
get segmentedControlButtons() {
|
|
41347
|
+
const buttons = [];
|
|
41348
|
+
if ((this.searchMode?.enabled || this.semanticSearchMode?.enabled) && this.aiAssistantMode?.enabled) {
|
|
41349
|
+
if (this.searchMode?.enabled && !this.semanticSearchMode?.enabled) {
|
|
41350
|
+
buttons.push({ text: 'Search', svgIcon: searchIcon, icon: 'search', selected: this.selectedView === 'search' });
|
|
41351
|
+
}
|
|
41352
|
+
else if (!this.searchMode?.enabled && this.semanticSearchMode?.enabled) {
|
|
41353
|
+
buttons.push({ text: 'Search', svgIcon: zoomSparkleIcon, icon: 'zoom-sparkle', selected: this.selectedView === 'semanticSearch', iconInnerCssClass: this.selectedView === 'semanticSearch' ? 'k-accent-icon' : '' });
|
|
41354
|
+
}
|
|
41355
|
+
else if (this.searchMode?.enabled && this.semanticSearchMode?.enabled) {
|
|
41356
|
+
buttons.push({ text: 'Search', svgIcon: searchIcon, icon: 'search', selected: this.selectedView === 'search' || this.selectedView === 'semanticSearch', iconInnerCssClass: this.selectedView === 'semanticSearch' ? 'k-accent-icon' : '' });
|
|
41357
|
+
}
|
|
41358
|
+
buttons.push({ text: 'AI Assistant', svgIcon: sparklesIcon, icon: 'sparkles', selected: this.selectedView === 'aiAssistant', iconInnerCssClass: this.selectedView === 'aiAssistant' ? 'k-accent-icon' : '' });
|
|
41359
|
+
}
|
|
41360
|
+
return buttons;
|
|
41361
|
+
}
|
|
41362
|
+
get prefixIconName() {
|
|
41363
|
+
switch (this.selectedView) {
|
|
41364
|
+
case 'search':
|
|
41365
|
+
return 'search';
|
|
41366
|
+
case 'semanticSearch':
|
|
41367
|
+
return 'zoom-sparkle';
|
|
41368
|
+
case 'aiAssistant':
|
|
41369
|
+
return 'sparkles';
|
|
41370
|
+
default:
|
|
41371
|
+
return 'search';
|
|
41372
|
+
}
|
|
41373
|
+
}
|
|
41374
|
+
get prefixSVGIcon() {
|
|
41375
|
+
switch (this.selectedView) {
|
|
41376
|
+
case 'search':
|
|
41377
|
+
return this.searchIcon;
|
|
41378
|
+
case 'semanticSearch':
|
|
41379
|
+
return this.zoomSparkleIcon;
|
|
41380
|
+
case 'aiAssistant':
|
|
41381
|
+
return this.sparklesIcon;
|
|
41382
|
+
default:
|
|
41383
|
+
return this.searchIcon;
|
|
41384
|
+
}
|
|
41385
|
+
}
|
|
41386
|
+
messageFor(message) {
|
|
41387
|
+
return this.ctx.localization.get(message);
|
|
41388
|
+
}
|
|
41389
|
+
formatDate(date, format) {
|
|
41390
|
+
return this.intl.formatDate(date, format);
|
|
41391
|
+
}
|
|
41392
|
+
onModeChange(button) {
|
|
41393
|
+
let previousView;
|
|
41394
|
+
if (this.searchListData.length > 0) {
|
|
41395
|
+
previousView = this.searchListData.find(i => i.selected)?.text;
|
|
41396
|
+
}
|
|
41397
|
+
if (button.text === 'Search') {
|
|
41398
|
+
if (previousView === 'Search') {
|
|
41399
|
+
this.selectedView = 'search';
|
|
41400
|
+
}
|
|
41401
|
+
else if (previousView === 'Semantic Search') {
|
|
41402
|
+
this.selectedView = 'semanticSearch';
|
|
41403
|
+
}
|
|
41404
|
+
else if (this.searchMode?.enabled) {
|
|
41405
|
+
this.selectedView = 'search';
|
|
41406
|
+
}
|
|
41407
|
+
else if (this.semanticSearchMode?.enabled) {
|
|
41408
|
+
this.selectedView = 'semanticSearch';
|
|
41409
|
+
}
|
|
41410
|
+
}
|
|
41411
|
+
else if (button.text === 'AI Assistant') {
|
|
41412
|
+
this.selectedView = 'aiAssistant';
|
|
41413
|
+
}
|
|
41414
|
+
this.modeChange.emit(this.selectedView);
|
|
41415
|
+
this.clearValue();
|
|
41416
|
+
this.cdr.detectChanges();
|
|
41417
|
+
}
|
|
41418
|
+
onSearchItemClick(item) {
|
|
41419
|
+
this.searchListData.forEach(i => i.selected = false);
|
|
41420
|
+
this.searchListData.find(i => i.text === item.text).selected = true;
|
|
41421
|
+
this.selectedView = item.text === 'Search' ? 'search' : 'semanticSearch';
|
|
41422
|
+
this.modeChange.emit(this.selectedView);
|
|
41423
|
+
this.clearValue();
|
|
41424
|
+
this.cdr.markForCheck();
|
|
41425
|
+
}
|
|
41426
|
+
onListItemClick(item) {
|
|
41427
|
+
if (!this.selectedView) {
|
|
41428
|
+
return;
|
|
41429
|
+
}
|
|
41430
|
+
this.input.nativeElement.value = item;
|
|
41431
|
+
this.togglePopup(false);
|
|
41432
|
+
this.input.nativeElement.focus();
|
|
41433
|
+
if (this.selectedView === 'aiAssistant') {
|
|
41434
|
+
return;
|
|
41435
|
+
}
|
|
41436
|
+
let ev;
|
|
41437
|
+
const fields = this.searchMode?.fields.length > 0 ? this.searchMode.fields :
|
|
41438
|
+
this.ctx.grid.columnList.toArray().map((item) => item.field);
|
|
41439
|
+
const filters = [];
|
|
41440
|
+
fields.forEach(field => {
|
|
41441
|
+
filters.push({
|
|
41442
|
+
field,
|
|
41443
|
+
operator: 'contains',
|
|
41444
|
+
value: this.input.nativeElement.value
|
|
41445
|
+
});
|
|
41446
|
+
});
|
|
41447
|
+
const eventArgs = {
|
|
41448
|
+
searchValue: this.input.nativeElement.value,
|
|
41449
|
+
filters,
|
|
41450
|
+
logic: 'or'
|
|
41451
|
+
};
|
|
41452
|
+
if (this.selectedView === 'search') {
|
|
41453
|
+
ev = Object.assign(new SmartBoxSearchEvent(), eventArgs);
|
|
41454
|
+
}
|
|
41455
|
+
else if (this.selectedView === 'semanticSearch') {
|
|
41456
|
+
ev = { searchValue: this.input.nativeElement.value };
|
|
41457
|
+
}
|
|
41458
|
+
this[this.selectedView].emit(ev);
|
|
41459
|
+
if (this.selectedView === 'search' && !ev.isDefaultPrevented()) {
|
|
41460
|
+
this.zone.run(() => {
|
|
41461
|
+
if (this.input.nativeElement.value === '' || !this.input.nativeElement.value) {
|
|
41462
|
+
this.searchService.changes.next(undefined);
|
|
41463
|
+
}
|
|
41464
|
+
else {
|
|
41465
|
+
this.searchService.changes.next({ filters: ev.filters, logic: ev.logic });
|
|
41466
|
+
}
|
|
41467
|
+
});
|
|
41468
|
+
}
|
|
41469
|
+
if (this.input.nativeElement.value) {
|
|
41470
|
+
const historyItem = {
|
|
41471
|
+
text: this.input.nativeElement.value,
|
|
41472
|
+
timestamp: new Date(),
|
|
41473
|
+
format: this[`${this.selectedView}HistorySettings`].timestampFormat
|
|
41474
|
+
};
|
|
41475
|
+
this[`${this.selectedView}History`].unshift(historyItem);
|
|
41476
|
+
if (this[`${this.selectedView}History`]?.length > this[`${this.selectedView}HistorySettings`].size) {
|
|
41477
|
+
this[`${this.selectedView}History`].splice(this[`${this.selectedView}HistorySettings`].size);
|
|
41478
|
+
}
|
|
41479
|
+
}
|
|
41480
|
+
}
|
|
41481
|
+
handleInput = (_event) => {
|
|
41482
|
+
if (this.input.nativeElement.value) {
|
|
41483
|
+
this.togglePopup(false);
|
|
41484
|
+
}
|
|
41485
|
+
else {
|
|
41486
|
+
this.togglePopup(true);
|
|
41487
|
+
}
|
|
41488
|
+
this.clearTypingTimeout();
|
|
41489
|
+
if (this.selectedView === 'aiAssistant') {
|
|
41490
|
+
return;
|
|
41491
|
+
}
|
|
41492
|
+
this.handleInputValueChange();
|
|
41493
|
+
};
|
|
41494
|
+
handleInputValueChange() {
|
|
41495
|
+
if (!this.selectedView) {
|
|
41496
|
+
return;
|
|
41497
|
+
}
|
|
41498
|
+
const inputValue = this.input.nativeElement.value;
|
|
41499
|
+
let ev;
|
|
41500
|
+
let delay;
|
|
41501
|
+
if (this.selectedView === 'search') {
|
|
41502
|
+
const fields = this.searchMode.fields.length > 0 ? this.searchMode.fields :
|
|
41503
|
+
this.ctx.grid.columnList.toArray().map((item) => item.field);
|
|
41504
|
+
const filters = [];
|
|
41505
|
+
fields.forEach(field => {
|
|
41506
|
+
filters.push({
|
|
41507
|
+
field,
|
|
41508
|
+
operator: 'contains',
|
|
41509
|
+
value: inputValue
|
|
41510
|
+
});
|
|
41511
|
+
});
|
|
41512
|
+
const eventArgs = {
|
|
41513
|
+
searchValue: inputValue,
|
|
41514
|
+
filters,
|
|
41515
|
+
logic: 'or'
|
|
41516
|
+
};
|
|
41517
|
+
ev = Object.assign(new SmartBoxSearchEvent(), eventArgs);
|
|
41518
|
+
delay = this.searchMode.delay;
|
|
41519
|
+
}
|
|
41520
|
+
else if (this.selectedView === 'semanticSearch') {
|
|
41521
|
+
const fields = this.ctx.grid.columnList.toArray().map((item) => item.field);
|
|
41522
|
+
const filters = [];
|
|
41523
|
+
fields.forEach(field => {
|
|
41524
|
+
filters.push({
|
|
41525
|
+
field,
|
|
41526
|
+
operator: 'contains',
|
|
41527
|
+
value: inputValue
|
|
41528
|
+
});
|
|
41529
|
+
});
|
|
41530
|
+
ev = {
|
|
41531
|
+
searchValue: inputValue,
|
|
41532
|
+
filters,
|
|
41533
|
+
logic: 'or'
|
|
41534
|
+
};
|
|
41535
|
+
delay = this.semanticSearchMode.delay;
|
|
41536
|
+
}
|
|
41537
|
+
this.searchTypingTimeout = setTimeout(() => {
|
|
41538
|
+
this.zone.run(() => {
|
|
41539
|
+
this[this.selectedView].emit(ev);
|
|
41540
|
+
});
|
|
41541
|
+
if (this.selectedView === 'search' && !ev.isDefaultPrevented()) {
|
|
41542
|
+
this.zone.run(() => {
|
|
41543
|
+
if (inputValue === '' || !inputValue) {
|
|
41544
|
+
this.searchService.changes.next(undefined);
|
|
41545
|
+
}
|
|
41546
|
+
else {
|
|
41547
|
+
this.searchService.changes.next({ filters: ev.filters, logic: ev.logic });
|
|
41548
|
+
}
|
|
41549
|
+
});
|
|
41550
|
+
}
|
|
41551
|
+
if (inputValue) {
|
|
41552
|
+
const historyItem = {
|
|
41553
|
+
text: inputValue,
|
|
41554
|
+
timestamp: new Date(),
|
|
41555
|
+
format: this[`${this.selectedView}HistorySettings`].timestampFormat
|
|
41556
|
+
};
|
|
41557
|
+
this[`${this.selectedView}History`].unshift(historyItem);
|
|
41558
|
+
if (this[`${this.selectedView}History`]?.length > this[`${this.selectedView}HistorySettings`].size) {
|
|
41559
|
+
this[`${this.selectedView}History`].splice(this[`${this.selectedView}HistorySettings`].size);
|
|
41560
|
+
}
|
|
41561
|
+
}
|
|
41562
|
+
}, delay);
|
|
41563
|
+
}
|
|
41564
|
+
handleInputFocus = () => {
|
|
41565
|
+
if (hasObservers(this.focus)) {
|
|
41566
|
+
this.zone.run(() => {
|
|
41567
|
+
this.focus.emit();
|
|
41568
|
+
});
|
|
41569
|
+
}
|
|
41570
|
+
this.togglePopup(true);
|
|
41571
|
+
};
|
|
41572
|
+
handleInputBlur = () => {
|
|
41573
|
+
if (hasObservers(this.blur)) {
|
|
41574
|
+
this.zone.run(() => {
|
|
41575
|
+
this.blur.emit();
|
|
41576
|
+
});
|
|
41577
|
+
}
|
|
41578
|
+
this.togglePopup(false);
|
|
41579
|
+
};
|
|
41580
|
+
handleInputClick = () => {
|
|
41581
|
+
if (!this.input.nativeElement.value) {
|
|
41582
|
+
this.togglePopup(true);
|
|
41583
|
+
}
|
|
41584
|
+
};
|
|
41585
|
+
handleInputKeydown = (event) => {
|
|
41586
|
+
const code = normalizeKeys(event);
|
|
41587
|
+
const isEnter = code === Keys.Enter;
|
|
41588
|
+
if (!isEnter) {
|
|
41589
|
+
return;
|
|
41590
|
+
}
|
|
41591
|
+
if (this.selectedView === 'aiAssistant') {
|
|
41592
|
+
this.zone.run(() => {
|
|
41593
|
+
this.onPromptSubmit();
|
|
41594
|
+
});
|
|
41595
|
+
}
|
|
41596
|
+
else if (this.selectedView === 'semanticSearch') {
|
|
41597
|
+
this.zone.run(() => {
|
|
41598
|
+
this.clearTypingTimeout();
|
|
41599
|
+
this.handleInputValueChange();
|
|
41600
|
+
});
|
|
41601
|
+
}
|
|
41602
|
+
};
|
|
41603
|
+
onIconClick = () => {
|
|
41604
|
+
this.togglePopup(!this.isOpen);
|
|
41605
|
+
this.input.nativeElement.focus();
|
|
41606
|
+
};
|
|
41607
|
+
onIconMouseDown = (args) => {
|
|
41608
|
+
args.preventDefault();
|
|
41609
|
+
};
|
|
41610
|
+
clearButtonClick(event) {
|
|
41611
|
+
event.stopImmediatePropagation();
|
|
41612
|
+
this.clearValue();
|
|
41613
|
+
this.togglePopup(true);
|
|
41614
|
+
this.clearTypingTimeout();
|
|
41615
|
+
this.handleInputValueChange();
|
|
41616
|
+
}
|
|
41617
|
+
_searchMode;
|
|
41618
|
+
_semanticSearchMode;
|
|
41619
|
+
_aiAssistantMode;
|
|
41620
|
+
_activeMode = 'search';
|
|
41621
|
+
_history;
|
|
41622
|
+
_size = DEFAULT_SIZE;
|
|
41623
|
+
_speechToTextButton;
|
|
41624
|
+
popupRef;
|
|
41625
|
+
popupMouseDownHandler = (event) => event.preventDefault();
|
|
41626
|
+
requestData;
|
|
41627
|
+
currentRequestSubscription = null;
|
|
41628
|
+
columns = [];
|
|
41629
|
+
leafColumns = [];
|
|
41630
|
+
searchTypingTimeout;
|
|
41631
|
+
togglePopup(open) {
|
|
41632
|
+
const sameState = this.isOpen === open;
|
|
41633
|
+
if (sameState) {
|
|
41634
|
+
return;
|
|
41635
|
+
}
|
|
41636
|
+
this._toggle(open);
|
|
41637
|
+
}
|
|
41638
|
+
onPromptSubmit() {
|
|
41639
|
+
if (this.loading) {
|
|
41640
|
+
this.handleResponseCancel();
|
|
41641
|
+
return;
|
|
41642
|
+
}
|
|
41643
|
+
if (this.input.nativeElement.value.length === 0) {
|
|
41644
|
+
return;
|
|
41645
|
+
}
|
|
41646
|
+
this.loading = true;
|
|
41647
|
+
const historyItem = {
|
|
41648
|
+
text: this.input.nativeElement.value,
|
|
41649
|
+
timestamp: new Date(),
|
|
41650
|
+
format: this.aiAssistantHistorySettings?.timestampFormat
|
|
41651
|
+
};
|
|
41652
|
+
this.aiAssistantHistory.unshift(historyItem);
|
|
41653
|
+
if (this.aiAssistantHistory.length > this.aiAssistantHistorySettings?.size) {
|
|
41654
|
+
this.aiAssistantHistory.splice(this.aiAssistantHistorySettings.size);
|
|
41655
|
+
}
|
|
41656
|
+
this.unsubscribeCurrentRequest();
|
|
41657
|
+
this.requestData = {
|
|
41658
|
+
columns: [],
|
|
41659
|
+
promptMessage: this.input.nativeElement.value,
|
|
41660
|
+
url: this.aiAssistantMode.requestUrl,
|
|
41661
|
+
requestOptions: {
|
|
41662
|
+
...this.aiAssistantMode.requestOptions
|
|
41663
|
+
}
|
|
41664
|
+
};
|
|
41665
|
+
if (!this.aiAssistantMode.requestOptions.body) {
|
|
41666
|
+
this.requestData.requestOptions.body = this.aiRequestResponseService.buildRequestBody(this.requestData.promptMessage, this.requestData.requestOptions.role);
|
|
41667
|
+
}
|
|
41668
|
+
this.zone.run(() => {
|
|
41669
|
+
this.aiAssistantPromptRequest.emit({ requestData: this.requestData });
|
|
41670
|
+
});
|
|
41671
|
+
this.togglePopup(false);
|
|
41672
|
+
this.clearValue();
|
|
41673
|
+
if (!this.aiAssistantMode.requestUrl) {
|
|
41674
|
+
return;
|
|
41675
|
+
}
|
|
41676
|
+
this.currentRequestSubscription = this.sendPromptRequest().subscribe((res) => {
|
|
41677
|
+
if (res.body) {
|
|
41678
|
+
this.zone.run(() => {
|
|
41679
|
+
this.processResponse(res);
|
|
41680
|
+
this.loading = false;
|
|
41681
|
+
});
|
|
41682
|
+
}
|
|
41683
|
+
this.currentRequestSubscription = null;
|
|
41684
|
+
}, (error) => {
|
|
41685
|
+
this.zone.run(() => {
|
|
41686
|
+
this.handleError(error);
|
|
41687
|
+
this.loading = false;
|
|
41688
|
+
this.currentRequestSubscription = null;
|
|
41689
|
+
});
|
|
41690
|
+
});
|
|
41691
|
+
}
|
|
41692
|
+
onSpeechToTextResult(event) {
|
|
41693
|
+
if (event.alternatives && event.alternatives.length > 0) {
|
|
41694
|
+
if (!isPresent$1(this.input.nativeElement.value)) {
|
|
41695
|
+
this.clearValue();
|
|
41696
|
+
}
|
|
41697
|
+
const newValue = event.alternatives[0].transcript + ' ';
|
|
41698
|
+
this.input.nativeElement.value = newValue;
|
|
41699
|
+
}
|
|
41700
|
+
}
|
|
41701
|
+
onSpeechToTextError(event) {
|
|
41702
|
+
if (isDevMode()) {
|
|
41703
|
+
console.error('Speech to Text error:', event.errorMessage);
|
|
41704
|
+
}
|
|
41705
|
+
}
|
|
41706
|
+
get searchPlaceholder() {
|
|
41707
|
+
return this.searchMode?.placeholder || this.placeholder || this.messageFor('smartBoxSearchPlaceholder');
|
|
41708
|
+
}
|
|
41709
|
+
get semanticSearchPlaceholder() {
|
|
41710
|
+
return this.semanticSearchMode?.placeholder || this.placeholder || this.messageFor('smartBoxSemanticSearchPlaceholder');
|
|
41711
|
+
}
|
|
41712
|
+
get aiAssistantPlaceholder() {
|
|
41713
|
+
return this.aiAssistantMode?.placeholder || this.placeholder || this.messageFor('smartBoxAIAssistantPlaceholder');
|
|
41714
|
+
}
|
|
41715
|
+
get inputDisabled() {
|
|
41716
|
+
return !(this.searchMode?.enabled || this.semanticSearchMode?.enabled || this.aiAssistantMode?.enabled);
|
|
41717
|
+
}
|
|
41718
|
+
createPopup() {
|
|
41719
|
+
this.popupRef = this.popupService.open({
|
|
41720
|
+
anchor: this.wrapper.nativeElement,
|
|
41721
|
+
content: this.popupTemplate,
|
|
41722
|
+
popupClass: 'k-smart-box-popup',
|
|
41723
|
+
positionMode: 'absolute',
|
|
41724
|
+
margin: { horizontal: 0, vertical: 2 }
|
|
41725
|
+
});
|
|
41726
|
+
const popupWrapper = this.popupRef.popupElement;
|
|
41727
|
+
const { min, max } = this.popupWidth;
|
|
41728
|
+
popupWrapper.style.minWidth = min;
|
|
41729
|
+
popupWrapper.style.width = max;
|
|
41730
|
+
popupWrapper.addEventListener('mousedown', this.popupMouseDownHandler);
|
|
41731
|
+
this.popupRef.popupOpen.subscribe(() => {
|
|
41732
|
+
this.open.emit();
|
|
41733
|
+
});
|
|
41734
|
+
this.popupRef.popupClose.subscribe(() => {
|
|
41735
|
+
this.close.emit();
|
|
41736
|
+
});
|
|
41737
|
+
this.popupRef.popupAnchorViewportLeave.subscribe(() => this.togglePopup(false));
|
|
41738
|
+
}
|
|
41739
|
+
destroyPopup() {
|
|
41740
|
+
if (this.popupRef) {
|
|
41741
|
+
this.popupRef.popupElement
|
|
41742
|
+
.removeEventListener('mousedown', this.popupMouseDownHandler);
|
|
41743
|
+
this.popupRef.close();
|
|
41744
|
+
this.popupRef = null;
|
|
41745
|
+
}
|
|
41746
|
+
}
|
|
41747
|
+
_toggle(open) {
|
|
41748
|
+
this.isOpen = open;
|
|
41749
|
+
this.destroyPopup();
|
|
41750
|
+
if (this.isOpen) {
|
|
41751
|
+
this.createPopup();
|
|
41752
|
+
}
|
|
41753
|
+
}
|
|
41754
|
+
clearTypingTimeout() {
|
|
41755
|
+
if (this.searchTypingTimeout) {
|
|
41756
|
+
clearTimeout(this.searchTypingTimeout);
|
|
41757
|
+
this.searchTypingTimeout = null;
|
|
41758
|
+
}
|
|
41759
|
+
}
|
|
41760
|
+
sendPromptRequest() {
|
|
41761
|
+
const request = new HttpRequest(this.requestData.requestOptions.method, this.requestData.url, this.requestData.requestOptions.body, this.requestData.requestOptions);
|
|
41762
|
+
return this.http.request(request);
|
|
41763
|
+
}
|
|
41764
|
+
handleResponseCancel() {
|
|
41765
|
+
this.aiAssistantCancelRequest.emit();
|
|
41766
|
+
this.unsubscribeCurrentRequest();
|
|
41767
|
+
this.loading = false;
|
|
41768
|
+
}
|
|
41769
|
+
unsubscribeCurrentRequest() {
|
|
41770
|
+
if (this.currentRequestSubscription) {
|
|
41771
|
+
this.currentRequestSubscription.unsubscribe();
|
|
41772
|
+
this.currentRequestSubscription = null;
|
|
41773
|
+
}
|
|
41774
|
+
}
|
|
41775
|
+
get popupWidth() {
|
|
41776
|
+
let wrapperOffsetWidth = 0;
|
|
41777
|
+
if (isDocumentAvailable()) {
|
|
41778
|
+
wrapperOffsetWidth = this.wrapper.nativeElement.offsetWidth;
|
|
41779
|
+
}
|
|
41780
|
+
const width = wrapperOffsetWidth;
|
|
41781
|
+
const minWidth = isNaN(wrapperOffsetWidth) ? wrapperOffsetWidth : `${wrapperOffsetWidth}px`;
|
|
41782
|
+
const maxWidth = isNaN(width) ? width : `${width}px`;
|
|
41783
|
+
return { min: minWidth, max: maxWidth };
|
|
41784
|
+
}
|
|
41785
|
+
handleSizeClass(currentValue) {
|
|
41786
|
+
const elem = this.innerWrapper?.nativeElement;
|
|
41787
|
+
if (!isPresent$1(elem)) {
|
|
41788
|
+
return;
|
|
41789
|
+
}
|
|
41790
|
+
const prevSizeClass = `k-input-${SIZES[this._size]}`;
|
|
41791
|
+
const newSizeClass = `k-input-${SIZES[currentValue]}`;
|
|
41792
|
+
if (prevSizeClass) {
|
|
41793
|
+
this.renderer.removeClass(elem, prevSizeClass);
|
|
41794
|
+
}
|
|
41795
|
+
if (newSizeClass) {
|
|
41796
|
+
this.renderer.addClass(elem, newSizeClass);
|
|
41797
|
+
}
|
|
41798
|
+
}
|
|
41799
|
+
updateModeSettingsFromSharedInputs() {
|
|
41800
|
+
if (this._searchMode && typeof this._searchMode === 'object') {
|
|
41801
|
+
const currentSettings = { ...this._searchMode };
|
|
41802
|
+
const modeSpecificHistory = currentSettings.history;
|
|
41803
|
+
const modeSpecificPlaceholder = currentSettings.placeholder;
|
|
41804
|
+
delete currentSettings.history;
|
|
41805
|
+
delete currentSettings.placeholder;
|
|
41806
|
+
const settingsFromComponent = {
|
|
41807
|
+
placeholder: modeSpecificPlaceholder ?? this.placeholder,
|
|
41808
|
+
history: modeSpecificHistory ?? this.history
|
|
41809
|
+
};
|
|
41810
|
+
this._searchMode = { ...DEFAULT_SEARCH_SETTINGS, ...currentSettings, ...settingsFromComponent };
|
|
41811
|
+
}
|
|
41812
|
+
if (this._semanticSearchMode && typeof this._semanticSearchMode === 'object') {
|
|
41813
|
+
const currentSettings = { ...this._semanticSearchMode };
|
|
41814
|
+
const modeSpecificHistory = currentSettings.history;
|
|
41815
|
+
const modeSpecificPlaceholder = currentSettings.placeholder;
|
|
41816
|
+
delete currentSettings.history;
|
|
41817
|
+
delete currentSettings.placeholder;
|
|
41818
|
+
const settingsFromComponent = {
|
|
41819
|
+
placeholder: modeSpecificPlaceholder ?? this.placeholder,
|
|
41820
|
+
history: modeSpecificHistory ?? this.history
|
|
41821
|
+
};
|
|
41822
|
+
this._semanticSearchMode = { ...DEFAULT_SEMANTIC_SEARCH_SETTINGS, ...currentSettings, ...settingsFromComponent };
|
|
41823
|
+
}
|
|
41824
|
+
if (this._aiAssistantMode && typeof this._aiAssistantMode === 'object') {
|
|
41825
|
+
const currentSettings = { ...this._aiAssistantMode };
|
|
41826
|
+
const modeSpecificHistory = currentSettings.history;
|
|
41827
|
+
const modeSpecificPlaceholder = currentSettings.placeholder;
|
|
41828
|
+
delete currentSettings.history;
|
|
41829
|
+
delete currentSettings.placeholder;
|
|
41830
|
+
const settingsFromComponent = {
|
|
41831
|
+
placeholder: modeSpecificPlaceholder ?? this.placeholder,
|
|
41832
|
+
history: modeSpecificHistory ?? this.history
|
|
41833
|
+
};
|
|
41834
|
+
this._aiAssistantMode = { ...DEFAULT_AI_ASSISTANT_SETTINGS, ...currentSettings, ...settingsFromComponent };
|
|
41835
|
+
}
|
|
41836
|
+
}
|
|
41837
|
+
updateSearchListData() {
|
|
41838
|
+
if (!this.ctx?.localization) {
|
|
41839
|
+
return;
|
|
41840
|
+
}
|
|
41841
|
+
if (this.searchMode?.enabled && this.semanticSearchMode?.enabled) {
|
|
41842
|
+
this.searchListData = [
|
|
41843
|
+
{ text: this.messageFor('searchModeListItemText'), description: this.messageFor('searchModeListItemDescription'), selected: this.selectedView === 'search' },
|
|
41844
|
+
{ text: this.messageFor('semanticSearchModeListItemText'), description: this.messageFor('semanticSearchModeListItemDescription'), selected: this.selectedView === 'semanticSearch' }
|
|
41845
|
+
];
|
|
41846
|
+
}
|
|
41847
|
+
else {
|
|
41848
|
+
this.searchListData = [];
|
|
41849
|
+
}
|
|
41850
|
+
}
|
|
41851
|
+
updateSelectedView() {
|
|
41852
|
+
if (this._activeMode) {
|
|
41853
|
+
const modeSettings = this[`${this._activeMode}Mode`];
|
|
41854
|
+
if (modeSettings?.enabled) {
|
|
41855
|
+
this.selectedView = this._activeMode;
|
|
41856
|
+
return;
|
|
41857
|
+
}
|
|
41858
|
+
}
|
|
41859
|
+
if (this.selectedView && this[`${this.selectedView}Mode`]?.enabled) {
|
|
41860
|
+
return;
|
|
41861
|
+
}
|
|
41862
|
+
if (this.searchMode?.enabled) {
|
|
41863
|
+
this.selectedView = 'search';
|
|
41864
|
+
}
|
|
41865
|
+
else if (this.semanticSearchMode?.enabled) {
|
|
41866
|
+
this.selectedView = 'semanticSearch';
|
|
41867
|
+
}
|
|
41868
|
+
else if (this.aiAssistantMode?.enabled) {
|
|
41869
|
+
this.selectedView = 'aiAssistant';
|
|
41870
|
+
}
|
|
41871
|
+
else {
|
|
41872
|
+
this.selectedView = null;
|
|
41873
|
+
}
|
|
41874
|
+
}
|
|
41875
|
+
updateHistoryData() {
|
|
41876
|
+
if (this.searchHistorySettings && this.searchHistory.length > this.searchHistorySettings.size) {
|
|
41877
|
+
this.searchHistory.splice(this.searchHistorySettings.size);
|
|
41878
|
+
}
|
|
41879
|
+
if (this.semanticSearchHistorySettings && this.semanticSearchHistory.length > this.semanticSearchHistorySettings.size) {
|
|
41880
|
+
this.semanticSearchHistory.splice(this.semanticSearchHistorySettings.size);
|
|
41881
|
+
}
|
|
41882
|
+
if (this.aiAssistantHistorySettings && this.aiAssistantHistory.length > this.aiAssistantHistorySettings.size) {
|
|
41883
|
+
this.aiAssistantHistory.splice(this.aiAssistantHistorySettings.size);
|
|
41884
|
+
}
|
|
41885
|
+
if (this.searchHistorySettings && this.searchHistorySettings.timestampFormat !== this.searchHistory[0]?.format) {
|
|
41886
|
+
this.searchHistory = this.searchHistory.map(item => ({ ...item, format: this.searchHistorySettings.timestampFormat }));
|
|
41887
|
+
}
|
|
41888
|
+
if (this.semanticSearchHistorySettings && this.semanticSearchHistorySettings.timestampFormat !== this.semanticSearchHistory[0]?.format) {
|
|
41889
|
+
this.semanticSearchHistory = this.semanticSearchHistory.map(item => ({ ...item, format: this.semanticSearchHistorySettings.timestampFormat }));
|
|
41890
|
+
}
|
|
41891
|
+
if (this.aiAssistantHistorySettings && this.aiAssistantHistorySettings.timestampFormat !== this.aiAssistantHistory[0]?.format) {
|
|
41892
|
+
this.aiAssistantHistory = this.aiAssistantHistory.map(item => ({ ...item, format: this.aiAssistantHistorySettings.timestampFormat }));
|
|
41893
|
+
}
|
|
41894
|
+
}
|
|
41895
|
+
processResponse(response) {
|
|
41896
|
+
const responseBody = response.body || { commands: [] };
|
|
41897
|
+
const responseSuccessEvent = new GridSmartBoxResponseSuccessEvent(response);
|
|
41898
|
+
this.aiAssistantResponseSuccess.emit(responseSuccessEvent);
|
|
41899
|
+
this.aiRequestResponseService.processCommands(responseBody.commands || [], this.columns, this.leafColumns);
|
|
41900
|
+
}
|
|
41901
|
+
handleError(error) {
|
|
41902
|
+
const responseErrorEvent = new GridSmartBoxResponseErrorEvent(error);
|
|
41903
|
+
this.aiAssistantResponseError.emit(responseErrorEvent);
|
|
41904
|
+
}
|
|
41905
|
+
clearValue() {
|
|
41906
|
+
this.input.nativeElement.value = '';
|
|
41907
|
+
this.input.nativeElement.focus();
|
|
41908
|
+
}
|
|
41909
|
+
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 });
|
|
41910
|
+
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: `
|
|
41911
|
+
<span #innerWrapper
|
|
41912
|
+
class="k-smart-box k-input"
|
|
41913
|
+
[class.k-loading]="loading">
|
|
41914
|
+
@if (!inputDisabled) {
|
|
41915
|
+
<span class="k-input-prefix k-input-prefix-horizontal">
|
|
41916
|
+
<kendo-icon-wrapper
|
|
41917
|
+
class="k-icon"
|
|
41918
|
+
[name]="prefixIconName"
|
|
41919
|
+
[svgIcon]="prefixSVGIcon"
|
|
41920
|
+
[innerCssClass]="(selectedView === 'aiAssistant' || selectedView === 'semanticSearch') ? 'k-accent-icon' : ''"
|
|
41921
|
+
[kendoEventsOutsideAngular]="{
|
|
41922
|
+
click: onIconClick,
|
|
41923
|
+
mousedown: onIconMouseDown
|
|
41924
|
+
}">
|
|
41925
|
+
</kendo-icon-wrapper>
|
|
41926
|
+
</span>
|
|
41927
|
+
}
|
|
41928
|
+
<input #input
|
|
41929
|
+
type="text"
|
|
41930
|
+
class="k-input-inner"
|
|
41931
|
+
[class.k-disabled]="inputDisabled"
|
|
41932
|
+
[disabled]="inputDisabled"
|
|
41933
|
+
[id]="focusableId"
|
|
41934
|
+
[placeholder]="inputPlaceholder"
|
|
41935
|
+
[kendoEventsOutsideAngular]="{
|
|
41936
|
+
input: handleInput,
|
|
41937
|
+
focus: handleInputFocus,
|
|
41938
|
+
blur: handleInputBlur,
|
|
41939
|
+
click: handleInputClick,
|
|
41940
|
+
keydown: handleInputKeydown
|
|
41941
|
+
}"
|
|
41942
|
+
/>
|
|
41943
|
+
@if (input.value.length > 0 && (selectedView === 'search' || selectedView === 'semanticSearch')) {
|
|
41944
|
+
<span
|
|
41945
|
+
class="k-clear-value"
|
|
41946
|
+
[attr.title]="messageFor('smartBoxToolClearTitle')"
|
|
41947
|
+
role="button"
|
|
41948
|
+
tabindex="-1"
|
|
41949
|
+
(click)="clearButtonClick($event)"
|
|
41950
|
+
(mousedown)="$event.preventDefault()">
|
|
41951
|
+
<kendo-icon-wrapper
|
|
41952
|
+
class="k-icon"
|
|
41953
|
+
name="x"
|
|
41954
|
+
[svgIcon]="xIcon">
|
|
41955
|
+
</kendo-icon-wrapper>
|
|
41956
|
+
</span>
|
|
41957
|
+
}
|
|
41958
|
+
@if (selectedView === 'aiAssistant') {
|
|
41959
|
+
<span class="k-input-suffix k-input-suffix-horizontal">
|
|
41960
|
+
@if (speechToTextButton) {
|
|
41961
|
+
<button kendoSpeechToTextButton
|
|
41962
|
+
role="button"
|
|
41963
|
+
[continuous]="speechToTextButton?.continuous"
|
|
41964
|
+
[disabled]="speechToTextButton?.disabled"
|
|
41965
|
+
[fillMode]="speechToTextButton?.fillMode"
|
|
41966
|
+
[integrationMode]="speechToTextButton?.integrationMode"
|
|
41967
|
+
[interimResults]="speechToTextButton?.interimResults"
|
|
41968
|
+
[lang]="speechToTextButton?.lang"
|
|
41969
|
+
[maxAlternatives]="speechToTextButton?.maxAlternatives"
|
|
41970
|
+
[rounded]="speechToTextButton?.rounded"
|
|
41971
|
+
[size]="speechToTextButton?.size"
|
|
41972
|
+
[themeColor]="speechToTextButton?.themeColor"
|
|
41973
|
+
[attr.aria-label]="messageFor('smartBoxSpeechToTextButton')"
|
|
41974
|
+
[attr.title]="messageFor('smartBoxSpeechToTextButton')"
|
|
41975
|
+
[attr.aria-disabled]="speechToTextButton?.disabled"
|
|
41976
|
+
(error)="onSpeechToTextError($event)"
|
|
41977
|
+
(result)="onSpeechToTextResult($event)"
|
|
41978
|
+
></button>
|
|
41979
|
+
}
|
|
41980
|
+
<button kendoButton
|
|
41981
|
+
class="k-smart-box-send"
|
|
41982
|
+
[class.k-processing]="loading"
|
|
41983
|
+
[class.k-active]="loading"
|
|
41984
|
+
type="button"
|
|
41985
|
+
rounded="full"
|
|
41986
|
+
size="small"
|
|
41987
|
+
[attr.title]="messageFor('smartBoxSubmitPromptButton')"
|
|
41988
|
+
[attr.aria-label]="messageFor('smartBoxSubmitPromptButton')"
|
|
41989
|
+
[attr.aria-disabled]="input.value.length === 0"
|
|
41990
|
+
[svgIcon]="loading ? stopSmIcon : arrowUpOutlineIcon"
|
|
41991
|
+
[icon]="loading ? 'stop-sm' : 'arrow-up-outline'"
|
|
41992
|
+
[disabled]="input.value.length === 0"
|
|
41993
|
+
(click)="onPromptSubmit()">
|
|
41994
|
+
</button>
|
|
41995
|
+
</span>
|
|
41996
|
+
}
|
|
41997
|
+
</span>
|
|
41998
|
+
|
|
41999
|
+
<ng-template #popupTemplate>
|
|
42000
|
+
@if (segmentedControlButtons.length > 0) {
|
|
42001
|
+
<kendo-segmented-control
|
|
42002
|
+
[buttons]="segmentedControlButtons"
|
|
42003
|
+
(buttonClick)="onModeChange($event)">
|
|
42004
|
+
</kendo-segmented-control>
|
|
42005
|
+
}
|
|
42006
|
+
<div class="k-list k-list-md">
|
|
42007
|
+
<div class="k-list-content">
|
|
42008
|
+
<ul class="k-list-ul">
|
|
42009
|
+
@if ((selectedView === 'search' || selectedView === 'semanticSearch') && searchListData.length > 0) {
|
|
42010
|
+
@for (item of searchListData; track item) {
|
|
42011
|
+
<li class="k-list-item"
|
|
42012
|
+
(click)="onSearchItemClick(item)">
|
|
42013
|
+
@if (item.selected) {
|
|
42014
|
+
<kendo-icon-wrapper
|
|
42015
|
+
innerCssClass="k-list-item-icon"
|
|
42016
|
+
name="check"
|
|
42017
|
+
[svgIcon]="checkIcon"
|
|
42018
|
+
class="k-list-item-icon-wrapper">
|
|
42019
|
+
</kendo-icon-wrapper>
|
|
42020
|
+
}
|
|
42021
|
+
@if (item.text) {
|
|
42022
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42023
|
+
}
|
|
42024
|
+
@if (item.description) {
|
|
42025
|
+
<span class="k-list-item-description">{{item.description}}</span>
|
|
42026
|
+
}
|
|
42027
|
+
</li>
|
|
42028
|
+
}
|
|
42029
|
+
} @else if (selectedView === 'aiAssistant' && aiAssistantMode.promptSuggestions.length > 0) {
|
|
42030
|
+
<li class="k-list-group-item">
|
|
42031
|
+
<kendo-icon-wrapper
|
|
42032
|
+
innerCssClass="k-list-item-icon"
|
|
42033
|
+
name="lightbulb-outline"
|
|
42034
|
+
[svgIcon]="lightbulbOutlineIcon"
|
|
42035
|
+
class="k-list-item-icon-wrapper">
|
|
42036
|
+
</kendo-icon-wrapper>
|
|
42037
|
+
<span class="k-list-item-text">{{messageFor('smartBoxSuggestedPrompts')}}</span>
|
|
42038
|
+
</li>
|
|
42039
|
+
|
|
42040
|
+
@for (suggestion of aiAssistantMode.promptSuggestions; track $index) {
|
|
42041
|
+
@if (promptSuggestionTemplate?.templateRef) {
|
|
42042
|
+
<ng-template
|
|
42043
|
+
[templateContext]="{ templateRef: promptSuggestionTemplate?.templateRef, $implicit: suggestion }"
|
|
42044
|
+
></ng-template>
|
|
42045
|
+
} @else {
|
|
42046
|
+
<li class="k-list-item"
|
|
42047
|
+
(click)="onListItemClick(suggestion)"
|
|
42048
|
+
[attr.title]="suggestion">
|
|
42049
|
+
<span class="k-list-item-text">{{suggestion}}</span>
|
|
42050
|
+
</li>
|
|
42051
|
+
}
|
|
42052
|
+
}
|
|
42053
|
+
}
|
|
42054
|
+
</ul>
|
|
42055
|
+
|
|
42056
|
+
@if (selectedView === 'search') {
|
|
42057
|
+
@if (searchHistory.length === 0 && !semanticSearchMode?.enabled) {
|
|
42058
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42059
|
+
<kendo-icon-wrapper
|
|
42060
|
+
icon="file-report"
|
|
42061
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42062
|
+
size="xxxlarge">
|
|
42063
|
+
</kendo-icon-wrapper>
|
|
42064
|
+
<span>{{messageFor('smartBoxNoPreviousSearches')}}</span>
|
|
42065
|
+
</span>
|
|
42066
|
+
} @else if (searchHistory.length > 0) {
|
|
42067
|
+
<ul class="k-list-ul">
|
|
42068
|
+
<li class="k-list-group-item">
|
|
42069
|
+
<kendo-icon-wrapper
|
|
42070
|
+
innerCssClass="k-list-item-icon"
|
|
42071
|
+
name="clock-arrow-rotate"
|
|
42072
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42073
|
+
class="k-list-item-icon-wrapper">
|
|
42074
|
+
</kendo-icon-wrapper>
|
|
42075
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslySearched')}}</span>
|
|
42076
|
+
</li>
|
|
42077
|
+
|
|
42078
|
+
@for (item of searchHistory; track $index) {
|
|
42079
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42080
|
+
<ng-template
|
|
42081
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42082
|
+
></ng-template>
|
|
42083
|
+
} @else {
|
|
42084
|
+
<li class="k-list-item"
|
|
42085
|
+
(click)="onListItemClick(item.text)"
|
|
42086
|
+
[attr.title]="item.text">
|
|
42087
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42088
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, searchHistorySettings?.timestampFormat)}}</span>
|
|
42089
|
+
</li>
|
|
42090
|
+
}
|
|
42091
|
+
}
|
|
42092
|
+
</ul>
|
|
42093
|
+
}
|
|
42094
|
+
} @else if (selectedView === 'semanticSearch') {
|
|
42095
|
+
@if (semanticSearchHistory.length === 0 && !searchMode?.enabled) {
|
|
42096
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42097
|
+
<kendo-icon-wrapper
|
|
42098
|
+
icon="file-report"
|
|
42099
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42100
|
+
size="xxxlarge">
|
|
42101
|
+
</kendo-icon-wrapper>
|
|
42102
|
+
<span>{{messageFor('smartBoxNoPreviousSearches')}}</span>
|
|
42103
|
+
</span>
|
|
42104
|
+
} @else if (semanticSearchHistory.length > 0) {
|
|
42105
|
+
<ul class="k-list-ul">
|
|
42106
|
+
<li class="k-list-group-item">
|
|
42107
|
+
<kendo-icon-wrapper
|
|
42108
|
+
innerCssClass="k-list-item-icon"
|
|
42109
|
+
name="clock-arrow-rotate"
|
|
42110
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42111
|
+
class="k-list-item-icon-wrapper">
|
|
42112
|
+
</kendo-icon-wrapper>
|
|
42113
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslySearched')}}</span>
|
|
42114
|
+
</li>
|
|
42115
|
+
|
|
42116
|
+
@for (item of semanticSearchHistory; track $index) {
|
|
42117
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42118
|
+
<ng-template
|
|
42119
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42120
|
+
></ng-template>
|
|
42121
|
+
} @else {
|
|
42122
|
+
<li class="k-list-item"
|
|
42123
|
+
(click)="onListItemClick(item.text)"
|
|
42124
|
+
[attr.title]="item.text">
|
|
42125
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42126
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, semanticSearchHistorySettings?.timestampFormat)}}</span>
|
|
42127
|
+
</li>
|
|
42128
|
+
}
|
|
42129
|
+
}
|
|
42130
|
+
</ul>
|
|
42131
|
+
}
|
|
42132
|
+
} @else if (selectedView === 'aiAssistant') {
|
|
42133
|
+
@if (aiAssistantHistory.length === 0 && aiAssistantMode?.promptSuggestions.length === 0) {
|
|
42134
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42135
|
+
<kendo-icon-wrapper
|
|
42136
|
+
icon="file-report"
|
|
42137
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42138
|
+
size="xxxlarge">
|
|
42139
|
+
</kendo-icon-wrapper>
|
|
42140
|
+
<span>{{messageFor('smartBoxNoPreviousPrompts')}}</span>
|
|
42141
|
+
</span>
|
|
42142
|
+
} @else if (aiAssistantHistory.length > 0) {
|
|
42143
|
+
<ul class="k-list-ul">
|
|
42144
|
+
<li class="k-list-group-item">
|
|
42145
|
+
<kendo-icon-wrapper
|
|
42146
|
+
innerCssClass="k-list-item-icon"
|
|
42147
|
+
name="clock-arrow-rotate"
|
|
42148
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42149
|
+
class="k-list-item-icon-wrapper">
|
|
42150
|
+
</kendo-icon-wrapper>
|
|
42151
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslyAsked')}}</span>
|
|
42152
|
+
</li>
|
|
42153
|
+
|
|
42154
|
+
@for (item of aiAssistantHistory; track $index) {
|
|
42155
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42156
|
+
<ng-template
|
|
42157
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42158
|
+
></ng-template>
|
|
42159
|
+
} @else {
|
|
42160
|
+
<li class="k-list-item"
|
|
42161
|
+
(click)="onListItemClick(item.text)"
|
|
42162
|
+
[attr.title]="item.text">
|
|
42163
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42164
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, aiAssistantHistorySettings?.timestampFormat)}}</span>
|
|
42165
|
+
</li>
|
|
42166
|
+
}
|
|
42167
|
+
}
|
|
42168
|
+
</ul>
|
|
42169
|
+
}
|
|
42170
|
+
}
|
|
42171
|
+
</div>
|
|
42172
|
+
</div>
|
|
42173
|
+
</ng-template>
|
|
42174
|
+
`, 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"] }] });
|
|
42175
|
+
}
|
|
42176
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SmartBoxComponent, decorators: [{
|
|
42177
|
+
type: Component,
|
|
42178
|
+
args: [{
|
|
42179
|
+
selector: 'kendo-smartbox',
|
|
42180
|
+
standalone: true,
|
|
42181
|
+
imports: [SegmentedControlComponent, EventsOutsideAngularDirective, IconWrapperComponent, KENDO_BUTTONS, TemplateContextDirective],
|
|
42182
|
+
providers: [DataService, SelectionService$1, NavigationService$1, DisabledItemsService],
|
|
42183
|
+
template: `
|
|
42184
|
+
<span #innerWrapper
|
|
42185
|
+
class="k-smart-box k-input"
|
|
42186
|
+
[class.k-loading]="loading">
|
|
42187
|
+
@if (!inputDisabled) {
|
|
42188
|
+
<span class="k-input-prefix k-input-prefix-horizontal">
|
|
42189
|
+
<kendo-icon-wrapper
|
|
42190
|
+
class="k-icon"
|
|
42191
|
+
[name]="prefixIconName"
|
|
42192
|
+
[svgIcon]="prefixSVGIcon"
|
|
42193
|
+
[innerCssClass]="(selectedView === 'aiAssistant' || selectedView === 'semanticSearch') ? 'k-accent-icon' : ''"
|
|
42194
|
+
[kendoEventsOutsideAngular]="{
|
|
42195
|
+
click: onIconClick,
|
|
42196
|
+
mousedown: onIconMouseDown
|
|
42197
|
+
}">
|
|
42198
|
+
</kendo-icon-wrapper>
|
|
42199
|
+
</span>
|
|
42200
|
+
}
|
|
42201
|
+
<input #input
|
|
42202
|
+
type="text"
|
|
42203
|
+
class="k-input-inner"
|
|
42204
|
+
[class.k-disabled]="inputDisabled"
|
|
42205
|
+
[disabled]="inputDisabled"
|
|
42206
|
+
[id]="focusableId"
|
|
42207
|
+
[placeholder]="inputPlaceholder"
|
|
42208
|
+
[kendoEventsOutsideAngular]="{
|
|
42209
|
+
input: handleInput,
|
|
42210
|
+
focus: handleInputFocus,
|
|
42211
|
+
blur: handleInputBlur,
|
|
42212
|
+
click: handleInputClick,
|
|
42213
|
+
keydown: handleInputKeydown
|
|
42214
|
+
}"
|
|
42215
|
+
/>
|
|
42216
|
+
@if (input.value.length > 0 && (selectedView === 'search' || selectedView === 'semanticSearch')) {
|
|
42217
|
+
<span
|
|
42218
|
+
class="k-clear-value"
|
|
42219
|
+
[attr.title]="messageFor('smartBoxToolClearTitle')"
|
|
42220
|
+
role="button"
|
|
42221
|
+
tabindex="-1"
|
|
42222
|
+
(click)="clearButtonClick($event)"
|
|
42223
|
+
(mousedown)="$event.preventDefault()">
|
|
42224
|
+
<kendo-icon-wrapper
|
|
42225
|
+
class="k-icon"
|
|
42226
|
+
name="x"
|
|
42227
|
+
[svgIcon]="xIcon">
|
|
42228
|
+
</kendo-icon-wrapper>
|
|
42229
|
+
</span>
|
|
42230
|
+
}
|
|
42231
|
+
@if (selectedView === 'aiAssistant') {
|
|
42232
|
+
<span class="k-input-suffix k-input-suffix-horizontal">
|
|
42233
|
+
@if (speechToTextButton) {
|
|
42234
|
+
<button kendoSpeechToTextButton
|
|
42235
|
+
role="button"
|
|
42236
|
+
[continuous]="speechToTextButton?.continuous"
|
|
42237
|
+
[disabled]="speechToTextButton?.disabled"
|
|
42238
|
+
[fillMode]="speechToTextButton?.fillMode"
|
|
42239
|
+
[integrationMode]="speechToTextButton?.integrationMode"
|
|
42240
|
+
[interimResults]="speechToTextButton?.interimResults"
|
|
42241
|
+
[lang]="speechToTextButton?.lang"
|
|
42242
|
+
[maxAlternatives]="speechToTextButton?.maxAlternatives"
|
|
42243
|
+
[rounded]="speechToTextButton?.rounded"
|
|
42244
|
+
[size]="speechToTextButton?.size"
|
|
42245
|
+
[themeColor]="speechToTextButton?.themeColor"
|
|
42246
|
+
[attr.aria-label]="messageFor('smartBoxSpeechToTextButton')"
|
|
42247
|
+
[attr.title]="messageFor('smartBoxSpeechToTextButton')"
|
|
42248
|
+
[attr.aria-disabled]="speechToTextButton?.disabled"
|
|
42249
|
+
(error)="onSpeechToTextError($event)"
|
|
42250
|
+
(result)="onSpeechToTextResult($event)"
|
|
42251
|
+
></button>
|
|
42252
|
+
}
|
|
42253
|
+
<button kendoButton
|
|
42254
|
+
class="k-smart-box-send"
|
|
42255
|
+
[class.k-processing]="loading"
|
|
42256
|
+
[class.k-active]="loading"
|
|
42257
|
+
type="button"
|
|
42258
|
+
rounded="full"
|
|
42259
|
+
size="small"
|
|
42260
|
+
[attr.title]="messageFor('smartBoxSubmitPromptButton')"
|
|
42261
|
+
[attr.aria-label]="messageFor('smartBoxSubmitPromptButton')"
|
|
42262
|
+
[attr.aria-disabled]="input.value.length === 0"
|
|
42263
|
+
[svgIcon]="loading ? stopSmIcon : arrowUpOutlineIcon"
|
|
42264
|
+
[icon]="loading ? 'stop-sm' : 'arrow-up-outline'"
|
|
42265
|
+
[disabled]="input.value.length === 0"
|
|
42266
|
+
(click)="onPromptSubmit()">
|
|
42267
|
+
</button>
|
|
42268
|
+
</span>
|
|
42269
|
+
}
|
|
42270
|
+
</span>
|
|
42271
|
+
|
|
42272
|
+
<ng-template #popupTemplate>
|
|
42273
|
+
@if (segmentedControlButtons.length > 0) {
|
|
42274
|
+
<kendo-segmented-control
|
|
42275
|
+
[buttons]="segmentedControlButtons"
|
|
42276
|
+
(buttonClick)="onModeChange($event)">
|
|
42277
|
+
</kendo-segmented-control>
|
|
42278
|
+
}
|
|
42279
|
+
<div class="k-list k-list-md">
|
|
42280
|
+
<div class="k-list-content">
|
|
42281
|
+
<ul class="k-list-ul">
|
|
42282
|
+
@if ((selectedView === 'search' || selectedView === 'semanticSearch') && searchListData.length > 0) {
|
|
42283
|
+
@for (item of searchListData; track item) {
|
|
42284
|
+
<li class="k-list-item"
|
|
42285
|
+
(click)="onSearchItemClick(item)">
|
|
42286
|
+
@if (item.selected) {
|
|
42287
|
+
<kendo-icon-wrapper
|
|
42288
|
+
innerCssClass="k-list-item-icon"
|
|
42289
|
+
name="check"
|
|
42290
|
+
[svgIcon]="checkIcon"
|
|
42291
|
+
class="k-list-item-icon-wrapper">
|
|
42292
|
+
</kendo-icon-wrapper>
|
|
42293
|
+
}
|
|
42294
|
+
@if (item.text) {
|
|
42295
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42296
|
+
}
|
|
42297
|
+
@if (item.description) {
|
|
42298
|
+
<span class="k-list-item-description">{{item.description}}</span>
|
|
42299
|
+
}
|
|
42300
|
+
</li>
|
|
42301
|
+
}
|
|
42302
|
+
} @else if (selectedView === 'aiAssistant' && aiAssistantMode.promptSuggestions.length > 0) {
|
|
42303
|
+
<li class="k-list-group-item">
|
|
42304
|
+
<kendo-icon-wrapper
|
|
42305
|
+
innerCssClass="k-list-item-icon"
|
|
42306
|
+
name="lightbulb-outline"
|
|
42307
|
+
[svgIcon]="lightbulbOutlineIcon"
|
|
42308
|
+
class="k-list-item-icon-wrapper">
|
|
42309
|
+
</kendo-icon-wrapper>
|
|
42310
|
+
<span class="k-list-item-text">{{messageFor('smartBoxSuggestedPrompts')}}</span>
|
|
42311
|
+
</li>
|
|
42312
|
+
|
|
42313
|
+
@for (suggestion of aiAssistantMode.promptSuggestions; track $index) {
|
|
42314
|
+
@if (promptSuggestionTemplate?.templateRef) {
|
|
42315
|
+
<ng-template
|
|
42316
|
+
[templateContext]="{ templateRef: promptSuggestionTemplate?.templateRef, $implicit: suggestion }"
|
|
42317
|
+
></ng-template>
|
|
42318
|
+
} @else {
|
|
42319
|
+
<li class="k-list-item"
|
|
42320
|
+
(click)="onListItemClick(suggestion)"
|
|
42321
|
+
[attr.title]="suggestion">
|
|
42322
|
+
<span class="k-list-item-text">{{suggestion}}</span>
|
|
42323
|
+
</li>
|
|
42324
|
+
}
|
|
42325
|
+
}
|
|
42326
|
+
}
|
|
42327
|
+
</ul>
|
|
42328
|
+
|
|
42329
|
+
@if (selectedView === 'search') {
|
|
42330
|
+
@if (searchHistory.length === 0 && !semanticSearchMode?.enabled) {
|
|
42331
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42332
|
+
<kendo-icon-wrapper
|
|
42333
|
+
icon="file-report"
|
|
42334
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42335
|
+
size="xxxlarge">
|
|
42336
|
+
</kendo-icon-wrapper>
|
|
42337
|
+
<span>{{messageFor('smartBoxNoPreviousSearches')}}</span>
|
|
42338
|
+
</span>
|
|
42339
|
+
} @else if (searchHistory.length > 0) {
|
|
42340
|
+
<ul class="k-list-ul">
|
|
42341
|
+
<li class="k-list-group-item">
|
|
42342
|
+
<kendo-icon-wrapper
|
|
42343
|
+
innerCssClass="k-list-item-icon"
|
|
42344
|
+
name="clock-arrow-rotate"
|
|
42345
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42346
|
+
class="k-list-item-icon-wrapper">
|
|
42347
|
+
</kendo-icon-wrapper>
|
|
42348
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslySearched')}}</span>
|
|
42349
|
+
</li>
|
|
42350
|
+
|
|
42351
|
+
@for (item of searchHistory; track $index) {
|
|
42352
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42353
|
+
<ng-template
|
|
42354
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42355
|
+
></ng-template>
|
|
42356
|
+
} @else {
|
|
42357
|
+
<li class="k-list-item"
|
|
42358
|
+
(click)="onListItemClick(item.text)"
|
|
42359
|
+
[attr.title]="item.text">
|
|
42360
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42361
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, searchHistorySettings?.timestampFormat)}}</span>
|
|
42362
|
+
</li>
|
|
42363
|
+
}
|
|
42364
|
+
}
|
|
42365
|
+
</ul>
|
|
42366
|
+
}
|
|
42367
|
+
} @else if (selectedView === 'semanticSearch') {
|
|
42368
|
+
@if (semanticSearchHistory.length === 0 && !searchMode?.enabled) {
|
|
42369
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42370
|
+
<kendo-icon-wrapper
|
|
42371
|
+
icon="file-report"
|
|
42372
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42373
|
+
size="xxxlarge">
|
|
42374
|
+
</kendo-icon-wrapper>
|
|
42375
|
+
<span>{{messageFor('smartBoxNoPreviousSearches')}}</span>
|
|
42376
|
+
</span>
|
|
42377
|
+
} @else if (semanticSearchHistory.length > 0) {
|
|
42378
|
+
<ul class="k-list-ul">
|
|
42379
|
+
<li class="k-list-group-item">
|
|
42380
|
+
<kendo-icon-wrapper
|
|
42381
|
+
innerCssClass="k-list-item-icon"
|
|
42382
|
+
name="clock-arrow-rotate"
|
|
42383
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42384
|
+
class="k-list-item-icon-wrapper">
|
|
42385
|
+
</kendo-icon-wrapper>
|
|
42386
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslySearched')}}</span>
|
|
42387
|
+
</li>
|
|
42388
|
+
|
|
42389
|
+
@for (item of semanticSearchHistory; track $index) {
|
|
42390
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42391
|
+
<ng-template
|
|
42392
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42393
|
+
></ng-template>
|
|
42394
|
+
} @else {
|
|
42395
|
+
<li class="k-list-item"
|
|
42396
|
+
(click)="onListItemClick(item.text)"
|
|
42397
|
+
[attr.title]="item.text">
|
|
42398
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42399
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, semanticSearchHistorySettings?.timestampFormat)}}</span>
|
|
42400
|
+
</li>
|
|
42401
|
+
}
|
|
42402
|
+
}
|
|
42403
|
+
</ul>
|
|
42404
|
+
}
|
|
42405
|
+
} @else if (selectedView === 'aiAssistant') {
|
|
42406
|
+
@if (aiAssistantHistory.length === 0 && aiAssistantMode?.promptSuggestions.length === 0) {
|
|
42407
|
+
<span class="k-no-data k-smart-box-no-data">
|
|
42408
|
+
<kendo-icon-wrapper
|
|
42409
|
+
icon="file-report"
|
|
42410
|
+
[svgIcon]="fileClockOutlineIcon"
|
|
42411
|
+
size="xxxlarge">
|
|
42412
|
+
</kendo-icon-wrapper>
|
|
42413
|
+
<span>{{messageFor('smartBoxNoPreviousPrompts')}}</span>
|
|
42414
|
+
</span>
|
|
42415
|
+
} @else if (aiAssistantHistory.length > 0) {
|
|
42416
|
+
<ul class="k-list-ul">
|
|
42417
|
+
<li class="k-list-group-item">
|
|
42418
|
+
<kendo-icon-wrapper
|
|
42419
|
+
innerCssClass="k-list-item-icon"
|
|
42420
|
+
name="clock-arrow-rotate"
|
|
42421
|
+
[svgIcon]="clockArrowRotateIcon"
|
|
42422
|
+
class="k-list-item-icon-wrapper">
|
|
42423
|
+
</kendo-icon-wrapper>
|
|
42424
|
+
<span class="k-list-item-text">{{messageFor('smartBoxPreviouslyAsked')}}</span>
|
|
42425
|
+
</li>
|
|
42426
|
+
|
|
42427
|
+
@for (item of aiAssistantHistory; track $index) {
|
|
42428
|
+
@if (historyItemTemplate?.templateRef) {
|
|
42429
|
+
<ng-template
|
|
42430
|
+
[templateContext]="{ templateRef: historyItemTemplate?.templateRef, $implicit: item }"
|
|
42431
|
+
></ng-template>
|
|
42432
|
+
} @else {
|
|
42433
|
+
<li class="k-list-item"
|
|
42434
|
+
(click)="onListItemClick(item.text)"
|
|
42435
|
+
[attr.title]="item.text">
|
|
42436
|
+
<span class="k-list-item-text">{{item.text}}</span>
|
|
42437
|
+
<span class="k-list-item-description">{{formatDate(item.timestamp, aiAssistantHistorySettings?.timestampFormat)}}</span>
|
|
42438
|
+
</li>
|
|
42439
|
+
}
|
|
42440
|
+
}
|
|
42441
|
+
</ul>
|
|
42442
|
+
}
|
|
42443
|
+
}
|
|
42444
|
+
</div>
|
|
42445
|
+
</div>
|
|
42446
|
+
</ng-template>
|
|
42447
|
+
`
|
|
42448
|
+
}]
|
|
42449
|
+
}], 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: [{
|
|
42450
|
+
type: ViewChild,
|
|
42451
|
+
args: ['popupTemplate']
|
|
42452
|
+
}], input: [{
|
|
42453
|
+
type: ViewChild,
|
|
42454
|
+
args: ['input']
|
|
42455
|
+
}], innerWrapper: [{
|
|
42456
|
+
type: ViewChild,
|
|
42457
|
+
args: ['innerWrapper']
|
|
42458
|
+
}], searchMode: [{
|
|
42459
|
+
type: Input
|
|
42460
|
+
}], semanticSearchMode: [{
|
|
42461
|
+
type: Input
|
|
42462
|
+
}], aiAssistantMode: [{
|
|
42463
|
+
type: Input
|
|
42464
|
+
}], activeMode: [{
|
|
42465
|
+
type: Input
|
|
42466
|
+
}], history: [{
|
|
42467
|
+
type: Input
|
|
42468
|
+
}], placeholder: [{
|
|
42469
|
+
type: Input
|
|
42470
|
+
}], size: [{
|
|
42471
|
+
type: Input
|
|
42472
|
+
}], promptSuggestionTemplate: [{
|
|
42473
|
+
type: Input
|
|
42474
|
+
}], historyItemTemplate: [{
|
|
42475
|
+
type: Input
|
|
42476
|
+
}], loading: [{
|
|
42477
|
+
type: Input
|
|
42478
|
+
}], open: [{
|
|
42479
|
+
type: Output
|
|
42480
|
+
}], close: [{
|
|
42481
|
+
type: Output
|
|
42482
|
+
}], focus: [{
|
|
42483
|
+
type: Output
|
|
42484
|
+
}], blur: [{
|
|
42485
|
+
type: Output
|
|
42486
|
+
}], aiAssistantPromptRequest: [{
|
|
42487
|
+
type: Output
|
|
42488
|
+
}], aiAssistantResponseSuccess: [{
|
|
42489
|
+
type: Output
|
|
42490
|
+
}], aiAssistantResponseError: [{
|
|
42491
|
+
type: Output
|
|
42492
|
+
}], aiAssistantCancelRequest: [{
|
|
42493
|
+
type: Output
|
|
42494
|
+
}], search: [{
|
|
42495
|
+
type: Output
|
|
42496
|
+
}], semanticSearch: [{
|
|
42497
|
+
type: Output
|
|
42498
|
+
}], modeChange: [{
|
|
42499
|
+
type: Output
|
|
42500
|
+
}] } });
|
|
42501
|
+
|
|
42502
|
+
/**
|
|
42503
|
+
* Represents the toolbar tool for showing a smart bar.
|
|
42504
|
+
* Use this component inside a ToolbarComponent in the Grid.
|
|
42505
|
+
*
|
|
42506
|
+
* @example
|
|
42507
|
+
* ```html
|
|
42508
|
+
* <kendo-grid>
|
|
42509
|
+
* <kendo-toolbar>
|
|
42510
|
+
* <kendo-grid-smartbox-tool></kendo-grid-smartbox-tool>
|
|
42511
|
+
* </kendo-toolbar>
|
|
42512
|
+
* </kendo-grid>
|
|
42513
|
+
* ```
|
|
42514
|
+
*/
|
|
42515
|
+
class SmartBoxToolbarToolComponent extends ToolBarToolComponent {
|
|
42516
|
+
promptSuggestionTemplate;
|
|
42517
|
+
historyItemTemplate;
|
|
42518
|
+
/**
|
|
42519
|
+
* Controls the visibility and settings of the Search mode. By default, the mode is enabled.
|
|
42520
|
+
*
|
|
42521
|
+
* @default true
|
|
42522
|
+
*/
|
|
42523
|
+
searchMode = true;
|
|
42524
|
+
/**
|
|
42525
|
+
* Controls the visibility and settings of the Semantic Search mode. By default, the mode is disabled.
|
|
42526
|
+
*
|
|
42527
|
+
* @default false
|
|
42528
|
+
*/
|
|
42529
|
+
semanticSearchMode = false;
|
|
42530
|
+
/**
|
|
42531
|
+
* Controls the visibility and settings of the AI Assistant mode. By default, the mode is disabled.
|
|
42532
|
+
*
|
|
42533
|
+
* @default false
|
|
42534
|
+
*/
|
|
42535
|
+
aiAssistantMode = false;
|
|
42536
|
+
/**
|
|
42537
|
+
* Sets the initially active mode of the tool.
|
|
42538
|
+
*
|
|
42539
|
+
* @default 'search'
|
|
42540
|
+
*/
|
|
42541
|
+
activeMode = 'search';
|
|
42542
|
+
/**
|
|
42543
|
+
* Controls the visibility and settings of the history for each mode.
|
|
42544
|
+
*/
|
|
42545
|
+
history;
|
|
42546
|
+
/**
|
|
42547
|
+
* Sets the placeholder of the input element in the SmartBox and applies to all modes.
|
|
42548
|
+
*/
|
|
42549
|
+
placeholder;
|
|
42550
|
+
/**
|
|
42551
|
+
* Specifies the padding of the input.
|
|
42552
|
+
*
|
|
42553
|
+
* @default 'medium'
|
|
42554
|
+
*/
|
|
42555
|
+
size;
|
|
42556
|
+
/**
|
|
42557
|
+
* Emits when the SmartBox tool opens.
|
|
42558
|
+
*/
|
|
42559
|
+
open = new EventEmitter();
|
|
42560
|
+
/**
|
|
42561
|
+
* Emits when the SmartBox tool closes.
|
|
42562
|
+
*/
|
|
42563
|
+
close = new EventEmitter();
|
|
42564
|
+
/**
|
|
42565
|
+
* Emits when the SmartBox tool input is focused.
|
|
42566
|
+
*/
|
|
42567
|
+
inputFocus = new EventEmitter();
|
|
42568
|
+
/**
|
|
42569
|
+
* Emits when the SmartBox tool input is blurred.
|
|
42570
|
+
*/
|
|
42571
|
+
inputBlur = new EventEmitter();
|
|
42572
|
+
/**
|
|
42573
|
+
* Emits before the SmartBox tool sends the AI request.
|
|
42574
|
+
* - When you provide a `requestUrl`, you can handle the event to modify the request options.
|
|
42575
|
+
* - When you do not provide a `requestUrl`, you can handle the event to perform an entirely custom request.
|
|
42576
|
+
*/
|
|
42577
|
+
aiAssistantPromptRequest = new EventEmitter();
|
|
42578
|
+
/**
|
|
42579
|
+
* Emits when the SmartBox tool completes the AI request successfully.
|
|
42580
|
+
* The event contains the response from the AI service and is preventable to allow stopping the default response handling.
|
|
42581
|
+
*/
|
|
42582
|
+
aiAssistantResponseSuccess = new EventEmitter();
|
|
42583
|
+
/**
|
|
42584
|
+
* Emits when the SmartBox tool completes the AI request with an error.
|
|
42585
|
+
* The event contains the error response from the AI service and is preventable to allow stopping the default error handling.
|
|
42586
|
+
*/
|
|
42587
|
+
aiAssistantResponseError = new EventEmitter();
|
|
42588
|
+
/**
|
|
42589
|
+
* Emits when the user clicks the Cancel button.
|
|
42590
|
+
*/
|
|
42591
|
+
aiAssistantCancelRequest = new EventEmitter();
|
|
42592
|
+
/**
|
|
42593
|
+
* Emits when the user types in Search mode. The event contains the search query and the filter descriptors created based on the query.
|
|
42594
|
+
*/
|
|
42595
|
+
search = new EventEmitter();
|
|
42596
|
+
/**
|
|
42597
|
+
* Emits when the user types in Semantic Search mode. The event contains the search query and the filter descriptors created based on the query.
|
|
42598
|
+
*/
|
|
42599
|
+
semanticSearch = new EventEmitter();
|
|
42600
|
+
/**
|
|
42601
|
+
* Emits when the mode of the SmartBox tool changes. The event contains the new mode.
|
|
42602
|
+
*/
|
|
42603
|
+
modeChange = new EventEmitter();
|
|
42604
|
+
/**
|
|
42605
|
+
* Indicates whether the SmartBox tool is in a loading state. Use this to show a loading indicator in the UI.
|
|
42606
|
+
*/
|
|
42607
|
+
loading = false;
|
|
42608
|
+
constructor() { super(); }
|
|
42609
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SmartBoxToolbarToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
42610
|
+
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: [
|
|
42611
|
+
{
|
|
42612
|
+
provide: ToolBarToolComponent,
|
|
42613
|
+
useExisting: forwardRef(() => SmartBoxToolbarToolComponent)
|
|
42614
|
+
}
|
|
42615
|
+
], queries: [{ propertyName: "promptSuggestionTemplate", first: true, predicate: GridSmartBoxPromptSuggestionTemplateDirective, descendants: true }, { propertyName: "historyItemTemplate", first: true, predicate: GridSmartBoxHistoryItemTemplateDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
42616
|
+
<ng-template #toolbarTemplate #sectionTemplate #popupTemplate>
|
|
42617
|
+
<kendo-smartbox
|
|
42618
|
+
[searchMode]="searchMode"
|
|
42619
|
+
[semanticSearchMode]="semanticSearchMode"
|
|
42620
|
+
[aiAssistantMode]="aiAssistantMode"
|
|
42621
|
+
[activeMode]="activeMode"
|
|
42622
|
+
[history]="history"
|
|
42623
|
+
[placeholder]="placeholder"
|
|
42624
|
+
[size]="size"
|
|
42625
|
+
(open)="open.emit($event)"
|
|
42626
|
+
(close)="close.emit($event)"
|
|
42627
|
+
(focus)="inputFocus.emit($event)"
|
|
42628
|
+
(blur)="inputBlur.emit($event)"
|
|
42629
|
+
(search)="search.emit($event)"
|
|
42630
|
+
(semanticSearch)="semanticSearch.emit($event)"
|
|
42631
|
+
(aiAssistantPromptRequest)="aiAssistantPromptRequest.emit($event)"
|
|
42632
|
+
(aiAssistantResponseSuccess)="aiAssistantResponseSuccess.emit($event)"
|
|
42633
|
+
(aiAssistantResponseError)="aiAssistantResponseError.emit($event)"
|
|
42634
|
+
(aiAssistantCancelRequest)="aiAssistantCancelRequest.emit()"
|
|
42635
|
+
(modeChange)="modeChange.emit($event)"
|
|
42636
|
+
[promptSuggestionTemplate]="promptSuggestionTemplate"
|
|
42637
|
+
[historyItemTemplate]="historyItemTemplate"
|
|
42638
|
+
[loading]="loading"
|
|
42639
|
+
>
|
|
42640
|
+
</kendo-smartbox>
|
|
42641
|
+
</ng-template>
|
|
42642
|
+
`, 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"] }] });
|
|
42643
|
+
}
|
|
42644
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: SmartBoxToolbarToolComponent, decorators: [{
|
|
42645
|
+
type: Component,
|
|
42646
|
+
args: [{
|
|
42647
|
+
providers: [
|
|
42648
|
+
{
|
|
42649
|
+
provide: ToolBarToolComponent,
|
|
42650
|
+
useExisting: forwardRef(() => SmartBoxToolbarToolComponent)
|
|
42651
|
+
}
|
|
42652
|
+
],
|
|
42653
|
+
selector: 'kendo-grid-smartbox-tool',
|
|
42654
|
+
template: `
|
|
42655
|
+
<ng-template #toolbarTemplate #sectionTemplate #popupTemplate>
|
|
42656
|
+
<kendo-smartbox
|
|
42657
|
+
[searchMode]="searchMode"
|
|
42658
|
+
[semanticSearchMode]="semanticSearchMode"
|
|
42659
|
+
[aiAssistantMode]="aiAssistantMode"
|
|
42660
|
+
[activeMode]="activeMode"
|
|
42661
|
+
[history]="history"
|
|
42662
|
+
[placeholder]="placeholder"
|
|
42663
|
+
[size]="size"
|
|
42664
|
+
(open)="open.emit($event)"
|
|
42665
|
+
(close)="close.emit($event)"
|
|
42666
|
+
(focus)="inputFocus.emit($event)"
|
|
42667
|
+
(blur)="inputBlur.emit($event)"
|
|
42668
|
+
(search)="search.emit($event)"
|
|
42669
|
+
(semanticSearch)="semanticSearch.emit($event)"
|
|
42670
|
+
(aiAssistantPromptRequest)="aiAssistantPromptRequest.emit($event)"
|
|
42671
|
+
(aiAssistantResponseSuccess)="aiAssistantResponseSuccess.emit($event)"
|
|
42672
|
+
(aiAssistantResponseError)="aiAssistantResponseError.emit($event)"
|
|
42673
|
+
(aiAssistantCancelRequest)="aiAssistantCancelRequest.emit()"
|
|
42674
|
+
(modeChange)="modeChange.emit($event)"
|
|
42675
|
+
[promptSuggestionTemplate]="promptSuggestionTemplate"
|
|
42676
|
+
[historyItemTemplate]="historyItemTemplate"
|
|
42677
|
+
[loading]="loading"
|
|
42678
|
+
>
|
|
42679
|
+
</kendo-smartbox>
|
|
42680
|
+
</ng-template>
|
|
42681
|
+
`,
|
|
42682
|
+
standalone: true,
|
|
42683
|
+
imports: [SmartBoxComponent]
|
|
42684
|
+
}]
|
|
42685
|
+
}], ctorParameters: () => [], propDecorators: { promptSuggestionTemplate: [{
|
|
42686
|
+
type: ContentChild,
|
|
42687
|
+
args: [GridSmartBoxPromptSuggestionTemplateDirective]
|
|
42688
|
+
}], historyItemTemplate: [{
|
|
42689
|
+
type: ContentChild,
|
|
42690
|
+
args: [GridSmartBoxHistoryItemTemplateDirective]
|
|
42691
|
+
}], searchMode: [{
|
|
42692
|
+
type: Input
|
|
42693
|
+
}], semanticSearchMode: [{
|
|
42694
|
+
type: Input
|
|
42695
|
+
}], aiAssistantMode: [{
|
|
42696
|
+
type: Input
|
|
42697
|
+
}], activeMode: [{
|
|
42698
|
+
type: Input
|
|
42699
|
+
}], history: [{
|
|
42700
|
+
type: Input
|
|
42701
|
+
}], placeholder: [{
|
|
42702
|
+
type: Input
|
|
42703
|
+
}], size: [{
|
|
42704
|
+
type: Input
|
|
42705
|
+
}], open: [{
|
|
42706
|
+
type: Output
|
|
42707
|
+
}], close: [{
|
|
42708
|
+
type: Output
|
|
42709
|
+
}], inputFocus: [{
|
|
42710
|
+
type: Output
|
|
42711
|
+
}], inputBlur: [{
|
|
42712
|
+
type: Output
|
|
42713
|
+
}], aiAssistantPromptRequest: [{
|
|
42714
|
+
type: Output
|
|
42715
|
+
}], aiAssistantResponseSuccess: [{
|
|
42716
|
+
type: Output
|
|
42717
|
+
}], aiAssistantResponseError: [{
|
|
42718
|
+
type: Output
|
|
42719
|
+
}], aiAssistantCancelRequest: [{
|
|
42720
|
+
type: Output
|
|
42721
|
+
}], search: [{
|
|
42722
|
+
type: Output
|
|
42723
|
+
}], semanticSearch: [{
|
|
42724
|
+
type: Output
|
|
42725
|
+
}], modeChange: [{
|
|
42726
|
+
type: Output
|
|
42727
|
+
}] } });
|
|
42728
|
+
|
|
40467
42729
|
// DRAGGABLE COLUMN
|
|
40468
42730
|
/**
|
|
40469
42731
|
* @hidden
|
|
@@ -40694,7 +42956,10 @@ const KENDO_GRID_BODY_EXPORTS = [
|
|
|
40694
42956
|
FilterCommandToolbarDirective,
|
|
40695
42957
|
AIAssistantToolbarDirective,
|
|
40696
42958
|
GroupCommandToolbarDirective,
|
|
40697
|
-
SelectAllToolbarToolComponent
|
|
42959
|
+
SelectAllToolbarToolComponent,
|
|
42960
|
+
SmartBoxToolbarToolComponent,
|
|
42961
|
+
GridSmartBoxHistoryItemTemplateDirective,
|
|
42962
|
+
GridSmartBoxPromptSuggestionTemplateDirective
|
|
40698
42963
|
];
|
|
40699
42964
|
/**
|
|
40700
42965
|
* @hidden
|
|
@@ -40845,9 +43110,9 @@ const KENDO_GRID = [
|
|
|
40845
43110
|
*/
|
|
40846
43111
|
class GridModule {
|
|
40847
43112
|
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,
|
|
43113
|
+
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
43114
|
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,
|
|
43115
|
+
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
43116
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridModule, providers: [
|
|
40852
43117
|
PopupService,
|
|
40853
43118
|
ResizeBatchService,
|
|
@@ -40861,8 +43126,8 @@ class GridModule {
|
|
|
40861
43126
|
DecadeViewService,
|
|
40862
43127
|
MonthViewService,
|
|
40863
43128
|
YearViewService,
|
|
40864
|
-
NavigationService$
|
|
40865
|
-
], imports: [GroupHeaderComponent, GroupPanelComponent, TableBodyComponent, CellComponent, EditCommandDirective, CancelCommandDirective, SaveCommandDirective, RemoveCommandDirective, AddCommandDirective, SelectAllToolbarToolComponent, HeaderComponent,
|
|
43129
|
+
NavigationService$2
|
|
43130
|
+
], 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
43131
|
}
|
|
40867
43132
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: GridModule, decorators: [{
|
|
40868
43133
|
type: NgModule,
|
|
@@ -40898,7 +43163,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
40898
43163
|
DecadeViewService,
|
|
40899
43164
|
MonthViewService,
|
|
40900
43165
|
YearViewService,
|
|
40901
|
-
NavigationService$
|
|
43166
|
+
NavigationService$2
|
|
40902
43167
|
]
|
|
40903
43168
|
}]
|
|
40904
43169
|
}] });
|
|
@@ -41007,5 +43272,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImpo
|
|
|
41007
43272
|
* Generated bundle index. Do not edit.
|
|
41008
43273
|
*/
|
|
41009
43274
|
|
|
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 };
|
|
43275
|
+
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
43276
|
|