@progress/kendo-angular-dropdowns 19.3.0-develop.3 → 19.3.0-develop.5

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.
@@ -4,6 +4,7 @@
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { EventEmitter, QueryList, ElementRef, SimpleChange, ChangeDetectorRef, NgZone, Renderer2 } from '@angular/core';
6
6
  import { AfterViewInit, OnChanges, OnDestroy } from '@angular/core';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
7
8
  import { ListItemDirective } from './list-item.directive';
8
9
  import { ItemTemplateDirective } from './templates/item-template.directive';
9
10
  import { GroupTemplateDirective } from './templates/group-template.directive';
@@ -31,6 +32,7 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
31
32
  private cdr;
32
33
  private zone;
33
34
  private renderer;
35
+ private localization;
34
36
  selected: any[];
35
37
  focused: number;
36
38
  textField: string;
@@ -88,11 +90,15 @@ export declare class ListComponent implements OnChanges, OnDestroy, AfterViewIni
88
90
  get pageSize(): number;
89
91
  get scrollHeight(): number;
90
92
  get overflowY(): string;
93
+ /**
94
+ * @hidden
95
+ */
96
+ get useCustomValueText(): string;
91
97
  /**
92
98
  * @hidden
93
99
  */
94
100
  get checkboxClasses(): any;
95
- constructor(dataService: DataService, wrapper: ElementRef<HTMLElement>, selectionService: SelectionService, disabledItemsService: DisabledItemsService, cdr: ChangeDetectorRef, zone: NgZone, renderer: Renderer2);
101
+ constructor(dataService: DataService, wrapper: ElementRef<HTMLElement>, selectionService: SelectionService, disabledItemsService: DisabledItemsService, cdr: ChangeDetectorRef, zone: NgZone, renderer: Renderer2, localization: LocalizationService);
96
102
  ngOnChanges(changes: {
97
103
  [propertyName: string]: SimpleChange;
98
104
  }): void;
@@ -40,6 +40,16 @@ export declare class Messages extends ComponentMessages {
40
40
  * The text for the input's placeholder when filtering is enabled.
41
41
  */
42
42
  filterInputPlaceholder: string;
43
+ /**
44
+ * The text displayed when the user types a custom value that is not in the list of options.
45
+ *
46
+ * The text includes a localizable string and the custom value.
47
+ * For example, when adding a custom value **Test**, the default text is **Use "Test"**.
48
+ *
49
+ * You can reorder the custom value and the localizable part by using a placeholder in `useCustomValueText`.
50
+ * Use `{customValue}` to insert the value, for example, **Add: {customValue}**.
51
+ */
52
+ useCustomValueText: string;
43
53
  static ɵfac: i0.ɵɵFactoryDeclaration<Messages, never>;
44
- static ɵdir: i0.ɵɵDirectiveDeclaration<Messages, never, never, { "noDataText": { "alias": "noDataText"; "required": false; }; "clearTitle": { "alias": "clearTitle"; "required": false; }; "checkAllText": { "alias": "checkAllText"; "required": false; }; "selectButtonText": { "alias": "selectButtonText"; "required": false; }; "filterInputLabel": { "alias": "filterInputLabel"; "required": false; }; "popupLabel": { "alias": "popupLabel"; "required": false; }; "adaptiveCloseButtonTitle": { "alias": "adaptiveCloseButtonTitle"; "required": false; }; "filterInputPlaceholder": { "alias": "filterInputPlaceholder"; "required": false; }; }, {}, never, never, false, never>;
54
+ static ɵdir: i0.ɵɵDirectiveDeclaration<Messages, never, never, { "noDataText": { "alias": "noDataText"; "required": false; }; "clearTitle": { "alias": "clearTitle"; "required": false; }; "checkAllText": { "alias": "checkAllText"; "required": false; }; "selectButtonText": { "alias": "selectButtonText"; "required": false; }; "filterInputLabel": { "alias": "filterInputLabel"; "required": false; }; "popupLabel": { "alias": "popupLabel"; "required": false; }; "adaptiveCloseButtonTitle": { "alias": "adaptiveCloseButtonTitle"; "required": false; }; "filterInputPlaceholder": { "alias": "filterInputPlaceholder"; "required": false; }; "useCustomValueText": { "alias": "useCustomValueText"; "required": false; }; }, {}, never, never, false, never>;
45
55
  }
@@ -3,7 +3,8 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { Component, Input, Output, EventEmitter, ViewChildren, QueryList, ElementRef, ViewChild, ChangeDetectorRef, NgZone, Renderer2 } from '@angular/core';
6
- import { ResizeSensorComponent, TemplateContextDirective, isChanged } from '@progress/kendo-angular-common';
6
+ import { ResizeSensorComponent, TemplateContextDirective, isChanged, replaceMessagePlaceholder } from '@progress/kendo-angular-common';
7
+ import { LocalizationService } from '@progress/kendo-angular-l10n';
7
8
  import { ListItemDirective } from './list-item.directive';
8
9
  import { ItemTemplateDirective } from './templates/item-template.directive';
9
10
  import { GroupTemplateDirective } from './templates/group-template.directive';
@@ -22,6 +23,7 @@ import * as i0 from "@angular/core";
22
23
  import * as i1 from "./data.service";
23
24
  import * as i2 from "./selection/selection.service";
24
25
  import * as i3 from "./disabled-items/disabled-items.service";
26
+ import * as i4 from "@progress/kendo-angular-l10n";
25
27
  /**
26
28
  * @hidden
27
29
  */
@@ -33,6 +35,7 @@ export class ListComponent {
33
35
  cdr;
34
36
  zone;
35
37
  renderer;
38
+ localization;
36
39
  selected = [];
37
40
  focused = -1;
38
41
  textField;
@@ -117,6 +120,13 @@ export class ListComponent {
117
120
  return overflow;
118
121
  }
119
122
  }
123
+ /**
124
+ * @hidden
125
+ */
126
+ get useCustomValueText() {
127
+ const localizationMsg = this.localization.get('useCustomValueText');
128
+ return replaceMessagePlaceholder(localizationMsg, 'customValue', this.text);
129
+ }
120
130
  /**
121
131
  * @hidden
122
132
  */
@@ -124,7 +134,7 @@ export class ListComponent {
124
134
  return `${this.size ? getSizeClass('checkbox', this.size) : ''} ${this.rounded ? getRoundedClass(this.rounded) : ''}`;
125
135
  }
126
136
  /* tslint:disable:member-ordering */
127
- constructor(dataService, wrapper, selectionService, disabledItemsService, cdr, zone, renderer) {
137
+ constructor(dataService, wrapper, selectionService, disabledItemsService, cdr, zone, renderer, localization) {
128
138
  this.dataService = dataService;
129
139
  this.wrapper = wrapper;
130
140
  this.selectionService = selectionService;
@@ -132,6 +142,7 @@ export class ListComponent {
132
142
  this.cdr = cdr;
133
143
  this.zone = zone;
134
144
  this.renderer = renderer;
145
+ this.localization = localization;
135
146
  this.selectSubscription = merge(this.selectionService.onSelect.pipe(map((args) => args.indices[0])), this.selectionService.onFocus)
136
147
  .pipe(
137
148
  // handle only the very last onSelect/onFocus emission
@@ -453,7 +464,7 @@ export class ListComponent {
453
464
  this.renderer.addClass(this.wrapper.nativeElement, this.listVirtualClass);
454
465
  }
455
466
  }
456
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListComponent, deps: [{ token: i1.DataService }, { token: i0.ElementRef }, { token: i2.SelectionService }, { token: i3.DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
467
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListComponent, deps: [{ token: i1.DataService }, { token: i0.ElementRef }, { token: i2.SelectionService }, { token: i3.DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i4.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
457
468
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ListComponent, isStandalone: true, selector: "kendo-list", inputs: { selected: "selected", focused: "focused", textField: "textField", valueField: "valueField", height: "height", template: "template", groupTemplate: "groupTemplate", fixedGroupTemplate: "fixedGroupTemplate", show: "show", id: "id", optionPrefix: "optionPrefix", multipleSelection: "multipleSelection", virtual: "virtual", type: "type", checkboxes: "checkboxes", ariaLive: "ariaLive", isMultiselect: "isMultiselect", isActionSheetExpanded: "isActionSheetExpanded", showStickyHeader: "showStickyHeader", rowWidth: "rowWidth", customItemTemplate: "customItemTemplate", text: "text", allowCustom: "allowCustom", defaultItem: "defaultItem", data: "data", size: "size", rounded: "rounded" }, outputs: { onClick: "onClick", pageChange: "pageChange", listResize: "listResize", popupListScroll: "popupListScroll" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true, static: true }, { propertyName: "virtualContainer", first: true, predicate: ["virtualContainer"], descendants: true }, { propertyName: "items", predicate: ListItemDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
458
469
  <div *ngIf="defaultItem && !template"
459
470
  class="k-list-optionlabel"
@@ -486,7 +497,7 @@ export class ListComponent {
486
497
  }">
487
498
  </ng-template>
488
499
  <ng-template #default_custom_item_template>
489
- Use "{{text}}"
500
+ {{useCustomValueText}}
490
501
  </ng-template>
491
502
  </div>
492
503
  <div *ngIf="dataService.grouped && showStickyHeader"
@@ -657,7 +668,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
657
668
  }">
658
669
  </ng-template>
659
670
  <ng-template #default_custom_item_template>
660
- Use "{{text}}"
671
+ {{useCustomValueText}}
661
672
  </ng-template>
662
673
  </div>
663
674
  <div *ngIf="dataService.grouped && showStickyHeader"
@@ -794,7 +805,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
794
805
  standalone: true,
795
806
  imports: [NgIf, NgStyle, TemplateContextDirective, NgFor, ListItemDirective, SelectableDirective, NgClass, ResizeSensorComponent]
796
807
  }]
797
- }], ctorParameters: function () { return [{ type: i1.DataService }, { type: i0.ElementRef }, { type: i2.SelectionService }, { type: i3.DisabledItemsService }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.Renderer2 }]; }, propDecorators: { selected: [{
808
+ }], ctorParameters: function () { return [{ type: i1.DataService }, { type: i0.ElementRef }, { type: i2.SelectionService }, { type: i3.DisabledItemsService }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i4.LocalizationService }]; }, propDecorators: { selected: [{
798
809
  type: Input
799
810
  }], focused: [{
800
811
  type: Input
@@ -41,8 +41,18 @@ export class Messages extends ComponentMessages {
41
41
  * The text for the input's placeholder when filtering is enabled.
42
42
  */
43
43
  filterInputPlaceholder;
44
+ /**
45
+ * The text displayed when the user types a custom value that is not in the list of options.
46
+ *
47
+ * The text includes a localizable string and the custom value.
48
+ * For example, when adding a custom value **Test**, the default text is **Use "Test"**.
49
+ *
50
+ * You can reorder the custom value and the localizable part by using a placeholder in `useCustomValueText`.
51
+ * Use `{customValue}` to insert the value, for example, **Add: {customValue}**.
52
+ */
53
+ useCustomValueText;
44
54
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
45
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: Messages, inputs: { noDataText: "noDataText", clearTitle: "clearTitle", checkAllText: "checkAllText", selectButtonText: "selectButtonText", filterInputLabel: "filterInputLabel", popupLabel: "popupLabel", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle", filterInputPlaceholder: "filterInputPlaceholder" }, usesInheritance: true, ngImport: i0 });
55
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: Messages, inputs: { noDataText: "noDataText", clearTitle: "clearTitle", checkAllText: "checkAllText", selectButtonText: "selectButtonText", filterInputLabel: "filterInputLabel", popupLabel: "popupLabel", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle", filterInputPlaceholder: "filterInputPlaceholder", useCustomValueText: "useCustomValueText" }, usesInheritance: true, ngImport: i0 });
46
56
  }
47
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Messages, decorators: [{
48
58
  type: Directive
@@ -62,4 +72,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
62
72
  type: Input
63
73
  }], filterInputPlaceholder: [{
64
74
  type: Input
75
+ }], useCustomValueText: [{
76
+ type: Input
65
77
  }] } });
@@ -1812,6 +1812,9 @@ export class MultiSelectComponent {
1812
1812
 
1813
1813
  i18n-adaptiveCloseButtonTitle="kendo.multiselect.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode."
1814
1814
  adaptiveCloseButtonTitle="Close"
1815
+
1816
+ i18n-useCustomValueText="kendo.multiselect.useCustomValueText|The text displayed when the user types a custom value that is not in the list of options."
1817
+ useCustomValueText="{{ 'Use &quot;{customValue}&quot;' }}"
1815
1818
  >
1816
1819
  </ng-container>
1817
1820
 
@@ -2005,6 +2008,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2005
2008
 
2006
2009
  i18n-adaptiveCloseButtonTitle="kendo.multiselect.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode."
2007
2010
  adaptiveCloseButtonTitle="Close"
2011
+
2012
+ i18n-useCustomValueText="kendo.multiselect.useCustomValueText|The text displayed when the user types a custom value that is not in the list of options."
2013
+ useCustomValueText="{{ 'Use &quot;{customValue}&quot;' }}"
2008
2014
  >
2009
2015
  </ng-container>
2010
2016
 
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1751984935,
14
- version: '19.3.0-develop.3',
13
+ publishDate: 1752072324,
14
+ version: '19.3.0-develop.5',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };
@@ -5,7 +5,7 @@
5
5
  import * as i0 from '@angular/core';
6
6
  import { EventEmitter, Component, Input, HostBinding, Output, Directive, Injectable, HostListener, ViewChildren, ViewChild, forwardRef, isDevMode, ViewContainerRef, ContentChild, ContentChildren, ChangeDetectionStrategy, NgModule } from '@angular/core';
7
7
  import * as i10 from '@progress/kendo-angular-common';
8
- import { isDocumentAvailable, isObjectPresent, removeHTMLAttributes, parseAttributes, isSafari, Keys, setHTMLAttributes, isChanged, TemplateContextDirective, ResizeSensorComponent, closest as closest$1, isControlRequired, guid, hasObservers, KendoInput, SuffixTemplateDirective, PrefixTemplateDirective, SeparatorComponent, MultiTabStop, anyChanged, EventsOutsideAngularDirective, ToggleButtonTabStopDirective, ResizeBatchService, KENDO_ADORNMENTS, KENDO_TOGGLEBUTTONTABSTOP } from '@progress/kendo-angular-common';
8
+ import { isDocumentAvailable, isObjectPresent, removeHTMLAttributes, parseAttributes, isSafari, Keys, setHTMLAttributes, replaceMessagePlaceholder, isChanged, TemplateContextDirective, ResizeSensorComponent, closest as closest$1, isControlRequired, guid, hasObservers, KendoInput, SuffixTemplateDirective, PrefixTemplateDirective, SeparatorComponent, MultiTabStop, anyChanged, EventsOutsideAngularDirective, ToggleButtonTabStopDirective, ResizeBatchService, KENDO_ADORNMENTS, KENDO_TOGGLEBUTTONTABSTOP } from '@progress/kendo-angular-common';
9
9
  export { PrefixTemplateDirective, SeparatorComponent, SuffixTemplateDirective, ToggleButtonTabStopDirective } from '@progress/kendo-angular-common';
10
10
  import * as i7 from '@progress/kendo-angular-utils';
11
11
  import { AdaptiveService } from '@progress/kendo-angular-utils';
@@ -37,8 +37,8 @@ const packageMetadata = {
37
37
  productName: 'Kendo UI for Angular',
38
38
  productCode: 'KENDOUIANGULAR',
39
39
  productCodes: ['KENDOUIANGULAR'],
40
- publishDate: 1751984935,
41
- version: '19.3.0-develop.3',
40
+ publishDate: 1752072324,
41
+ version: '19.3.0-develop.5',
42
42
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
43
43
  };
44
44
 
@@ -1908,6 +1908,7 @@ class ListComponent {
1908
1908
  cdr;
1909
1909
  zone;
1910
1910
  renderer;
1911
+ localization;
1911
1912
  selected = [];
1912
1913
  focused = -1;
1913
1914
  textField;
@@ -1992,6 +1993,13 @@ class ListComponent {
1992
1993
  return overflow;
1993
1994
  }
1994
1995
  }
1996
+ /**
1997
+ * @hidden
1998
+ */
1999
+ get useCustomValueText() {
2000
+ const localizationMsg = this.localization.get('useCustomValueText');
2001
+ return replaceMessagePlaceholder(localizationMsg, 'customValue', this.text);
2002
+ }
1995
2003
  /**
1996
2004
  * @hidden
1997
2005
  */
@@ -1999,7 +2007,7 @@ class ListComponent {
1999
2007
  return `${this.size ? getSizeClass('checkbox', this.size) : ''} ${this.rounded ? getRoundedClass(this.rounded) : ''}`;
2000
2008
  }
2001
2009
  /* tslint:disable:member-ordering */
2002
- constructor(dataService, wrapper, selectionService, disabledItemsService, cdr, zone, renderer) {
2010
+ constructor(dataService, wrapper, selectionService, disabledItemsService, cdr, zone, renderer, localization) {
2003
2011
  this.dataService = dataService;
2004
2012
  this.wrapper = wrapper;
2005
2013
  this.selectionService = selectionService;
@@ -2007,6 +2015,7 @@ class ListComponent {
2007
2015
  this.cdr = cdr;
2008
2016
  this.zone = zone;
2009
2017
  this.renderer = renderer;
2018
+ this.localization = localization;
2010
2019
  this.selectSubscription = merge(this.selectionService.onSelect.pipe(map((args) => args.indices[0])), this.selectionService.onFocus)
2011
2020
  .pipe(
2012
2021
  // handle only the very last onSelect/onFocus emission
@@ -2328,7 +2337,7 @@ class ListComponent {
2328
2337
  this.renderer.addClass(this.wrapper.nativeElement, this.listVirtualClass);
2329
2338
  }
2330
2339
  }
2331
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListComponent, deps: [{ token: DataService }, { token: i0.ElementRef }, { token: SelectionService }, { token: DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
2340
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ListComponent, deps: [{ token: DataService }, { token: i0.ElementRef }, { token: SelectionService }, { token: DisabledItemsService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
2332
2341
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ListComponent, isStandalone: true, selector: "kendo-list", inputs: { selected: "selected", focused: "focused", textField: "textField", valueField: "valueField", height: "height", template: "template", groupTemplate: "groupTemplate", fixedGroupTemplate: "fixedGroupTemplate", show: "show", id: "id", optionPrefix: "optionPrefix", multipleSelection: "multipleSelection", virtual: "virtual", type: "type", checkboxes: "checkboxes", ariaLive: "ariaLive", isMultiselect: "isMultiselect", isActionSheetExpanded: "isActionSheetExpanded", showStickyHeader: "showStickyHeader", rowWidth: "rowWidth", customItemTemplate: "customItemTemplate", text: "text", allowCustom: "allowCustom", defaultItem: "defaultItem", data: "data", size: "size", rounded: "rounded" }, outputs: { onClick: "onClick", pageChange: "pageChange", listResize: "listResize", popupListScroll: "popupListScroll" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }, { propertyName: "list", first: true, predicate: ["list"], descendants: true, static: true }, { propertyName: "virtualContainer", first: true, predicate: ["virtualContainer"], descendants: true }, { propertyName: "items", predicate: ListItemDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
2333
2342
  <div *ngIf="defaultItem && !template"
2334
2343
  class="k-list-optionlabel"
@@ -2361,7 +2370,7 @@ class ListComponent {
2361
2370
  }">
2362
2371
  </ng-template>
2363
2372
  <ng-template #default_custom_item_template>
2364
- Use "{{text}}"
2373
+ {{useCustomValueText}}
2365
2374
  </ng-template>
2366
2375
  </div>
2367
2376
  <div *ngIf="dataService.grouped && showStickyHeader"
@@ -2532,7 +2541,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2532
2541
  }">
2533
2542
  </ng-template>
2534
2543
  <ng-template #default_custom_item_template>
2535
- Use "{{text}}"
2544
+ {{useCustomValueText}}
2536
2545
  </ng-template>
2537
2546
  </div>
2538
2547
  <div *ngIf="dataService.grouped && showStickyHeader"
@@ -2669,7 +2678,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2669
2678
  standalone: true,
2670
2679
  imports: [NgIf, NgStyle, TemplateContextDirective, NgFor, ListItemDirective, SelectableDirective, NgClass, ResizeSensorComponent]
2671
2680
  }]
2672
- }], ctorParameters: function () { return [{ type: DataService }, { type: i0.ElementRef }, { type: SelectionService }, { type: DisabledItemsService }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.Renderer2 }]; }, propDecorators: { selected: [{
2681
+ }], ctorParameters: function () { return [{ type: DataService }, { type: i0.ElementRef }, { type: SelectionService }, { type: DisabledItemsService }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1.LocalizationService }]; }, propDecorators: { selected: [{
2673
2682
  type: Input
2674
2683
  }], focused: [{
2675
2684
  type: Input
@@ -3117,8 +3126,18 @@ class Messages extends ComponentMessages {
3117
3126
  * The text for the input's placeholder when filtering is enabled.
3118
3127
  */
3119
3128
  filterInputPlaceholder;
3129
+ /**
3130
+ * The text displayed when the user types a custom value that is not in the list of options.
3131
+ *
3132
+ * The text includes a localizable string and the custom value.
3133
+ * For example, when adding a custom value **Test**, the default text is **Use "Test"**.
3134
+ *
3135
+ * You can reorder the custom value and the localizable part by using a placeholder in `useCustomValueText`.
3136
+ * Use `{customValue}` to insert the value, for example, **Add: {customValue}**.
3137
+ */
3138
+ useCustomValueText;
3120
3139
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
3121
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: Messages, inputs: { noDataText: "noDataText", clearTitle: "clearTitle", checkAllText: "checkAllText", selectButtonText: "selectButtonText", filterInputLabel: "filterInputLabel", popupLabel: "popupLabel", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle", filterInputPlaceholder: "filterInputPlaceholder" }, usesInheritance: true, ngImport: i0 });
3140
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: Messages, inputs: { noDataText: "noDataText", clearTitle: "clearTitle", checkAllText: "checkAllText", selectButtonText: "selectButtonText", filterInputLabel: "filterInputLabel", popupLabel: "popupLabel", adaptiveCloseButtonTitle: "adaptiveCloseButtonTitle", filterInputPlaceholder: "filterInputPlaceholder", useCustomValueText: "useCustomValueText" }, usesInheritance: true, ngImport: i0 });
3122
3141
  }
3123
3142
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: Messages, decorators: [{
3124
3143
  type: Directive
@@ -3138,6 +3157,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
3138
3157
  type: Input
3139
3158
  }], filterInputPlaceholder: [{
3140
3159
  type: Input
3160
+ }], useCustomValueText: [{
3161
+ type: Input
3141
3162
  }] } });
3142
3163
 
3143
3164
  /**
@@ -11016,6 +11037,9 @@ class MultiSelectComponent {
11016
11037
 
11017
11038
  i18n-adaptiveCloseButtonTitle="kendo.multiselect.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode."
11018
11039
  adaptiveCloseButtonTitle="Close"
11040
+
11041
+ i18n-useCustomValueText="kendo.multiselect.useCustomValueText|The text displayed when the user types a custom value that is not in the list of options."
11042
+ useCustomValueText="{{ 'Use &quot;{customValue}&quot;' }}"
11019
11043
  >
11020
11044
  </ng-container>
11021
11045
 
@@ -11209,6 +11233,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
11209
11233
 
11210
11234
  i18n-adaptiveCloseButtonTitle="kendo.multiselect.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode."
11211
11235
  adaptiveCloseButtonTitle="Close"
11236
+
11237
+ i18n-useCustomValueText="kendo.multiselect.useCustomValueText|The text displayed when the user types a custom value that is not in the list of options."
11238
+ useCustomValueText="{{ 'Use &quot;{customValue}&quot;' }}"
11212
11239
  >
11213
11240
  </ng-container>
11214
11241
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-dropdowns",
3
- "version": "19.3.0-develop.3",
3
+ "version": "19.3.0-develop.5",
4
4
  "description": "A wide variety of native Angular dropdown components including AutoComplete, ComboBox, DropDownList, DropDownTree, MultiColumnComboBox, MultiSelect, and MultiSelectTree ",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -100,7 +100,7 @@
100
100
  "package": {
101
101
  "productName": "Kendo UI for Angular",
102
102
  "productCode": "KENDOUIANGULAR",
103
- "publishDate": 1751984935,
103
+ "publishDate": 1752072324,
104
104
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
105
105
  }
106
106
  },
@@ -111,18 +111,18 @@
111
111
  "@angular/forms": "16 - 20",
112
112
  "@angular/platform-browser": "16 - 20",
113
113
  "@progress/kendo-licensing": "^1.5.0",
114
- "@progress/kendo-angular-common": "19.3.0-develop.3",
115
- "@progress/kendo-angular-utils": "19.3.0-develop.3",
116
- "@progress/kendo-angular-l10n": "19.3.0-develop.3",
117
- "@progress/kendo-angular-navigation": "19.3.0-develop.3",
118
- "@progress/kendo-angular-popup": "19.3.0-develop.3",
119
- "@progress/kendo-angular-icons": "19.3.0-develop.3",
120
- "@progress/kendo-angular-treeview": "19.3.0-develop.3",
114
+ "@progress/kendo-angular-common": "19.3.0-develop.5",
115
+ "@progress/kendo-angular-utils": "19.3.0-develop.5",
116
+ "@progress/kendo-angular-l10n": "19.3.0-develop.5",
117
+ "@progress/kendo-angular-navigation": "19.3.0-develop.5",
118
+ "@progress/kendo-angular-popup": "19.3.0-develop.5",
119
+ "@progress/kendo-angular-icons": "19.3.0-develop.5",
120
+ "@progress/kendo-angular-treeview": "19.3.0-develop.5",
121
121
  "rxjs": "^6.5.3 || ^7.0.0"
122
122
  },
123
123
  "dependencies": {
124
124
  "tslib": "^2.3.1",
125
- "@progress/kendo-angular-schematics": "19.3.0-develop.3",
125
+ "@progress/kendo-angular-schematics": "19.3.0-develop.5",
126
126
  "@progress/kendo-common": "^1.0.1",
127
127
  "node-html-parser": "^7.0.1"
128
128
  },
@@ -4,9 +4,9 @@ const schematics_1 = require("@angular-devkit/schematics");
4
4
  function default_1(options) {
5
5
  const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'DropDownsModule', package: 'dropdowns', peerDependencies: {
6
6
  // peers of the treeview
7
- '@progress/kendo-angular-inputs': '19.3.0-develop.3',
7
+ '@progress/kendo-angular-inputs': '19.3.0-develop.5',
8
8
  // peers of inputs
9
- '@progress/kendo-angular-intl': '19.3.0-develop.3',
9
+ '@progress/kendo-angular-intl': '19.3.0-develop.5',
10
10
  '@progress/kendo-drawing': '^1.17.2',
11
11
  // Peer dependency of icons
12
12
  '@progress/kendo-svg-icons': '^4.0.0'