@progress/kendo-angular-layout 25.1.0-develop.1 → 25.1.0-develop.3
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/fesm2022/progress-kendo-angular-layout.mjs +1395 -548
- package/index.d.ts +605 -220
- package/package-metadata.mjs +2 -2
- package/package.json +9 -9
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
|
-
import { Injectable, Directive, Optional, isDevMode, ContentChildren, ViewChildren, HostBinding, ViewChild, Input, SkipSelf, Host, Component, EventEmitter, forwardRef, HostListener, ContentChild, Output, Inject, QueryList, NgZone, ElementRef, ViewEncapsulation, TemplateRef, NgModule } from '@angular/core';
|
|
6
|
+
import { Injectable, Directive, Optional, isDevMode, signal, ContentChildren, ViewChildren, HostBinding, ViewChild, Input, SkipSelf, Host, ChangeDetectionStrategy, Component, EventEmitter, forwardRef, HostListener, ContentChild, Output, Inject, QueryList, NgZone, afterNextRender, ElementRef, ViewEncapsulation, computed, TemplateRef, NgModule } from '@angular/core';
|
|
7
7
|
import * as i1 from '@progress/kendo-angular-l10n';
|
|
8
8
|
import { LocalizationService, L10N_PREFIX, ComponentMessages } from '@progress/kendo-angular-l10n';
|
|
9
9
|
import * as i1$1 from '@progress/kendo-angular-common';
|
|
10
|
-
import { Keys, getLicenseMessage, shouldShowValidationUI, normalizeKeys, WatermarkOverlayComponent, KENDO_WEBMCP_HOST, provideComponentName, isDocumentAvailable,
|
|
10
|
+
import { Keys, getLicenseMessage, shouldShowValidationUI, normalizeKeys, WatermarkOverlayComponent, KENDO_WEBMCP_HOST, provideComponentName, isDocumentAvailable, isObjectPresent, removeHTMLAttributes, parseAttributes, setHTMLAttributes, DraggableDirective, PreventableEvent as PreventableEvent$1, guid, ResizeSensorComponent, hasObservers, isPresent as isPresent$1, focusableSelector, isChanged } from '@progress/kendo-angular-common';
|
|
11
11
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
12
12
|
import * as i2 from '@angular/animations';
|
|
13
13
|
import { trigger, state, style, transition, animate, AUTO_STYLE } from '@angular/animations';
|
|
@@ -29,8 +29,8 @@ const packageMetadata = {
|
|
|
29
29
|
productName: 'Kendo UI for Angular',
|
|
30
30
|
productCode: 'KENDOUIANGULAR',
|
|
31
31
|
productCodes: ['KENDOUIANGULAR'],
|
|
32
|
-
publishDate:
|
|
33
|
-
version: '25.1.0-develop.
|
|
32
|
+
publishDate: 1787036864,
|
|
33
|
+
version: '25.1.0-develop.3',
|
|
34
34
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
|
|
35
35
|
};
|
|
36
36
|
|
|
@@ -324,25 +324,45 @@ class PanelBarItemComponent {
|
|
|
324
324
|
/**
|
|
325
325
|
* Sets the title of the PanelBar item ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/panelbar/items#titles)).
|
|
326
326
|
*/
|
|
327
|
-
title
|
|
327
|
+
set title(value) {
|
|
328
|
+
this._title.set(value);
|
|
329
|
+
}
|
|
330
|
+
get title() {
|
|
331
|
+
return this._title();
|
|
332
|
+
}
|
|
328
333
|
/**
|
|
329
334
|
* Allows the component to set the `"id"` property to each item.
|
|
330
335
|
* Used to set the `id` attributes of the nested elements and to enable the WAI-ARIA support.
|
|
331
336
|
*/
|
|
332
|
-
id
|
|
337
|
+
set id(value) {
|
|
338
|
+
this._id.set(value);
|
|
339
|
+
}
|
|
340
|
+
get id() {
|
|
341
|
+
return this._id();
|
|
342
|
+
}
|
|
333
343
|
/**
|
|
334
344
|
* Defines the icon that renders next to the title ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/panelbar/items#title-icons)).
|
|
335
345
|
*
|
|
336
346
|
* @default ''
|
|
337
347
|
*/
|
|
338
|
-
icon
|
|
348
|
+
set icon(value) {
|
|
349
|
+
this._icon.set(value);
|
|
350
|
+
}
|
|
351
|
+
get icon() {
|
|
352
|
+
return this._icon();
|
|
353
|
+
}
|
|
339
354
|
/**
|
|
340
355
|
* Defines the icon that renders next to the title by using a custom CSS class
|
|
341
356
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/panelbar/items#title-icons)).
|
|
342
357
|
*
|
|
343
358
|
* @default ''
|
|
344
359
|
*/
|
|
345
|
-
iconClass
|
|
360
|
+
set iconClass(value) {
|
|
361
|
+
this._iconClass.set(value);
|
|
362
|
+
}
|
|
363
|
+
get iconClass() {
|
|
364
|
+
return this._iconClass();
|
|
365
|
+
}
|
|
346
366
|
/**
|
|
347
367
|
* Defines an SVG icon to render.
|
|
348
368
|
* You can use either an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or a custom one.
|
|
@@ -351,10 +371,10 @@ class PanelBarItemComponent {
|
|
|
351
371
|
if (isDevMode() && icon && this.icon && this.iconClass) {
|
|
352
372
|
throw new Error('Setting both icon/svgIcon and iconClass options at the same time is not supported.');
|
|
353
373
|
}
|
|
354
|
-
this._svgIcon
|
|
374
|
+
this._svgIcon.set(icon);
|
|
355
375
|
}
|
|
356
376
|
get svgIcon() {
|
|
357
|
-
return this._svgIcon;
|
|
377
|
+
return this._svgIcon();
|
|
358
378
|
}
|
|
359
379
|
/**
|
|
360
380
|
* Defines the location of the image that displays next to the title
|
|
@@ -362,13 +382,23 @@ class PanelBarItemComponent {
|
|
|
362
382
|
*
|
|
363
383
|
* @default ''
|
|
364
384
|
*/
|
|
365
|
-
imageUrl
|
|
385
|
+
set imageUrl(value) {
|
|
386
|
+
this._imageUrl.set(value);
|
|
387
|
+
}
|
|
388
|
+
get imageUrl() {
|
|
389
|
+
return this._imageUrl();
|
|
390
|
+
}
|
|
366
391
|
/**
|
|
367
392
|
* When set to `true`, disables a PanelBar item ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/panelbar/items#disabled-state)).
|
|
368
393
|
*
|
|
369
394
|
* @default false
|
|
370
395
|
*/
|
|
371
|
-
disabled
|
|
396
|
+
set disabled(value) {
|
|
397
|
+
this._disabled.set(value);
|
|
398
|
+
}
|
|
399
|
+
get disabled() {
|
|
400
|
+
return this._disabled();
|
|
401
|
+
}
|
|
372
402
|
/**
|
|
373
403
|
* When set to `true`, expands the PanelBar item ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/panelbar/items#expanded-state)).
|
|
374
404
|
*/
|
|
@@ -378,43 +408,86 @@ class PanelBarItemComponent {
|
|
|
378
408
|
if (!this.keepContent) {
|
|
379
409
|
this.toggleExpandedChildAnimations(value);
|
|
380
410
|
}
|
|
381
|
-
this._expanded
|
|
411
|
+
this._expanded.set(value);
|
|
382
412
|
}
|
|
383
413
|
get expanded() {
|
|
384
|
-
return this._expanded;
|
|
414
|
+
return this._expanded();
|
|
385
415
|
}
|
|
386
416
|
/**
|
|
387
417
|
* Sets the selected state of a PanelBar item ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/panelbar/items#selected-state)).
|
|
388
418
|
*
|
|
389
419
|
* @default false
|
|
390
420
|
*/
|
|
391
|
-
selected
|
|
421
|
+
set selected(value) {
|
|
422
|
+
this._selected.set(value);
|
|
423
|
+
}
|
|
424
|
+
get selected() {
|
|
425
|
+
return this._selected();
|
|
426
|
+
}
|
|
392
427
|
/**
|
|
393
428
|
* Sets the content of the PanelBar item.
|
|
394
429
|
* It is used when the [`items`](https://www.telerik.com/kendo-angular-ui/components/layout/api/panelbarcomponent#items) property of the PanelBar is set.
|
|
395
430
|
*/
|
|
396
|
-
content
|
|
431
|
+
set content(value) {
|
|
432
|
+
this._content.set(value);
|
|
433
|
+
}
|
|
434
|
+
get content() {
|
|
435
|
+
return this._content();
|
|
436
|
+
}
|
|
397
437
|
/**
|
|
398
438
|
* @hidden
|
|
399
439
|
*/
|
|
400
|
-
items
|
|
440
|
+
set items(value) {
|
|
441
|
+
this._items.set(value);
|
|
442
|
+
}
|
|
443
|
+
get items() {
|
|
444
|
+
return this._items();
|
|
445
|
+
}
|
|
401
446
|
/**
|
|
402
447
|
* @hidden
|
|
403
448
|
*/
|
|
404
|
-
template
|
|
449
|
+
set template(value) {
|
|
450
|
+
this._template.set(value);
|
|
451
|
+
}
|
|
452
|
+
get template() {
|
|
453
|
+
return this._template();
|
|
454
|
+
}
|
|
405
455
|
header;
|
|
406
456
|
contentWrapper;
|
|
407
|
-
contentHeight
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
457
|
+
get contentHeight() {
|
|
458
|
+
return this._contentHeight();
|
|
459
|
+
}
|
|
460
|
+
set contentHeight(value) {
|
|
461
|
+
this._contentHeight.set(value);
|
|
462
|
+
}
|
|
463
|
+
get contentOverflow() {
|
|
464
|
+
return this._contentOverflow();
|
|
465
|
+
}
|
|
466
|
+
set contentOverflow(value) {
|
|
467
|
+
this._contentOverflow.set(value);
|
|
468
|
+
}
|
|
469
|
+
get keepContent() {
|
|
470
|
+
return this._keepContent();
|
|
471
|
+
}
|
|
472
|
+
set keepContent(value) {
|
|
473
|
+
this._keepContent.set(value);
|
|
474
|
+
}
|
|
475
|
+
get state() {
|
|
476
|
+
return this._state();
|
|
477
|
+
}
|
|
478
|
+
set state(value) {
|
|
479
|
+
this._state.set(value);
|
|
480
|
+
}
|
|
415
481
|
get animate() {
|
|
416
482
|
return this.eventService.animate;
|
|
417
483
|
}
|
|
484
|
+
childrenItems;
|
|
485
|
+
get hasChildItems() { return this._hasChildItems(); }
|
|
486
|
+
set hasChildItems(value) { this._hasChildItems.set(value); }
|
|
487
|
+
get hasItems() { return this._hasItems(); }
|
|
488
|
+
set hasItems(value) { this._hasItems.set(value); }
|
|
489
|
+
get hasContent() { return this._hasContent(); }
|
|
490
|
+
set hasContent(value) { this._hasContent.set(value); }
|
|
418
491
|
role = "treeitem";
|
|
419
492
|
titleAttribute = null;
|
|
420
493
|
kItemClass = true;
|
|
@@ -447,12 +520,41 @@ class PanelBarItemComponent {
|
|
|
447
520
|
//ContentChild does not support descendants property, so we use ContentChildren for contentTemplate instead
|
|
448
521
|
contentTemplate;
|
|
449
522
|
titleTemplates;
|
|
450
|
-
focused
|
|
451
|
-
|
|
523
|
+
get focused() {
|
|
524
|
+
return this._focused();
|
|
525
|
+
}
|
|
526
|
+
set focused(value) {
|
|
527
|
+
this._focused.set(value);
|
|
528
|
+
}
|
|
529
|
+
get wrapperFocused() {
|
|
530
|
+
return this._wrapperFocused();
|
|
531
|
+
}
|
|
532
|
+
set wrapperFocused(value) {
|
|
533
|
+
this._wrapperFocused.set(value);
|
|
534
|
+
}
|
|
452
535
|
subscriptions = new Subscription(() => { });
|
|
453
|
-
|
|
536
|
+
_title = signal(undefined, ...(ngDevMode ? [{ debugName: "_title" }] : []));
|
|
537
|
+
_id = signal(`default-${nextId++}`, ...(ngDevMode ? [{ debugName: "_id" }] : []));
|
|
538
|
+
_icon = signal('', ...(ngDevMode ? [{ debugName: "_icon" }] : []));
|
|
539
|
+
_iconClass = signal('', ...(ngDevMode ? [{ debugName: "_iconClass" }] : []));
|
|
540
|
+
_imageUrl = signal('', ...(ngDevMode ? [{ debugName: "_imageUrl" }] : []));
|
|
541
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
542
|
+
_selected = signal(false, ...(ngDevMode ? [{ debugName: "_selected" }] : []));
|
|
543
|
+
_content = signal(undefined, ...(ngDevMode ? [{ debugName: "_content" }] : []));
|
|
544
|
+
_items = signal(undefined, ...(ngDevMode ? [{ debugName: "_items" }] : []));
|
|
545
|
+
_template = signal(undefined, ...(ngDevMode ? [{ debugName: "_template" }] : []));
|
|
546
|
+
_expanded = signal(false, ...(ngDevMode ? [{ debugName: "_expanded" }] : []));
|
|
547
|
+
_svgIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_svgIcon" }] : []));
|
|
548
|
+
_state = signal('inactive', ...(ngDevMode ? [{ debugName: "_state" }] : []));
|
|
549
|
+
_focused = signal(false, ...(ngDevMode ? [{ debugName: "_focused" }] : []));
|
|
550
|
+
_wrapperFocused = signal(false, ...(ngDevMode ? [{ debugName: "_wrapperFocused" }] : []));
|
|
551
|
+
_keepContent = signal(false, ...(ngDevMode ? [{ debugName: "_keepContent" }] : []));
|
|
552
|
+
_contentHeight = signal(undefined, ...(ngDevMode ? [{ debugName: "_contentHeight" }] : []));
|
|
553
|
+
_contentOverflow = signal(undefined, ...(ngDevMode ? [{ debugName: "_contentOverflow" }] : []));
|
|
554
|
+
_hasChildItems = signal(false, ...(ngDevMode ? [{ debugName: "_hasChildItems" }] : []));
|
|
555
|
+
_hasItems = signal(false, ...(ngDevMode ? [{ debugName: "_hasItems" }] : []));
|
|
556
|
+
_hasContent = signal(false, ...(ngDevMode ? [{ debugName: "_hasContent" }] : []));
|
|
454
557
|
level;
|
|
455
|
-
_svgIcon;
|
|
456
558
|
constructor(parent, eventService, element, renderer) {
|
|
457
559
|
this.parent = parent;
|
|
458
560
|
this.eventService = eventService;
|
|
@@ -764,7 +866,7 @@ class PanelBarItemComponent {
|
|
|
764
866
|
animate(200, style({ height: 0, display: 'none' }))
|
|
765
867
|
])
|
|
766
868
|
])
|
|
767
|
-
], deferBlockDependencies: [() => [PanelBarItemComponent, NgTemplateOutlet]] });
|
|
869
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [PanelBarItemComponent, NgTemplateOutlet]] });
|
|
768
870
|
}
|
|
769
871
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: PanelBarItemComponent, decorators: [{
|
|
770
872
|
type: Component,
|
|
@@ -928,7 +1030,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
928
1030
|
}
|
|
929
1031
|
`,
|
|
930
1032
|
standalone: true,
|
|
931
|
-
imports: [IconWrapperComponent, NgTemplateOutlet]
|
|
1033
|
+
imports: [IconWrapperComponent, NgTemplateOutlet],
|
|
1034
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
932
1035
|
}]
|
|
933
1036
|
}], ctorParameters: () => [{ type: PanelBarItemComponent, decorators: [{
|
|
934
1037
|
type: SkipSelf
|
|
@@ -1152,26 +1255,54 @@ class PanelBarComponent {
|
|
|
1152
1255
|
*
|
|
1153
1256
|
* @default 'multiple
|
|
1154
1257
|
*/
|
|
1155
|
-
expandMode
|
|
1258
|
+
set expandMode(value) {
|
|
1259
|
+
this._expandMode.set(value);
|
|
1260
|
+
this.eventService.expandMode = value;
|
|
1261
|
+
if (this.childrenItems) {
|
|
1262
|
+
setTimeout(this.updateChildrenHeight);
|
|
1263
|
+
}
|
|
1264
|
+
}
|
|
1265
|
+
get expandMode() {
|
|
1266
|
+
return this._expandMode();
|
|
1267
|
+
}
|
|
1156
1268
|
/**
|
|
1157
1269
|
* Allows the PanelBar to modify the selected state of the items.
|
|
1158
1270
|
*
|
|
1159
1271
|
* @default true
|
|
1160
1272
|
*/
|
|
1161
|
-
selectable
|
|
1273
|
+
set selectable(value) {
|
|
1274
|
+
this._selectable.set(value);
|
|
1275
|
+
}
|
|
1276
|
+
get selectable() {
|
|
1277
|
+
return this._selectable();
|
|
1278
|
+
}
|
|
1162
1279
|
/**
|
|
1163
1280
|
* Sets the animate state of the PanelBar ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/panelbar/animations)).
|
|
1164
1281
|
*
|
|
1165
1282
|
* @default true
|
|
1166
1283
|
*/
|
|
1167
|
-
animate
|
|
1284
|
+
set animate(value) {
|
|
1285
|
+
this._animate.set(value);
|
|
1286
|
+
this.eventService.animate = value;
|
|
1287
|
+
}
|
|
1288
|
+
get animate() {
|
|
1289
|
+
return this._animate();
|
|
1290
|
+
}
|
|
1168
1291
|
/**
|
|
1169
1292
|
* Sets the height of the component when the `"full"` expand mode is used.
|
|
1170
1293
|
* This option is ignored when the `"multiple"` or `"single"` expand modes are used.
|
|
1171
1294
|
*
|
|
1172
1295
|
* @default '400px'
|
|
1173
1296
|
*/
|
|
1174
|
-
height
|
|
1297
|
+
set height(value) {
|
|
1298
|
+
this._height.set(value);
|
|
1299
|
+
if (this.childrenItems) {
|
|
1300
|
+
setTimeout(this.updateChildrenHeight);
|
|
1301
|
+
}
|
|
1302
|
+
}
|
|
1303
|
+
get height() {
|
|
1304
|
+
return this._height();
|
|
1305
|
+
}
|
|
1175
1306
|
/**
|
|
1176
1307
|
* Controls how the PanelBar renders item content.
|
|
1177
1308
|
*
|
|
@@ -1185,24 +1316,27 @@ class PanelBarComponent {
|
|
|
1185
1316
|
*
|
|
1186
1317
|
* @default false
|
|
1187
1318
|
*/
|
|
1188
|
-
get keepItemContent() {
|
|
1189
|
-
return this._keepItemContent;
|
|
1190
|
-
}
|
|
1191
1319
|
set keepItemContent(keepItemContent) {
|
|
1192
|
-
this._keepItemContent
|
|
1320
|
+
this._keepItemContent.set(keepItemContent);
|
|
1193
1321
|
this.eventService.onKeepContent(keepItemContent);
|
|
1194
1322
|
}
|
|
1323
|
+
get keepItemContent() {
|
|
1324
|
+
return this._keepItemContent();
|
|
1325
|
+
}
|
|
1195
1326
|
/**
|
|
1196
1327
|
* Sets the items of the PanelBar as an array of `PanelBarItemModel` instances
|
|
1197
1328
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/panelbar/items)).
|
|
1198
1329
|
*/
|
|
1199
1330
|
set items(data) {
|
|
1200
1331
|
if (data) {
|
|
1201
|
-
this._items
|
|
1332
|
+
this._items.set(parsePanelBarItems(data));
|
|
1333
|
+
}
|
|
1334
|
+
if (this.childrenItems) {
|
|
1335
|
+
setTimeout(this.updateChildrenHeight);
|
|
1202
1336
|
}
|
|
1203
1337
|
}
|
|
1204
1338
|
get items() {
|
|
1205
|
-
return this._items;
|
|
1339
|
+
return this._items();
|
|
1206
1340
|
}
|
|
1207
1341
|
/**
|
|
1208
1342
|
* Fires when the state of the PanelBar changes.
|
|
@@ -1262,8 +1396,12 @@ class PanelBarComponent {
|
|
|
1262
1396
|
childrenItems;
|
|
1263
1397
|
isViewInit = true;
|
|
1264
1398
|
focused = false;
|
|
1265
|
-
|
|
1266
|
-
|
|
1399
|
+
_expandMode = signal(PanelBarExpandMode.Default, ...(ngDevMode ? [{ debugName: "_expandMode" }] : []));
|
|
1400
|
+
_selectable = signal(true, ...(ngDevMode ? [{ debugName: "_selectable" }] : []));
|
|
1401
|
+
_animate = signal(true, ...(ngDevMode ? [{ debugName: "_animate" }] : []));
|
|
1402
|
+
_height = signal('400px', ...(ngDevMode ? [{ debugName: "_height" }] : []));
|
|
1403
|
+
_items = signal(undefined, ...(ngDevMode ? [{ debugName: "_items" }] : []));
|
|
1404
|
+
_keepItemContent = signal(false, ...(ngDevMode ? [{ debugName: "_keepItemContent" }] : []));
|
|
1267
1405
|
elementRef;
|
|
1268
1406
|
eventService;
|
|
1269
1407
|
keyBindings;
|
|
@@ -1321,19 +1459,6 @@ class PanelBarComponent {
|
|
|
1321
1459
|
}
|
|
1322
1460
|
this.validateConfiguration();
|
|
1323
1461
|
}
|
|
1324
|
-
ngOnChanges(changes) {
|
|
1325
|
-
if (changes['height'] || changes['expandMode'] || changes['items']) {
|
|
1326
|
-
if (this.childrenItems) {
|
|
1327
|
-
setTimeout(this.updateChildrenHeight);
|
|
1328
|
-
}
|
|
1329
|
-
}
|
|
1330
|
-
if (changes['animate']) {
|
|
1331
|
-
this.eventService.animate = this.animate;
|
|
1332
|
-
}
|
|
1333
|
-
if (changes['expandMode']) {
|
|
1334
|
-
this.eventService.expandMode = this.expandMode;
|
|
1335
|
-
}
|
|
1336
|
-
}
|
|
1337
1462
|
get templateRef() {
|
|
1338
1463
|
return this.template ? this.template.templateRef : undefined;
|
|
1339
1464
|
}
|
|
@@ -1662,7 +1787,7 @@ class PanelBarComponent {
|
|
|
1662
1787
|
},
|
|
1663
1788
|
provideComponentName('panelbar'),
|
|
1664
1789
|
{ provide: KENDO_WEBMCP_HOST, useExisting: forwardRef(() => PanelBarComponent) }
|
|
1665
|
-
], queries: [{ propertyName: "template", first: true, predicate: PanelBarItemTemplateDirective, descendants: true }, { propertyName: "contentItems", predicate: PanelBarItemComponent, descendants: true }, { propertyName: "contentChildItems", predicate: PanelBarItemComponent }], viewQueries: [{ propertyName: "viewChildItems", predicate: PanelBarItemComponent, descendants: true }], exportAs: ["kendoPanelbar"],
|
|
1790
|
+
], queries: [{ propertyName: "template", first: true, predicate: PanelBarItemTemplateDirective, descendants: true }, { propertyName: "contentItems", predicate: PanelBarItemComponent, descendants: true }, { propertyName: "contentChildItems", predicate: PanelBarItemComponent }], viewQueries: [{ propertyName: "viewChildItems", predicate: PanelBarItemComponent, descendants: true }], exportAs: ["kendoPanelbar"], ngImport: i0, template: `
|
|
1666
1791
|
@if (contentChildItems && !items) {
|
|
1667
1792
|
<ng-content select="kendo-panelbar-item"></ng-content>
|
|
1668
1793
|
}
|
|
@@ -1691,7 +1816,7 @@ class PanelBarComponent {
|
|
|
1691
1816
|
@if (showLicenseWatermark) {
|
|
1692
1817
|
<div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
|
|
1693
1818
|
}
|
|
1694
|
-
`, isInline: true, dependencies: [{ kind: "component", type: PanelBarItemComponent, selector: "kendo-panelbar-item", inputs: ["title", "id", "icon", "iconClass", "svgIcon", "imageUrl", "disabled", "expanded", "selected", "content", "items", "template"], exportAs: ["kendoPanelbarItem"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay], kendo-watermark-overlay", inputs: ["licenseMessage"] }] });
|
|
1819
|
+
`, isInline: true, dependencies: [{ kind: "component", type: PanelBarItemComponent, selector: "kendo-panelbar-item", inputs: ["title", "id", "icon", "iconClass", "svgIcon", "imageUrl", "disabled", "expanded", "selected", "content", "items", "template"], exportAs: ["kendoPanelbarItem"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay], kendo-watermark-overlay", inputs: ["licenseMessage"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1695
1820
|
}
|
|
1696
1821
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: PanelBarComponent, decorators: [{
|
|
1697
1822
|
type: Component,
|
|
@@ -1739,7 +1864,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
1739
1864
|
}
|
|
1740
1865
|
`,
|
|
1741
1866
|
standalone: true,
|
|
1742
|
-
imports: [PanelBarItemComponent, WatermarkOverlayComponent]
|
|
1867
|
+
imports: [PanelBarItemComponent, WatermarkOverlayComponent],
|
|
1868
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
1743
1869
|
}]
|
|
1744
1870
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: PanelBarService }, { type: i1.LocalizationService }], propDecorators: { expandMode: [{
|
|
1745
1871
|
type: Input
|
|
@@ -1860,9 +1986,6 @@ class SplitterService {
|
|
|
1860
1986
|
pane.collapsed = !pane.collapsed;
|
|
1861
1987
|
pane.collapsedChange.emit(pane.collapsed);
|
|
1862
1988
|
this.emit(this.layoutChange, {});
|
|
1863
|
-
if (pane.collapsed) {
|
|
1864
|
-
pane.detectChanges();
|
|
1865
|
-
}
|
|
1866
1989
|
}
|
|
1867
1990
|
this.syncPaneExpandState();
|
|
1868
1991
|
return pane.collapsible;
|
|
@@ -2075,11 +2198,11 @@ class SplitterPaneComponent {
|
|
|
2075
2198
|
* @hidden
|
|
2076
2199
|
*/
|
|
2077
2200
|
set order(paneOrder) {
|
|
2078
|
-
this._order
|
|
2201
|
+
this._order.set(paneOrder);
|
|
2079
2202
|
this.setOrderStyles();
|
|
2080
2203
|
}
|
|
2081
2204
|
get order() {
|
|
2082
|
-
return this._order;
|
|
2205
|
+
return this._order();
|
|
2083
2206
|
}
|
|
2084
2207
|
/**
|
|
2085
2208
|
* Defines the initial size of the pane.
|
|
@@ -2087,16 +2210,16 @@ class SplitterPaneComponent {
|
|
|
2087
2210
|
* The value must be between the `min` and `max` properties.
|
|
2088
2211
|
*/
|
|
2089
2212
|
set size(newSize) {
|
|
2090
|
-
this._size
|
|
2213
|
+
this._size.set(newSize);
|
|
2091
2214
|
// Only set flex-basis if the pane is not collapsed
|
|
2092
|
-
if (!this._collapsed) {
|
|
2215
|
+
if (!this._collapsed()) {
|
|
2093
2216
|
this.renderer.setStyle(this.nativeElement, '-ms-flex-preferred-size', newSize);
|
|
2094
2217
|
this.renderer.setStyle(this.nativeElement, 'flex-basis', newSize);
|
|
2095
2218
|
}
|
|
2096
2219
|
this.setStaticPaneClass();
|
|
2097
2220
|
}
|
|
2098
2221
|
get size() {
|
|
2099
|
-
return this._size;
|
|
2222
|
+
return this._size();
|
|
2100
2223
|
}
|
|
2101
2224
|
/**
|
|
2102
2225
|
* Defines the HTML attributes of the splitter bar.
|
|
@@ -2104,66 +2227,98 @@ class SplitterPaneComponent {
|
|
|
2104
2227
|
* You cannot change attributes that are essential for certain functionalities.
|
|
2105
2228
|
*/
|
|
2106
2229
|
set splitterBarAttributes(attributes) {
|
|
2107
|
-
this._splitterBarAttributes
|
|
2230
|
+
this._splitterBarAttributes.set(attributes);
|
|
2108
2231
|
const splitterBar = this.splitterService.getPaneSplitterBar(this);
|
|
2109
2232
|
if (splitterBar) {
|
|
2110
2233
|
splitterBar.htmlAttributes = attributes;
|
|
2111
2234
|
}
|
|
2112
2235
|
}
|
|
2113
2236
|
get splitterBarAttributes() {
|
|
2114
|
-
return this._splitterBarAttributes;
|
|
2237
|
+
return this._splitterBarAttributes();
|
|
2115
2238
|
}
|
|
2116
2239
|
/**
|
|
2117
2240
|
* Defines the CSS classes that are rendered on the splitter bar.
|
|
2118
2241
|
* Supports the same values as [`ngClass`](link:site.data.urls.angular['ngclassapi']).
|
|
2119
2242
|
*/
|
|
2120
|
-
splitterBarClass
|
|
2243
|
+
set splitterBarClass(value) {
|
|
2244
|
+
this._splitterBarClass.set(value);
|
|
2245
|
+
}
|
|
2246
|
+
get splitterBarClass() {
|
|
2247
|
+
return this._splitterBarClass();
|
|
2248
|
+
}
|
|
2121
2249
|
/**
|
|
2122
2250
|
* Defines the minimum possible size of the pane.
|
|
2123
2251
|
* Accepts values in pixels and percentages.
|
|
2124
2252
|
*/
|
|
2125
|
-
min
|
|
2253
|
+
set min(value) {
|
|
2254
|
+
this._min.set(value);
|
|
2255
|
+
}
|
|
2256
|
+
get min() {
|
|
2257
|
+
return this._min();
|
|
2258
|
+
}
|
|
2126
2259
|
/**
|
|
2127
2260
|
* Defines the maximum possible size of the pane.
|
|
2128
2261
|
* Accepts values in pixels and percentages.
|
|
2129
2262
|
*/
|
|
2130
|
-
max
|
|
2263
|
+
set max(value) {
|
|
2264
|
+
this._max.set(value);
|
|
2265
|
+
}
|
|
2266
|
+
get max() {
|
|
2267
|
+
return this._max();
|
|
2268
|
+
}
|
|
2131
2269
|
/**
|
|
2132
2270
|
* Determines if you can resize the pane and provide space for other panes.
|
|
2133
2271
|
*
|
|
2134
2272
|
* @default true
|
|
2135
2273
|
*/
|
|
2136
|
-
resizable
|
|
2274
|
+
set resizable(value) {
|
|
2275
|
+
this._resizable.set(value);
|
|
2276
|
+
this.setStaticPaneClass();
|
|
2277
|
+
}
|
|
2278
|
+
get resizable() {
|
|
2279
|
+
return this._resizable();
|
|
2280
|
+
}
|
|
2137
2281
|
/**
|
|
2138
2282
|
* Determines if you can hide the pane and provide space for other panes.
|
|
2139
2283
|
*
|
|
2140
2284
|
* @default false
|
|
2141
2285
|
*/
|
|
2142
|
-
collapsible
|
|
2286
|
+
set collapsible(value) {
|
|
2287
|
+
this._collapsible.set(value);
|
|
2288
|
+
this.setStaticPaneClass();
|
|
2289
|
+
}
|
|
2290
|
+
get collapsible() {
|
|
2291
|
+
return this._collapsible();
|
|
2292
|
+
}
|
|
2143
2293
|
/**
|
|
2144
2294
|
* Determines if overflowing content is scrollable or hidden.
|
|
2145
2295
|
*
|
|
2146
2296
|
* @default true
|
|
2147
2297
|
*/
|
|
2148
|
-
scrollable
|
|
2298
|
+
set scrollable(value) {
|
|
2299
|
+
this._scrollable.set(value);
|
|
2300
|
+
}
|
|
2301
|
+
get scrollable() {
|
|
2302
|
+
return this._scrollable();
|
|
2303
|
+
}
|
|
2149
2304
|
/**
|
|
2150
2305
|
* Determines if the pane is initially collapsed.
|
|
2151
2306
|
*
|
|
2152
2307
|
* @default false
|
|
2153
2308
|
*/
|
|
2154
2309
|
set collapsed(value) {
|
|
2155
|
-
const hasChanged = this._collapsed !== value;
|
|
2156
|
-
this._collapsed
|
|
2310
|
+
const hasChanged = this._collapsed() !== value;
|
|
2311
|
+
this._collapsed.set(value);
|
|
2157
2312
|
if (hasChanged && this.nativeElement) {
|
|
2158
|
-
if (this._collapsed) {
|
|
2313
|
+
if (this._collapsed()) {
|
|
2159
2314
|
// When collapsing, clear the flex-basis to allow other panes to expand
|
|
2160
2315
|
this.renderer.setStyle(this.nativeElement, '-ms-flex-preferred-size', '0');
|
|
2161
2316
|
this.renderer.setStyle(this.nativeElement, 'flex-basis', '0');
|
|
2162
2317
|
}
|
|
2163
|
-
else if (this._size) {
|
|
2318
|
+
else if (this._size()) {
|
|
2164
2319
|
// When expanding, restore the size if it was set
|
|
2165
|
-
this.renderer.setStyle(this.nativeElement, '-ms-flex-preferred-size', this._size);
|
|
2166
|
-
this.renderer.setStyle(this.nativeElement, 'flex-basis', this._size);
|
|
2320
|
+
this.renderer.setStyle(this.nativeElement, '-ms-flex-preferred-size', this._size());
|
|
2321
|
+
this.renderer.setStyle(this.nativeElement, 'flex-basis', this._size());
|
|
2167
2322
|
}
|
|
2168
2323
|
// Trigger the same forceExpand logic that tryToggle does
|
|
2169
2324
|
// This ensures remaining panes expand when a pane is collapsed
|
|
@@ -2173,16 +2328,22 @@ class SplitterPaneComponent {
|
|
|
2173
2328
|
}
|
|
2174
2329
|
}
|
|
2175
2330
|
get collapsed() {
|
|
2176
|
-
return this._collapsed;
|
|
2331
|
+
return this._collapsed();
|
|
2177
2332
|
}
|
|
2178
2333
|
/**
|
|
2179
2334
|
* @hidden
|
|
2180
2335
|
*/
|
|
2181
|
-
orientation
|
|
2336
|
+
set orientation(value) {
|
|
2337
|
+
this._orientation.set(value);
|
|
2338
|
+
}
|
|
2339
|
+
get orientation() {
|
|
2340
|
+
return this._orientation();
|
|
2341
|
+
}
|
|
2182
2342
|
/**
|
|
2183
2343
|
* @hidden
|
|
2184
2344
|
*/
|
|
2185
2345
|
set containsSplitter(value) {
|
|
2346
|
+
this._containsSplitter.set(value);
|
|
2186
2347
|
if (value) {
|
|
2187
2348
|
this.renderer.addClass(this.nativeElement, 'k-pane-flex');
|
|
2188
2349
|
}
|
|
@@ -2190,10 +2351,18 @@ class SplitterPaneComponent {
|
|
|
2190
2351
|
this.renderer.removeClass(this.nativeElement, 'k-pane-flex');
|
|
2191
2352
|
}
|
|
2192
2353
|
}
|
|
2354
|
+
get containsSplitter() {
|
|
2355
|
+
return this._containsSplitter();
|
|
2356
|
+
}
|
|
2193
2357
|
/**
|
|
2194
2358
|
* @hidden
|
|
2195
2359
|
*/
|
|
2196
|
-
overlayContent
|
|
2360
|
+
set overlayContent(value) {
|
|
2361
|
+
this._overlayContent.set(value);
|
|
2362
|
+
}
|
|
2363
|
+
get overlayContent() {
|
|
2364
|
+
return this._overlayContent();
|
|
2365
|
+
}
|
|
2197
2366
|
/**
|
|
2198
2367
|
* Fires when the Splitter pane size changes.
|
|
2199
2368
|
* The event data contains the new pane size.
|
|
@@ -2221,10 +2390,10 @@ class SplitterPaneComponent {
|
|
|
2221
2390
|
* @hidden
|
|
2222
2391
|
*/
|
|
2223
2392
|
set forceExpand(value) {
|
|
2224
|
-
if (this._forceExpand === value) {
|
|
2393
|
+
if (this._forceExpand() === value) {
|
|
2225
2394
|
return;
|
|
2226
2395
|
}
|
|
2227
|
-
this._forceExpand
|
|
2396
|
+
this._forceExpand.set(value);
|
|
2228
2397
|
// Enforce min/max constraints during flex redistribution so panes
|
|
2229
2398
|
// do not exceed their bounds when absorbing a collapsed pane's space.
|
|
2230
2399
|
const sizeProp = this.orientation === 'vertical' ? 'height' : 'width';
|
|
@@ -2246,17 +2415,26 @@ class SplitterPaneComponent {
|
|
|
2246
2415
|
}
|
|
2247
2416
|
}
|
|
2248
2417
|
get forceExpand() {
|
|
2249
|
-
return this._forceExpand;
|
|
2418
|
+
return this._forceExpand();
|
|
2250
2419
|
}
|
|
2251
2420
|
/**
|
|
2252
2421
|
* @hidden
|
|
2253
2422
|
*/
|
|
2254
2423
|
isResized = false;
|
|
2255
|
-
_size;
|
|
2256
|
-
_order;
|
|
2257
|
-
_splitterBarAttributes;
|
|
2258
|
-
|
|
2259
|
-
|
|
2424
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
2425
|
+
_order = signal(undefined, ...(ngDevMode ? [{ debugName: "_order" }] : []));
|
|
2426
|
+
_splitterBarAttributes = signal(undefined, ...(ngDevMode ? [{ debugName: "_splitterBarAttributes" }] : []));
|
|
2427
|
+
_splitterBarClass = signal(undefined, ...(ngDevMode ? [{ debugName: "_splitterBarClass" }] : []));
|
|
2428
|
+
_min = signal(undefined, ...(ngDevMode ? [{ debugName: "_min" }] : []));
|
|
2429
|
+
_max = signal(undefined, ...(ngDevMode ? [{ debugName: "_max" }] : []));
|
|
2430
|
+
_collapsed = signal(false, ...(ngDevMode ? [{ debugName: "_collapsed" }] : []));
|
|
2431
|
+
_forceExpand = signal(false, ...(ngDevMode ? [{ debugName: "_forceExpand" }] : []));
|
|
2432
|
+
_resizable = signal(true, ...(ngDevMode ? [{ debugName: "_resizable" }] : []));
|
|
2433
|
+
_collapsible = signal(false, ...(ngDevMode ? [{ debugName: "_collapsible" }] : []));
|
|
2434
|
+
_scrollable = signal(true, ...(ngDevMode ? [{ debugName: "_scrollable" }] : []));
|
|
2435
|
+
_orientation = signal('horizontal', ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
2436
|
+
_containsSplitter = signal(false, ...(ngDevMode ? [{ debugName: "_containsSplitter" }] : []));
|
|
2437
|
+
_overlayContent = signal(false, ...(ngDevMode ? [{ debugName: "_overlayContent" }] : []));
|
|
2260
2438
|
constructor(element, renderer, cdr, splitterService) {
|
|
2261
2439
|
this.element = element;
|
|
2262
2440
|
this.renderer = renderer;
|
|
@@ -2274,11 +2452,6 @@ class SplitterPaneComponent {
|
|
|
2274
2452
|
}
|
|
2275
2453
|
this.setStaticPaneClass();
|
|
2276
2454
|
}
|
|
2277
|
-
ngOnChanges(changes) {
|
|
2278
|
-
if (anyChanged(['resizable', 'collapsible'], changes)) {
|
|
2279
|
-
this.setStaticPaneClass();
|
|
2280
|
-
}
|
|
2281
|
-
}
|
|
2282
2455
|
/**
|
|
2283
2456
|
* @hidden
|
|
2284
2457
|
*/
|
|
@@ -2300,8 +2473,7 @@ class SplitterPaneComponent {
|
|
|
2300
2473
|
* @hidden
|
|
2301
2474
|
*/
|
|
2302
2475
|
toggleOverlay(show) {
|
|
2303
|
-
this.
|
|
2304
|
-
this.cdr.detectChanges();
|
|
2476
|
+
this._overlayContent.set(show);
|
|
2305
2477
|
}
|
|
2306
2478
|
/**
|
|
2307
2479
|
* @hidden
|
|
@@ -2326,20 +2498,21 @@ class SplitterPaneComponent {
|
|
|
2326
2498
|
}
|
|
2327
2499
|
}
|
|
2328
2500
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: SplitterPaneComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: SplitterService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2329
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: SplitterPaneComponent, isStandalone: true, selector: "kendo-splitter-pane", inputs: { order: "order", size: "size", splitterBarAttributes: "splitterBarAttributes", splitterBarClass: "splitterBarClass", min: "min", max: "max", resizable: "resizable", collapsible: "collapsible", scrollable: "scrollable", collapsed: "collapsed", orientation: "orientation", containsSplitter: "containsSplitter", overlayContent: "overlayContent" }, outputs: { sizeChange: "sizeChange", collapsedChange: "collapsedChange" }, host: { properties: { "attr.role": "this.ariaRole", "class.k-pane": "this.hostClass", "class.k-scrollable": "this.scrollablePaneClass" } }, exportAs: ["kendoSplitterPane"],
|
|
2501
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: SplitterPaneComponent, isStandalone: true, selector: "kendo-splitter-pane", inputs: { order: "order", size: "size", splitterBarAttributes: "splitterBarAttributes", splitterBarClass: "splitterBarClass", min: "min", max: "max", resizable: "resizable", collapsible: "collapsible", scrollable: "scrollable", collapsed: "collapsed", orientation: "orientation", containsSplitter: "containsSplitter", overlayContent: "overlayContent" }, outputs: { sizeChange: "sizeChange", collapsedChange: "collapsedChange" }, host: { properties: { "attr.role": "this.ariaRole", "class.k-pane": "this.hostClass", "class.k-scrollable": "this.scrollablePaneClass" } }, exportAs: ["kendoSplitterPane"], ngImport: i0, template: `
|
|
2330
2502
|
@if (!collapsed) {
|
|
2331
2503
|
<ng-content></ng-content>
|
|
2332
2504
|
}
|
|
2333
2505
|
@if (overlayContent) {
|
|
2334
2506
|
<div class="k-splitter-overlay k-overlay"></div>
|
|
2335
2507
|
}
|
|
2336
|
-
`, isInline: true });
|
|
2508
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2337
2509
|
}
|
|
2338
2510
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: SplitterPaneComponent, decorators: [{
|
|
2339
2511
|
type: Component,
|
|
2340
2512
|
args: [{
|
|
2341
|
-
exportAs: 'kendoSplitterPane',
|
|
2342
2513
|
selector: 'kendo-splitter-pane',
|
|
2514
|
+
exportAs: 'kendoSplitterPane',
|
|
2515
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2343
2516
|
template: `
|
|
2344
2517
|
@if (!collapsed) {
|
|
2345
2518
|
<ng-content></ng-content>
|
|
@@ -2413,10 +2586,11 @@ class SplitterBarComponent {
|
|
|
2413
2586
|
splitterService;
|
|
2414
2587
|
element;
|
|
2415
2588
|
renderer;
|
|
2416
|
-
cdr;
|
|
2417
2589
|
ariaRole = 'separator';
|
|
2418
2590
|
ariaLabel = 'Splitter pane';
|
|
2419
|
-
focused
|
|
2591
|
+
get focused() {
|
|
2592
|
+
return this._focused();
|
|
2593
|
+
}
|
|
2420
2594
|
get hostOrientation() {
|
|
2421
2595
|
return this.orientation === 'horizontal' ? 'vertical' : null;
|
|
2422
2596
|
}
|
|
@@ -2443,23 +2617,36 @@ class SplitterBarComponent {
|
|
|
2443
2617
|
get order() {
|
|
2444
2618
|
return 2 * this.index + 1;
|
|
2445
2619
|
}
|
|
2446
|
-
orientation
|
|
2447
|
-
|
|
2620
|
+
set orientation(value) {
|
|
2621
|
+
this._orientation.set(value);
|
|
2622
|
+
}
|
|
2623
|
+
get orientation() {
|
|
2624
|
+
return this._orientation();
|
|
2625
|
+
}
|
|
2626
|
+
set index(value) {
|
|
2627
|
+
this._index.set(value);
|
|
2628
|
+
}
|
|
2629
|
+
get index() {
|
|
2630
|
+
return this._index();
|
|
2631
|
+
}
|
|
2448
2632
|
set htmlAttributes(attributes) {
|
|
2449
2633
|
if (isObjectPresent(this.parsedAttributes)) {
|
|
2450
2634
|
removeHTMLAttributes(this.parsedAttributes, this.renderer, this.element.nativeElement);
|
|
2451
2635
|
}
|
|
2452
|
-
this._htmlAttributes
|
|
2453
|
-
this.parsedAttributes = this.
|
|
2454
|
-
parseAttributes(this.
|
|
2455
|
-
this.
|
|
2636
|
+
this._htmlAttributes.set(attributes);
|
|
2637
|
+
this.parsedAttributes = this._htmlAttributes() ?
|
|
2638
|
+
parseAttributes(this._htmlAttributes(), this.defaultAttributes) :
|
|
2639
|
+
this._htmlAttributes();
|
|
2456
2640
|
this.setHtmlAttributes();
|
|
2457
2641
|
}
|
|
2458
2642
|
get htmlAttributes() {
|
|
2459
|
-
return this._htmlAttributes;
|
|
2643
|
+
return this._htmlAttributes();
|
|
2460
2644
|
}
|
|
2461
2645
|
subscriptions = new Subscription();
|
|
2462
|
-
_htmlAttributes;
|
|
2646
|
+
_htmlAttributes = signal(null, ...(ngDevMode ? [{ debugName: "_htmlAttributes" }] : []));
|
|
2647
|
+
_orientation = signal('horizontal', ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
2648
|
+
_index = signal(0, ...(ngDevMode ? [{ debugName: "_index" }] : []));
|
|
2649
|
+
_focused = signal(false, ...(ngDevMode ? [{ debugName: "_focused" }] : []));
|
|
2463
2650
|
parsedAttributes = {};
|
|
2464
2651
|
get defaultAttributes() {
|
|
2465
2652
|
return {
|
|
@@ -2470,13 +2657,12 @@ class SplitterBarComponent {
|
|
|
2470
2657
|
get mutableAttributes() {
|
|
2471
2658
|
return { 'tabindex': this.tabIndex };
|
|
2472
2659
|
}
|
|
2473
|
-
constructor(draggable, localization, splitterService, element, renderer
|
|
2660
|
+
constructor(draggable, localization, splitterService, element, renderer) {
|
|
2474
2661
|
this.draggable = draggable;
|
|
2475
2662
|
this.localization = localization;
|
|
2476
2663
|
this.splitterService = splitterService;
|
|
2477
2664
|
this.element = element;
|
|
2478
2665
|
this.renderer = renderer;
|
|
2479
|
-
this.cdr = cdr;
|
|
2480
2666
|
}
|
|
2481
2667
|
ngOnInit() {
|
|
2482
2668
|
let state;
|
|
@@ -2497,8 +2683,8 @@ class SplitterBarComponent {
|
|
|
2497
2683
|
this.subscriptions.add(this.draggable.kendoRelease.subscribe(() => this.splitterService.toggleContentOverlay(this.index, false)));
|
|
2498
2684
|
const element = this.element.nativeElement;
|
|
2499
2685
|
this.subscriptions.add(this.renderer.listen(element, 'keydown', event => this.onKeyDown(event)));
|
|
2500
|
-
this.subscriptions.add(this.renderer.listen(element, 'focusin', () => this.
|
|
2501
|
-
this.subscriptions.add(this.renderer.listen(element, 'focusout', () => this.
|
|
2686
|
+
this.subscriptions.add(this.renderer.listen(element, 'focusin', () => this._focused.set(true)));
|
|
2687
|
+
this.subscriptions.add(this.renderer.listen(element, 'focusout', () => this._focused.set(false)));
|
|
2502
2688
|
this.subscriptions.add(this.renderer.listen(element, 'dblclick', () => this.togglePane()));
|
|
2503
2689
|
}
|
|
2504
2690
|
ngOnDestroy() {
|
|
@@ -2594,7 +2780,6 @@ class SplitterBarComponent {
|
|
|
2594
2780
|
else {
|
|
2595
2781
|
this.tryToggleNearest();
|
|
2596
2782
|
}
|
|
2597
|
-
this.cdr.markForCheck();
|
|
2598
2783
|
}
|
|
2599
2784
|
get expandLast() {
|
|
2600
2785
|
const panes = this.splitterService.panes;
|
|
@@ -2628,7 +2813,7 @@ class SplitterBarComponent {
|
|
|
2628
2813
|
const attributesToRender = { ...this.mutableAttributes, ...this.parsedAttributes };
|
|
2629
2814
|
setHTMLAttributes(attributesToRender, this.renderer, this.element.nativeElement);
|
|
2630
2815
|
}
|
|
2631
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: SplitterBarComponent, deps: [{ token: i1$1.DraggableDirective, host: true }, { token: i1.LocalizationService }, { token: SplitterService }, { token: i0.ElementRef }, { token: i0.Renderer2 }
|
|
2816
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: SplitterBarComponent, deps: [{ token: i1$1.DraggableDirective, host: true }, { token: i1.LocalizationService }, { token: SplitterService }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
2632
2817
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: SplitterBarComponent, isStandalone: true, selector: "kendo-splitter-bar", inputs: { orientation: "orientation", index: "index", htmlAttributes: "htmlAttributes" }, host: { properties: { "attr.role": "this.ariaRole", "attr.aria-label": "this.ariaLabel", "class.k-focus": "this.focused", "attr.aria-orientation": "this.hostOrientation", "attr.aria-keyshortcuts": "this.ariaKeyShortcuts", "attr.tabindex": "this.tabIndex", "class": "this.hostClasses", "style.-ms-flex-order": "this.order", "style.order": "this.order" } }, ngImport: i0, template: `
|
|
2633
2818
|
@if (shouldShowIcon('prev')) {
|
|
2634
2819
|
<div class="k-collapse-prev" (click)="togglePrevious()">
|
|
@@ -2649,12 +2834,13 @@ class SplitterBarComponent {
|
|
|
2649
2834
|
></kendo-icon-wrapper>
|
|
2650
2835
|
</div>
|
|
2651
2836
|
}
|
|
2652
|
-
`, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
2837
|
+
`, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2653
2838
|
}
|
|
2654
2839
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: SplitterBarComponent, decorators: [{
|
|
2655
2840
|
type: Component,
|
|
2656
2841
|
args: [{
|
|
2657
2842
|
selector: 'kendo-splitter-bar',
|
|
2843
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2658
2844
|
template: `
|
|
2659
2845
|
@if (shouldShowIcon('prev')) {
|
|
2660
2846
|
<div class="k-collapse-prev" (click)="togglePrevious()">
|
|
@@ -2681,7 +2867,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
2681
2867
|
}]
|
|
2682
2868
|
}], ctorParameters: () => [{ type: i1$1.DraggableDirective, decorators: [{
|
|
2683
2869
|
type: Host
|
|
2684
|
-
}] }, { type: i1.LocalizationService }, { type: SplitterService }, { type: i0.ElementRef }, { type: i0.Renderer2 }
|
|
2870
|
+
}] }, { type: i1.LocalizationService }, { type: SplitterService }, { type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { ariaRole: [{
|
|
2685
2871
|
type: HostBinding,
|
|
2686
2872
|
args: ['attr.role']
|
|
2687
2873
|
}], ariaLabel: [{
|
|
@@ -2740,6 +2926,7 @@ class SplitterComponent {
|
|
|
2740
2926
|
localization;
|
|
2741
2927
|
renderer;
|
|
2742
2928
|
ngZone;
|
|
2929
|
+
cdr;
|
|
2743
2930
|
enclosingPane;
|
|
2744
2931
|
/**
|
|
2745
2932
|
* Defines the orientation of the panes within the Splitter.
|
|
@@ -2747,12 +2934,22 @@ class SplitterComponent {
|
|
|
2747
2934
|
*
|
|
2748
2935
|
* @default 'horizontal'
|
|
2749
2936
|
*/
|
|
2750
|
-
orientation
|
|
2937
|
+
set orientation(value) {
|
|
2938
|
+
this._orientation.set(value);
|
|
2939
|
+
}
|
|
2940
|
+
get orientation() {
|
|
2941
|
+
return this._orientation();
|
|
2942
|
+
}
|
|
2751
2943
|
/**
|
|
2752
2944
|
* Defines the width or height of the Splitter splitbars in pixels.
|
|
2753
2945
|
* The dimension depends on the orientation of the Splitter.
|
|
2754
2946
|
*/
|
|
2755
|
-
splitbarWidth
|
|
2947
|
+
set splitbarWidth(value) {
|
|
2948
|
+
this._splitbarWidth.set(value);
|
|
2949
|
+
}
|
|
2950
|
+
get splitbarWidth() {
|
|
2951
|
+
return this._splitbarWidth();
|
|
2952
|
+
}
|
|
2756
2953
|
/**
|
|
2757
2954
|
* Defines the distance in pixels that you move the separator during keyboard navigation.
|
|
2758
2955
|
*
|
|
@@ -2768,7 +2965,12 @@ class SplitterComponent {
|
|
|
2768
2965
|
* Defines the CSS classes that are rendered on the splitter bars.
|
|
2769
2966
|
* Supports the same values as [`ngClass`](link:site.data.urls.angular['ngclassapi']).
|
|
2770
2967
|
*/
|
|
2771
|
-
splitterBarClass
|
|
2968
|
+
set splitterBarClass(value) {
|
|
2969
|
+
this._splitterBarClass.set(value);
|
|
2970
|
+
}
|
|
2971
|
+
get splitterBarClass() {
|
|
2972
|
+
return this._splitterBarClass();
|
|
2973
|
+
}
|
|
2772
2974
|
/**
|
|
2773
2975
|
* Fires when the layout of the Splitter changes.
|
|
2774
2976
|
* Use this event to trigger layout calculations on components that are positioned inside the panes.
|
|
@@ -2811,14 +3013,18 @@ class SplitterComponent {
|
|
|
2811
3013
|
* @hidden
|
|
2812
3014
|
*/
|
|
2813
3015
|
panes;
|
|
3016
|
+
_orientation = signal('horizontal', ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
3017
|
+
_splitbarWidth = signal(undefined, ...(ngDevMode ? [{ debugName: "_splitbarWidth" }] : []));
|
|
3018
|
+
_splitterBarClass = signal(undefined, ...(ngDevMode ? [{ debugName: "_splitterBarClass" }] : []));
|
|
2814
3019
|
paneChangesSubscription;
|
|
2815
3020
|
_styleObserver;
|
|
2816
|
-
constructor(element, splitterService, localization, renderer, ngZone, enclosingPane) {
|
|
3021
|
+
constructor(element, splitterService, localization, renderer, ngZone, cdr, enclosingPane) {
|
|
2817
3022
|
this.element = element;
|
|
2818
3023
|
this.splitterService = splitterService;
|
|
2819
3024
|
this.localization = localization;
|
|
2820
3025
|
this.renderer = renderer;
|
|
2821
3026
|
this.ngZone = ngZone;
|
|
3027
|
+
this.cdr = cdr;
|
|
2822
3028
|
this.enclosingPane = enclosingPane;
|
|
2823
3029
|
validatePackage(packageMetadata);
|
|
2824
3030
|
if (enclosingPane) {
|
|
@@ -2889,6 +3095,7 @@ class SplitterComponent {
|
|
|
2889
3095
|
},
|
|
2890
3096
|
direction: this.direction
|
|
2891
3097
|
});
|
|
3098
|
+
this.cdr.markForCheck();
|
|
2892
3099
|
}
|
|
2893
3100
|
get direction() {
|
|
2894
3101
|
return this.localization.rtl ? 'rtl' : 'ltr';
|
|
@@ -2896,7 +3103,7 @@ class SplitterComponent {
|
|
|
2896
3103
|
setFixedHeight() {
|
|
2897
3104
|
this.splitterService.fixedHeight = getComputedStyle(this.element.nativeElement).getPropertyValue('height') !== 'auto';
|
|
2898
3105
|
}
|
|
2899
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: SplitterComponent, deps: [{ token: i0.ElementRef }, { token: SplitterService }, { token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: SplitterPaneComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
3106
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: SplitterComponent, deps: [{ token: i0.ElementRef }, { token: SplitterService }, { token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: SplitterPaneComponent, host: true, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
2900
3107
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: SplitterComponent, isStandalone: true, selector: "kendo-splitter", inputs: { orientation: "orientation", splitbarWidth: "splitbarWidth", resizeStep: "resizeStep", splitterBarClass: "splitterBarClass" }, outputs: { layoutChange: "layoutChange" }, host: { properties: { "class.k-splitter": "this.hostClasses", "class.k-splitter-flex": "this.hostClasses", "class.k-splitter-horizontal": "this.horizontalHostClasses", "class.k-splitter-vertical": "this.verticalHostClasses", "attr.dir": "this.dir" } }, providers: [
|
|
2901
3108
|
SplitterService,
|
|
2902
3109
|
LocalizationService,
|
|
@@ -2923,13 +3130,14 @@ class SplitterComponent {
|
|
|
2923
3130
|
</kendo-splitter-bar>
|
|
2924
3131
|
}
|
|
2925
3132
|
}
|
|
2926
|
-
`, isInline: true, dependencies: [{ kind: "component", type: SplitterBarComponent, selector: "kendo-splitter-bar", inputs: ["orientation", "index", "htmlAttributes"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
3133
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SplitterBarComponent, selector: "kendo-splitter-bar", inputs: ["orientation", "index", "htmlAttributes"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2927
3134
|
}
|
|
2928
3135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: SplitterComponent, decorators: [{
|
|
2929
3136
|
type: Component,
|
|
2930
3137
|
args: [{
|
|
2931
|
-
exportAs: 'kendoSplitter',
|
|
2932
3138
|
selector: 'kendo-splitter',
|
|
3139
|
+
exportAs: 'kendoSplitter',
|
|
3140
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2933
3141
|
providers: [
|
|
2934
3142
|
SplitterService,
|
|
2935
3143
|
LocalizationService,
|
|
@@ -2961,7 +3169,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
2961
3169
|
standalone: true,
|
|
2962
3170
|
imports: [SplitterBarComponent, DraggableDirective, NgStyle, NgClass]
|
|
2963
3171
|
}]
|
|
2964
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: SplitterService }, { type: i1.LocalizationService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: SplitterPaneComponent, decorators: [{
|
|
3172
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: SplitterService }, { type: i1.LocalizationService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: SplitterPaneComponent, decorators: [{
|
|
2965
3173
|
type: Optional
|
|
2966
3174
|
}, {
|
|
2967
3175
|
type: Host
|
|
@@ -3105,49 +3313,58 @@ class TabStripTabComponent {
|
|
|
3105
3313
|
/**
|
|
3106
3314
|
* Sets the title text for the tab ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tabstrip/tabs#tab-titles)).
|
|
3107
3315
|
*/
|
|
3108
|
-
title;
|
|
3316
|
+
set title(value) { this._title.set(value); }
|
|
3317
|
+
get title() { return this._title(); }
|
|
3109
3318
|
/**
|
|
3110
3319
|
* Disables the tab and prevents user interaction ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tabstrip/tabs#disabled-tabs)).
|
|
3111
3320
|
*
|
|
3112
3321
|
* @default false
|
|
3113
3322
|
*/
|
|
3114
|
-
disabled
|
|
3323
|
+
set disabled(value) { this._disabled.set(value); }
|
|
3324
|
+
get disabled() { return this._disabled(); }
|
|
3115
3325
|
/**
|
|
3116
3326
|
* Specifies the CSS classes to apply to the `tab` element.
|
|
3117
3327
|
* Accepts the same values as [`ngClass`](link:site.data.urls.angular['ngclassapi']).
|
|
3118
3328
|
*/
|
|
3119
|
-
cssClass;
|
|
3329
|
+
set cssClass(value) { this._cssClass.set(value); }
|
|
3330
|
+
get cssClass() { return this._cssClass(); }
|
|
3120
3331
|
/**
|
|
3121
3332
|
* Specifies the CSS styles to apply to the `tab` element.
|
|
3122
3333
|
* Accepts the same values as [`ngStyle`](link:site.data.urls.angular['ngstyleapi']).
|
|
3123
3334
|
*/
|
|
3124
|
-
cssStyle;
|
|
3335
|
+
set cssStyle(value) { this._cssStyle.set(value); }
|
|
3336
|
+
get cssStyle() { return this._cssStyle(); }
|
|
3125
3337
|
/**
|
|
3126
3338
|
* Selects the tab when the TabStrip loads
|
|
3127
3339
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tabstrip/tabs#selected-tab)).
|
|
3128
3340
|
*/
|
|
3129
|
-
selected;
|
|
3341
|
+
set selected(value) { this._selected.set(value); }
|
|
3342
|
+
get selected() { return this._selected(); }
|
|
3130
3343
|
/**
|
|
3131
3344
|
* Shows a close button inside the tab when set to `true`.
|
|
3132
3345
|
* This setting overrides the TabStrip `closable` option.
|
|
3133
3346
|
*/
|
|
3134
|
-
closable;
|
|
3347
|
+
set closable(value) { this._closable.set(value); }
|
|
3348
|
+
get closable() { return this._closable(); }
|
|
3135
3349
|
/**
|
|
3136
3350
|
* Sets the name of an existing font icon in the Kendo UI theme for the close button.
|
|
3137
3351
|
* This setting overrides the TabStrip `closeIcon` option.
|
|
3138
3352
|
*/
|
|
3139
|
-
closeIcon;
|
|
3353
|
+
set closeIcon(value) { this._closeIcon.set(value); }
|
|
3354
|
+
get closeIcon() { return this._closeIcon(); }
|
|
3140
3355
|
/**
|
|
3141
3356
|
* Sets custom CSS classes for the close button icon.
|
|
3142
3357
|
* You can define a single class or multiple classes separated by spaces.
|
|
3143
3358
|
* This setting overrides the TabStrip `closeIcon` option.
|
|
3144
3359
|
*/
|
|
3145
|
-
closeIconClass;
|
|
3360
|
+
set closeIconClass(value) { this._closeIconClass.set(value); }
|
|
3361
|
+
get closeIconClass() { return this._closeIconClass(); }
|
|
3146
3362
|
/**
|
|
3147
3363
|
* Sets an SVG icon for the close button.
|
|
3148
3364
|
* You can use an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or provide a custom one.
|
|
3149
3365
|
*/
|
|
3150
|
-
closeSVGIcon;
|
|
3366
|
+
set closeSVGIcon(value) { this._closeSVGIcon.set(value); }
|
|
3367
|
+
get closeSVGIcon() { return this._closeSVGIcon(); }
|
|
3151
3368
|
get tabContent() {
|
|
3152
3369
|
return this._tabContent.first;
|
|
3153
3370
|
}
|
|
@@ -3161,21 +3378,33 @@ class TabStripTabComponent {
|
|
|
3161
3378
|
_tabContent = new QueryList();
|
|
3162
3379
|
// guards against nested tabstrip components; `descendants` is not defined by default;
|
|
3163
3380
|
_tabTitleDirective;
|
|
3381
|
+
_title = signal(undefined, ...(ngDevMode ? [{ debugName: "_title" }] : []));
|
|
3382
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
3383
|
+
_cssClass = signal(undefined, ...(ngDevMode ? [{ debugName: "_cssClass" }] : []));
|
|
3384
|
+
_cssStyle = signal(undefined, ...(ngDevMode ? [{ debugName: "_cssStyle" }] : []));
|
|
3385
|
+
_selected = signal(undefined, ...(ngDevMode ? [{ debugName: "_selected" }] : []));
|
|
3386
|
+
_closable = signal(undefined, ...(ngDevMode ? [{ debugName: "_closable" }] : []));
|
|
3387
|
+
_closeIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_closeIcon" }] : []));
|
|
3388
|
+
_closeIconClass = signal(undefined, ...(ngDevMode ? [{ debugName: "_closeIconClass" }] : []));
|
|
3389
|
+
_closeSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_closeSVGIcon" }] : []));
|
|
3164
3390
|
/**
|
|
3165
3391
|
* @hidden
|
|
3166
3392
|
*
|
|
3167
3393
|
* Currently only disabled tabs can be focused. Otherwise they will be
|
|
3168
3394
|
* immediately selected
|
|
3169
3395
|
*/
|
|
3170
|
-
focused
|
|
3396
|
+
set focused(value) { this._focused.set(value); }
|
|
3397
|
+
get focused() { return this._focused(); }
|
|
3398
|
+
_focused = signal(false, ...(ngDevMode ? [{ debugName: "_focused" }] : []));
|
|
3171
3399
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TabStripTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3172
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: TabStripTabComponent, isStandalone: true, selector: "kendo-tabstrip-tab", inputs: { title: "title", disabled: "disabled", cssClass: "cssClass", cssStyle: "cssStyle", selected: "selected", closable: "closable", closeIcon: "closeIcon", closeIconClass: "closeIconClass", closeSVGIcon: "closeSVGIcon" }, queries: [{ propertyName: "_tabDirective", predicate: TabTemplateDirective }, { propertyName: "_tabContent", predicate: TabContentDirective }, { propertyName: "_tabTitleDirective", predicate: TabTitleDirective }], exportAs: ["kendoTabStripTab"], ngImport: i0, template: ``, isInline: true });
|
|
3400
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: TabStripTabComponent, isStandalone: true, selector: "kendo-tabstrip-tab", inputs: { title: "title", disabled: "disabled", cssClass: "cssClass", cssStyle: "cssStyle", selected: "selected", closable: "closable", closeIcon: "closeIcon", closeIconClass: "closeIconClass", closeSVGIcon: "closeSVGIcon" }, queries: [{ propertyName: "_tabDirective", predicate: TabTemplateDirective }, { propertyName: "_tabContent", predicate: TabContentDirective }, { propertyName: "_tabTitleDirective", predicate: TabTitleDirective }], exportAs: ["kendoTabStripTab"], ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3173
3401
|
}
|
|
3174
3402
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TabStripTabComponent, decorators: [{
|
|
3175
3403
|
type: Component,
|
|
3176
3404
|
args: [{
|
|
3177
|
-
exportAs: 'kendoTabStripTab',
|
|
3178
3405
|
selector: 'kendo-tabstrip-tab',
|
|
3406
|
+
exportAs: 'kendoTabStripTab',
|
|
3407
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3179
3408
|
template: ``,
|
|
3180
3409
|
standalone: true
|
|
3181
3410
|
}]
|
|
@@ -3756,9 +3985,12 @@ class TabStripScrollableButtonComponent {
|
|
|
3756
3985
|
get nextClass() {
|
|
3757
3986
|
return !this.prev;
|
|
3758
3987
|
}
|
|
3759
|
-
prev
|
|
3760
|
-
|
|
3761
|
-
|
|
3988
|
+
set prev(value) { this._prev.set(value); }
|
|
3989
|
+
get prev() { return this._prev(); }
|
|
3990
|
+
set tabPosition(value) { this._tabPosition.set(value); }
|
|
3991
|
+
get tabPosition() { return this._tabPosition(); }
|
|
3992
|
+
set scrollable(value) { this._scrollable.set(value); }
|
|
3993
|
+
get scrollable() { return this._scrollable(); }
|
|
3762
3994
|
tabScroll = new EventEmitter();
|
|
3763
3995
|
onClick = new EventEmitter();
|
|
3764
3996
|
get hostBoundingClientRect() {
|
|
@@ -3778,6 +4010,9 @@ class TabStripScrollableButtonComponent {
|
|
|
3778
4010
|
chevronUpIcon = chevronUpIcon;
|
|
3779
4011
|
chevronDownIcon = chevronDownIcon;
|
|
3780
4012
|
subs = new Subscription();
|
|
4013
|
+
_prev = signal(false, ...(ngDevMode ? [{ debugName: "_prev" }] : []));
|
|
4014
|
+
_tabPosition = signal(undefined, ...(ngDevMode ? [{ debugName: "_tabPosition" }] : []));
|
|
4015
|
+
_scrollable = signal(undefined, ...(ngDevMode ? [{ debugName: "_scrollable" }] : []));
|
|
3781
4016
|
constructor(host, renderer, ngZone, localization) {
|
|
3782
4017
|
this.host = host;
|
|
3783
4018
|
this.renderer = renderer;
|
|
@@ -3885,7 +4120,7 @@ class TabStripScrollableButtonComponent {
|
|
|
3885
4120
|
innerCssClass="k-button-icon"
|
|
3886
4121
|
>
|
|
3887
4122
|
</kendo-icon-wrapper>
|
|
3888
|
-
`, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
4123
|
+
`, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3889
4124
|
}
|
|
3890
4125
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TabStripScrollableButtonComponent, decorators: [{
|
|
3891
4126
|
type: Component,
|
|
@@ -3900,6 +4135,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
3900
4135
|
</kendo-icon-wrapper>
|
|
3901
4136
|
`,
|
|
3902
4137
|
selector: '[kendoTabStripScrollableButton]',
|
|
4138
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3903
4139
|
standalone: true,
|
|
3904
4140
|
imports: [IconWrapperComponent]
|
|
3905
4141
|
}]
|
|
@@ -3929,13 +4165,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
3929
4165
|
*/
|
|
3930
4166
|
class TabComponent {
|
|
3931
4167
|
localization;
|
|
3932
|
-
tab;
|
|
3933
|
-
|
|
3934
|
-
|
|
3935
|
-
|
|
3936
|
-
|
|
3937
|
-
|
|
4168
|
+
set tab(value) { this._tab.set(value); }
|
|
4169
|
+
get tab() { return this._tab(); }
|
|
4170
|
+
set index(value) { this._index.set(value); }
|
|
4171
|
+
get index() { return this._index(); }
|
|
4172
|
+
set tabStripClosable(value) { this._tabStripClosable.set(value); }
|
|
4173
|
+
get tabStripClosable() { return this._tabStripClosable(); }
|
|
4174
|
+
set tabStripCloseIcon(value) { this._tabStripCloseIcon.set(value); }
|
|
4175
|
+
get tabStripCloseIcon() { return this._tabStripCloseIcon(); }
|
|
4176
|
+
set customTabstripCloseIcon(value) { this._customTabstripCloseIcon.set(value); }
|
|
4177
|
+
get customTabstripCloseIcon() { return this._customTabstripCloseIcon(); }
|
|
4178
|
+
set closeSVGIcon(value) { this._closeSVGIcon.set(value); }
|
|
4179
|
+
get closeSVGIcon() { return this._closeSVGIcon(); }
|
|
3938
4180
|
tabClose = new EventEmitter();
|
|
4181
|
+
_tab = signal(undefined, ...(ngDevMode ? [{ debugName: "_tab" }] : []));
|
|
4182
|
+
_index = signal(undefined, ...(ngDevMode ? [{ debugName: "_index" }] : []));
|
|
4183
|
+
_tabStripClosable = signal(undefined, ...(ngDevMode ? [{ debugName: "_tabStripClosable" }] : []));
|
|
4184
|
+
_tabStripCloseIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_tabStripCloseIcon" }] : []));
|
|
4185
|
+
_customTabstripCloseIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_customTabstripCloseIcon" }] : []));
|
|
4186
|
+
_closeSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_closeSVGIcon" }] : []));
|
|
3939
4187
|
hostClasses = true;
|
|
3940
4188
|
get activeClass() {
|
|
3941
4189
|
return this.tab.selected || null;
|
|
@@ -4020,12 +4268,13 @@ class TabComponent {
|
|
|
4020
4268
|
innerCssClass="k-button-icon" [customFontClass]="customCloseIconClasses"></kendo-icon-wrapper>
|
|
4021
4269
|
</span>
|
|
4022
4270
|
}
|
|
4023
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
4271
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4024
4272
|
}
|
|
4025
4273
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TabComponent, decorators: [{
|
|
4026
4274
|
type: Component,
|
|
4027
4275
|
args: [{
|
|
4028
4276
|
selector: '[kendoTabStripTab]',
|
|
4277
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
4029
4278
|
template: `
|
|
4030
4279
|
@if (!tab.tabTemplate) {
|
|
4031
4280
|
@if (!tab.tabTitle) {
|
|
@@ -4100,15 +4349,33 @@ class TabStripMessages extends ComponentMessages {
|
|
|
4100
4349
|
/**
|
|
4101
4350
|
* Sets the title for the **Close** button in the TabStrip tab.
|
|
4102
4351
|
*/
|
|
4103
|
-
closeTitle
|
|
4352
|
+
set closeTitle(value) {
|
|
4353
|
+
this._closeTitle.set(value);
|
|
4354
|
+
}
|
|
4355
|
+
get closeTitle() {
|
|
4356
|
+
return this._closeTitle();
|
|
4357
|
+
}
|
|
4104
4358
|
/**
|
|
4105
4359
|
* Sets the title for the **Previous Tab** button when the TabStrip is scrollable.
|
|
4106
4360
|
*/
|
|
4107
|
-
previousTabButton
|
|
4361
|
+
set previousTabButton(value) {
|
|
4362
|
+
this._previousTabButton.set(value);
|
|
4363
|
+
}
|
|
4364
|
+
get previousTabButton() {
|
|
4365
|
+
return this._previousTabButton();
|
|
4366
|
+
}
|
|
4108
4367
|
/**
|
|
4109
4368
|
* Sets the title for the **Next Tab** button when the TabStrip is scrollable.
|
|
4110
4369
|
*/
|
|
4111
|
-
nextTabButton
|
|
4370
|
+
set nextTabButton(value) {
|
|
4371
|
+
this._nextTabButton.set(value);
|
|
4372
|
+
}
|
|
4373
|
+
get nextTabButton() {
|
|
4374
|
+
return this._nextTabButton();
|
|
4375
|
+
}
|
|
4376
|
+
_closeTitle = signal(undefined, ...(ngDevMode ? [{ debugName: "_closeTitle" }] : []));
|
|
4377
|
+
_previousTabButton = signal(undefined, ...(ngDevMode ? [{ debugName: "_previousTabButton" }] : []));
|
|
4378
|
+
_nextTabButton = signal(undefined, ...(ngDevMode ? [{ debugName: "_nextTabButton" }] : []));
|
|
4112
4379
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TabStripMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
4113
4380
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: TabStripMessages, isStandalone: true, selector: "kendo-tabstrip-messages-base", inputs: { closeTitle: "closeTitle", previousTabButton: "previousTabButton", nextTabButton: "nextTabButton" }, usesInheritance: true, ngImport: i0 });
|
|
4114
4381
|
}
|
|
@@ -4184,35 +4451,40 @@ class TabStripComponent {
|
|
|
4184
4451
|
tabstripService;
|
|
4185
4452
|
scrollService;
|
|
4186
4453
|
ngZone;
|
|
4454
|
+
injector;
|
|
4455
|
+
cdr;
|
|
4187
4456
|
/**
|
|
4188
4457
|
* Sets the height of the TabStrip.
|
|
4189
4458
|
* Accepts a CSS size value, such as `100px`, `50%`, or `auto`.
|
|
4190
4459
|
*/
|
|
4191
4460
|
set height(value) {
|
|
4192
|
-
this._height
|
|
4461
|
+
this._height.set(value);
|
|
4193
4462
|
this.renderer.setStyle(this.wrapper.nativeElement, 'height', value);
|
|
4194
4463
|
}
|
|
4195
4464
|
get height() {
|
|
4196
|
-
return this._height;
|
|
4465
|
+
return this._height();
|
|
4197
4466
|
}
|
|
4198
4467
|
/**
|
|
4199
4468
|
* Sets whether the TabStrip should animate when switching tabs.
|
|
4200
4469
|
*
|
|
4201
4470
|
* @default true
|
|
4202
4471
|
*/
|
|
4203
|
-
animate
|
|
4472
|
+
set animate(value) { this._animate.set(value); }
|
|
4473
|
+
get animate() { return this._animate(); }
|
|
4204
4474
|
/**
|
|
4205
4475
|
* Sets the alignment of the tabs.
|
|
4206
4476
|
*
|
|
4207
4477
|
* @default 'start'
|
|
4208
4478
|
*/
|
|
4209
|
-
tabAlignment
|
|
4479
|
+
set tabAlignment(value) { this._tabAlignment.set(value); }
|
|
4480
|
+
get tabAlignment() { return this._tabAlignment(); }
|
|
4210
4481
|
/**
|
|
4211
4482
|
* Sets the position of the tabs.
|
|
4212
4483
|
*
|
|
4213
4484
|
* @default 'top'
|
|
4214
4485
|
*/
|
|
4215
|
-
tabPosition
|
|
4486
|
+
set tabPosition(value) { this._tabPosition.set(value); }
|
|
4487
|
+
get tabPosition() { return this._tabPosition(); }
|
|
4216
4488
|
/**
|
|
4217
4489
|
* Controls how the TabStrip renders tab content.
|
|
4218
4490
|
*
|
|
@@ -4226,13 +4498,15 @@ class TabStripComponent {
|
|
|
4226
4498
|
*
|
|
4227
4499
|
* @default false
|
|
4228
4500
|
*/
|
|
4229
|
-
keepTabContent
|
|
4501
|
+
set keepTabContent(value) { this._keepTabContent.set(value); }
|
|
4502
|
+
get keepTabContent() { return this._keepTabContent(); }
|
|
4230
4503
|
/**
|
|
4231
4504
|
* When set to `true`, renders a close button inside each tab.
|
|
4232
4505
|
*
|
|
4233
4506
|
* @default false
|
|
4234
4507
|
*/
|
|
4235
|
-
closable
|
|
4508
|
+
set closable(value) { this._closable.set(value); }
|
|
4509
|
+
get closable() { return this._closable(); }
|
|
4236
4510
|
/**
|
|
4237
4511
|
* Enables scrolling of the tab list.
|
|
4238
4512
|
* When set to `true` and the total size of all tabs exceeds the size of the TabStrip container, scroll buttons appear on each end of the tab list.
|
|
@@ -4240,7 +4514,7 @@ class TabStripComponent {
|
|
|
4240
4514
|
* @default false
|
|
4241
4515
|
*/
|
|
4242
4516
|
set scrollable(value) {
|
|
4243
|
-
this._scrollableSettings
|
|
4517
|
+
this._scrollableSettings.set(normalizeScrollableSettings(value));
|
|
4244
4518
|
if (this.tablist) {
|
|
4245
4519
|
this.toggleScrollButtons(this.scrollService.tabsOverflow);
|
|
4246
4520
|
if (this.isScrollable && this.mouseScrollEnabled) {
|
|
@@ -4249,7 +4523,7 @@ class TabStripComponent {
|
|
|
4249
4523
|
}
|
|
4250
4524
|
}
|
|
4251
4525
|
get scrollable() {
|
|
4252
|
-
return this._scrollableSettings;
|
|
4526
|
+
return this._scrollableSettings();
|
|
4253
4527
|
}
|
|
4254
4528
|
/**
|
|
4255
4529
|
* Sets the size of the TabStrip.
|
|
@@ -4273,21 +4547,23 @@ class TabStripComponent {
|
|
|
4273
4547
|
this.renderer.addClass(this.wrapper.nativeElement, 'k-tabstrip-lg');
|
|
4274
4548
|
break;
|
|
4275
4549
|
}
|
|
4276
|
-
this._size
|
|
4277
|
-
|
|
4550
|
+
this._size.set(value);
|
|
4551
|
+
afterNextRender(() => this.onResize(), { injector: this.injector });
|
|
4278
4552
|
}
|
|
4279
4553
|
get size() {
|
|
4280
|
-
return this._size;
|
|
4554
|
+
return this._size();
|
|
4281
4555
|
}
|
|
4282
4556
|
/**
|
|
4283
4557
|
* Defines the name of an existing font icon in the Kendo UI theme for the close icon.
|
|
4284
4558
|
* @default 'x'
|
|
4285
4559
|
*/
|
|
4286
|
-
closeIcon
|
|
4560
|
+
set closeIcon(value) { this._closeIcon.set(value); }
|
|
4561
|
+
get closeIcon() { return this._closeIcon(); }
|
|
4287
4562
|
/**
|
|
4288
4563
|
* Defines a custom CSS class, or multiple classes separated by spaces, applied to the close button.
|
|
4289
4564
|
*/
|
|
4290
|
-
closeIconClass;
|
|
4565
|
+
set closeIconClass(value) { this._closeIconClass.set(value); }
|
|
4566
|
+
get closeIconClass() { return this._closeIconClass(); }
|
|
4291
4567
|
/**
|
|
4292
4568
|
* Defines an SVGIcon to render for the close icon.
|
|
4293
4569
|
* The input accepts either an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or a custom one.
|
|
@@ -4296,17 +4572,18 @@ class TabStripComponent {
|
|
|
4296
4572
|
if (isDevMode() && icon && this.closeIcon && this.closeIcon !== 'x') {
|
|
4297
4573
|
throw new Error('Setting both closeIcon and svgIcon options at the same time is not supported.');
|
|
4298
4574
|
}
|
|
4299
|
-
this._closeSVGIcon
|
|
4575
|
+
this._closeSVGIcon.set(icon);
|
|
4300
4576
|
}
|
|
4301
4577
|
get closeSVGIcon() {
|
|
4302
|
-
return this._closeSVGIcon;
|
|
4578
|
+
return this._closeSVGIcon();
|
|
4303
4579
|
}
|
|
4304
4580
|
/**
|
|
4305
4581
|
* If set to `false`, the content area is hidden, but the tab headers are still visible.
|
|
4306
4582
|
*
|
|
4307
4583
|
* @default true
|
|
4308
4584
|
*/
|
|
4309
|
-
showContentArea
|
|
4585
|
+
set showContentArea(value) { this._showContentArea.set(value); }
|
|
4586
|
+
get showContentArea() { return this._showContentArea(); }
|
|
4310
4587
|
/**
|
|
4311
4588
|
* Fires each time a tab is selected.
|
|
4312
4589
|
* The event data contains the index of the selected tab and its title.
|
|
@@ -4339,10 +4616,10 @@ class TabStripComponent {
|
|
|
4339
4616
|
return this.localization.rtl ? 'rtl' : 'ltr';
|
|
4340
4617
|
}
|
|
4341
4618
|
get tabStripScrollable() {
|
|
4342
|
-
return this._scrollableSettings.enabled;
|
|
4619
|
+
return this._scrollableSettings().enabled;
|
|
4343
4620
|
}
|
|
4344
4621
|
get tabStripScrollableOverlay() {
|
|
4345
|
-
return this._scrollableSettings.enabled && !this.hasScrollButtons.visible;
|
|
4622
|
+
return this._scrollableSettings().enabled && !this.hasScrollButtons.visible;
|
|
4346
4623
|
}
|
|
4347
4624
|
/**
|
|
4348
4625
|
* A query list of all declared tabs.
|
|
@@ -4376,22 +4653,32 @@ class TabStripComponent {
|
|
|
4376
4653
|
* @hidden
|
|
4377
4654
|
*/
|
|
4378
4655
|
licenseMessage;
|
|
4379
|
-
_height;
|
|
4380
|
-
_scrollableSettings = normalizeScrollableSettings(false);
|
|
4656
|
+
_height = signal(undefined, ...(ngDevMode ? [{ debugName: "_height" }] : []));
|
|
4657
|
+
_scrollableSettings = signal(normalizeScrollableSettings(false), ...(ngDevMode ? [{ debugName: "_scrollableSettings" }] : []));
|
|
4381
4658
|
subscriptions = new Subscription();
|
|
4382
4659
|
subscriptionsArePresent = false;
|
|
4383
|
-
_closeSVGIcon;
|
|
4660
|
+
_closeSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_closeSVGIcon" }] : []));
|
|
4384
4661
|
tabStripId = guid();
|
|
4385
4662
|
tabsChangesSub;
|
|
4386
4663
|
activeStateChangeSub;
|
|
4387
|
-
_size;
|
|
4388
|
-
|
|
4664
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
4665
|
+
_animate = signal(true, ...(ngDevMode ? [{ debugName: "_animate" }] : []));
|
|
4666
|
+
_tabAlignment = signal('start', ...(ngDevMode ? [{ debugName: "_tabAlignment" }] : []));
|
|
4667
|
+
_tabPosition = signal('top', ...(ngDevMode ? [{ debugName: "_tabPosition" }] : []));
|
|
4668
|
+
_keepTabContent = signal(false, ...(ngDevMode ? [{ debugName: "_keepTabContent" }] : []));
|
|
4669
|
+
_closable = signal(false, ...(ngDevMode ? [{ debugName: "_closable" }] : []));
|
|
4670
|
+
_closeIcon = signal('x', ...(ngDevMode ? [{ debugName: "_closeIcon" }] : []));
|
|
4671
|
+
_closeIconClass = signal(undefined, ...(ngDevMode ? [{ debugName: "_closeIconClass" }] : []));
|
|
4672
|
+
_showContentArea = signal(true, ...(ngDevMode ? [{ debugName: "_showContentArea" }] : []));
|
|
4673
|
+
constructor(localization, renderer, wrapper, tabstripService, scrollService, ngZone, injector, cdr) {
|
|
4389
4674
|
this.localization = localization;
|
|
4390
4675
|
this.renderer = renderer;
|
|
4391
4676
|
this.wrapper = wrapper;
|
|
4392
4677
|
this.tabstripService = tabstripService;
|
|
4393
4678
|
this.scrollService = scrollService;
|
|
4394
4679
|
this.ngZone = ngZone;
|
|
4680
|
+
this.injector = injector;
|
|
4681
|
+
this.cdr = cdr;
|
|
4395
4682
|
const isValid = validatePackage(packageMetadata);
|
|
4396
4683
|
this.licenseMessage = getLicenseMessage(packageMetadata);
|
|
4397
4684
|
this.showLicenseWatermark = shouldShowValidationUI(isValid);
|
|
@@ -4421,10 +4708,11 @@ class TabStripComponent {
|
|
|
4421
4708
|
});
|
|
4422
4709
|
this.initDomEvents();
|
|
4423
4710
|
this.tabsChangesSub = this.tabs.changes.subscribe(() => {
|
|
4424
|
-
|
|
4711
|
+
afterNextRender(() => {
|
|
4425
4712
|
this.toggleScrollButtons(this.scrollService.tabsOverflow);
|
|
4426
4713
|
this.scrollService.toggleScrollButtonsState();
|
|
4427
|
-
});
|
|
4714
|
+
}, { injector: this.injector });
|
|
4715
|
+
this.cdr.markForCheck();
|
|
4428
4716
|
});
|
|
4429
4717
|
this.isScrollable && !this.hasScrollButtons.visible && this.setScrollableOverlayClasses();
|
|
4430
4718
|
}
|
|
@@ -4435,7 +4723,7 @@ class TabStripComponent {
|
|
|
4435
4723
|
const positionChange = changes['tabPosition'];
|
|
4436
4724
|
if (positionChange) {
|
|
4437
4725
|
const tabsAtBottomChanged = positionChange.previousValue === 'bottom' || positionChange.currentValue === 'bottom';
|
|
4438
|
-
|
|
4726
|
+
afterNextRender(() => {
|
|
4439
4727
|
if (tabsAtBottomChanged) {
|
|
4440
4728
|
if (this.subscriptionsArePresent) {
|
|
4441
4729
|
this.subscriptions.unsubscribe();
|
|
@@ -4451,7 +4739,7 @@ class TabStripComponent {
|
|
|
4451
4739
|
this.initDomEvents();
|
|
4452
4740
|
}
|
|
4453
4741
|
this.scrollService.restoreScrollPosition();
|
|
4454
|
-
});
|
|
4742
|
+
}, { injector: this.injector });
|
|
4455
4743
|
}
|
|
4456
4744
|
}
|
|
4457
4745
|
ngOnDestroy() {
|
|
@@ -4469,19 +4757,19 @@ class TabStripComponent {
|
|
|
4469
4757
|
* @hidden
|
|
4470
4758
|
*/
|
|
4471
4759
|
get isScrollable() {
|
|
4472
|
-
return this._scrollableSettings.enabled;
|
|
4760
|
+
return this._scrollableSettings().enabled;
|
|
4473
4761
|
}
|
|
4474
4762
|
/**
|
|
4475
4763
|
* @hidden
|
|
4476
4764
|
*/
|
|
4477
4765
|
get hasScrollButtons() {
|
|
4478
|
-
return tabStripHasScrollButtons(this._scrollableSettings);
|
|
4766
|
+
return tabStripHasScrollButtons(this._scrollableSettings());
|
|
4479
4767
|
}
|
|
4480
4768
|
/**
|
|
4481
4769
|
* @hidden
|
|
4482
4770
|
*/
|
|
4483
4771
|
get mouseScrollEnabled() {
|
|
4484
|
-
return mouseScrollEnabled(this._scrollableSettings);
|
|
4772
|
+
return mouseScrollEnabled(this._scrollableSettings());
|
|
4485
4773
|
}
|
|
4486
4774
|
/**
|
|
4487
4775
|
* @hidden
|
|
@@ -4548,7 +4836,7 @@ class TabStripComponent {
|
|
|
4548
4836
|
* @hidden
|
|
4549
4837
|
*/
|
|
4550
4838
|
scrollToSelectedTab() {
|
|
4551
|
-
if (this._scrollableSettings.enabled) {
|
|
4839
|
+
if (this._scrollableSettings().enabled) {
|
|
4552
4840
|
this.scrollService.scrollToSelectedTab();
|
|
4553
4841
|
}
|
|
4554
4842
|
}
|
|
@@ -4577,8 +4865,8 @@ class TabStripComponent {
|
|
|
4577
4865
|
this.subscriptionsArePresent = true;
|
|
4578
4866
|
}
|
|
4579
4867
|
toggleScrollButtons(tabsOverflow) {
|
|
4580
|
-
|
|
4581
|
-
const scrollButtonsSetting = this._scrollableSettings.scrollButtons;
|
|
4868
|
+
afterNextRender(() => {
|
|
4869
|
+
const scrollButtonsSetting = this._scrollableSettings().scrollButtons;
|
|
4582
4870
|
const scrollButtonsArePresent = this.prevScrollButton && this.nextScrollButton;
|
|
4583
4871
|
const shouldShowButtons = scrollButtonsArePresent && tabsOverflow;
|
|
4584
4872
|
const shouldHideButtons = scrollButtonsArePresent &&
|
|
@@ -4598,7 +4886,7 @@ class TabStripComponent {
|
|
|
4598
4886
|
this.scrollService.toggleScrollButtonsState();
|
|
4599
4887
|
});
|
|
4600
4888
|
}
|
|
4601
|
-
});
|
|
4889
|
+
}, { injector: this.injector });
|
|
4602
4890
|
}
|
|
4603
4891
|
attachTablistScrollHandler(tablist) {
|
|
4604
4892
|
this.ngZone.runOutsideAngular(() => {
|
|
@@ -4638,7 +4926,7 @@ class TabStripComponent {
|
|
|
4638
4926
|
this.renderer.addClass(wrapper, 'k-tabstrip-scrollable-end');
|
|
4639
4927
|
}
|
|
4640
4928
|
}
|
|
4641
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TabStripComponent, deps: [{ token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TabStripService }, { token: ScrollService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
4929
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TabStripComponent, deps: [{ token: i1.LocalizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: TabStripService }, { token: ScrollService }, { token: i0.NgZone }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
4642
4930
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: TabStripComponent, isStandalone: true, selector: "kendo-tabstrip", inputs: { height: "height", animate: "animate", tabAlignment: "tabAlignment", tabPosition: "tabPosition", keepTabContent: "keepTabContent", closable: "closable", scrollable: "scrollable", size: "size", closeIcon: "closeIcon", closeIconClass: "closeIconClass", closeSVGIcon: "closeSVGIcon", showContentArea: "showContentArea" }, outputs: { tabSelect: "tabSelect", tabClose: "tabClose", tabScroll: "tabScroll" }, host: { properties: { "class.k-tabstrip": "this.hostClasses", "class.k-tabstrip-top": "this.tabsAtTop", "class.k-tabstrip-right": "this.tabsAtRight", "class.k-tabstrip-bottom": "this.tabsAtBottom", "class.k-tabstrip-left": "this.tabsAtLeft", "attr.dir": "this.dir", "class.k-tabstrip-scrollable": "this.tabStripScrollable", "class.k-tabstrip-scrollable-overlay": "this.tabStripScrollableOverlay" } }, providers: [
|
|
4643
4931
|
TabStripService,
|
|
4644
4932
|
ScrollService,
|
|
@@ -4817,11 +5105,14 @@ class TabStripComponent {
|
|
|
4817
5105
|
animate('400ms ease-in')
|
|
4818
5106
|
])
|
|
4819
5107
|
])
|
|
4820
|
-
], deferBlockDependencies: [() => [NgTemplateOutlet, NgClass]] });
|
|
5108
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush, deferBlockDependencies: [() => [NgTemplateOutlet, NgClass]] });
|
|
4821
5109
|
}
|
|
4822
5110
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TabStripComponent, decorators: [{
|
|
4823
5111
|
type: Component,
|
|
4824
5112
|
args: [{
|
|
5113
|
+
selector: 'kendo-tabstrip',
|
|
5114
|
+
exportAs: 'kendoTabStrip',
|
|
5115
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
4825
5116
|
animations: [
|
|
4826
5117
|
trigger('state', [
|
|
4827
5118
|
state('active', style({ opacity: 1 })),
|
|
@@ -4842,8 +5133,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
4842
5133
|
provideComponentName('tabstrip'),
|
|
4843
5134
|
{ provide: KENDO_WEBMCP_HOST, useExisting: forwardRef(() => TabStripComponent) }
|
|
4844
5135
|
],
|
|
4845
|
-
exportAs: 'kendoTabStrip',
|
|
4846
|
-
selector: 'kendo-tabstrip',
|
|
4847
5136
|
template: `
|
|
4848
5137
|
<ng-container kendoTabStripLocalizedMessages
|
|
4849
5138
|
i18n-closeTitle="kendo.tabstrip.closeTitle|The title for the **Close** button in the TabStrip tab."
|
|
@@ -5008,7 +5297,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
5008
5297
|
standalone: true,
|
|
5009
5298
|
imports: [LocalizedTabStripMessagesDirective, NgTemplateOutlet, NgClass, TabStripScrollableButtonComponent, TabComponent, NgStyle, ResizeSensorComponent, WatermarkOverlayComponent]
|
|
5010
5299
|
}]
|
|
5011
|
-
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: TabStripService }, { type: ScrollService }, { type: i0.NgZone }], propDecorators: { height: [{
|
|
5300
|
+
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: TabStripService }, { type: ScrollService }, { type: i0.NgZone }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }], propDecorators: { height: [{
|
|
5012
5301
|
type: Input
|
|
5013
5302
|
}], animate: [{
|
|
5014
5303
|
type: Input
|
|
@@ -5802,50 +6091,90 @@ class DrawerComponent {
|
|
|
5802
6091
|
*
|
|
5803
6092
|
* @default 'overlay'
|
|
5804
6093
|
*/
|
|
5805
|
-
mode
|
|
6094
|
+
set mode(value) {
|
|
6095
|
+
this._mode.set(value);
|
|
6096
|
+
}
|
|
6097
|
+
get mode() {
|
|
6098
|
+
return this._mode();
|
|
6099
|
+
}
|
|
5806
6100
|
/**
|
|
5807
6101
|
* Specifies the position of the Drawer
|
|
5808
6102
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/drawer/positioning)).
|
|
5809
6103
|
*
|
|
5810
6104
|
* @default 'start'
|
|
5811
6105
|
*/
|
|
5812
|
-
position
|
|
6106
|
+
set position(value) {
|
|
6107
|
+
this._position.set(value);
|
|
6108
|
+
}
|
|
6109
|
+
get position() {
|
|
6110
|
+
return this._position();
|
|
6111
|
+
}
|
|
5813
6112
|
/**
|
|
5814
6113
|
* Enables the mini (compact) view of the Drawer which displays when the component is collapsed
|
|
5815
6114
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/drawer/display-modes#mini-view)).
|
|
5816
6115
|
*
|
|
5817
6116
|
* @default false
|
|
5818
6117
|
*/
|
|
5819
|
-
mini
|
|
6118
|
+
set mini(value) {
|
|
6119
|
+
this._mini.set(value);
|
|
6120
|
+
}
|
|
6121
|
+
get mini() {
|
|
6122
|
+
return this._mini();
|
|
6123
|
+
}
|
|
5820
6124
|
/**
|
|
5821
6125
|
* Specifies the state of the Drawer.
|
|
5822
6126
|
*
|
|
5823
6127
|
* @default false
|
|
5824
6128
|
*/
|
|
5825
|
-
expanded
|
|
6129
|
+
set expanded(value) {
|
|
6130
|
+
this._expanded.set(value);
|
|
6131
|
+
}
|
|
6132
|
+
get expanded() {
|
|
6133
|
+
return this._expanded();
|
|
6134
|
+
}
|
|
5826
6135
|
/**
|
|
5827
6136
|
* Defines the width of the Drawer when it is expanded.
|
|
5828
6137
|
*
|
|
5829
6138
|
* @default 240
|
|
5830
6139
|
*/
|
|
5831
|
-
width
|
|
6140
|
+
set width(value) {
|
|
6141
|
+
this._width.set(value);
|
|
6142
|
+
}
|
|
6143
|
+
get width() {
|
|
6144
|
+
return this._width();
|
|
6145
|
+
}
|
|
5832
6146
|
/**
|
|
5833
6147
|
* Defines the width of the Drawer when the mini view is enabled and the component is collapsed.
|
|
5834
6148
|
* By default, the mini view width is determined by the used Kendo Theme.
|
|
5835
6149
|
*/
|
|
5836
|
-
miniWidth
|
|
6150
|
+
set miniWidth(value) {
|
|
6151
|
+
this._miniWidth.set(value);
|
|
6152
|
+
}
|
|
6153
|
+
get miniWidth() {
|
|
6154
|
+
return this._miniWidth();
|
|
6155
|
+
}
|
|
5837
6156
|
/**
|
|
5838
6157
|
* Specifies if the Drawer automatically collapses when an item or the overlay is clicked.
|
|
5839
6158
|
*
|
|
5840
6159
|
* @default true
|
|
5841
6160
|
*/
|
|
5842
|
-
autoCollapse
|
|
6161
|
+
set autoCollapse(value) {
|
|
6162
|
+
this._autoCollapse.set(value);
|
|
6163
|
+
}
|
|
6164
|
+
get autoCollapse() {
|
|
6165
|
+
return this._autoCollapse();
|
|
6166
|
+
}
|
|
5843
6167
|
/**
|
|
5844
6168
|
* Defines the collection of items that render in the Drawer.
|
|
5845
6169
|
*
|
|
5846
6170
|
* @default []
|
|
5847
6171
|
*/
|
|
5848
|
-
items
|
|
6172
|
+
set items(value) {
|
|
6173
|
+
this._items.set(value);
|
|
6174
|
+
}
|
|
6175
|
+
get items() {
|
|
6176
|
+
return this._items();
|
|
6177
|
+
}
|
|
5849
6178
|
/**
|
|
5850
6179
|
* Defines a callback function which determines if an item should be expanded.
|
|
5851
6180
|
* This is useful for hierarchical data structures where the expansion state of an item depends on its parent or other items.
|
|
@@ -5862,14 +6191,21 @@ class DrawerComponent {
|
|
|
5862
6191
|
/**
|
|
5863
6192
|
* @hidden
|
|
5864
6193
|
*/
|
|
5865
|
-
direction
|
|
6194
|
+
get direction() {
|
|
6195
|
+
return this._direction();
|
|
6196
|
+
}
|
|
5866
6197
|
/**
|
|
5867
6198
|
* Specifies the animation settings of the Drawer
|
|
5868
6199
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/drawer/interaction-modes#toggling-between-states)).
|
|
5869
6200
|
*
|
|
5870
6201
|
* @default { type: 'slide', duration: 200 }
|
|
5871
6202
|
*/
|
|
5872
|
-
animation
|
|
6203
|
+
set animation(value) {
|
|
6204
|
+
this._animation.set(value);
|
|
6205
|
+
}
|
|
6206
|
+
get animation() {
|
|
6207
|
+
return this._animation();
|
|
6208
|
+
}
|
|
5873
6209
|
/**
|
|
5874
6210
|
* Fires when the Drawer is expanded and its animation is complete.
|
|
5875
6211
|
*/
|
|
@@ -5913,6 +6249,16 @@ class DrawerComponent {
|
|
|
5913
6249
|
*/
|
|
5914
6250
|
licenseMessage;
|
|
5915
6251
|
viewItems;
|
|
6252
|
+
_mode = signal('overlay', ...(ngDevMode ? [{ debugName: "_mode" }] : []));
|
|
6253
|
+
_position = signal('start', ...(ngDevMode ? [{ debugName: "_position" }] : []));
|
|
6254
|
+
_mini = signal(false, ...(ngDevMode ? [{ debugName: "_mini" }] : []));
|
|
6255
|
+
_expanded = signal(false, ...(ngDevMode ? [{ debugName: "_expanded" }] : []));
|
|
6256
|
+
_width = signal(240, ...(ngDevMode ? [{ debugName: "_width" }] : []));
|
|
6257
|
+
_miniWidth = signal(undefined, ...(ngDevMode ? [{ debugName: "_miniWidth" }] : []));
|
|
6258
|
+
_autoCollapse = signal(true, ...(ngDevMode ? [{ debugName: "_autoCollapse" }] : []));
|
|
6259
|
+
_items = signal([], ...(ngDevMode ? [{ debugName: "_items" }] : []));
|
|
6260
|
+
_animation = signal(DEFAULT_ANIMATION, ...(ngDevMode ? [{ debugName: "_animation" }] : []));
|
|
6261
|
+
_direction = signal(undefined, ...(ngDevMode ? [{ debugName: "_direction" }] : []));
|
|
5916
6262
|
pendingToggle = null;
|
|
5917
6263
|
animatingViaToggle = false;
|
|
5918
6264
|
dynamicRTLSubscription;
|
|
@@ -5925,7 +6271,7 @@ class DrawerComponent {
|
|
|
5925
6271
|
this.showLicenseWatermark = shouldShowValidationUI(isValid);
|
|
5926
6272
|
this.dynamicRTLSubscription = this.localizationService.changes.subscribe(({ rtl }) => {
|
|
5927
6273
|
this.rtl = rtl;
|
|
5928
|
-
this.
|
|
6274
|
+
this._direction.set(rtl ? 'rtl' : 'ltr');
|
|
5929
6275
|
});
|
|
5930
6276
|
this.drawerService.owner = this;
|
|
5931
6277
|
}
|
|
@@ -6103,7 +6449,7 @@ class DrawerComponent {
|
|
|
6103
6449
|
@if (showLicenseWatermark) {
|
|
6104
6450
|
<div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
|
|
6105
6451
|
}
|
|
6106
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: DrawerListComponent, selector: "[kendoDrawerList]", inputs: ["itemTemplate", "mini", "expanded", "view"], outputs: ["select", "viewChange"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay], kendo-watermark-overlay", inputs: ["licenseMessage"] }] });
|
|
6452
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: DrawerListComponent, selector: "[kendoDrawerList]", inputs: ["itemTemplate", "mini", "expanded", "view"], outputs: ["select", "viewChange"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay], kendo-watermark-overlay", inputs: ["licenseMessage"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6107
6453
|
}
|
|
6108
6454
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DrawerComponent, decorators: [{
|
|
6109
6455
|
type: Component,
|
|
@@ -6160,7 +6506,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
6160
6506
|
}
|
|
6161
6507
|
`,
|
|
6162
6508
|
standalone: true,
|
|
6163
|
-
imports: [NgTemplateOutlet, DrawerListComponent, WatermarkOverlayComponent]
|
|
6509
|
+
imports: [NgTemplateOutlet, DrawerListComponent, WatermarkOverlayComponent],
|
|
6510
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
6164
6511
|
}]
|
|
6165
6512
|
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: DrawerService }], propDecorators: { hostClasses: [{
|
|
6166
6513
|
type: HostBinding,
|
|
@@ -6251,18 +6598,19 @@ class DrawerContainerComponent {
|
|
|
6251
6598
|
/**
|
|
6252
6599
|
* @hidden
|
|
6253
6600
|
*/
|
|
6254
|
-
direction
|
|
6601
|
+
get direction() {
|
|
6602
|
+
return this._direction();
|
|
6603
|
+
}
|
|
6255
6604
|
/**
|
|
6256
6605
|
* @hidden
|
|
6257
6606
|
*/
|
|
6258
6607
|
drawer;
|
|
6608
|
+
_direction = signal(undefined, ...(ngDevMode ? [{ debugName: "_direction" }] : []));
|
|
6259
6609
|
dynamicRTLSubscription;
|
|
6260
|
-
rtl = false;
|
|
6261
6610
|
constructor(localizationService) {
|
|
6262
6611
|
this.localizationService = localizationService;
|
|
6263
6612
|
this.dynamicRTLSubscription = this.localizationService.changes.subscribe(({ rtl }) => {
|
|
6264
|
-
this.rtl
|
|
6265
|
-
this.direction = this.rtl ? 'rtl' : 'ltr';
|
|
6613
|
+
this._direction.set(rtl ? 'rtl' : 'ltr');
|
|
6266
6614
|
});
|
|
6267
6615
|
}
|
|
6268
6616
|
ngOnDestroy() {
|
|
@@ -6298,7 +6646,7 @@ class DrawerContainerComponent {
|
|
|
6298
6646
|
<div class="k-overlay" (click)="closeDrawer()"></div>
|
|
6299
6647
|
}
|
|
6300
6648
|
<ng-content></ng-content>
|
|
6301
|
-
`, isInline: true });
|
|
6649
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6302
6650
|
}
|
|
6303
6651
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DrawerContainerComponent, decorators: [{
|
|
6304
6652
|
type: Component,
|
|
@@ -6317,7 +6665,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
6317
6665
|
}
|
|
6318
6666
|
<ng-content></ng-content>
|
|
6319
6667
|
`,
|
|
6320
|
-
standalone: true
|
|
6668
|
+
standalone: true,
|
|
6669
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
6321
6670
|
}]
|
|
6322
6671
|
}], ctorParameters: () => [{ type: i1.LocalizationService }], propDecorators: { hostClass: [{
|
|
6323
6672
|
type: HostBinding,
|
|
@@ -6359,7 +6708,7 @@ class DrawerContentComponent {
|
|
|
6359
6708
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DrawerContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6360
6709
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: DrawerContentComponent, isStandalone: true, selector: "kendo-drawer-content", host: { properties: { "class.k-drawer-content": "this.hostClasses" } }, ngImport: i0, template: `
|
|
6361
6710
|
<ng-content></ng-content>
|
|
6362
|
-
`, isInline: true, encapsulation: i0.ViewEncapsulation.None });
|
|
6711
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
6363
6712
|
}
|
|
6364
6713
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: DrawerContentComponent, decorators: [{
|
|
6365
6714
|
type: Component,
|
|
@@ -6369,7 +6718,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
6369
6718
|
<ng-content></ng-content>
|
|
6370
6719
|
`,
|
|
6371
6720
|
encapsulation: ViewEncapsulation.None,
|
|
6372
|
-
standalone: true
|
|
6721
|
+
standalone: true,
|
|
6722
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
6373
6723
|
}]
|
|
6374
6724
|
}], ctorParameters: () => [], propDecorators: { hostClasses: [{
|
|
6375
6725
|
type: HostBinding,
|
|
@@ -6553,19 +6903,23 @@ let StepperActivateEvent$1 = class StepperActivateEvent extends PreventableEvent
|
|
|
6553
6903
|
class StepperService {
|
|
6554
6904
|
localization;
|
|
6555
6905
|
ngZone;
|
|
6556
|
-
changeDetector;
|
|
6557
6906
|
owner;
|
|
6558
6907
|
currentStep = DEFAULT_CURRENT_STEP;
|
|
6559
|
-
focusedStep
|
|
6908
|
+
set focusedStep(value) {
|
|
6909
|
+
this._focusedStep.set(value);
|
|
6910
|
+
}
|
|
6911
|
+
get focusedStep() {
|
|
6912
|
+
return this._focusedStep();
|
|
6913
|
+
}
|
|
6560
6914
|
triggerValidation = new EventEmitter();
|
|
6561
6915
|
focusedStepChange = new EventEmitter();
|
|
6562
6916
|
get handlers() {
|
|
6563
6917
|
return this.localization.rtl ? handlersRTL : handlers;
|
|
6564
6918
|
}
|
|
6565
|
-
|
|
6919
|
+
_focusedStep = signal(undefined, ...(ngDevMode ? [{ debugName: "_focusedStep" }] : []));
|
|
6920
|
+
constructor(localization, ngZone) {
|
|
6566
6921
|
this.localization = localization;
|
|
6567
6922
|
this.ngZone = ngZone;
|
|
6568
|
-
this.changeDetector = changeDetector;
|
|
6569
6923
|
}
|
|
6570
6924
|
emit(event, eventArgs) {
|
|
6571
6925
|
const stepper = this.owner;
|
|
@@ -6585,7 +6939,6 @@ class StepperService {
|
|
|
6585
6939
|
if (!this.emit('activate', eventArgs)) {
|
|
6586
6940
|
this.currentStep = currentIdx;
|
|
6587
6941
|
this.owner['currentStepChange'].emit(currentIdx);
|
|
6588
|
-
this.changeDetector.detectChanges();
|
|
6589
6942
|
}
|
|
6590
6943
|
});
|
|
6591
6944
|
}
|
|
@@ -6673,12 +7026,12 @@ class StepperService {
|
|
|
6673
7026
|
get isHorizontal() {
|
|
6674
7027
|
return this.owner.orientation === 'horizontal';
|
|
6675
7028
|
}
|
|
6676
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperService, deps: [{ token: i1.LocalizationService }, { token: i0.NgZone }
|
|
7029
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperService, deps: [{ token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
6677
7030
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperService });
|
|
6678
7031
|
}
|
|
6679
7032
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperService, decorators: [{
|
|
6680
7033
|
type: Injectable
|
|
6681
|
-
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.NgZone }
|
|
7034
|
+
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.NgZone }] });
|
|
6682
7035
|
|
|
6683
7036
|
/**
|
|
6684
7037
|
* @hidden
|
|
@@ -6692,23 +7045,52 @@ class StepperStepComponent {
|
|
|
6692
7045
|
service;
|
|
6693
7046
|
localization;
|
|
6694
7047
|
ngZone;
|
|
6695
|
-
step;
|
|
6696
|
-
|
|
6697
|
-
|
|
6698
|
-
|
|
6699
|
-
|
|
6700
|
-
|
|
6701
|
-
|
|
6702
|
-
|
|
6703
|
-
|
|
6704
|
-
|
|
6705
|
-
|
|
6706
|
-
|
|
7048
|
+
set step(value) { this._step.set(value); }
|
|
7049
|
+
get step() { return this._step(); }
|
|
7050
|
+
set index(value) { this._index.set(value); }
|
|
7051
|
+
get index() { return this._index(); }
|
|
7052
|
+
set current(value) {
|
|
7053
|
+
this._current.set(value);
|
|
7054
|
+
this.handleValidityChecks();
|
|
7055
|
+
}
|
|
7056
|
+
get current() { return this._current(); }
|
|
7057
|
+
set type(value) { this._type.set(value); }
|
|
7058
|
+
get type() { return this._type(); }
|
|
7059
|
+
set successIcon(value) { this._successIcon.set(value); }
|
|
7060
|
+
get successIcon() { return this._successIcon(); }
|
|
7061
|
+
set successSVGIcon(value) { this._successSVGIcon.set(value); }
|
|
7062
|
+
get successSVGIcon() { return this._successSVGIcon(); }
|
|
7063
|
+
set errorIcon(value) { this._errorIcon.set(value); }
|
|
7064
|
+
get errorIcon() { return this._errorIcon(); }
|
|
7065
|
+
set errorSVGIcon(value) { this._errorSVGIcon.set(value); }
|
|
7066
|
+
get errorSVGIcon() { return this._errorSVGIcon(); }
|
|
7067
|
+
set svgIcon(value) { this._svgIcon.set(value); }
|
|
7068
|
+
get svgIcon() { return this._svgIcon(); }
|
|
7069
|
+
set indicatorTemplate(value) { this._indicatorTemplate.set(value); }
|
|
7070
|
+
get indicatorTemplate() { return this._indicatorTemplate(); }
|
|
7071
|
+
set labelTemplate(value) { this._labelTemplate.set(value); }
|
|
7072
|
+
get labelTemplate() { return this._labelTemplate(); }
|
|
7073
|
+
set stepTemplate(value) { this._stepTemplate.set(value); }
|
|
7074
|
+
get stepTemplate() { return this._stepTemplate(); }
|
|
6707
7075
|
stepLink;
|
|
6708
|
-
isStepValid
|
|
6709
|
-
shouldCheckValidity
|
|
7076
|
+
get isStepValid() { return this._isStepValid(); }
|
|
7077
|
+
get shouldCheckValidity() { return this._shouldCheckValidityState(); }
|
|
6710
7078
|
checkCircleIcon = checkCircleIcon;
|
|
6711
7079
|
exclamationCircleIcon = exclamationCircleIcon;
|
|
7080
|
+
_step = signal(undefined, ...(ngDevMode ? [{ debugName: "_step" }] : []));
|
|
7081
|
+
_index = signal(undefined, ...(ngDevMode ? [{ debugName: "_index" }] : []));
|
|
7082
|
+
_current = signal(undefined, ...(ngDevMode ? [{ debugName: "_current" }] : []));
|
|
7083
|
+
_type = signal(undefined, ...(ngDevMode ? [{ debugName: "_type" }] : []));
|
|
7084
|
+
_successIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_successIcon" }] : []));
|
|
7085
|
+
_successSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_successSVGIcon" }] : []));
|
|
7086
|
+
_errorIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_errorIcon" }] : []));
|
|
7087
|
+
_errorSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_errorSVGIcon" }] : []));
|
|
7088
|
+
_svgIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_svgIcon" }] : []));
|
|
7089
|
+
_indicatorTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_indicatorTemplate" }] : []));
|
|
7090
|
+
_labelTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_labelTemplate" }] : []));
|
|
7091
|
+
_stepTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_stepTemplate" }] : []));
|
|
7092
|
+
_isStepValid = signal(undefined, ...(ngDevMode ? [{ debugName: "_isStepValid" }] : []));
|
|
7093
|
+
_shouldCheckValidityState = signal(undefined, ...(ngDevMode ? [{ debugName: "_shouldCheckValidityState" }] : []));
|
|
6712
7094
|
subs;
|
|
6713
7095
|
constructor(service, localization, ngZone) {
|
|
6714
7096
|
this.service = service;
|
|
@@ -6737,11 +7119,6 @@ class StepperStepComponent {
|
|
|
6737
7119
|
ngOnInit() {
|
|
6738
7120
|
this.handleValidityChecks();
|
|
6739
7121
|
}
|
|
6740
|
-
ngOnChanges(changes) {
|
|
6741
|
-
if (changes['current'] && !changes['current'].firstChange) {
|
|
6742
|
-
this.handleValidityChecks();
|
|
6743
|
-
}
|
|
6744
|
-
}
|
|
6745
7122
|
ngOnDestroy() {
|
|
6746
7123
|
if (this.subs) {
|
|
6747
7124
|
this.subs.unsubscribe();
|
|
@@ -6855,7 +7232,7 @@ class StepperStepComponent {
|
|
|
6855
7232
|
get transitionDuration() {
|
|
6856
7233
|
return this.service.owner.animationDuration;
|
|
6857
7234
|
}
|
|
6858
|
-
|
|
7235
|
+
computeShouldCheckValidity() {
|
|
6859
7236
|
if (isPresent(this.step.validate)) {
|
|
6860
7237
|
if (typeof this.step.validate === 'boolean') {
|
|
6861
7238
|
return this.step.validate;
|
|
@@ -6867,14 +7244,14 @@ class StepperStepComponent {
|
|
|
6867
7244
|
return isPresent(this.step.isValid) && this.index < this.current;
|
|
6868
7245
|
}
|
|
6869
7246
|
handleValidityChecks() {
|
|
6870
|
-
this.
|
|
6871
|
-
this.
|
|
6872
|
-
if (this.
|
|
6873
|
-
this.
|
|
7247
|
+
this._isStepValid.set(undefined);
|
|
7248
|
+
this._shouldCheckValidityState.set(this.computeShouldCheckValidity());
|
|
7249
|
+
if (this._shouldCheckValidityState()) {
|
|
7250
|
+
this._isStepValid.set(this.updateStepValidity());
|
|
6874
7251
|
}
|
|
6875
7252
|
}
|
|
6876
7253
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperStepComponent, deps: [{ token: StepperService }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
6877
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: StepperStepComponent, isStandalone: true, selector: "[kendoStepperStep]", inputs: { step: "step", index: "index", current: "current", type: "type", successIcon: "successIcon", successSVGIcon: "successSVGIcon", errorIcon: "errorIcon", errorSVGIcon: "errorSVGIcon", svgIcon: "svgIcon", indicatorTemplate: "indicatorTemplate", labelTemplate: "labelTemplate", stepTemplate: "stepTemplate" }, host: { properties: { "class.k-step-error": "this.errorStepClass", "class.k-step-success": "this.successStepClass" } }, viewQueries: [{ propertyName: "stepLink", first: true, predicate: ["stepLink"], descendants: true, static: true }],
|
|
7254
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: StepperStepComponent, isStandalone: true, selector: "[kendoStepperStep]", inputs: { step: "step", index: "index", current: "current", type: "type", successIcon: "successIcon", successSVGIcon: "successSVGIcon", errorIcon: "errorIcon", errorSVGIcon: "errorSVGIcon", svgIcon: "svgIcon", indicatorTemplate: "indicatorTemplate", labelTemplate: "labelTemplate", stepTemplate: "stepTemplate" }, host: { properties: { "class.k-step-error": "this.errorStepClass", "class.k-step-success": "this.successStepClass" } }, viewQueries: [{ propertyName: "stepLink", first: true, predicate: ["stepLink"], descendants: true, static: true }], ngImport: i0, template: `
|
|
6878
7255
|
<a href='#' class='k-step-link' #stepLink
|
|
6879
7256
|
[attr.tabindex]='tabIndexAttr'
|
|
6880
7257
|
[attr.title]='step.label'
|
|
@@ -6947,12 +7324,13 @@ class StepperStepComponent {
|
|
|
6947
7324
|
}
|
|
6948
7325
|
}
|
|
6949
7326
|
</a>
|
|
6950
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
7327
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6951
7328
|
}
|
|
6952
7329
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperStepComponent, decorators: [{
|
|
6953
7330
|
type: Component,
|
|
6954
7331
|
args: [{
|
|
6955
7332
|
selector: '[kendoStepperStep]',
|
|
7333
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
6956
7334
|
template: `
|
|
6957
7335
|
<a href='#' class='k-step-link' #stepLink
|
|
6958
7336
|
[attr.tabindex]='tabIndexAttr'
|
|
@@ -7073,21 +7451,47 @@ class StepperListComponent {
|
|
|
7073
7451
|
ngZone;
|
|
7074
7452
|
service;
|
|
7075
7453
|
element;
|
|
7076
|
-
linear;
|
|
7077
|
-
|
|
7078
|
-
|
|
7079
|
-
|
|
7080
|
-
|
|
7081
|
-
|
|
7082
|
-
|
|
7083
|
-
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7088
|
-
|
|
7454
|
+
set linear(value) { this._linear.set(value); }
|
|
7455
|
+
get linear() { return this._linear(); }
|
|
7456
|
+
set stepType(value) { this._stepType.set(value); }
|
|
7457
|
+
get stepType() { return this._stepType(); }
|
|
7458
|
+
set orientation(value) { this._orientation.set(value); }
|
|
7459
|
+
get orientation() { return this._orientation(); }
|
|
7460
|
+
set currentStep(value) { this._currentStep.set(value); }
|
|
7461
|
+
get currentStep() { return this._currentStep(); }
|
|
7462
|
+
set steps(value) { this._steps.set(value); }
|
|
7463
|
+
get steps() { return this._steps(); }
|
|
7464
|
+
set successIcon(value) { this._successIcon.set(value); }
|
|
7465
|
+
get successIcon() { return this._successIcon(); }
|
|
7466
|
+
set successSVGIcon(value) { this._successSVGIcon.set(value); }
|
|
7467
|
+
get successSVGIcon() { return this._successSVGIcon(); }
|
|
7468
|
+
set errorIcon(value) { this._errorIcon.set(value); }
|
|
7469
|
+
get errorIcon() { return this._errorIcon(); }
|
|
7470
|
+
set errorSVGIcon(value) { this._errorSVGIcon.set(value); }
|
|
7471
|
+
get errorSVGIcon() { return this._errorSVGIcon(); }
|
|
7472
|
+
set svgIcon(value) { this._svgIcon.set(value); }
|
|
7473
|
+
get svgIcon() { return this._svgIcon(); }
|
|
7474
|
+
set indicatorTemplate(value) { this._indicatorTemplate.set(value); }
|
|
7475
|
+
get indicatorTemplate() { return this._indicatorTemplate(); }
|
|
7476
|
+
set labelTemplate(value) { this._labelTemplate.set(value); }
|
|
7477
|
+
get labelTemplate() { return this._labelTemplate(); }
|
|
7478
|
+
set stepTemplate(value) { this._stepTemplate.set(value); }
|
|
7479
|
+
get stepTemplate() { return this._stepTemplate(); }
|
|
7089
7480
|
listKeydown = new EventEmitter();
|
|
7090
7481
|
listClick = new EventEmitter();
|
|
7482
|
+
_linear = signal(undefined, ...(ngDevMode ? [{ debugName: "_linear" }] : []));
|
|
7483
|
+
_stepType = signal(undefined, ...(ngDevMode ? [{ debugName: "_stepType" }] : []));
|
|
7484
|
+
_orientation = signal(undefined, ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
7485
|
+
_currentStep = signal(undefined, ...(ngDevMode ? [{ debugName: "_currentStep" }] : []));
|
|
7486
|
+
_steps = signal(undefined, ...(ngDevMode ? [{ debugName: "_steps" }] : []));
|
|
7487
|
+
_successIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_successIcon" }] : []));
|
|
7488
|
+
_successSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_successSVGIcon" }] : []));
|
|
7489
|
+
_errorIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_errorIcon" }] : []));
|
|
7490
|
+
_errorSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_errorSVGIcon" }] : []));
|
|
7491
|
+
_svgIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_svgIcon" }] : []));
|
|
7492
|
+
_indicatorTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_indicatorTemplate" }] : []));
|
|
7493
|
+
_labelTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_labelTemplate" }] : []));
|
|
7494
|
+
_stepTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_stepTemplate" }] : []));
|
|
7091
7495
|
domSubs;
|
|
7092
7496
|
constructor(renderer, ngZone, service, element) {
|
|
7093
7497
|
this.renderer = renderer;
|
|
@@ -7164,12 +7568,13 @@ class StepperListComponent {
|
|
|
7164
7568
|
}
|
|
7165
7569
|
}
|
|
7166
7570
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperListComponent, deps: [{ token: i0.Renderer2 }, { token: i0.NgZone }, { token: StepperService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7167
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: StepperListComponent, isStandalone: true, selector: "[kendoStepperList]", inputs: { linear: "linear", stepType: "stepType", orientation: "orientation", currentStep: "currentStep", steps: "steps", successIcon: "successIcon", successSVGIcon: "successSVGIcon", errorIcon: "errorIcon", errorSVGIcon: "errorSVGIcon", svgIcon: "svgIcon", indicatorTemplate: "indicatorTemplate", labelTemplate: "labelTemplate", stepTemplate: "stepTemplate" }, outputs: { listKeydown: "listKeydown", listClick: "listClick" }, ngImport: i0, template: "\n @for (step of steps; track step; let idx = $index) {\n <li kendoStepperStep\n [attr.data-kendo-stepper-index]='idx'\n [type]='stepType'\n [step]='step'\n [index]='idx'\n [current]='currentStep'\n [successIcon]='successIcon'\n [successSVGIcon]='successSVGIcon'\n [errorIcon]='errorIcon'\n [errorSVGIcon]='errorSVGIcon'\n [svgIcon]='svgIcon'\n [indicatorTemplate]='indicatorTemplate'\n [labelTemplate]='labelTemplate'\n [stepTemplate]='stepTemplate'\n class='k-step'\n [class.k-step-first]='idx === 0'\n [class.k-step-last]='idx === steps.length - 1'\n [class.k-step-done]='idx < currentStep'\n [class.k-step-current]='idx === currentStep'\n [class.k-step-optional]='step.optional'\n [class.k-disabled]='step.disabled'\n [class.k-focus]='idx === focusedStep || (!isPresent(focusedStep) && idx === currentStep)'\n [ngClass]='step.cssClass'\n [ngStyle]='step.cssStyle'\n [style.max-width.%] = 'maxStepWidth'\n [style.max-height.%] = 'maxStepHeight'\n >\n </li>\n }\n ", isInline: true, dependencies: [{ kind: "component", type: StepperStepComponent, selector: "[kendoStepperStep]", inputs: ["step", "index", "current", "type", "successIcon", "successSVGIcon", "errorIcon", "errorSVGIcon", "svgIcon", "indicatorTemplate", "labelTemplate", "stepTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
7571
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: StepperListComponent, isStandalone: true, selector: "[kendoStepperList]", inputs: { linear: "linear", stepType: "stepType", orientation: "orientation", currentStep: "currentStep", steps: "steps", successIcon: "successIcon", successSVGIcon: "successSVGIcon", errorIcon: "errorIcon", errorSVGIcon: "errorSVGIcon", svgIcon: "svgIcon", indicatorTemplate: "indicatorTemplate", labelTemplate: "labelTemplate", stepTemplate: "stepTemplate" }, outputs: { listKeydown: "listKeydown", listClick: "listClick" }, ngImport: i0, template: "\n @for (step of steps; track step; let idx = $index) {\n <li kendoStepperStep\n [attr.data-kendo-stepper-index]='idx'\n [type]='stepType'\n [step]='step'\n [index]='idx'\n [current]='currentStep'\n [successIcon]='successIcon'\n [successSVGIcon]='successSVGIcon'\n [errorIcon]='errorIcon'\n [errorSVGIcon]='errorSVGIcon'\n [svgIcon]='svgIcon'\n [indicatorTemplate]='indicatorTemplate'\n [labelTemplate]='labelTemplate'\n [stepTemplate]='stepTemplate'\n class='k-step'\n [class.k-step-first]='idx === 0'\n [class.k-step-last]='idx === steps.length - 1'\n [class.k-step-done]='idx < currentStep'\n [class.k-step-current]='idx === currentStep'\n [class.k-step-optional]='step.optional'\n [class.k-disabled]='step.disabled'\n [class.k-focus]='idx === focusedStep || (!isPresent(focusedStep) && idx === currentStep)'\n [ngClass]='step.cssClass'\n [ngStyle]='step.cssStyle'\n [style.max-width.%] = 'maxStepWidth'\n [style.max-height.%] = 'maxStepHeight'\n >\n </li>\n }\n ", isInline: true, dependencies: [{ kind: "component", type: StepperStepComponent, selector: "[kendoStepperStep]", inputs: ["step", "index", "current", "type", "successIcon", "successSVGIcon", "errorIcon", "errorSVGIcon", "svgIcon", "indicatorTemplate", "labelTemplate", "stepTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7168
7572
|
}
|
|
7169
7573
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperListComponent, decorators: [{
|
|
7170
7574
|
type: Component,
|
|
7171
7575
|
args: [{
|
|
7172
7576
|
selector: '[kendoStepperList]',
|
|
7577
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7173
7578
|
template: `
|
|
7174
7579
|
@for (step of steps; track step; let idx = $index) {
|
|
7175
7580
|
<li kendoStepperStep
|
|
@@ -7244,7 +7649,13 @@ class StepperMessages extends ComponentMessages {
|
|
|
7244
7649
|
/**
|
|
7245
7650
|
* Specifies the optional text.
|
|
7246
7651
|
*/
|
|
7247
|
-
optional
|
|
7652
|
+
set optional(value) {
|
|
7653
|
+
this._optional.set(value);
|
|
7654
|
+
}
|
|
7655
|
+
get optional() {
|
|
7656
|
+
return this._optional();
|
|
7657
|
+
}
|
|
7658
|
+
_optional = signal(undefined, ...(ngDevMode ? [{ debugName: "_optional" }] : []));
|
|
7248
7659
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
7249
7660
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: StepperMessages, isStandalone: true, selector: "kendo-stepper-messages-base", inputs: { optional: "optional" }, usesInheritance: true, ngImport: i0 });
|
|
7250
7661
|
}
|
|
@@ -7329,24 +7740,40 @@ class StepperComponent {
|
|
|
7329
7740
|
*
|
|
7330
7741
|
* @default 'indicator'
|
|
7331
7742
|
*/
|
|
7332
|
-
stepType
|
|
7743
|
+
set stepType(value) {
|
|
7744
|
+
this._stepType.set(value);
|
|
7745
|
+
}
|
|
7746
|
+
get stepType() {
|
|
7747
|
+
return this._stepType();
|
|
7748
|
+
}
|
|
7333
7749
|
/**
|
|
7334
7750
|
* Specifies the linear flow of the Stepper.
|
|
7335
7751
|
*
|
|
7336
7752
|
* @default true
|
|
7337
7753
|
*/
|
|
7338
|
-
linear
|
|
7754
|
+
set linear(value) {
|
|
7755
|
+
this._linear.set(value);
|
|
7756
|
+
}
|
|
7757
|
+
get linear() {
|
|
7758
|
+
return this._linear();
|
|
7759
|
+
}
|
|
7339
7760
|
/**
|
|
7340
7761
|
* Specifies the orientation of the Stepper
|
|
7341
7762
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/stepper/orientation)).
|
|
7342
7763
|
*
|
|
7343
7764
|
* @default 'horizontal'
|
|
7344
7765
|
*/
|
|
7345
|
-
orientation
|
|
7766
|
+
set orientation(value) {
|
|
7767
|
+
this._orientation.set(value);
|
|
7768
|
+
}
|
|
7769
|
+
get orientation() {
|
|
7770
|
+
return this._orientation();
|
|
7771
|
+
}
|
|
7346
7772
|
/**
|
|
7347
7773
|
* Specifies the index of the current step.
|
|
7348
7774
|
*/
|
|
7349
7775
|
set currentStep(value) {
|
|
7776
|
+
this._currentStep.set(value);
|
|
7350
7777
|
this.stepperService.currentStep = value;
|
|
7351
7778
|
}
|
|
7352
7779
|
get currentStep() {
|
|
@@ -7358,48 +7785,73 @@ class StepperComponent {
|
|
|
7358
7785
|
*/
|
|
7359
7786
|
set steps(steps) {
|
|
7360
7787
|
if (isPresent(steps) && steps.length > 0) {
|
|
7361
|
-
this._steps
|
|
7788
|
+
this._steps.set(steps);
|
|
7362
7789
|
}
|
|
7363
7790
|
}
|
|
7364
7791
|
get steps() {
|
|
7365
|
-
return this._steps;
|
|
7792
|
+
return this._steps();
|
|
7366
7793
|
}
|
|
7367
7794
|
/**
|
|
7368
7795
|
* Specifies an SVG icon to be rendered inside the step indicator instead of the default numeric or text content.
|
|
7369
7796
|
* You can use either an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or a custom one.
|
|
7370
7797
|
*/
|
|
7371
7798
|
set svgIcon(icon) {
|
|
7372
|
-
this._svgIcon
|
|
7799
|
+
this._svgIcon.set(icon);
|
|
7373
7800
|
}
|
|
7374
7801
|
get svgIcon() {
|
|
7375
|
-
return this._svgIcon;
|
|
7802
|
+
return this._svgIcon();
|
|
7376
7803
|
}
|
|
7377
7804
|
/**
|
|
7378
7805
|
* Specifies an SVG icon to be rendered for the success icon.
|
|
7379
7806
|
* You can use either an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or a custom one.
|
|
7380
7807
|
*/
|
|
7381
|
-
successSVGIcon
|
|
7808
|
+
set successSVGIcon(value) {
|
|
7809
|
+
this._successSVGIcon.set(value);
|
|
7810
|
+
}
|
|
7811
|
+
get successSVGIcon() {
|
|
7812
|
+
return this._successSVGIcon();
|
|
7813
|
+
}
|
|
7382
7814
|
/**
|
|
7383
7815
|
* Specifies an SVG icon to be rendered for the error icon.
|
|
7384
7816
|
* You can use either an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or a custom one.
|
|
7385
7817
|
*/
|
|
7386
|
-
errorSVGIcon
|
|
7818
|
+
set errorSVGIcon(value) {
|
|
7819
|
+
this._errorSVGIcon.set(value);
|
|
7820
|
+
}
|
|
7821
|
+
get errorSVGIcon() {
|
|
7822
|
+
return this._errorSVGIcon();
|
|
7823
|
+
}
|
|
7387
7824
|
/**
|
|
7388
7825
|
* Specifies an SVG icon that will be rendered inside the step for valid previous steps.
|
|
7389
7826
|
* You can use either an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or a custom one.
|
|
7390
7827
|
*/
|
|
7391
|
-
successIcon
|
|
7828
|
+
set successIcon(value) {
|
|
7829
|
+
this._successIcon.set(value);
|
|
7830
|
+
}
|
|
7831
|
+
get successIcon() {
|
|
7832
|
+
return this._successIcon();
|
|
7833
|
+
}
|
|
7392
7834
|
/**
|
|
7393
7835
|
* Specifies an SVG icon that will be rendered inside the step for invalid previous steps.
|
|
7394
7836
|
* You can use either an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or a custom one.
|
|
7395
7837
|
*/
|
|
7396
|
-
errorIcon
|
|
7838
|
+
set errorIcon(value) {
|
|
7839
|
+
this._errorIcon.set(value);
|
|
7840
|
+
}
|
|
7841
|
+
get errorIcon() {
|
|
7842
|
+
return this._errorIcon();
|
|
7843
|
+
}
|
|
7397
7844
|
/**
|
|
7398
7845
|
* Specifies the duration of the progress indicator animation in milliseconds.
|
|
7399
7846
|
*
|
|
7400
7847
|
* @default true
|
|
7401
7848
|
*/
|
|
7402
|
-
animation
|
|
7849
|
+
set animation(value) {
|
|
7850
|
+
this._animation.set(value);
|
|
7851
|
+
}
|
|
7852
|
+
get animation() {
|
|
7853
|
+
return this._animation();
|
|
7854
|
+
}
|
|
7403
7855
|
/**
|
|
7404
7856
|
* Fires when a step is about to be activated. You can prevent this event.
|
|
7405
7857
|
*/
|
|
@@ -7422,10 +7874,31 @@ class StepperComponent {
|
|
|
7422
7874
|
*/
|
|
7423
7875
|
indicatorTemplate;
|
|
7424
7876
|
dynamicRTLSubscription;
|
|
7425
|
-
_steps = [];
|
|
7426
|
-
|
|
7427
|
-
|
|
7428
|
-
|
|
7877
|
+
_steps = signal([], ...(ngDevMode ? [{ debugName: "_steps" }] : []));
|
|
7878
|
+
_svgIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_svgIcon" }] : []));
|
|
7879
|
+
_stepType = signal('indicator', ...(ngDevMode ? [{ debugName: "_stepType" }] : []));
|
|
7880
|
+
_linear = signal(true, ...(ngDevMode ? [{ debugName: "_linear" }] : []));
|
|
7881
|
+
_orientation = signal('horizontal', ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
7882
|
+
_currentStep = signal(0, ...(ngDevMode ? [{ debugName: "_currentStep" }] : []));
|
|
7883
|
+
_successSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_successSVGIcon" }] : []));
|
|
7884
|
+
_errorSVGIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_errorSVGIcon" }] : []));
|
|
7885
|
+
_successIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_successIcon" }] : []));
|
|
7886
|
+
_errorIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_errorIcon" }] : []));
|
|
7887
|
+
_animation = signal(true, ...(ngDevMode ? [{ debugName: "_animation" }] : []));
|
|
7888
|
+
_progressAnimation = computed(() => {
|
|
7889
|
+
const animation = this._animation();
|
|
7890
|
+
let duration;
|
|
7891
|
+
if (typeof animation === 'number') {
|
|
7892
|
+
duration = animation;
|
|
7893
|
+
}
|
|
7894
|
+
else if (typeof animation === 'boolean' && animation) {
|
|
7895
|
+
duration = DEFAULT_ANIMATION_DURATION;
|
|
7896
|
+
}
|
|
7897
|
+
else {
|
|
7898
|
+
duration = 0;
|
|
7899
|
+
}
|
|
7900
|
+
return { duration };
|
|
7901
|
+
}, ...(ngDevMode ? [{ debugName: "_progressAnimation" }] : []));
|
|
7429
7902
|
constructor(renderer, elem, localization, stepperService) {
|
|
7430
7903
|
this.renderer = renderer;
|
|
7431
7904
|
this.elem = elem;
|
|
@@ -7474,7 +7947,7 @@ class StepperComponent {
|
|
|
7474
7947
|
* @hidden
|
|
7475
7948
|
*/
|
|
7476
7949
|
get progressAnimation() {
|
|
7477
|
-
return
|
|
7950
|
+
return this._progressAnimation();
|
|
7478
7951
|
}
|
|
7479
7952
|
/**
|
|
7480
7953
|
* @hidden
|
|
@@ -7588,12 +8061,14 @@ class StepperComponent {
|
|
|
7588
8061
|
<kendo-progressbar-messages progressBarLabel="progress"></kendo-progressbar-messages>
|
|
7589
8062
|
</kendo-progressbar>
|
|
7590
8063
|
}
|
|
7591
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedStepperMessagesDirective, selector: "\n [kendoStepperLocalizedMessages]\n " }, { kind: "component", type: StepperListComponent, selector: "[kendoStepperList]", inputs: ["linear", "stepType", "orientation", "currentStep", "steps", "successIcon", "successSVGIcon", "errorIcon", "errorSVGIcon", "svgIcon", "indicatorTemplate", "labelTemplate", "stepTemplate"], outputs: ["listKeydown", "listClick"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ProgressBarComponent, selector: "kendo-progressbar", inputs: ["label", "progressCssStyle", "progressCssClass", "emptyCssStyle", "emptyCssClass", "animation", "max"], outputs: ["animationEnd"], exportAs: ["kendoProgressBar"] }, { kind: "component", type: ProgressBarCustomMessagesComponent, selector: "kendo-progressbar-messages" }] });
|
|
8064
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedStepperMessagesDirective, selector: "\n [kendoStepperLocalizedMessages]\n " }, { kind: "component", type: StepperListComponent, selector: "[kendoStepperList]", inputs: ["linear", "stepType", "orientation", "currentStep", "steps", "successIcon", "successSVGIcon", "errorIcon", "errorSVGIcon", "svgIcon", "indicatorTemplate", "labelTemplate", "stepTemplate"], outputs: ["listKeydown", "listClick"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ProgressBarComponent, selector: "kendo-progressbar", inputs: ["label", "progressCssStyle", "progressCssClass", "emptyCssStyle", "emptyCssClass", "animation", "max"], outputs: ["animationEnd"], exportAs: ["kendoProgressBar"] }, { kind: "component", type: ProgressBarCustomMessagesComponent, selector: "kendo-progressbar-messages" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
7592
8065
|
}
|
|
7593
8066
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StepperComponent, decorators: [{
|
|
7594
8067
|
type: Component,
|
|
7595
8068
|
args: [{
|
|
8069
|
+
selector: 'kendo-stepper',
|
|
7596
8070
|
exportAs: 'kendoStepper',
|
|
8071
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7597
8072
|
providers: [
|
|
7598
8073
|
LocalizationService,
|
|
7599
8074
|
StepperService,
|
|
@@ -7604,7 +8079,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
7604
8079
|
provideComponentName('stepper'),
|
|
7605
8080
|
{ provide: KENDO_WEBMCP_HOST, useExisting: forwardRef(() => StepperComponent) }
|
|
7606
8081
|
],
|
|
7607
|
-
selector: 'kendo-stepper',
|
|
7608
8082
|
template: `
|
|
7609
8083
|
<ng-container kendoStepperLocalizedMessages
|
|
7610
8084
|
i18n-optional="kendo.stepper.optional|The text for the optional segment of the step label"
|
|
@@ -7782,7 +8256,13 @@ class Messages extends ComponentMessages {
|
|
|
7782
8256
|
/**
|
|
7783
8257
|
* Defines the alt attribute text of the image in the Avatar.
|
|
7784
8258
|
*/
|
|
7785
|
-
avatarAlt
|
|
8259
|
+
set avatarAlt(value) {
|
|
8260
|
+
this._avatarAlt.set(value);
|
|
8261
|
+
}
|
|
8262
|
+
get avatarAlt() {
|
|
8263
|
+
return this._avatarAlt();
|
|
8264
|
+
}
|
|
8265
|
+
_avatarAlt = signal(undefined, ...(ngDevMode ? [{ debugName: "_avatarAlt" }] : []));
|
|
7786
8266
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: Messages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
7787
8267
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: Messages, isStandalone: true, selector: "kendoAvatarMessages", inputs: { avatarAlt: "avatarAlt" }, usesInheritance: true, ngImport: i0 });
|
|
7788
8268
|
}
|
|
@@ -7878,13 +8358,13 @@ class AvatarComponent {
|
|
|
7878
8358
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/avatar/appearance#size)). The default value is set by the Kendo theme.
|
|
7879
8359
|
*/
|
|
7880
8360
|
set size(size) {
|
|
7881
|
-
if (size !== this._size) {
|
|
8361
|
+
if (size !== this._size()) {
|
|
7882
8362
|
this.handleClasses('size', size);
|
|
7883
|
-
this._size
|
|
8363
|
+
this._size.set(size);
|
|
7884
8364
|
}
|
|
7885
8365
|
}
|
|
7886
8366
|
get size() {
|
|
7887
|
-
return this._size;
|
|
8367
|
+
return this._size();
|
|
7888
8368
|
}
|
|
7889
8369
|
/**
|
|
7890
8370
|
* Specifies the rounded styling of the Avatar
|
|
@@ -7893,36 +8373,36 @@ class AvatarComponent {
|
|
|
7893
8373
|
set rounded(rounded) {
|
|
7894
8374
|
if (rounded !== this.rounded) {
|
|
7895
8375
|
this.handleClasses('rounded', rounded);
|
|
7896
|
-
this._rounded
|
|
8376
|
+
this._rounded.set(rounded);
|
|
7897
8377
|
}
|
|
7898
8378
|
}
|
|
7899
8379
|
get rounded() {
|
|
7900
|
-
return this._rounded;
|
|
8380
|
+
return this._rounded();
|
|
7901
8381
|
}
|
|
7902
8382
|
/**
|
|
7903
8383
|
* Specifies the theme color of the Avatar.
|
|
7904
8384
|
* The theme color applies as background and border color while adjusting the text color accordingly. The default value is set by the Kendo theme.
|
|
7905
8385
|
*/
|
|
7906
8386
|
set themeColor(themeColor) {
|
|
7907
|
-
if (themeColor !== this._themeColor) {
|
|
7908
|
-
this._themeColor
|
|
8387
|
+
if (themeColor !== this._themeColor()) {
|
|
8388
|
+
this._themeColor.set(themeColor);
|
|
7909
8389
|
this.handleFillModeAndThemeColorClasses(this.fillMode, this.themeColor);
|
|
7910
8390
|
}
|
|
7911
8391
|
}
|
|
7912
8392
|
get themeColor() {
|
|
7913
|
-
return this._themeColor;
|
|
8393
|
+
return this._themeColor();
|
|
7914
8394
|
}
|
|
7915
8395
|
/**
|
|
7916
8396
|
* Specifies the fill style of the Avatar. The default value is set by the Kendo theme.
|
|
7917
8397
|
*/
|
|
7918
8398
|
set fillMode(fillMode) {
|
|
7919
8399
|
if (fillMode !== this.fillMode) {
|
|
7920
|
-
this._fillMode
|
|
8400
|
+
this._fillMode.set(fillMode);
|
|
7921
8401
|
this.handleFillModeAndThemeColorClasses(this.fillMode, this.themeColor);
|
|
7922
8402
|
}
|
|
7923
8403
|
}
|
|
7924
8404
|
get fillMode() {
|
|
7925
|
-
return this._fillMode;
|
|
8405
|
+
return this._fillMode();
|
|
7926
8406
|
}
|
|
7927
8407
|
/**
|
|
7928
8408
|
* Specifies the appearance fill style of the avatar.
|
|
@@ -7938,16 +8418,31 @@ class AvatarComponent {
|
|
|
7938
8418
|
*
|
|
7939
8419
|
* @default false
|
|
7940
8420
|
*/
|
|
7941
|
-
border
|
|
8421
|
+
set border(value) {
|
|
8422
|
+
this._border.set(value);
|
|
8423
|
+
}
|
|
8424
|
+
get border() {
|
|
8425
|
+
return this._border();
|
|
8426
|
+
}
|
|
7942
8427
|
/**
|
|
7943
8428
|
* Defines a CSS class or multiple classes separated by spaces.
|
|
7944
8429
|
* You can apply these classes to a `span` element inside the Avatar and also use custom icons.
|
|
7945
8430
|
*/
|
|
7946
|
-
iconClass
|
|
8431
|
+
set iconClass(value) {
|
|
8432
|
+
this._iconClass.set(value);
|
|
8433
|
+
}
|
|
8434
|
+
get iconClass() {
|
|
8435
|
+
return this._iconClass();
|
|
8436
|
+
}
|
|
7947
8437
|
/**
|
|
7948
8438
|
* Sets the width of the Avatar.
|
|
7949
8439
|
*/
|
|
7950
|
-
width
|
|
8440
|
+
set width(value) {
|
|
8441
|
+
this._width.set(value);
|
|
8442
|
+
}
|
|
8443
|
+
get width() {
|
|
8444
|
+
return this._width();
|
|
8445
|
+
}
|
|
7951
8446
|
/**
|
|
7952
8447
|
* @hidden
|
|
7953
8448
|
*/
|
|
@@ -7957,7 +8452,12 @@ class AvatarComponent {
|
|
|
7957
8452
|
/**
|
|
7958
8453
|
* Sets the height of the Avatar.
|
|
7959
8454
|
*/
|
|
7960
|
-
height
|
|
8455
|
+
set height(value) {
|
|
8456
|
+
this._height.set(value);
|
|
8457
|
+
}
|
|
8458
|
+
get height() {
|
|
8459
|
+
return this._height();
|
|
8460
|
+
}
|
|
7961
8461
|
/**
|
|
7962
8462
|
* @hidden
|
|
7963
8463
|
*/
|
|
@@ -7968,20 +8468,40 @@ class AvatarComponent {
|
|
|
7968
8468
|
* Defines the CSS styles that render on the content element of the Avatar.
|
|
7969
8469
|
* Supports the type of values that [`ngStyle`](link:site.data.urls.angular['ngstyleapi']) supports.
|
|
7970
8470
|
*/
|
|
7971
|
-
cssStyle
|
|
8471
|
+
set cssStyle(value) {
|
|
8472
|
+
this._cssStyle.set(value);
|
|
8473
|
+
}
|
|
8474
|
+
get cssStyle() {
|
|
8475
|
+
return this._cssStyle();
|
|
8476
|
+
}
|
|
7972
8477
|
/**
|
|
7973
8478
|
* Sets the initials for the Avatar.
|
|
7974
8479
|
*/
|
|
7975
|
-
initials
|
|
8480
|
+
set initials(value) {
|
|
8481
|
+
this._initials.set(value);
|
|
8482
|
+
}
|
|
8483
|
+
get initials() {
|
|
8484
|
+
return this._initials();
|
|
8485
|
+
}
|
|
7976
8486
|
/**
|
|
7977
8487
|
* Sets the icon for the Avatar.
|
|
7978
8488
|
* All [Kendo UI Icons](https://www.telerik.com/kendo-angular-ui/components/styling/icons#icons-list) are supported.
|
|
7979
8489
|
*/
|
|
7980
|
-
icon
|
|
8490
|
+
set icon(value) {
|
|
8491
|
+
this._icon.set(value);
|
|
8492
|
+
}
|
|
8493
|
+
get icon() {
|
|
8494
|
+
return this._icon();
|
|
8495
|
+
}
|
|
7981
8496
|
/**
|
|
7982
8497
|
* Sets the image source of the Avatar.
|
|
7983
8498
|
*/
|
|
7984
|
-
imageSrc
|
|
8499
|
+
set imageSrc(value) {
|
|
8500
|
+
this._imageSrc.set(value);
|
|
8501
|
+
}
|
|
8502
|
+
get imageSrc() {
|
|
8503
|
+
return this._imageSrc();
|
|
8504
|
+
}
|
|
7985
8505
|
/**
|
|
7986
8506
|
* Defines an SVG icon to render.
|
|
7987
8507
|
* You can use either an [existing Kendo SVG icon](https://www.telerik.com/kendo-angular-ui/components/icons/svgicon/svgicon-list) or a custom one.
|
|
@@ -7990,16 +8510,24 @@ class AvatarComponent {
|
|
|
7990
8510
|
if (isDevMode() && icon && this.icon && this.iconClass) {
|
|
7991
8511
|
throw new Error('Setting both icon/svgIcon and iconClass options at the same time is not supported.');
|
|
7992
8512
|
}
|
|
7993
|
-
this._svgIcon
|
|
8513
|
+
this._svgIcon.set(icon);
|
|
7994
8514
|
}
|
|
7995
8515
|
get svgIcon() {
|
|
7996
|
-
return this._svgIcon;
|
|
7997
|
-
}
|
|
7998
|
-
_themeColor = undefined;
|
|
7999
|
-
_size = undefined;
|
|
8000
|
-
_fillMode = undefined;
|
|
8001
|
-
_rounded = undefined;
|
|
8002
|
-
_svgIcon;
|
|
8516
|
+
return this._svgIcon();
|
|
8517
|
+
}
|
|
8518
|
+
_themeColor = signal(undefined, ...(ngDevMode ? [{ debugName: "_themeColor" }] : []));
|
|
8519
|
+
_size = signal(undefined, ...(ngDevMode ? [{ debugName: "_size" }] : []));
|
|
8520
|
+
_fillMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_fillMode" }] : []));
|
|
8521
|
+
_rounded = signal(undefined, ...(ngDevMode ? [{ debugName: "_rounded" }] : []));
|
|
8522
|
+
_svgIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_svgIcon" }] : []));
|
|
8523
|
+
_border = signal(false, ...(ngDevMode ? [{ debugName: "_border" }] : []));
|
|
8524
|
+
_iconClass = signal(undefined, ...(ngDevMode ? [{ debugName: "_iconClass" }] : []));
|
|
8525
|
+
_width = signal(undefined, ...(ngDevMode ? [{ debugName: "_width" }] : []));
|
|
8526
|
+
_height = signal(undefined, ...(ngDevMode ? [{ debugName: "_height" }] : []));
|
|
8527
|
+
_cssStyle = signal(undefined, ...(ngDevMode ? [{ debugName: "_cssStyle" }] : []));
|
|
8528
|
+
_initials = signal(undefined, ...(ngDevMode ? [{ debugName: "_initials" }] : []));
|
|
8529
|
+
_icon = signal(undefined, ...(ngDevMode ? [{ debugName: "_icon" }] : []));
|
|
8530
|
+
_imageSrc = signal(undefined, ...(ngDevMode ? [{ debugName: "_imageSrc" }] : []));
|
|
8003
8531
|
_themeColorClasses = ['k-avatar-primary', 'k-avatar-secondary', 'k-avatar-tertiary', 'k-avatar-base'];
|
|
8004
8532
|
constructor(localization, renderer, element) {
|
|
8005
8533
|
this.localization = localization;
|
|
@@ -8103,7 +8631,7 @@ class AvatarComponent {
|
|
|
8103
8631
|
</kendo-icon-wrapper>
|
|
8104
8632
|
</span>
|
|
8105
8633
|
}
|
|
8106
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: LocalizedAvatarMessagesDirective, selector: "[kendoAvatarLocalizedMessages]" }] });
|
|
8634
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: LocalizedAvatarMessagesDirective, selector: "[kendoAvatarLocalizedMessages]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8107
8635
|
}
|
|
8108
8636
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: AvatarComponent, decorators: [{
|
|
8109
8637
|
type: Component,
|
|
@@ -8151,7 +8679,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
8151
8679
|
}
|
|
8152
8680
|
`,
|
|
8153
8681
|
standalone: true,
|
|
8154
|
-
imports: [NgStyle, IconWrapperComponent, LocalizedAvatarMessagesDirective]
|
|
8682
|
+
imports: [NgStyle, IconWrapperComponent, LocalizedAvatarMessagesDirective],
|
|
8683
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
8155
8684
|
}]
|
|
8156
8685
|
}], ctorParameters: () => [{ type: i1.LocalizationService }, { type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { hostClass: [{
|
|
8157
8686
|
type: HostBinding,
|
|
@@ -8278,27 +8807,40 @@ class CardComponent {
|
|
|
8278
8807
|
/**
|
|
8279
8808
|
* @hidden
|
|
8280
8809
|
*/
|
|
8281
|
-
direction
|
|
8810
|
+
get direction() {
|
|
8811
|
+
return this._direction();
|
|
8812
|
+
}
|
|
8282
8813
|
/**
|
|
8283
8814
|
* Specifies the layout of the Card content.
|
|
8284
8815
|
*
|
|
8285
8816
|
* @default 'vertical'
|
|
8286
8817
|
*/
|
|
8287
|
-
orientation
|
|
8818
|
+
set orientation(value) {
|
|
8819
|
+
this._orientation.set(value);
|
|
8820
|
+
}
|
|
8821
|
+
get orientation() {
|
|
8822
|
+
return this._orientation();
|
|
8823
|
+
}
|
|
8288
8824
|
/**
|
|
8289
8825
|
* Defines the width of the Card.
|
|
8290
8826
|
*
|
|
8291
8827
|
* @default '285px'
|
|
8292
8828
|
*/
|
|
8293
|
-
width
|
|
8829
|
+
set width(value) {
|
|
8830
|
+
this._width.set(value);
|
|
8831
|
+
}
|
|
8832
|
+
get width() {
|
|
8833
|
+
return this._width();
|
|
8834
|
+
}
|
|
8835
|
+
_direction = signal(undefined, ...(ngDevMode ? [{ debugName: "_direction" }] : []));
|
|
8836
|
+
_orientation = signal('vertical', ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
8837
|
+
_width = signal('285px', ...(ngDevMode ? [{ debugName: "_width" }] : []));
|
|
8294
8838
|
dynamicRTLSubscription;
|
|
8295
|
-
rtl = false;
|
|
8296
8839
|
constructor(localizationService) {
|
|
8297
8840
|
this.localizationService = localizationService;
|
|
8298
8841
|
validatePackage(packageMetadata);
|
|
8299
8842
|
this.dynamicRTLSubscription = this.localizationService.changes.subscribe(({ rtl }) => {
|
|
8300
|
-
this.rtl
|
|
8301
|
-
this.direction = this.rtl ? 'rtl' : 'ltr';
|
|
8843
|
+
this._direction.set(rtl ? 'rtl' : 'ltr');
|
|
8302
8844
|
});
|
|
8303
8845
|
}
|
|
8304
8846
|
ngOnDestroy() {
|
|
@@ -8315,7 +8857,7 @@ class CardComponent {
|
|
|
8315
8857
|
}
|
|
8316
8858
|
], ngImport: i0, template: `
|
|
8317
8859
|
<ng-content></ng-content>
|
|
8318
|
-
`, isInline: true });
|
|
8860
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8319
8861
|
}
|
|
8320
8862
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CardComponent, decorators: [{
|
|
8321
8863
|
type: Component,
|
|
@@ -8331,7 +8873,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
8331
8873
|
template: `
|
|
8332
8874
|
<ng-content></ng-content>
|
|
8333
8875
|
`,
|
|
8334
|
-
standalone: true
|
|
8876
|
+
standalone: true,
|
|
8877
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
8335
8878
|
}]
|
|
8336
8879
|
}], ctorParameters: () => [{ type: i1.LocalizationService }], propDecorators: { hostClass: [{
|
|
8337
8880
|
type: HostBinding,
|
|
@@ -8371,7 +8914,7 @@ class CardHeaderComponent {
|
|
|
8371
8914
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8372
8915
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: CardHeaderComponent, isStandalone: true, selector: "kendo-card-header", host: { properties: { "class.k-card-header": "this.hostClass" } }, ngImport: i0, template: `
|
|
8373
8916
|
<ng-content></ng-content>
|
|
8374
|
-
`, isInline: true });
|
|
8917
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8375
8918
|
}
|
|
8376
8919
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CardHeaderComponent, decorators: [{
|
|
8377
8920
|
type: Component,
|
|
@@ -8380,7 +8923,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
8380
8923
|
template: `
|
|
8381
8924
|
<ng-content></ng-content>
|
|
8382
8925
|
`,
|
|
8383
|
-
standalone: true
|
|
8926
|
+
standalone: true,
|
|
8927
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
8384
8928
|
}]
|
|
8385
8929
|
}], propDecorators: { hostClass: [{
|
|
8386
8930
|
type: HostBinding,
|
|
@@ -8403,7 +8947,7 @@ class CardBodyComponent {
|
|
|
8403
8947
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CardBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8404
8948
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: CardBodyComponent, isStandalone: true, selector: "kendo-card-body", host: { properties: { "class.k-card-body": "this.hostClass" } }, ngImport: i0, template: `
|
|
8405
8949
|
<ng-content></ng-content>
|
|
8406
|
-
`, isInline: true });
|
|
8950
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8407
8951
|
}
|
|
8408
8952
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CardBodyComponent, decorators: [{
|
|
8409
8953
|
type: Component,
|
|
@@ -8412,7 +8956,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
8412
8956
|
template: `
|
|
8413
8957
|
<ng-content></ng-content>
|
|
8414
8958
|
`,
|
|
8415
|
-
standalone: true
|
|
8959
|
+
standalone: true,
|
|
8960
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
8416
8961
|
}]
|
|
8417
8962
|
}], propDecorators: { hostClass: [{
|
|
8418
8963
|
type: HostBinding,
|
|
@@ -8435,7 +8980,7 @@ class CardFooterComponent {
|
|
|
8435
8980
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CardFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8436
8981
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: CardFooterComponent, isStandalone: true, selector: "kendo-card-footer", host: { properties: { "class.k-card-footer": "this.hostClass" } }, ngImport: i0, template: `
|
|
8437
8982
|
<ng-content></ng-content>
|
|
8438
|
-
`, isInline: true });
|
|
8983
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8439
8984
|
}
|
|
8440
8985
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CardFooterComponent, decorators: [{
|
|
8441
8986
|
type: Component,
|
|
@@ -8444,7 +8989,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
8444
8989
|
template: `
|
|
8445
8990
|
<ng-content></ng-content>
|
|
8446
8991
|
`,
|
|
8447
|
-
standalone: true
|
|
8992
|
+
standalone: true,
|
|
8993
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
8448
8994
|
}]
|
|
8449
8995
|
}], propDecorators: { hostClass: [{
|
|
8450
8996
|
type: HostBinding,
|
|
@@ -8488,13 +9034,23 @@ class CardActionsComponent {
|
|
|
8488
9034
|
*
|
|
8489
9035
|
* @default 'horizontal'
|
|
8490
9036
|
*/
|
|
8491
|
-
orientation
|
|
9037
|
+
set orientation(value) {
|
|
9038
|
+
this._orientation.set(value);
|
|
9039
|
+
}
|
|
9040
|
+
get orientation() {
|
|
9041
|
+
return this._orientation();
|
|
9042
|
+
}
|
|
8492
9043
|
/**
|
|
8493
9044
|
* Specifies the layout of the Card action buttons.
|
|
8494
9045
|
*
|
|
8495
9046
|
* @default 'start'
|
|
8496
9047
|
*/
|
|
8497
|
-
layout
|
|
9048
|
+
set layout(value) {
|
|
9049
|
+
this._layout.set(value);
|
|
9050
|
+
}
|
|
9051
|
+
get layout() {
|
|
9052
|
+
return this._layout();
|
|
9053
|
+
}
|
|
8498
9054
|
/**
|
|
8499
9055
|
* Defines the Card actions declaratively.
|
|
8500
9056
|
* You can pass an array of `CardAction` objects or a `TemplateRef`.
|
|
@@ -8519,6 +9075,8 @@ class CardActionsComponent {
|
|
|
8519
9075
|
* @hidden
|
|
8520
9076
|
*/
|
|
8521
9077
|
actionsTemplate;
|
|
9078
|
+
_orientation = signal('horizontal', ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
9079
|
+
_layout = signal('start', ...(ngDevMode ? [{ debugName: "_layout" }] : []));
|
|
8522
9080
|
/**
|
|
8523
9081
|
* @hidden
|
|
8524
9082
|
*/
|
|
@@ -8548,7 +9106,7 @@ class CardActionsComponent {
|
|
|
8548
9106
|
@if (actionsTemplate) {
|
|
8549
9107
|
<ng-template [ngTemplateOutlet]="actionsTemplate"></ng-template>
|
|
8550
9108
|
}
|
|
8551
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
9109
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
8552
9110
|
}
|
|
8553
9111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: CardActionsComponent, decorators: [{
|
|
8554
9112
|
type: Component,
|
|
@@ -8578,7 +9136,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
8578
9136
|
}
|
|
8579
9137
|
`,
|
|
8580
9138
|
standalone: true,
|
|
8581
|
-
imports: [NgTemplateOutlet]
|
|
9139
|
+
imports: [NgTemplateOutlet],
|
|
9140
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
8582
9141
|
}]
|
|
8583
9142
|
}], propDecorators: { hostClass: [{
|
|
8584
9143
|
type: HostBinding,
|
|
@@ -8863,19 +9422,34 @@ class ExpansionPanelComponent {
|
|
|
8863
9422
|
* Specifies the primary text in the header of the ExpansionPanel
|
|
8864
9423
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/expansionpanel/title#titles-and-subtitles)).
|
|
8865
9424
|
*/
|
|
8866
|
-
title
|
|
9425
|
+
set title(value) {
|
|
9426
|
+
this._title.set(value);
|
|
9427
|
+
}
|
|
9428
|
+
get title() {
|
|
9429
|
+
return this._title();
|
|
9430
|
+
}
|
|
8867
9431
|
/**
|
|
8868
9432
|
* Specifies the secondary text in the header of the ExpansionPanel, which renders next to the collapse/expand icon
|
|
8869
9433
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/expansionpanel/title#titles-and-subtitles)).
|
|
8870
9434
|
*/
|
|
8871
|
-
subtitle
|
|
9435
|
+
set subtitle(value) {
|
|
9436
|
+
this._subtitle.set(value);
|
|
9437
|
+
}
|
|
9438
|
+
get subtitle() {
|
|
9439
|
+
return this._subtitle();
|
|
9440
|
+
}
|
|
8872
9441
|
/**
|
|
8873
9442
|
* Specifies whether the ExpansionPanel is disabled. If disabled, the ExpansionPanel can be neither expanded nor collapsed
|
|
8874
9443
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/expansionpanel/disabled-state)).
|
|
8875
9444
|
*
|
|
8876
9445
|
* @default false
|
|
8877
9446
|
*/
|
|
8878
|
-
disabled
|
|
9447
|
+
set disabled(value) {
|
|
9448
|
+
this._disabled.set(value);
|
|
9449
|
+
}
|
|
9450
|
+
get disabled() {
|
|
9451
|
+
return this._disabled();
|
|
9452
|
+
}
|
|
8879
9453
|
/**
|
|
8880
9454
|
* Specifies whether the ExpansionPanel is expanded. The property supports two-way binding
|
|
8881
9455
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/expansionpanel/interaction#setting-the-initial-state)).
|
|
@@ -8886,7 +9460,7 @@ class ExpansionPanelComponent {
|
|
|
8886
9460
|
if (value === this.expanded) {
|
|
8887
9461
|
return;
|
|
8888
9462
|
}
|
|
8889
|
-
this._expanded
|
|
9463
|
+
this._expanded.set(value);
|
|
8890
9464
|
if (this.expanded) {
|
|
8891
9465
|
this.removeContentHiddenClass();
|
|
8892
9466
|
}
|
|
@@ -8895,7 +9469,7 @@ class ExpansionPanelComponent {
|
|
|
8895
9469
|
}
|
|
8896
9470
|
}
|
|
8897
9471
|
get expanded() {
|
|
8898
|
-
return this._expanded;
|
|
9472
|
+
return this._expanded();
|
|
8899
9473
|
}
|
|
8900
9474
|
/**
|
|
8901
9475
|
* Defines an SVG icon for the expanded state of the component.
|
|
@@ -8905,10 +9479,10 @@ class ExpansionPanelComponent {
|
|
|
8905
9479
|
if (isDevMode() && icon && this.expandIcon) {
|
|
8906
9480
|
throw new Error('Setting both expandIcon/svgExpandIcon options at the same time is not supported.');
|
|
8907
9481
|
}
|
|
8908
|
-
this._svgExpandIcon
|
|
9482
|
+
this._svgExpandIcon.set(icon);
|
|
8909
9483
|
}
|
|
8910
9484
|
get svgExpandIcon() {
|
|
8911
|
-
return this._svgExpandIcon;
|
|
9485
|
+
return this._svgExpandIcon();
|
|
8912
9486
|
}
|
|
8913
9487
|
/**
|
|
8914
9488
|
* Defines an SVG icon for the collapsed state of the component.
|
|
@@ -8918,28 +9492,43 @@ class ExpansionPanelComponent {
|
|
|
8918
9492
|
if (isDevMode() && icon && this.collapseIcon) {
|
|
8919
9493
|
throw new Error('Setting both collapseIcon/svgCollapseIcon options at the same time is not supported.');
|
|
8920
9494
|
}
|
|
8921
|
-
this._svgCollapseIcon
|
|
9495
|
+
this._svgCollapseIcon.set(icon);
|
|
8922
9496
|
}
|
|
8923
9497
|
get svgCollapseIcon() {
|
|
8924
|
-
return this._svgCollapseIcon;
|
|
9498
|
+
return this._svgCollapseIcon();
|
|
8925
9499
|
}
|
|
8926
9500
|
/**
|
|
8927
9501
|
* Sets a custom icon via CSS class(es) for the collapsed state of the component
|
|
8928
9502
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/expansionpanel/icons#icons)).
|
|
8929
9503
|
*/
|
|
8930
|
-
expandIcon
|
|
9504
|
+
set expandIcon(value) {
|
|
9505
|
+
this._expandIcon.set(value);
|
|
9506
|
+
}
|
|
9507
|
+
get expandIcon() {
|
|
9508
|
+
return this._expandIcon();
|
|
9509
|
+
}
|
|
8931
9510
|
/**
|
|
8932
9511
|
* Sets a custom icon via CSS class(es) for the expanded state of the component
|
|
8933
9512
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/expansionpanel/icons#icons)).
|
|
8934
9513
|
*/
|
|
8935
|
-
collapseIcon
|
|
9514
|
+
set collapseIcon(value) {
|
|
9515
|
+
this._collapseIcon.set(value);
|
|
9516
|
+
}
|
|
9517
|
+
get collapseIcon() {
|
|
9518
|
+
return this._collapseIcon();
|
|
9519
|
+
}
|
|
8936
9520
|
/**
|
|
8937
9521
|
* Specifies the animation settings of the ExpansionPanel
|
|
8938
9522
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/expansionpanel/animations)).
|
|
8939
9523
|
*
|
|
8940
9524
|
* @default true
|
|
8941
9525
|
*/
|
|
8942
|
-
animation
|
|
9526
|
+
set animation(value) {
|
|
9527
|
+
this._animation.set(value);
|
|
9528
|
+
}
|
|
9529
|
+
get animation() {
|
|
9530
|
+
return this._animation();
|
|
9531
|
+
}
|
|
8943
9532
|
/**
|
|
8944
9533
|
* Fires when the `expanded` property of the component is updated.
|
|
8945
9534
|
* Used to provide a two-way binding for the `expanded` property
|
|
@@ -8974,16 +9563,25 @@ class ExpansionPanelComponent {
|
|
|
8974
9563
|
get disabledClass() {
|
|
8975
9564
|
return this.disabled;
|
|
8976
9565
|
}
|
|
8977
|
-
direction
|
|
9566
|
+
get direction() {
|
|
9567
|
+
return this._direction();
|
|
9568
|
+
}
|
|
8978
9569
|
/**
|
|
8979
9570
|
* @hidden
|
|
8980
9571
|
*/
|
|
8981
9572
|
focused = false;
|
|
8982
9573
|
animationEnd = new EventEmitter();
|
|
8983
9574
|
subscriptions = new Subscription();
|
|
8984
|
-
|
|
8985
|
-
|
|
8986
|
-
|
|
9575
|
+
_title = signal('', ...(ngDevMode ? [{ debugName: "_title" }] : []));
|
|
9576
|
+
_subtitle = signal('', ...(ngDevMode ? [{ debugName: "_subtitle" }] : []));
|
|
9577
|
+
_disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
|
|
9578
|
+
_expanded = signal(false, ...(ngDevMode ? [{ debugName: "_expanded" }] : []));
|
|
9579
|
+
_expandIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_expandIcon" }] : []));
|
|
9580
|
+
_collapseIcon = signal(undefined, ...(ngDevMode ? [{ debugName: "_collapseIcon" }] : []));
|
|
9581
|
+
_animation = signal(true, ...(ngDevMode ? [{ debugName: "_animation" }] : []));
|
|
9582
|
+
_svgExpandIcon = signal(chevronDownIcon, ...(ngDevMode ? [{ debugName: "_svgExpandIcon" }] : []));
|
|
9583
|
+
_svgCollapseIcon = signal(chevronUpIcon, ...(ngDevMode ? [{ debugName: "_svgCollapseIcon" }] : []));
|
|
9584
|
+
_direction = signal('ltr', ...(ngDevMode ? [{ debugName: "_direction" }] : []));
|
|
8987
9585
|
nextId = incrementingId++;
|
|
8988
9586
|
constructor(renderer, hostElement, ngZone, localizationService, builder) {
|
|
8989
9587
|
this.renderer = renderer;
|
|
@@ -8992,11 +9590,11 @@ class ExpansionPanelComponent {
|
|
|
8992
9590
|
this.localizationService = localizationService;
|
|
8993
9591
|
this.builder = builder;
|
|
8994
9592
|
validatePackage(packageMetadata);
|
|
8995
|
-
this.
|
|
9593
|
+
this._direction.set(localizationService.rtl ? 'rtl' : 'ltr');
|
|
8996
9594
|
}
|
|
8997
9595
|
ngOnInit() {
|
|
8998
9596
|
this.renderer.removeAttribute(this.hostElement.nativeElement, 'title');
|
|
8999
|
-
this.subscriptions = this.localizationService.changes.subscribe(({ rtl }) => { this.
|
|
9597
|
+
this.subscriptions = this.localizationService.changes.subscribe(({ rtl }) => { this._direction.set(rtl ? 'rtl' : 'ltr'); });
|
|
9000
9598
|
const elem = this.hostElement.nativeElement;
|
|
9001
9599
|
const header = this.header.nativeElement;
|
|
9002
9600
|
this.subscriptions.add(this.renderer.listen(header, 'focus', () => this.focusExpansionPanel(elem)));
|
|
@@ -9141,7 +9739,7 @@ class ExpansionPanelComponent {
|
|
|
9141
9739
|
}
|
|
9142
9740
|
}
|
|
9143
9741
|
setExpanded(value) {
|
|
9144
|
-
this._expanded
|
|
9742
|
+
this._expanded.set(value);
|
|
9145
9743
|
this.expandedChange.emit(value);
|
|
9146
9744
|
}
|
|
9147
9745
|
animateContent() {
|
|
@@ -9227,7 +9825,7 @@ class ExpansionPanelComponent {
|
|
|
9227
9825
|
<ng-content></ng-content>
|
|
9228
9826
|
</div>
|
|
9229
9827
|
</div>
|
|
9230
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
|
9828
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
9231
9829
|
}
|
|
9232
9830
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: ExpansionPanelComponent, decorators: [{
|
|
9233
9831
|
type: Component,
|
|
@@ -9285,7 +9883,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
9285
9883
|
</div>
|
|
9286
9884
|
`,
|
|
9287
9885
|
standalone: true,
|
|
9288
|
-
imports: [NgTemplateOutlet, IconWrapperComponent]
|
|
9886
|
+
imports: [NgTemplateOutlet, IconWrapperComponent],
|
|
9887
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
9289
9888
|
}]
|
|
9290
9889
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.LocalizationService }, { type: i2.AnimationBuilder }], propDecorators: { title: [{
|
|
9291
9890
|
type: Input
|
|
@@ -9617,7 +10216,7 @@ class TileLayoutDraggingService {
|
|
|
9617
10216
|
cdr;
|
|
9618
10217
|
localization;
|
|
9619
10218
|
reorderable = new BehaviorSubject(null);
|
|
9620
|
-
resizable =
|
|
10219
|
+
resizable = signal(null, ...(ngDevMode ? [{ debugName: "resizable" }] : []));
|
|
9621
10220
|
reorder = new Subject();
|
|
9622
10221
|
resize = new Subject();
|
|
9623
10222
|
tileLayoutSettings;
|
|
@@ -9733,7 +10332,7 @@ class TileLayoutDraggingService {
|
|
|
9733
10332
|
});
|
|
9734
10333
|
this.cdr.markForCheck();
|
|
9735
10334
|
}
|
|
9736
|
-
else if (this.resizable && resizing) {
|
|
10335
|
+
else if (this.resizable() && resizing) {
|
|
9737
10336
|
this.zone.run(() => {
|
|
9738
10337
|
this.startingPoint = {
|
|
9739
10338
|
top: originalEvent.clientY,
|
|
@@ -10222,12 +10821,13 @@ class TileLayoutItemHeaderComponent {
|
|
|
10222
10821
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TileLayoutItemHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10223
10822
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: TileLayoutItemHeaderComponent, isStandalone: true, selector: "kendo-tilelayout-item-header", host: { properties: { "class.k-tilelayout-item-header": "this.hostClass", "class.k-card-header": "this.hostClass" } }, ngImport: i0, template: `
|
|
10224
10823
|
<ng-content></ng-content>
|
|
10225
|
-
`, isInline: true });
|
|
10824
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
10226
10825
|
}
|
|
10227
10826
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TileLayoutItemHeaderComponent, decorators: [{
|
|
10228
10827
|
type: Component,
|
|
10229
10828
|
args: [{
|
|
10230
10829
|
selector: 'kendo-tilelayout-item-header',
|
|
10830
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
10231
10831
|
template: `
|
|
10232
10832
|
<ng-content></ng-content>
|
|
10233
10833
|
`,
|
|
@@ -10247,8 +10847,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
10247
10847
|
class TileLayoutResizeHandleDirective {
|
|
10248
10848
|
el;
|
|
10249
10849
|
renderer;
|
|
10250
|
-
resizeDirection;
|
|
10251
|
-
|
|
10850
|
+
set resizeDirection(value) { this._resizeDirection.set(value); }
|
|
10851
|
+
get resizeDirection() { return this._resizeDirection(); }
|
|
10852
|
+
set rtl(value) { this._rtl.set(value); }
|
|
10853
|
+
get rtl() { return this._rtl(); }
|
|
10854
|
+
_resizeDirection = signal(undefined, ...(ngDevMode ? [{ debugName: "_resizeDirection" }] : []));
|
|
10855
|
+
_rtl = signal(undefined, ...(ngDevMode ? [{ debugName: "_rtl" }] : []));
|
|
10252
10856
|
constructor(el, renderer) {
|
|
10253
10857
|
this.el = el;
|
|
10254
10858
|
this.renderer = renderer;
|
|
@@ -10320,47 +10924,54 @@ class TileLayoutItemComponent {
|
|
|
10320
10924
|
/**
|
|
10321
10925
|
* Sets the title text that appears in the item header ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/tiles-configuration#tiles-configuration)).
|
|
10322
10926
|
*/
|
|
10323
|
-
title;
|
|
10927
|
+
set title(value) { this._title.set(value); }
|
|
10928
|
+
get title() { return this._title(); }
|
|
10324
10929
|
/**
|
|
10325
10930
|
* Sets how many rows the tile item spans ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/resizing#programmatic-resizing)).
|
|
10326
10931
|
* @default 1
|
|
10327
10932
|
*/
|
|
10328
|
-
rowSpan
|
|
10933
|
+
set rowSpan(value) { this._rowSpan.set(value); }
|
|
10934
|
+
get rowSpan() { return this._rowSpan(); }
|
|
10329
10935
|
/**
|
|
10330
10936
|
* Sets how many columns the tile item spans ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/resizing#programmatic-resizing)).
|
|
10331
10937
|
* @default 1
|
|
10332
10938
|
*/
|
|
10333
|
-
colSpan
|
|
10939
|
+
set colSpan(value) { this._colSpan.set(value); }
|
|
10940
|
+
get colSpan() { return this._colSpan(); }
|
|
10334
10941
|
/**
|
|
10335
10942
|
* Sets the order of the tile item within the TileLayout.
|
|
10336
10943
|
* When not set, items receive increasing order values based on their DOM position.
|
|
10337
10944
|
*/
|
|
10338
10945
|
set order(value) {
|
|
10339
|
-
this._order
|
|
10340
|
-
this.renderer.setStyle(this.elem.nativeElement, 'order', `${this._order}`);
|
|
10946
|
+
this._order.set(value);
|
|
10947
|
+
this.renderer.setStyle(this.elem.nativeElement, 'order', `${this._order()}`);
|
|
10341
10948
|
}
|
|
10342
10949
|
get order() {
|
|
10343
|
-
return this._order;
|
|
10950
|
+
return this._order();
|
|
10344
10951
|
}
|
|
10345
10952
|
/**
|
|
10346
10953
|
* Sets the starting column position of the item ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/tiles-configuration#size-and-position)).
|
|
10347
10954
|
*/
|
|
10348
|
-
col;
|
|
10955
|
+
set col(value) { this._col.set(value); }
|
|
10956
|
+
get col() { return this._col(); }
|
|
10349
10957
|
/**
|
|
10350
10958
|
* Sets the starting row position of the item ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/tiles-configuration#size-and-position)).
|
|
10351
10959
|
*/
|
|
10352
|
-
row;
|
|
10960
|
+
set row(value) { this._row.set(value); }
|
|
10961
|
+
get row() { return this._row(); }
|
|
10353
10962
|
/**
|
|
10354
10963
|
* Enables or disables individual item reordering.
|
|
10355
10964
|
*
|
|
10356
10965
|
* @default true
|
|
10357
10966
|
*/
|
|
10358
|
-
reorderable
|
|
10967
|
+
set reorderable(value) { this._reorderable.set(value); }
|
|
10968
|
+
get reorderable() { return this._reorderable(); }
|
|
10359
10969
|
/**
|
|
10360
10970
|
* Enables or disables individual item resizing.
|
|
10361
10971
|
* @default true
|
|
10362
10972
|
*/
|
|
10363
|
-
resizable
|
|
10973
|
+
set resizable(value) { this._resizable.set(value); }
|
|
10974
|
+
get resizable() { return this._resizable(); }
|
|
10364
10975
|
itemClass = true;
|
|
10365
10976
|
hostRole = 'listitem';
|
|
10366
10977
|
get hostTabindex() {
|
|
@@ -10400,16 +11011,16 @@ class TileLayoutItemComponent {
|
|
|
10400
11011
|
* @hidden
|
|
10401
11012
|
*/
|
|
10402
11013
|
get isResizable() {
|
|
10403
|
-
return this.resizable && this.draggingService.resizable
|
|
11014
|
+
return this.resizable && this.draggingService.resizable();
|
|
10404
11015
|
}
|
|
10405
11016
|
/**
|
|
10406
11017
|
* @hidden
|
|
10407
11018
|
*/
|
|
10408
|
-
resizeDirections;
|
|
11019
|
+
get resizeDirections() { return this._resizeDirections(); }
|
|
10409
11020
|
/**
|
|
10410
11021
|
* @hidden
|
|
10411
11022
|
*/
|
|
10412
|
-
rtl;
|
|
11023
|
+
get rtl() { return this._rtl(); }
|
|
10413
11024
|
headers;
|
|
10414
11025
|
/**
|
|
10415
11026
|
* @hidden
|
|
@@ -10418,7 +11029,16 @@ class TileLayoutItemComponent {
|
|
|
10418
11029
|
subs = new Subscription();
|
|
10419
11030
|
keyboardNavigationSubs;
|
|
10420
11031
|
focusableItems;
|
|
10421
|
-
_order;
|
|
11032
|
+
_order = signal(undefined, ...(ngDevMode ? [{ debugName: "_order" }] : []));
|
|
11033
|
+
_title = signal(undefined, ...(ngDevMode ? [{ debugName: "_title" }] : []));
|
|
11034
|
+
_rowSpan = signal(1, ...(ngDevMode ? [{ debugName: "_rowSpan" }] : []));
|
|
11035
|
+
_colSpan = signal(1, ...(ngDevMode ? [{ debugName: "_colSpan" }] : []));
|
|
11036
|
+
_col = signal(undefined, ...(ngDevMode ? [{ debugName: "_col" }] : []));
|
|
11037
|
+
_row = signal(undefined, ...(ngDevMode ? [{ debugName: "_row" }] : []));
|
|
11038
|
+
_reorderable = signal(true, ...(ngDevMode ? [{ debugName: "_reorderable" }] : []));
|
|
11039
|
+
_resizable = signal(true, ...(ngDevMode ? [{ debugName: "_resizable" }] : []));
|
|
11040
|
+
_rtl = signal(undefined, ...(ngDevMode ? [{ debugName: "_rtl" }] : []));
|
|
11041
|
+
_resizeDirections;
|
|
10422
11042
|
constructor(elem, zone, renderer, localization, draggingService, keyboardNavigationService) {
|
|
10423
11043
|
this.elem = elem;
|
|
10424
11044
|
this.zone = zone;
|
|
@@ -10426,12 +11046,11 @@ class TileLayoutItemComponent {
|
|
|
10426
11046
|
this.localization = localization;
|
|
10427
11047
|
this.draggingService = draggingService;
|
|
10428
11048
|
this.keyboardNavigationService = keyboardNavigationService;
|
|
11049
|
+
this._resizeDirections = computed(() => this.draggingService.resizable() && this._resizable()
|
|
11050
|
+
? (this._rtl() ? RTL_RESIZE_DIRECTIONS : RESIZE_DIRECTIONS)
|
|
11051
|
+
: undefined, ...(ngDevMode ? [{ debugName: "_resizeDirections" }] : []));
|
|
10429
11052
|
this.subs.add(this.localization.changes.subscribe(({ rtl }) => {
|
|
10430
|
-
this.rtl
|
|
10431
|
-
}));
|
|
10432
|
-
this.subs.add(this.draggingService.resizable.subscribe(resizable => {
|
|
10433
|
-
this.resizeDirections = resizable && this.resizable ?
|
|
10434
|
-
this.rtl ? RTL_RESIZE_DIRECTIONS : RESIZE_DIRECTIONS : undefined;
|
|
11053
|
+
this._rtl.set(rtl);
|
|
10435
11054
|
}));
|
|
10436
11055
|
this.titleId = getId('k-tilelayout-title');
|
|
10437
11056
|
}
|
|
@@ -10464,10 +11083,6 @@ class TileLayoutItemComponent {
|
|
|
10464
11083
|
if (changes['reorderable'] && !changes['reorderable'].firstChange) {
|
|
10465
11084
|
this.toggleCursorClass(changes['reorderable'].currentValue && this.draggingService.reorderable.getValue());
|
|
10466
11085
|
}
|
|
10467
|
-
if (changes['resizable']) {
|
|
10468
|
-
this.resizeDirections = this.resizable && this.draggingService.resizable.getValue() ?
|
|
10469
|
-
this.rtl ? RTL_RESIZE_DIRECTIONS : RESIZE_DIRECTIONS : undefined;
|
|
10470
|
-
}
|
|
10471
11086
|
}
|
|
10472
11087
|
ngOnDestroy() {
|
|
10473
11088
|
this.subs.unsubscribe();
|
|
@@ -10511,12 +11126,13 @@ class TileLayoutItemComponent {
|
|
|
10511
11126
|
</div>
|
|
10512
11127
|
}
|
|
10513
11128
|
}
|
|
10514
|
-
`, isInline: true, dependencies: [{ kind: "component", type: TileLayoutItemHeaderComponent, selector: "kendo-tilelayout-item-header" }, { kind: "directive", type: TileLayoutResizeHandleDirective, selector: "[kendoTileLayoutResizeHandle]", inputs: ["resizeDirection", "rtl"] }] });
|
|
11129
|
+
`, isInline: true, dependencies: [{ kind: "component", type: TileLayoutItemHeaderComponent, selector: "kendo-tilelayout-item-header" }, { kind: "directive", type: TileLayoutResizeHandleDirective, selector: "[kendoTileLayoutResizeHandle]", inputs: ["resizeDirection", "rtl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
10515
11130
|
}
|
|
10516
11131
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TileLayoutItemComponent, decorators: [{
|
|
10517
11132
|
type: Component,
|
|
10518
11133
|
args: [{
|
|
10519
11134
|
selector: 'kendo-tilelayout-item',
|
|
11135
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
10520
11136
|
template: `
|
|
10521
11137
|
@if (title) {
|
|
10522
11138
|
<kendo-tilelayout-item-header>
|
|
@@ -10619,13 +11235,15 @@ class TileLayoutComponent {
|
|
|
10619
11235
|
* Specifies the number of columns ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/tiles-configuration#size-and-position)).
|
|
10620
11236
|
* @default 1
|
|
10621
11237
|
*/
|
|
10622
|
-
columns
|
|
11238
|
+
set columns(value) { this._columns.set(value); }
|
|
11239
|
+
get columns() { return this._columns(); }
|
|
10623
11240
|
/**
|
|
10624
11241
|
* Sets the width of the columns.
|
|
10625
11242
|
* Use numeric values for pixels or string values for other CSS units ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/tiles-configuration#size-and-position)).
|
|
10626
11243
|
* @default '1fr'
|
|
10627
11244
|
*/
|
|
10628
|
-
columnWidth
|
|
11245
|
+
set columnWidth(value) { this._columnWidth.set(value); }
|
|
11246
|
+
get columnWidth() { return this._columnWidth(); }
|
|
10629
11247
|
/**
|
|
10630
11248
|
* Sets the spacing between layout items in pixels.
|
|
10631
11249
|
* Use an object with `rows` and `columns` properties to set different horizontal and vertical spacing.
|
|
@@ -10634,27 +11252,33 @@ class TileLayoutComponent {
|
|
|
10634
11252
|
* @default { rows: 16, columns: 16 }
|
|
10635
11253
|
*/
|
|
10636
11254
|
set gap(value) {
|
|
10637
|
-
|
|
11255
|
+
const newGap = (typeof value === 'number')
|
|
11256
|
+
? { rows: value, columns: value }
|
|
11257
|
+
: Object.assign({}, this._gap(), value);
|
|
11258
|
+
this._gap.set(newGap);
|
|
10638
11259
|
}
|
|
10639
11260
|
get gap() {
|
|
10640
|
-
return this._gap;
|
|
11261
|
+
return this._gap();
|
|
10641
11262
|
}
|
|
10642
11263
|
/**
|
|
10643
11264
|
* Enables or disables item reordering ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/reordering)).
|
|
10644
11265
|
* @default false
|
|
10645
11266
|
*/
|
|
10646
|
-
reorderable
|
|
11267
|
+
set reorderable(value) { this._reorderable.set(value); }
|
|
11268
|
+
get reorderable() { return this._reorderable(); }
|
|
10647
11269
|
/**
|
|
10648
11270
|
* Enables or disables item resizing ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/resizing)).
|
|
10649
11271
|
* @default false
|
|
10650
11272
|
*/
|
|
10651
|
-
resizable
|
|
11273
|
+
set resizable(value) { this._resizable.set(value); }
|
|
11274
|
+
get resizable() { return this._resizable(); }
|
|
10652
11275
|
/**
|
|
10653
11276
|
* Sets the height of the rows.
|
|
10654
11277
|
* Use numeric values for pixels or string values for other CSS units ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/tiles-configuration#size-and-position)).
|
|
10655
11278
|
* @default '1fr'
|
|
10656
11279
|
*/
|
|
10657
|
-
rowHeight
|
|
11280
|
+
set rowHeight(value) { this._rowHeight.set(value); }
|
|
11281
|
+
get rowHeight() { return this._rowHeight(); }
|
|
10658
11282
|
/**
|
|
10659
11283
|
*
|
|
10660
11284
|
* Controls how the auto-placement algorithm works, specifying exactly how auto-placed items are flowed in the TileLayout ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/auto-flow)).
|
|
@@ -10662,7 +11286,8 @@ class TileLayoutComponent {
|
|
|
10662
11286
|
* For further reference, check the [grid-auto-flow CSS article](https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-flow).
|
|
10663
11287
|
* @default 'column'
|
|
10664
11288
|
*/
|
|
10665
|
-
autoFlow
|
|
11289
|
+
set autoFlow(value) { this._autoFlow.set(value); }
|
|
11290
|
+
get autoFlow() { return this._autoFlow(); }
|
|
10666
11291
|
/**
|
|
10667
11292
|
* Enables or disables [keyboard navigation](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/keyboard-navigation).
|
|
10668
11293
|
* @default true
|
|
@@ -10670,7 +11295,8 @@ class TileLayoutComponent {
|
|
|
10670
11295
|
* @remarks
|
|
10671
11296
|
* This property is related to accessibility.
|
|
10672
11297
|
*/
|
|
10673
|
-
navigable
|
|
11298
|
+
set navigable(value) { this._navigable.set(value); }
|
|
11299
|
+
get navigable() { return this._navigable(); }
|
|
10674
11300
|
/**
|
|
10675
11301
|
* Fires when item reordering is completed ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/tilelayout/reordering)).
|
|
10676
11302
|
* You can prevent this event to cancel the reorder operation.
|
|
@@ -10686,7 +11312,9 @@ class TileLayoutComponent {
|
|
|
10686
11312
|
get gapStyle() {
|
|
10687
11313
|
return `${this.gap.rows}px ${this.gap.columns}px`;
|
|
10688
11314
|
}
|
|
10689
|
-
direction
|
|
11315
|
+
get direction() {
|
|
11316
|
+
return this._direction();
|
|
11317
|
+
}
|
|
10690
11318
|
get currentColStart() {
|
|
10691
11319
|
return this.draggingService.colStart;
|
|
10692
11320
|
}
|
|
@@ -10715,10 +11343,15 @@ class TileLayoutComponent {
|
|
|
10715
11343
|
licenseMessage;
|
|
10716
11344
|
draggable;
|
|
10717
11345
|
subs = new Subscription();
|
|
10718
|
-
|
|
10719
|
-
|
|
10720
|
-
|
|
10721
|
-
};
|
|
11346
|
+
_columns = signal(1, ...(ngDevMode ? [{ debugName: "_columns" }] : []));
|
|
11347
|
+
_columnWidth = signal('1fr', ...(ngDevMode ? [{ debugName: "_columnWidth" }] : []));
|
|
11348
|
+
_gap = signal({ rows: 16, columns: 16 }, ...(ngDevMode ? [{ debugName: "_gap" }] : []));
|
|
11349
|
+
_reorderable = signal(false, ...(ngDevMode ? [{ debugName: "_reorderable" }] : []));
|
|
11350
|
+
_resizable = signal(false, ...(ngDevMode ? [{ debugName: "_resizable" }] : []));
|
|
11351
|
+
_rowHeight = signal('1fr', ...(ngDevMode ? [{ debugName: "_rowHeight" }] : []));
|
|
11352
|
+
_autoFlow = signal('column', ...(ngDevMode ? [{ debugName: "_autoFlow" }] : []));
|
|
11353
|
+
_navigable = signal(true, ...(ngDevMode ? [{ debugName: "_navigable" }] : []));
|
|
11354
|
+
_direction = signal(undefined, ...(ngDevMode ? [{ debugName: "_direction" }] : []));
|
|
10722
11355
|
constructor(zone, elem, renderer, localization, draggingService, navigationService) {
|
|
10723
11356
|
this.zone = zone;
|
|
10724
11357
|
this.elem = elem;
|
|
@@ -10734,7 +11367,7 @@ class TileLayoutComponent {
|
|
|
10734
11367
|
this.applyColStyling();
|
|
10735
11368
|
this.applyRowStyling();
|
|
10736
11369
|
this.draggingService.reorderable.next(this.reorderable);
|
|
10737
|
-
this.draggingService.resizable.
|
|
11370
|
+
this.draggingService.resizable.set(this.resizable);
|
|
10738
11371
|
this.navigationService.owner = this;
|
|
10739
11372
|
this.navigationService.navigable.next(this.navigable);
|
|
10740
11373
|
if (hasObservers(this.reorder)) {
|
|
@@ -10748,13 +11381,11 @@ class TileLayoutComponent {
|
|
|
10748
11381
|
this.initializeDraggable();
|
|
10749
11382
|
}
|
|
10750
11383
|
}));
|
|
10751
|
-
|
|
10752
|
-
|
|
10753
|
-
|
|
10754
|
-
}
|
|
10755
|
-
}));
|
|
11384
|
+
if (this.resizable && !this.draggable) {
|
|
11385
|
+
this.initializeDraggable();
|
|
11386
|
+
}
|
|
10756
11387
|
this.subs.add(this.localization.changes.subscribe(({ rtl }) => {
|
|
10757
|
-
this.
|
|
11388
|
+
this._direction.set(rtl ? 'rtl' : 'ltr');
|
|
10758
11389
|
}));
|
|
10759
11390
|
}
|
|
10760
11391
|
ngAfterViewInit() {
|
|
@@ -10782,7 +11413,11 @@ class TileLayoutComponent {
|
|
|
10782
11413
|
this.draggingService.reorderable.next(changes['reorderable'].currentValue);
|
|
10783
11414
|
}
|
|
10784
11415
|
if (isChanged('resizable', changes)) {
|
|
10785
|
-
|
|
11416
|
+
const newResizable = changes['resizable'].currentValue;
|
|
11417
|
+
this.draggingService.resizable.set(newResizable);
|
|
11418
|
+
if (newResizable && !this.draggable) {
|
|
11419
|
+
this.initializeDraggable();
|
|
11420
|
+
}
|
|
10786
11421
|
}
|
|
10787
11422
|
if (changes['gap'] || changes['autoFlow'] || changes['columns']) {
|
|
10788
11423
|
this.draggingService.tileLayoutSettings = this.draggingServiceConfig();
|
|
@@ -10886,12 +11521,13 @@ class TileLayoutComponent {
|
|
|
10886
11521
|
@if (showLicenseWatermark) {
|
|
10887
11522
|
<div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
|
|
10888
11523
|
}
|
|
10889
|
-
`, isInline: true, dependencies: [{ kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay], kendo-watermark-overlay", inputs: ["licenseMessage"] }] });
|
|
11524
|
+
`, isInline: true, dependencies: [{ kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay], kendo-watermark-overlay", inputs: ["licenseMessage"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
10890
11525
|
}
|
|
10891
11526
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TileLayoutComponent, decorators: [{
|
|
10892
11527
|
type: Component,
|
|
10893
11528
|
args: [{
|
|
10894
11529
|
selector: 'kendo-tilelayout',
|
|
11530
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
10895
11531
|
providers: [
|
|
10896
11532
|
LocalizationService,
|
|
10897
11533
|
TileLayoutDraggingService,
|
|
@@ -10980,12 +11616,13 @@ class TileLayoutItemBodyComponent {
|
|
|
10980
11616
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TileLayoutItemBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10981
11617
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: TileLayoutItemBodyComponent, isStandalone: true, selector: "kendo-tilelayout-item-body", host: { properties: { "class.k-tilelayout-item-body": "this.hostClass", "class.k-card-body": "this.hostClass", "style.min-height": "this.minHeight" } }, ngImport: i0, template: `
|
|
10982
11618
|
<ng-content></ng-content>
|
|
10983
|
-
`, isInline: true });
|
|
11619
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
10984
11620
|
}
|
|
10985
11621
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TileLayoutItemBodyComponent, decorators: [{
|
|
10986
11622
|
type: Component,
|
|
10987
11623
|
args: [{
|
|
10988
11624
|
selector: 'kendo-tilelayout-item-body',
|
|
11625
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
10989
11626
|
template: `
|
|
10990
11627
|
<ng-content></ng-content>
|
|
10991
11628
|
`,
|
|
@@ -11134,7 +11771,12 @@ class GridLayoutComponent {
|
|
|
11134
11771
|
* You can define rows by passing an array where the number of elements determines the number of rows or each element defines the size of the corresponding row.
|
|
11135
11772
|
* For example, you can use CSS units like `px`, `%`, `fr`, or `auto` to define the row sizes.
|
|
11136
11773
|
*/
|
|
11137
|
-
rows
|
|
11774
|
+
set rows(value) {
|
|
11775
|
+
this._rows.set(value);
|
|
11776
|
+
}
|
|
11777
|
+
get rows() {
|
|
11778
|
+
return this._rows();
|
|
11779
|
+
}
|
|
11138
11780
|
/**
|
|
11139
11781
|
* Specifies the number of columns and their widths
|
|
11140
11782
|
* ([More details](https://www.telerik.com/kendo-angular-ui/components/layout/gridlayout/layout#rows-and-columns)).
|
|
@@ -11142,28 +11784,41 @@ class GridLayoutComponent {
|
|
|
11142
11784
|
* You can define columns by passing an array where the number of elements determines the number of columns or each element defines the size of the corresponding column.
|
|
11143
11785
|
* For example, you can use CSS units like `px`, `%`, `fr`, or `auto` to define the column sizes.
|
|
11144
11786
|
*/
|
|
11145
|
-
cols
|
|
11787
|
+
set cols(value) {
|
|
11788
|
+
this._cols.set(value);
|
|
11789
|
+
}
|
|
11790
|
+
get cols() {
|
|
11791
|
+
return this._cols();
|
|
11792
|
+
}
|
|
11146
11793
|
/**
|
|
11147
11794
|
* Specifies the gaps between the elements ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/gridlayout/layout#gap)).
|
|
11148
11795
|
*
|
|
11149
11796
|
* @default 0
|
|
11150
11797
|
*/
|
|
11151
|
-
gap
|
|
11798
|
+
set gap(value) {
|
|
11799
|
+
this._gap.set(value);
|
|
11800
|
+
}
|
|
11801
|
+
get gap() {
|
|
11802
|
+
return this._gap();
|
|
11803
|
+
}
|
|
11152
11804
|
/**
|
|
11153
11805
|
* Specifies the horizontal and vertical alignment of the inner GridLayout elements
|
|
11154
11806
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/gridlayout/layout#alignment)).
|
|
11155
11807
|
*/
|
|
11156
11808
|
set align(align) {
|
|
11157
|
-
this._align
|
|
11809
|
+
this._align.set(Object.assign({}, this._align(), align));
|
|
11158
11810
|
this.handleAlignClasses();
|
|
11159
11811
|
}
|
|
11160
11812
|
get align() {
|
|
11161
|
-
return this._align;
|
|
11813
|
+
return this._align();
|
|
11162
11814
|
}
|
|
11163
|
-
_align = {
|
|
11815
|
+
_align = signal({
|
|
11164
11816
|
horizontal: 'stretch',
|
|
11165
11817
|
vertical: 'stretch'
|
|
11166
|
-
};
|
|
11818
|
+
}, ...(ngDevMode ? [{ debugName: "_align" }] : []));
|
|
11819
|
+
_rows = signal(undefined, ...(ngDevMode ? [{ debugName: "_rows" }] : []));
|
|
11820
|
+
_cols = signal(undefined, ...(ngDevMode ? [{ debugName: "_cols" }] : []));
|
|
11821
|
+
_gap = signal(0, ...(ngDevMode ? [{ debugName: "_gap" }] : []));
|
|
11167
11822
|
justifyClass;
|
|
11168
11823
|
alignClass;
|
|
11169
11824
|
constructor(renderer, element, localization) {
|
|
@@ -11232,7 +11887,7 @@ class GridLayoutComponent {
|
|
|
11232
11887
|
}
|
|
11233
11888
|
], exportAs: ["kendoGridLayout"], usesOnChanges: true, ngImport: i0, template: `
|
|
11234
11889
|
<ng-content></ng-content>
|
|
11235
|
-
`, isInline: true });
|
|
11890
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11236
11891
|
}
|
|
11237
11892
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: GridLayoutComponent, decorators: [{
|
|
11238
11893
|
type: Component,
|
|
@@ -11249,7 +11904,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
11249
11904
|
template: `
|
|
11250
11905
|
<ng-content></ng-content>
|
|
11251
11906
|
`,
|
|
11252
|
-
standalone: true
|
|
11907
|
+
standalone: true,
|
|
11908
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
11253
11909
|
}]
|
|
11254
11910
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.LocalizationService }], propDecorators: { hostClass: [{
|
|
11255
11911
|
type: HostBinding,
|
|
@@ -11284,24 +11940,48 @@ class GridLayoutItemComponent {
|
|
|
11284
11940
|
* Sets the row of the item in the GridLayout
|
|
11285
11941
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/gridlayout/items#size-and-position)).
|
|
11286
11942
|
*/
|
|
11287
|
-
row
|
|
11943
|
+
set row(value) {
|
|
11944
|
+
this._row.set(value);
|
|
11945
|
+
}
|
|
11946
|
+
get row() {
|
|
11947
|
+
return this._row();
|
|
11948
|
+
}
|
|
11288
11949
|
/**
|
|
11289
11950
|
* Sets the column of the item in the GridLayout
|
|
11290
11951
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/gridlayout/items#size-and-position)).
|
|
11291
11952
|
*/
|
|
11292
|
-
col
|
|
11953
|
+
set col(value) {
|
|
11954
|
+
this._col.set(value);
|
|
11955
|
+
}
|
|
11956
|
+
get col() {
|
|
11957
|
+
return this._col();
|
|
11958
|
+
}
|
|
11293
11959
|
/**
|
|
11294
11960
|
* Specifies how many rows the item spans ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/gridlayout/items#size-and-position)).
|
|
11295
11961
|
*
|
|
11296
11962
|
* @default 1
|
|
11297
11963
|
*/
|
|
11298
|
-
rowSpan
|
|
11964
|
+
set rowSpan(value) {
|
|
11965
|
+
this._rowSpan.set(value);
|
|
11966
|
+
}
|
|
11967
|
+
get rowSpan() {
|
|
11968
|
+
return this._rowSpan();
|
|
11969
|
+
}
|
|
11299
11970
|
/**
|
|
11300
11971
|
* Specifies how many columns the item spans ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/gridlayout/items#size-and-position)).
|
|
11301
11972
|
*
|
|
11302
11973
|
* @default 1
|
|
11303
11974
|
*/
|
|
11304
|
-
colSpan
|
|
11975
|
+
set colSpan(value) {
|
|
11976
|
+
this._colSpan.set(value);
|
|
11977
|
+
}
|
|
11978
|
+
get colSpan() {
|
|
11979
|
+
return this._colSpan();
|
|
11980
|
+
}
|
|
11981
|
+
_row = signal(undefined, ...(ngDevMode ? [{ debugName: "_row" }] : []));
|
|
11982
|
+
_col = signal(undefined, ...(ngDevMode ? [{ debugName: "_col" }] : []));
|
|
11983
|
+
_rowSpan = signal(undefined, ...(ngDevMode ? [{ debugName: "_rowSpan" }] : []));
|
|
11984
|
+
_colSpan = signal(undefined, ...(ngDevMode ? [{ debugName: "_colSpan" }] : []));
|
|
11305
11985
|
constructor(renderer, element) {
|
|
11306
11986
|
this.renderer = renderer;
|
|
11307
11987
|
this.element = element;
|
|
@@ -11323,7 +12003,7 @@ class GridLayoutItemComponent {
|
|
|
11323
12003
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: GridLayoutItemComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
11324
12004
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.27", type: GridLayoutItemComponent, isStandalone: true, selector: "kendo-gridlayout-item", inputs: { row: "row", col: "col", rowSpan: "rowSpan", colSpan: "colSpan" }, usesOnChanges: true, ngImport: i0, template: `
|
|
11325
12005
|
<ng-content></ng-content>
|
|
11326
|
-
`, isInline: true });
|
|
12006
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11327
12007
|
}
|
|
11328
12008
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: GridLayoutItemComponent, decorators: [{
|
|
11329
12009
|
type: Component,
|
|
@@ -11332,7 +12012,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
11332
12012
|
template: `
|
|
11333
12013
|
<ng-content></ng-content>
|
|
11334
12014
|
`,
|
|
11335
|
-
standalone: true
|
|
12015
|
+
standalone: true,
|
|
12016
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
11336
12017
|
}]
|
|
11337
12018
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { row: [{
|
|
11338
12019
|
type: Input
|
|
@@ -11376,29 +12057,41 @@ class StackLayoutComponent {
|
|
|
11376
12057
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/stacklayout/layout#alignment)).
|
|
11377
12058
|
*/
|
|
11378
12059
|
set align(align) {
|
|
11379
|
-
this._align
|
|
12060
|
+
this._align.set(Object.assign({}, this._align(), align));
|
|
11380
12061
|
this.handleAlignClasses();
|
|
11381
12062
|
}
|
|
11382
12063
|
get align() {
|
|
11383
|
-
return this._align;
|
|
12064
|
+
return this._align();
|
|
11384
12065
|
}
|
|
11385
12066
|
/**
|
|
11386
12067
|
* Specifies the gap between the inner StackLayout elements ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/stacklayout/layout#gap)).
|
|
11387
12068
|
*
|
|
11388
12069
|
* @default 0
|
|
11389
12070
|
*/
|
|
11390
|
-
gap
|
|
12071
|
+
set gap(value) {
|
|
12072
|
+
this._gap.set(value);
|
|
12073
|
+
}
|
|
12074
|
+
get gap() {
|
|
12075
|
+
return this._gap();
|
|
12076
|
+
}
|
|
11391
12077
|
/**
|
|
11392
12078
|
* Specifies the orientation of the StackLayout
|
|
11393
12079
|
* ([see example](https://www.telerik.com/kendo-angular-ui/components/layout/stacklayout/layout#orientation)).
|
|
11394
12080
|
*
|
|
11395
12081
|
* @default 'horizontal'
|
|
11396
12082
|
*/
|
|
11397
|
-
orientation
|
|
11398
|
-
|
|
12083
|
+
set orientation(value) {
|
|
12084
|
+
this._orientation.set(value);
|
|
12085
|
+
}
|
|
12086
|
+
get orientation() {
|
|
12087
|
+
return this._orientation();
|
|
12088
|
+
}
|
|
12089
|
+
_align = signal({
|
|
11399
12090
|
horizontal: 'stretch',
|
|
11400
12091
|
vertical: 'stretch'
|
|
11401
|
-
};
|
|
12092
|
+
}, ...(ngDevMode ? [{ debugName: "_align" }] : []));
|
|
12093
|
+
_gap = signal(0, ...(ngDevMode ? [{ debugName: "_gap" }] : []));
|
|
12094
|
+
_orientation = signal('horizontal', ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
11402
12095
|
justifyClass;
|
|
11403
12096
|
alignClass;
|
|
11404
12097
|
constructor(renderer, element, localization) {
|
|
@@ -11454,7 +12147,7 @@ class StackLayoutComponent {
|
|
|
11454
12147
|
}
|
|
11455
12148
|
], exportAs: ["kendoStackLayout"], usesOnChanges: true, ngImport: i0, template: `
|
|
11456
12149
|
<ng-content></ng-content>
|
|
11457
|
-
`, isInline: true });
|
|
12150
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11458
12151
|
}
|
|
11459
12152
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: StackLayoutComponent, decorators: [{
|
|
11460
12153
|
type: Component,
|
|
@@ -11471,7 +12164,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
11471
12164
|
template: `
|
|
11472
12165
|
<ng-content></ng-content>
|
|
11473
12166
|
`,
|
|
11474
|
-
standalone: true
|
|
12167
|
+
standalone: true,
|
|
12168
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
11475
12169
|
}]
|
|
11476
12170
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.LocalizationService }], propDecorators: { hostClass: [{
|
|
11477
12171
|
type: HostBinding,
|
|
@@ -11500,11 +12194,23 @@ class TimelineMessages extends ComponentMessages {
|
|
|
11500
12194
|
/**
|
|
11501
12195
|
* The title of the previous button in horizontal orientation.
|
|
11502
12196
|
*/
|
|
11503
|
-
previous
|
|
12197
|
+
set previous(value) {
|
|
12198
|
+
this._previous.set(value);
|
|
12199
|
+
}
|
|
12200
|
+
get previous() {
|
|
12201
|
+
return this._previous();
|
|
12202
|
+
}
|
|
11504
12203
|
/**
|
|
11505
12204
|
* The title of the next button in horizontal orientation.
|
|
11506
12205
|
*/
|
|
11507
|
-
next
|
|
12206
|
+
set next(value) {
|
|
12207
|
+
this._next.set(value);
|
|
12208
|
+
}
|
|
12209
|
+
get next() {
|
|
12210
|
+
return this._next();
|
|
12211
|
+
}
|
|
12212
|
+
_previous = signal(undefined, ...(ngDevMode ? [{ debugName: "_previous" }] : []));
|
|
12213
|
+
_next = signal(undefined, ...(ngDevMode ? [{ debugName: "_next" }] : []));
|
|
11508
12214
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TimelineMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
11509
12215
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.27", type: TimelineMessages, isStandalone: true, selector: "kendo-timeline-messages-base", inputs: { previous: "previous", next: "next" }, usesInheritance: true, ngImport: i0 });
|
|
11510
12216
|
}
|
|
@@ -11730,20 +12436,34 @@ class TimelineCardComponent {
|
|
|
11730
12436
|
element;
|
|
11731
12437
|
timelineService;
|
|
11732
12438
|
renderer;
|
|
11733
|
-
event;
|
|
11734
|
-
|
|
11735
|
-
|
|
11736
|
-
|
|
11737
|
-
|
|
11738
|
-
|
|
11739
|
-
|
|
11740
|
-
|
|
11741
|
-
|
|
11742
|
-
|
|
11743
|
-
|
|
11744
|
-
|
|
11745
|
-
|
|
11746
|
-
|
|
12439
|
+
set event(v) { this._event.set(v); }
|
|
12440
|
+
get event() { return this._event(); }
|
|
12441
|
+
set expanded(v) { this._expanded.set(v); }
|
|
12442
|
+
get expanded() { return this._expanded(); }
|
|
12443
|
+
set collapsible(v) { this._collapsible.set(v); }
|
|
12444
|
+
get collapsible() { return this._collapsible(); }
|
|
12445
|
+
set reversed(v) { this._reversed.set(v); }
|
|
12446
|
+
get reversed() { return this._reversed(); }
|
|
12447
|
+
set orientation(v) { this._orientation.set(v); }
|
|
12448
|
+
get orientation() { return this._orientation(); }
|
|
12449
|
+
set navigable(v) { this._navigable.set(v); }
|
|
12450
|
+
get navigable() { return this._navigable(); }
|
|
12451
|
+
set tabIndex(v) { this._tabIndex.set(v); }
|
|
12452
|
+
get tabIndex() { return this._tabIndex(); }
|
|
12453
|
+
set animationDuration(v) { this._animationDuration.set(v); }
|
|
12454
|
+
get animationDuration() { return this._animationDuration(); }
|
|
12455
|
+
set index(v) { this._index.set(v); }
|
|
12456
|
+
get index() { return this._index(); }
|
|
12457
|
+
set eventWidth(v) { this._eventWidth.set(v); }
|
|
12458
|
+
get eventWidth() { return this._eventWidth(); }
|
|
12459
|
+
set eventHeight(v) { this._eventHeight.set(v); }
|
|
12460
|
+
get eventHeight() { return this._eventHeight(); }
|
|
12461
|
+
set headerTemplate(v) { this._headerTemplate.set(v); }
|
|
12462
|
+
get headerTemplate() { return this._headerTemplate(); }
|
|
12463
|
+
set bodyTemplate(v) { this._bodyTemplate.set(v); }
|
|
12464
|
+
get bodyTemplate() { return this._bodyTemplate(); }
|
|
12465
|
+
set actionsTemplate(v) { this._actionsTemplate.set(v); }
|
|
12466
|
+
get actionsTemplate() { return this._actionsTemplate(); }
|
|
11747
12467
|
set calloutStyle(value) {
|
|
11748
12468
|
// applies only to horizontal orientation where the callout points upwards
|
|
11749
12469
|
if (!this.calloutElementRef || !this.calloutElementRef.nativeElement.classList.contains('k-callout-n')) {
|
|
@@ -11784,7 +12504,21 @@ class TimelineCardComponent {
|
|
|
11784
12504
|
}
|
|
11785
12505
|
calloutSvgIcon = chevronRightIcon;
|
|
11786
12506
|
calloutFontIcon = 'chevron-right';
|
|
11787
|
-
|
|
12507
|
+
_event = signal(undefined, ...(ngDevMode ? [{ debugName: "_event" }] : []));
|
|
12508
|
+
_expanded = signal(false, ...(ngDevMode ? [{ debugName: "_expanded" }] : []));
|
|
12509
|
+
_collapsible = signal(true, ...(ngDevMode ? [{ debugName: "_collapsible" }] : []));
|
|
12510
|
+
_reversed = signal(false, ...(ngDevMode ? [{ debugName: "_reversed" }] : []));
|
|
12511
|
+
_orientation = signal(undefined, ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
12512
|
+
_navigable = signal(undefined, ...(ngDevMode ? [{ debugName: "_navigable" }] : []));
|
|
12513
|
+
_tabIndex = signal(undefined, ...(ngDevMode ? [{ debugName: "_tabIndex" }] : []));
|
|
12514
|
+
_animationDuration = signal(undefined, ...(ngDevMode ? [{ debugName: "_animationDuration" }] : []));
|
|
12515
|
+
_index = signal(undefined, ...(ngDevMode ? [{ debugName: "_index" }] : []));
|
|
12516
|
+
_eventWidth = signal(undefined, ...(ngDevMode ? [{ debugName: "_eventWidth" }] : []));
|
|
12517
|
+
_eventHeight = signal(undefined, ...(ngDevMode ? [{ debugName: "_eventHeight" }] : []));
|
|
12518
|
+
_headerTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_headerTemplate" }] : []));
|
|
12519
|
+
_bodyTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_bodyTemplate" }] : []));
|
|
12520
|
+
_actionsTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_actionsTemplate" }] : []));
|
|
12521
|
+
animationState = 'collapsed';
|
|
11788
12522
|
animationInProgress = false;
|
|
11789
12523
|
constructor(element, timelineService, renderer) {
|
|
11790
12524
|
this.element = element;
|
|
@@ -11797,19 +12531,19 @@ class TimelineCardComponent {
|
|
|
11797
12531
|
ngOnChanges(changes) {
|
|
11798
12532
|
if (isChanged('collapsible', changes, false)) {
|
|
11799
12533
|
if (!this.collapsible) {
|
|
11800
|
-
this.
|
|
12534
|
+
this._expanded.set(true);
|
|
11801
12535
|
}
|
|
11802
12536
|
}
|
|
11803
12537
|
}
|
|
11804
12538
|
toggle() {
|
|
11805
12539
|
if (this.orientation === 'vertical') {
|
|
11806
|
-
this.
|
|
12540
|
+
this._expanded.set(this.collapsible ? !this.expanded : true);
|
|
11807
12541
|
this.timelineService.onToggle(this.index);
|
|
11808
12542
|
}
|
|
11809
12543
|
}
|
|
11810
12544
|
expand() {
|
|
11811
12545
|
if (!this.expanded) {
|
|
11812
|
-
this.
|
|
12546
|
+
this._expanded.set(true);
|
|
11813
12547
|
this.timelineService.onToggle(this.index);
|
|
11814
12548
|
}
|
|
11815
12549
|
}
|
|
@@ -11817,7 +12551,7 @@ class TimelineCardComponent {
|
|
|
11817
12551
|
if (!this.collapsible || !this.expanded) {
|
|
11818
12552
|
return;
|
|
11819
12553
|
}
|
|
11820
|
-
this.
|
|
12554
|
+
this._expanded.set(false);
|
|
11821
12555
|
this.timelineService.onToggle(this.index);
|
|
11822
12556
|
}
|
|
11823
12557
|
onActionClick(event) {
|
|
@@ -11854,7 +12588,6 @@ class TimelineCardComponent {
|
|
|
11854
12588
|
class="k-card-with-callout k-card-vertical"
|
|
11855
12589
|
(click)="toggle()"
|
|
11856
12590
|
[attr.role]="role"
|
|
11857
|
-
[attr.aria-label]="ariaCardLabel"
|
|
11858
12591
|
[attr.aria-live]="ariaLive"
|
|
11859
12592
|
[attr.aria-expanded]="ariaExpanded"
|
|
11860
12593
|
[attr.tabindex]="tabIndex"
|
|
@@ -11972,7 +12705,7 @@ class TimelineCardComponent {
|
|
|
11972
12705
|
animate('{{animationDuration}}ms')
|
|
11973
12706
|
], { params: { animationDuration: '400' } }),
|
|
11974
12707
|
])
|
|
11975
|
-
] });
|
|
12708
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11976
12709
|
}
|
|
11977
12710
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TimelineCardComponent, decorators: [{
|
|
11978
12711
|
type: Component,
|
|
@@ -11995,8 +12728,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
11995
12728
|
])
|
|
11996
12729
|
],
|
|
11997
12730
|
providers: [],
|
|
11998
|
-
exportAs: 'kendoTimelineCard',
|
|
11999
12731
|
selector: 'kendo-timeline-card',
|
|
12732
|
+
exportAs: 'kendoTimelineCard',
|
|
12733
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
12000
12734
|
template: `
|
|
12001
12735
|
<kendo-card
|
|
12002
12736
|
[ngStyle]="{ 'height': orientation === 'horizontal' ? eventHeight + 'px' : null }"
|
|
@@ -12004,7 +12738,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
12004
12738
|
class="k-card-with-callout k-card-vertical"
|
|
12005
12739
|
(click)="toggle()"
|
|
12006
12740
|
[attr.role]="role"
|
|
12007
|
-
[attr.aria-label]="ariaCardLabel"
|
|
12008
12741
|
[attr.aria-live]="ariaLive"
|
|
12009
12742
|
[attr.aria-expanded]="ariaExpanded"
|
|
12010
12743
|
[attr.tabindex]="tabIndex"
|
|
@@ -12166,58 +12899,112 @@ class TimelineHorizontalComponent {
|
|
|
12166
12899
|
renderer;
|
|
12167
12900
|
timelineService;
|
|
12168
12901
|
localization;
|
|
12169
|
-
events
|
|
12170
|
-
|
|
12171
|
-
|
|
12172
|
-
|
|
12173
|
-
|
|
12174
|
-
|
|
12175
|
-
|
|
12176
|
-
|
|
12177
|
-
|
|
12178
|
-
|
|
12179
|
-
|
|
12902
|
+
set events(v) { this._events.set(v); }
|
|
12903
|
+
get events() { return this._events(); }
|
|
12904
|
+
set alterMode(v) { this._alterMode.set(v); }
|
|
12905
|
+
get alterMode() { return this._alterMode(); }
|
|
12906
|
+
set collapsibleEvents(v) { this._collapsibleEvents.set(v); }
|
|
12907
|
+
get collapsibleEvents() { return this._collapsibleEvents(); }
|
|
12908
|
+
set navigable(v) { this._navigable.set(v); }
|
|
12909
|
+
get navigable() { return this._navigable(); }
|
|
12910
|
+
set showDateLabels(v) { this._showDateLabels.set(v); }
|
|
12911
|
+
get showDateLabels() { return this._showDateLabels(); }
|
|
12912
|
+
set animationDuration(v) { this._animationDuration.set(v); }
|
|
12913
|
+
get animationDuration() { return this._animationDuration(); }
|
|
12914
|
+
set eventHeight(v) { this._eventHeight.set(v); }
|
|
12915
|
+
get eventHeight() { return this._eventHeight(); }
|
|
12916
|
+
set dateFormat(v) { this._dateFormat.set(v); }
|
|
12917
|
+
get dateFormat() { return this._dateFormat(); }
|
|
12918
|
+
set headerTemplate(v) { this._headerTemplate.set(v); }
|
|
12919
|
+
get headerTemplate() { return this._headerTemplate(); }
|
|
12920
|
+
set bodyTemplate(v) { this._bodyTemplate.set(v); }
|
|
12921
|
+
get bodyTemplate() { return this._bodyTemplate(); }
|
|
12922
|
+
set actionsTemplate(v) { this._actionsTemplate.set(v); }
|
|
12923
|
+
get actionsTemplate() { return this._actionsTemplate(); }
|
|
12180
12924
|
cardElementRefs;
|
|
12181
12925
|
circleElementRefs;
|
|
12182
12926
|
flagElementRefs;
|
|
12183
12927
|
trackElementRef;
|
|
12184
12928
|
scrollableTrackElementRef;
|
|
12185
12929
|
cardComponents;
|
|
12186
|
-
get selectedEvent() {
|
|
12187
|
-
return this._selectedEvent;
|
|
12188
|
-
}
|
|
12930
|
+
get selectedEvent() { return this._selectedEvent(); }
|
|
12189
12931
|
set selectedEvent(value) {
|
|
12190
|
-
if (this._selectedEvent === value) {
|
|
12932
|
+
if (this._selectedEvent() === value) {
|
|
12191
12933
|
return;
|
|
12192
12934
|
}
|
|
12193
12935
|
const newSelectedIndex = this.events.findIndex(event => event === value);
|
|
12194
12936
|
if (newSelectedIndex === -1 && value !== null) {
|
|
12195
12937
|
return;
|
|
12196
12938
|
}
|
|
12197
|
-
this._selectedEvent
|
|
12198
|
-
this.
|
|
12199
|
-
this.
|
|
12200
|
-
}
|
|
12201
|
-
trackWrapWidth;
|
|
12202
|
-
|
|
12203
|
-
|
|
12939
|
+
this._selectedEvent.set(value);
|
|
12940
|
+
this._selectedEventIndex.set(newSelectedIndex);
|
|
12941
|
+
this._calloutStyle.set(this.calloutOffset);
|
|
12942
|
+
}
|
|
12943
|
+
get trackWrapWidth() { return this._trackWrapWidth; }
|
|
12944
|
+
set trackWrapWidth(v) { this._trackWrapWidth = v; }
|
|
12945
|
+
get scrollableTrackWidth() { return this._scrollableTrackWidth; }
|
|
12946
|
+
set scrollableTrackWidth(v) { this._scrollableTrackWidth = v; }
|
|
12947
|
+
get cardWidth() { return this._cardWidth; }
|
|
12948
|
+
set cardWidth(v) { this._cardWidth = v; }
|
|
12949
|
+
get calloutStyle() { return this._calloutStyle(); }
|
|
12950
|
+
set calloutStyle(v) { this._calloutStyle.set(v); }
|
|
12951
|
+
get animationState() { return this._animationState(); }
|
|
12952
|
+
set animationState(v) { this._animationState.set(v); }
|
|
12953
|
+
get translateValue() { return this._translateValue(); }
|
|
12954
|
+
set translateValue(v) { this._translateValue.set(v); }
|
|
12955
|
+
get eventsInInterval() { return this._eventsInInterval(); }
|
|
12956
|
+
set eventsInInterval(v) { this._eventsInInterval.set(v); }
|
|
12957
|
+
get selectedCardIndex() { return this._selectedCardIndex(); }
|
|
12958
|
+
set selectedCardIndex(v) { this._selectedCardIndex.set(v); }
|
|
12959
|
+
get selectedEventIndex() { return this._selectedEventIndex(); }
|
|
12960
|
+
set selectedEventIndex(v) { this._selectedEventIndex.set(v); }
|
|
12961
|
+
get tabFlex() { return this._tabFlex(); }
|
|
12962
|
+
set tabFlex(v) { this._tabFlex.set(v); }
|
|
12963
|
+
get tabWidth() { return this._tabWidth; }
|
|
12964
|
+
set tabWidth(v) { this._tabWidth = v; }
|
|
12965
|
+
get visibleTabsCount() { return this._visibleTabsCount(); }
|
|
12966
|
+
set visibleTabsCount(v) { this._visibleTabsCount.set(v); }
|
|
12967
|
+
get firstCircleInView() { return this._firstCircleInView(); }
|
|
12968
|
+
set firstCircleInView(v) { this._firstCircleInView.set(v); }
|
|
12969
|
+
get visibleEvents() { return this._visibleEvents; }
|
|
12970
|
+
set visibleEvents(v) { this._visibleEvents = v; }
|
|
12971
|
+
get trackItems() { return this._trackItems(); }
|
|
12972
|
+
set trackItems(v) { this._trackItems.set(v); }
|
|
12973
|
+
get previousTitle() { return this._previousTitle(); }
|
|
12974
|
+
set previousTitle(v) { this._previousTitle.set(v); }
|
|
12975
|
+
get nextTitle() { return this._nextTitle(); }
|
|
12976
|
+
set nextTitle(v) { this._nextTitle.set(v); }
|
|
12204
12977
|
svgLeftIcon = chevronLeftIcon;
|
|
12205
12978
|
svgRightIcon = chevronRightIcon;
|
|
12206
|
-
|
|
12207
|
-
|
|
12208
|
-
|
|
12209
|
-
|
|
12210
|
-
|
|
12211
|
-
|
|
12212
|
-
|
|
12213
|
-
|
|
12214
|
-
|
|
12215
|
-
|
|
12216
|
-
|
|
12217
|
-
|
|
12218
|
-
|
|
12219
|
-
|
|
12220
|
-
|
|
12979
|
+
_selectedEvent = signal(null, ...(ngDevMode ? [{ debugName: "_selectedEvent" }] : []));
|
|
12980
|
+
_calloutStyle = signal({}, ...(ngDevMode ? [{ debugName: "_calloutStyle" }] : []));
|
|
12981
|
+
_animationState = signal('center', ...(ngDevMode ? [{ debugName: "_animationState" }] : []));
|
|
12982
|
+
_translateValue = signal(0, ...(ngDevMode ? [{ debugName: "_translateValue" }] : []));
|
|
12983
|
+
_eventsInInterval = signal([0, 1, 2], ...(ngDevMode ? [{ debugName: "_eventsInInterval" }] : []));
|
|
12984
|
+
_selectedCardIndex = signal(0, ...(ngDevMode ? [{ debugName: "_selectedCardIndex" }] : []));
|
|
12985
|
+
_selectedEventIndex = signal(undefined, ...(ngDevMode ? [{ debugName: "_selectedEventIndex" }] : []));
|
|
12986
|
+
_tabFlex = signal(undefined, ...(ngDevMode ? [{ debugName: "_tabFlex" }] : []));
|
|
12987
|
+
_visibleTabsCount = signal(undefined, ...(ngDevMode ? [{ debugName: "_visibleTabsCount" }] : []));
|
|
12988
|
+
_firstCircleInView = signal(0, ...(ngDevMode ? [{ debugName: "_firstCircleInView" }] : []));
|
|
12989
|
+
_trackItems = signal([], ...(ngDevMode ? [{ debugName: "_trackItems" }] : []));
|
|
12990
|
+
_previousTitle = signal('previous', ...(ngDevMode ? [{ debugName: "_previousTitle" }] : []));
|
|
12991
|
+
_nextTitle = signal('next', ...(ngDevMode ? [{ debugName: "_nextTitle" }] : []));
|
|
12992
|
+
_events = signal([], ...(ngDevMode ? [{ debugName: "_events" }] : []));
|
|
12993
|
+
_alterMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_alterMode" }] : []));
|
|
12994
|
+
_collapsibleEvents = signal(undefined, ...(ngDevMode ? [{ debugName: "_collapsibleEvents" }] : []));
|
|
12995
|
+
_navigable = signal(undefined, ...(ngDevMode ? [{ debugName: "_navigable" }] : []));
|
|
12996
|
+
_showDateLabels = signal(undefined, ...(ngDevMode ? [{ debugName: "_showDateLabels" }] : []));
|
|
12997
|
+
_animationDuration = signal(undefined, ...(ngDevMode ? [{ debugName: "_animationDuration" }] : []));
|
|
12998
|
+
_eventHeight = signal(undefined, ...(ngDevMode ? [{ debugName: "_eventHeight" }] : []));
|
|
12999
|
+
_dateFormat = signal(undefined, ...(ngDevMode ? [{ debugName: "_dateFormat" }] : []));
|
|
13000
|
+
_headerTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_headerTemplate" }] : []));
|
|
13001
|
+
_bodyTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_bodyTemplate" }] : []));
|
|
13002
|
+
_actionsTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_actionsTemplate" }] : []));
|
|
13003
|
+
_trackWrapWidth;
|
|
13004
|
+
_scrollableTrackWidth;
|
|
13005
|
+
_cardWidth;
|
|
13006
|
+
_tabWidth = DEFAULT_TAB_WIDTH;
|
|
13007
|
+
_visibleEvents = [];
|
|
12221
13008
|
subscriptions = new Subscription();
|
|
12222
13009
|
constructor(cdr, _zone, renderer, timelineService, localization) {
|
|
12223
13010
|
this.cdr = cdr;
|
|
@@ -12546,7 +13333,6 @@ class TimelineHorizontalComponent {
|
|
|
12546
13333
|
this.selectedCardIndex = this.getOtherSelectedCardIndex(direction);
|
|
12547
13334
|
this.focusTrackItem(this.selectedEventIndex);
|
|
12548
13335
|
this.animateCards();
|
|
12549
|
-
this.cdr.markForCheck();
|
|
12550
13336
|
}
|
|
12551
13337
|
}
|
|
12552
13338
|
navigateToInterval(start, selectedIndex = 0, selectFirst = false, selectLast = false) {
|
|
@@ -12567,10 +13353,9 @@ class TimelineHorizontalComponent {
|
|
|
12567
13353
|
this.selectedEvent = this.events[selectedIndex];
|
|
12568
13354
|
}
|
|
12569
13355
|
this.selectedCardIndex = this.getOtherSelectedCardIndex(forward);
|
|
12570
|
-
this.cdr.detectChanges();
|
|
12571
13356
|
this.focusTrackItem(this.selectedEventIndex);
|
|
12572
13357
|
this.animateCards();
|
|
12573
|
-
this.
|
|
13358
|
+
this._calloutStyle.set(this.calloutOffset);
|
|
12574
13359
|
this.cdr.markForCheck();
|
|
12575
13360
|
}
|
|
12576
13361
|
animateCards() {
|
|
@@ -12591,7 +13376,7 @@ class TimelineHorizontalComponent {
|
|
|
12591
13376
|
this.tabFlex = 100 / this.visibleTabsCount;
|
|
12592
13377
|
this.circleElementRefs.forEach(item => this.renderer.setStyle(item.nativeElement, 'flex', `1 0 ${this.tabFlex}%`));
|
|
12593
13378
|
this.flagElementRefs.forEach(item => this.renderer.setStyle(item.nativeElement, 'flex', `1 0 ${this.tabFlex}%`));
|
|
12594
|
-
this.cdr.
|
|
13379
|
+
this.cdr.markForCheck();
|
|
12595
13380
|
this.visibleEvents = this.trackItems
|
|
12596
13381
|
.slice(this.firstCircleInView, this.firstCircleInView + this.visibleTabsCount)
|
|
12597
13382
|
.filter(event => !event.isFlag);
|
|
@@ -12603,12 +13388,11 @@ class TimelineHorizontalComponent {
|
|
|
12603
13388
|
}
|
|
12604
13389
|
l10nChange() {
|
|
12605
13390
|
if (this.localization.get('previous')) {
|
|
12606
|
-
this.
|
|
13391
|
+
this._previousTitle.set(this.localization.get('previous'));
|
|
12607
13392
|
}
|
|
12608
13393
|
if (this.localization.get('next')) {
|
|
12609
|
-
this.
|
|
13394
|
+
this._nextTitle.set(this.localization.get('next'));
|
|
12610
13395
|
}
|
|
12611
|
-
this.cdr.markForCheck();
|
|
12612
13396
|
}
|
|
12613
13397
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TimelineHorizontalComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: TimelineService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
12614
13398
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.27", type: TimelineHorizontalComponent, isStandalone: true, selector: "kendo-timeline-horizontal", inputs: { events: "events", alterMode: "alterMode", collapsibleEvents: "collapsibleEvents", navigable: "navigable", showDateLabels: "showDateLabels", animationDuration: "animationDuration", eventHeight: "eventHeight", dateFormat: "dateFormat", headerTemplate: "headerTemplate", bodyTemplate: "bodyTemplate", actionsTemplate: "actionsTemplate" }, providers: [], viewQueries: [{ propertyName: "trackElementRef", first: true, predicate: ["track"], descendants: true }, { propertyName: "scrollableTrackElementRef", first: true, predicate: ["scrollableTrack"], descendants: true }, { propertyName: "cardElementRefs", predicate: ["card"], descendants: true, read: ElementRef }, { propertyName: "circleElementRefs", predicate: ["trackCircle"], descendants: true }, { propertyName: "flagElementRefs", predicate: ["trackFlag"], descendants: true }, { propertyName: "cardComponents", predicate: TimelineCardComponent, descendants: true }], exportAs: ["kendoTimelineHorizontal"], usesOnChanges: true, ngImport: i0, template: `
|
|
@@ -12738,11 +13522,15 @@ class TimelineHorizontalComponent {
|
|
|
12738
13522
|
animate('{{animationDuration}}ms', style({ transform: `translateX(100%)` }))
|
|
12739
13523
|
], { params: { animationDuration: '400' } })
|
|
12740
13524
|
])
|
|
12741
|
-
] });
|
|
13525
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
12742
13526
|
}
|
|
12743
13527
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TimelineHorizontalComponent, decorators: [{
|
|
12744
13528
|
type: Component,
|
|
12745
13529
|
args: [{
|
|
13530
|
+
providers: [],
|
|
13531
|
+
selector: 'kendo-timeline-horizontal',
|
|
13532
|
+
exportAs: 'kendoTimelineHorizontal',
|
|
13533
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
12746
13534
|
animations: [
|
|
12747
13535
|
trigger('trackSlide', [
|
|
12748
13536
|
state('left', style({
|
|
@@ -12764,9 +13552,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
12764
13552
|
], { params: { animationDuration: '400' } })
|
|
12765
13553
|
])
|
|
12766
13554
|
],
|
|
12767
|
-
providers: [],
|
|
12768
|
-
exportAs: 'kendoTimelineHorizontal',
|
|
12769
|
-
selector: 'kendo-timeline-horizontal',
|
|
12770
13555
|
template: `
|
|
12771
13556
|
<div class="k-timeline-track-wrap" #track>
|
|
12772
13557
|
<button
|
|
@@ -12925,21 +13710,43 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
12925
13710
|
*/
|
|
12926
13711
|
class TimelineVerticalComponent {
|
|
12927
13712
|
renderer;
|
|
12928
|
-
events
|
|
12929
|
-
|
|
12930
|
-
|
|
12931
|
-
|
|
12932
|
-
|
|
12933
|
-
|
|
12934
|
-
|
|
12935
|
-
|
|
12936
|
-
|
|
12937
|
-
|
|
12938
|
-
|
|
13713
|
+
set events(v) { this._events.set(v); }
|
|
13714
|
+
get events() { return this._events(); }
|
|
13715
|
+
set alterMode(v) { this._alterMode.set(v); }
|
|
13716
|
+
get alterMode() { return this._alterMode(); }
|
|
13717
|
+
set collapsibleEvents(v) { this._collapsibleEvents.set(v); }
|
|
13718
|
+
get collapsibleEvents() { return this._collapsibleEvents(); }
|
|
13719
|
+
set navigable(v) { this._navigable.set(v); }
|
|
13720
|
+
get navigable() { return this._navigable(); }
|
|
13721
|
+
set showDateLabels(v) { this._showDateLabels.set(v); }
|
|
13722
|
+
get showDateLabels() { return this._showDateLabels(); }
|
|
13723
|
+
set animationDuration(v) { this._animationDuration.set(v); }
|
|
13724
|
+
get animationDuration() { return this._animationDuration(); }
|
|
13725
|
+
set eventWidth(v) { this._eventWidth.set(v); }
|
|
13726
|
+
get eventWidth() { return this._eventWidth(); }
|
|
13727
|
+
set dateFormat(v) { this._dateFormat.set(v); }
|
|
13728
|
+
get dateFormat() { return this._dateFormat(); }
|
|
13729
|
+
set headerTemplate(v) { this._headerTemplate.set(v); }
|
|
13730
|
+
get headerTemplate() { return this._headerTemplate(); }
|
|
13731
|
+
set bodyTemplate(v) { this._bodyTemplate.set(v); }
|
|
13732
|
+
get bodyTemplate() { return this._bodyTemplate(); }
|
|
13733
|
+
set actionsTemplate(v) { this._actionsTemplate.set(v); }
|
|
13734
|
+
get actionsTemplate() { return this._actionsTemplate(); }
|
|
12939
13735
|
cards;
|
|
12940
13736
|
dateElementRefs;
|
|
12941
13737
|
innerDateElementRefs;
|
|
12942
13738
|
subscriptions = new Subscription();
|
|
13739
|
+
_events = signal([], ...(ngDevMode ? [{ debugName: "_events" }] : []));
|
|
13740
|
+
_alterMode = signal(undefined, ...(ngDevMode ? [{ debugName: "_alterMode" }] : []));
|
|
13741
|
+
_collapsibleEvents = signal(undefined, ...(ngDevMode ? [{ debugName: "_collapsibleEvents" }] : []));
|
|
13742
|
+
_navigable = signal(undefined, ...(ngDevMode ? [{ debugName: "_navigable" }] : []));
|
|
13743
|
+
_showDateLabels = signal(undefined, ...(ngDevMode ? [{ debugName: "_showDateLabels" }] : []));
|
|
13744
|
+
_animationDuration = signal(undefined, ...(ngDevMode ? [{ debugName: "_animationDuration" }] : []));
|
|
13745
|
+
_eventWidth = signal(undefined, ...(ngDevMode ? [{ debugName: "_eventWidth" }] : []));
|
|
13746
|
+
_dateFormat = signal(undefined, ...(ngDevMode ? [{ debugName: "_dateFormat" }] : []));
|
|
13747
|
+
_headerTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_headerTemplate" }] : []));
|
|
13748
|
+
_bodyTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_bodyTemplate" }] : []));
|
|
13749
|
+
_actionsTemplate = signal(undefined, ...(ngDevMode ? [{ debugName: "_actionsTemplate" }] : []));
|
|
12943
13750
|
constructor(renderer) {
|
|
12944
13751
|
this.renderer = renderer;
|
|
12945
13752
|
}
|
|
@@ -12958,7 +13765,7 @@ class TimelineVerticalComponent {
|
|
|
12958
13765
|
if (index < 0 || index >= this.cards.length) {
|
|
12959
13766
|
return;
|
|
12960
13767
|
}
|
|
12961
|
-
this.cards.get(index)
|
|
13768
|
+
this.cards.get(index)?.expand();
|
|
12962
13769
|
}
|
|
12963
13770
|
collapse(index) {
|
|
12964
13771
|
if (index < 0 || index >= this.cards.length) {
|
|
@@ -13026,14 +13833,15 @@ class TimelineVerticalComponent {
|
|
|
13026
13833
|
}
|
|
13027
13834
|
</ul>
|
|
13028
13835
|
}
|
|
13029
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: TimelineCardComponent, selector: "kendo-timeline-card", inputs: ["event", "expanded", "collapsible", "reversed", "orientation", "navigable", "tabIndex", "animationDuration", "index", "eventWidth", "eventHeight", "headerTemplate", "bodyTemplate", "actionsTemplate", "calloutStyle"], exportAs: ["kendoTimelineCard"] }, { kind: "pipe", type: DatePipe, name: "kendoDate" }] });
|
|
13836
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: TimelineCardComponent, selector: "kendo-timeline-card", inputs: ["event", "expanded", "collapsible", "reversed", "orientation", "navigable", "tabIndex", "animationDuration", "index", "eventWidth", "eventHeight", "headerTemplate", "bodyTemplate", "actionsTemplate", "calloutStyle"], exportAs: ["kendoTimelineCard"] }, { kind: "pipe", type: DatePipe, name: "kendoDate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
13030
13837
|
}
|
|
13031
13838
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TimelineVerticalComponent, decorators: [{
|
|
13032
13839
|
type: Component,
|
|
13033
13840
|
args: [{
|
|
13034
13841
|
providers: [],
|
|
13035
|
-
exportAs: 'kendoTimelineVertical',
|
|
13036
13842
|
selector: 'kendo-timeline-vertical',
|
|
13843
|
+
exportAs: 'kendoTimelineVertical',
|
|
13844
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
13037
13845
|
template: `
|
|
13038
13846
|
@if (events && events.length > 0) {
|
|
13039
13847
|
<ul>
|
|
@@ -13162,11 +13970,11 @@ class TimelineComponent {
|
|
|
13162
13970
|
return;
|
|
13163
13971
|
}
|
|
13164
13972
|
this.originalData = events;
|
|
13165
|
-
this._events
|
|
13973
|
+
this._events.set(processItems(this.originalData, this.modelFields));
|
|
13166
13974
|
this.updateEvents();
|
|
13167
13975
|
}
|
|
13168
13976
|
get events() {
|
|
13169
|
-
return this._events;
|
|
13977
|
+
return this._events();
|
|
13170
13978
|
}
|
|
13171
13979
|
/**
|
|
13172
13980
|
* The names of the model fields from which the Timeline will read its data.
|
|
@@ -13174,7 +13982,8 @@ class TimelineComponent {
|
|
|
13174
13982
|
set modelFields(value) {
|
|
13175
13983
|
this._modelFields = { ...defaultModelFields, ...value };
|
|
13176
13984
|
if (this.originalData) {
|
|
13177
|
-
this.
|
|
13985
|
+
this._events.set(processItems(this.originalData, this._modelFields));
|
|
13986
|
+
this.updateEvents();
|
|
13178
13987
|
}
|
|
13179
13988
|
}
|
|
13180
13989
|
get modelFields() {
|
|
@@ -13185,20 +13994,35 @@ class TimelineComponent {
|
|
|
13185
13994
|
*
|
|
13186
13995
|
* @default 'vertical'
|
|
13187
13996
|
*/
|
|
13188
|
-
orientation
|
|
13997
|
+
set orientation(value) {
|
|
13998
|
+
this._orientation.set(value);
|
|
13999
|
+
}
|
|
14000
|
+
get orientation() {
|
|
14001
|
+
return this._orientation();
|
|
14002
|
+
}
|
|
13189
14003
|
/**
|
|
13190
14004
|
* Specifies whether to render events alternatingly on both sides of the axis.
|
|
13191
14005
|
* Applicable when `orientation` is set to `vertical`.
|
|
13192
14006
|
*
|
|
13193
14007
|
* @default false
|
|
13194
14008
|
*/
|
|
13195
|
-
alterMode
|
|
14009
|
+
set alterMode(value) {
|
|
14010
|
+
this._alterMode.set(value);
|
|
14011
|
+
}
|
|
14012
|
+
get alterMode() {
|
|
14013
|
+
return this._alterMode();
|
|
14014
|
+
}
|
|
13196
14015
|
/**
|
|
13197
14016
|
* Specifies whether the event cards can be collapsed.
|
|
13198
14017
|
*
|
|
13199
14018
|
* @default true
|
|
13200
14019
|
*/
|
|
13201
|
-
collapsibleEvents
|
|
14020
|
+
set collapsibleEvents(value) {
|
|
14021
|
+
this._collapsibleEvents.set(value);
|
|
14022
|
+
}
|
|
14023
|
+
get collapsibleEvents() {
|
|
14024
|
+
return this._collapsibleEvents();
|
|
14025
|
+
}
|
|
13202
14026
|
/**
|
|
13203
14027
|
* Specifies whether the user can use dedicated shortcuts to interact with the Timeline.
|
|
13204
14028
|
*
|
|
@@ -13207,20 +14031,35 @@ class TimelineComponent {
|
|
|
13207
14031
|
* @remarks
|
|
13208
14032
|
* This property is related to accessibility.
|
|
13209
14033
|
*/
|
|
13210
|
-
navigable
|
|
14034
|
+
set navigable(value) {
|
|
14035
|
+
this._navigable.set(value);
|
|
14036
|
+
}
|
|
14037
|
+
get navigable() {
|
|
14038
|
+
return this._navigable();
|
|
14039
|
+
}
|
|
13211
14040
|
/**
|
|
13212
14041
|
* Specifies whether an event's date label will be visible.
|
|
13213
14042
|
*
|
|
13214
14043
|
* @default true
|
|
13215
14044
|
*/
|
|
13216
|
-
showDateLabels
|
|
14045
|
+
set showDateLabels(value) {
|
|
14046
|
+
this._showDateLabels.set(value);
|
|
14047
|
+
}
|
|
14048
|
+
get showDateLabels() {
|
|
14049
|
+
return this._showDateLabels();
|
|
14050
|
+
}
|
|
13217
14051
|
/**
|
|
13218
14052
|
* Specifies the time for sliding to the next event in `horizontal` mode and the time for collapsing the event in `vertical` mode.
|
|
13219
14053
|
* The default animation duration values are `300ms` for `horizontal` mode and `400ms` for `vertical` mode.
|
|
13220
14054
|
*
|
|
13221
14055
|
* @default true
|
|
13222
14056
|
*/
|
|
13223
|
-
animation
|
|
14057
|
+
set animation(value) {
|
|
14058
|
+
this._animation.set(value);
|
|
14059
|
+
}
|
|
14060
|
+
get animation() {
|
|
14061
|
+
return this._animation();
|
|
14062
|
+
}
|
|
13224
14063
|
/**
|
|
13225
14064
|
* Specifies the order of the Timeline events.
|
|
13226
14065
|
* `asc` - chronological order
|
|
@@ -13229,14 +14068,14 @@ class TimelineComponent {
|
|
|
13229
14068
|
* @default 'asc'
|
|
13230
14069
|
*/
|
|
13231
14070
|
set eventsOrder(order) {
|
|
13232
|
-
if (order === this._eventsOrder) {
|
|
14071
|
+
if (order === this._eventsOrder()) {
|
|
13233
14072
|
return;
|
|
13234
14073
|
}
|
|
13235
|
-
this._eventsOrder
|
|
14074
|
+
this._eventsOrder.set(order);
|
|
13236
14075
|
this.updateEvents();
|
|
13237
14076
|
}
|
|
13238
14077
|
get eventsOrder() {
|
|
13239
|
-
return this._eventsOrder;
|
|
14078
|
+
return this._eventsOrder();
|
|
13240
14079
|
}
|
|
13241
14080
|
/**
|
|
13242
14081
|
* Sets a specific width for the event.
|
|
@@ -13245,14 +14084,14 @@ class TimelineComponent {
|
|
|
13245
14084
|
* @default 400
|
|
13246
14085
|
*/
|
|
13247
14086
|
get eventWidth() {
|
|
13248
|
-
return this._eventWidth;
|
|
14087
|
+
return this._eventWidth();
|
|
13249
14088
|
}
|
|
13250
14089
|
set eventWidth(value) {
|
|
13251
14090
|
if (value) {
|
|
13252
|
-
this._eventWidth
|
|
14091
|
+
this._eventWidth.set(value);
|
|
13253
14092
|
}
|
|
13254
14093
|
else {
|
|
13255
|
-
this._eventWidth
|
|
14094
|
+
this._eventWidth.set(DEFAULT_EVENT_WIDTH);
|
|
13256
14095
|
}
|
|
13257
14096
|
}
|
|
13258
14097
|
/**
|
|
@@ -13262,14 +14101,14 @@ class TimelineComponent {
|
|
|
13262
14101
|
* @default 600
|
|
13263
14102
|
*/
|
|
13264
14103
|
get eventHeight() {
|
|
13265
|
-
return this._eventHeight;
|
|
14104
|
+
return this._eventHeight();
|
|
13266
14105
|
}
|
|
13267
14106
|
set eventHeight(value) {
|
|
13268
14107
|
if (value) {
|
|
13269
|
-
this._eventHeight
|
|
14108
|
+
this._eventHeight.set(value);
|
|
13270
14109
|
}
|
|
13271
14110
|
else {
|
|
13272
|
-
this._eventHeight
|
|
14111
|
+
this._eventHeight.set(DEFAULT_EVENT_HEIGHT);
|
|
13273
14112
|
}
|
|
13274
14113
|
}
|
|
13275
14114
|
/**
|
|
@@ -13291,14 +14130,14 @@ class TimelineComponent {
|
|
|
13291
14130
|
*/
|
|
13292
14131
|
set dateFormat(value) {
|
|
13293
14132
|
if (isPresent$1(value) && value !== '') {
|
|
13294
|
-
this._dateFormat
|
|
14133
|
+
this._dateFormat.set(value);
|
|
13295
14134
|
}
|
|
13296
14135
|
else {
|
|
13297
|
-
this._dateFormat
|
|
14136
|
+
this._dateFormat.set(DEFAULT_DATE_FORMAT);
|
|
13298
14137
|
}
|
|
13299
14138
|
}
|
|
13300
14139
|
get dateFormat() {
|
|
13301
|
-
return this._dateFormat;
|
|
14140
|
+
return this._dateFormat();
|
|
13302
14141
|
}
|
|
13303
14142
|
hostClass = true;
|
|
13304
14143
|
get verticalClass() {
|
|
@@ -13359,13 +14198,19 @@ class TimelineComponent {
|
|
|
13359
14198
|
* @hidden
|
|
13360
14199
|
*/
|
|
13361
14200
|
actionsTemplate;
|
|
13362
|
-
_events = [];
|
|
14201
|
+
_events = signal([], ...(ngDevMode ? [{ debugName: "_events" }] : []));
|
|
13363
14202
|
_modelFields = defaultModelFields;
|
|
13364
|
-
|
|
13365
|
-
|
|
13366
|
-
|
|
14203
|
+
_orientation = signal('vertical', ...(ngDevMode ? [{ debugName: "_orientation" }] : []));
|
|
14204
|
+
_alterMode = signal(false, ...(ngDevMode ? [{ debugName: "_alterMode" }] : []));
|
|
14205
|
+
_collapsibleEvents = signal(true, ...(ngDevMode ? [{ debugName: "_collapsibleEvents" }] : []));
|
|
14206
|
+
_navigable = signal(true, ...(ngDevMode ? [{ debugName: "_navigable" }] : []));
|
|
14207
|
+
_showDateLabels = signal(true, ...(ngDevMode ? [{ debugName: "_showDateLabels" }] : []));
|
|
14208
|
+
_animation = signal(undefined, ...(ngDevMode ? [{ debugName: "_animation" }] : []));
|
|
14209
|
+
_eventWidth = signal(DEFAULT_EVENT_WIDTH, ...(ngDevMode ? [{ debugName: "_eventWidth" }] : []));
|
|
14210
|
+
_eventHeight = signal(DEFAULT_EVENT_HEIGHT, ...(ngDevMode ? [{ debugName: "_eventHeight" }] : []));
|
|
14211
|
+
_dateFormat = signal(DEFAULT_DATE_FORMAT, ...(ngDevMode ? [{ debugName: "_dateFormat" }] : []));
|
|
13367
14212
|
originalData = [];
|
|
13368
|
-
_eventsOrder = 'asc';
|
|
14213
|
+
_eventsOrder = signal('asc', ...(ngDevMode ? [{ debugName: "_eventsOrder" }] : []));
|
|
13369
14214
|
subscriptions = new Subscription();
|
|
13370
14215
|
constructor(timelineService) {
|
|
13371
14216
|
this.timelineService = timelineService;
|
|
@@ -13413,13 +14258,13 @@ class TimelineComponent {
|
|
|
13413
14258
|
this.timelineVertical?.collapse(index);
|
|
13414
14259
|
}
|
|
13415
14260
|
updateEvents() {
|
|
13416
|
-
const sortOrder = this._eventsOrder === 'asc' ? 1 : -1;
|
|
13417
|
-
|
|
14261
|
+
const sortOrder = this._eventsOrder() === 'asc' ? 1 : -1;
|
|
14262
|
+
const sorted = [...this._events()].sort((a, b) => {
|
|
13418
14263
|
return sortOrder * (a.date.getTime() - b.date.getTime());
|
|
13419
14264
|
});
|
|
13420
|
-
if (
|
|
13421
|
-
let flag =
|
|
13422
|
-
|
|
14265
|
+
if (sorted.length > 0) {
|
|
14266
|
+
let flag = sorted[0].date.getFullYear() - sortOrder;
|
|
14267
|
+
sorted.forEach((event) => {
|
|
13423
14268
|
if (event.date.getFullYear() === flag) {
|
|
13424
14269
|
event.flag = null;
|
|
13425
14270
|
}
|
|
@@ -13429,6 +14274,7 @@ class TimelineComponent {
|
|
|
13429
14274
|
}
|
|
13430
14275
|
});
|
|
13431
14276
|
}
|
|
14277
|
+
this._events.set(sorted);
|
|
13432
14278
|
}
|
|
13433
14279
|
initTemplates() {
|
|
13434
14280
|
this.headerTemplate = this.cardHeaderTemplate?.first;
|
|
@@ -13495,11 +14341,14 @@ class TimelineComponent {
|
|
|
13495
14341
|
>
|
|
13496
14342
|
</kendo-timeline-horizontal>
|
|
13497
14343
|
}
|
|
13498
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedTimelineMessagesDirective, selector: "[kendoTimelineLocalizedMessages]" }, { kind: "component", type: TimelineVerticalComponent, selector: "kendo-timeline-vertical", inputs: ["events", "alterMode", "collapsibleEvents", "navigable", "showDateLabels", "animationDuration", "eventWidth", "dateFormat", "headerTemplate", "bodyTemplate", "actionsTemplate"], exportAs: ["kendoTimelineVertical"] }, { kind: "component", type: TimelineHorizontalComponent, selector: "kendo-timeline-horizontal", inputs: ["events", "alterMode", "collapsibleEvents", "navigable", "showDateLabels", "animationDuration", "eventHeight", "dateFormat", "headerTemplate", "bodyTemplate", "actionsTemplate"], exportAs: ["kendoTimelineHorizontal"] }] });
|
|
14344
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedTimelineMessagesDirective, selector: "[kendoTimelineLocalizedMessages]" }, { kind: "component", type: TimelineVerticalComponent, selector: "kendo-timeline-vertical", inputs: ["events", "alterMode", "collapsibleEvents", "navigable", "showDateLabels", "animationDuration", "eventWidth", "dateFormat", "headerTemplate", "bodyTemplate", "actionsTemplate"], exportAs: ["kendoTimelineVertical"] }, { kind: "component", type: TimelineHorizontalComponent, selector: "kendo-timeline-horizontal", inputs: ["events", "alterMode", "collapsibleEvents", "navigable", "showDateLabels", "animationDuration", "eventHeight", "dateFormat", "headerTemplate", "bodyTemplate", "actionsTemplate"], exportAs: ["kendoTimelineHorizontal"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
13499
14345
|
}
|
|
13500
14346
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImport: i0, type: TimelineComponent, decorators: [{
|
|
13501
14347
|
type: Component,
|
|
13502
14348
|
args: [{
|
|
14349
|
+
selector: 'kendo-timeline',
|
|
14350
|
+
exportAs: 'kendoTimeline',
|
|
14351
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
13503
14352
|
providers: [
|
|
13504
14353
|
TimelineService,
|
|
13505
14354
|
LocalizationService,
|
|
@@ -13509,8 +14358,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.27", ngImpo
|
|
|
13509
14358
|
},
|
|
13510
14359
|
provideComponentName('timeline')
|
|
13511
14360
|
],
|
|
13512
|
-
exportAs: 'kendoTimeline',
|
|
13513
|
-
selector: 'kendo-timeline',
|
|
13514
14361
|
template: `
|
|
13515
14362
|
<ng-container kendoTimelineLocalizedMessages
|
|
13516
14363
|
i18n-previous="kendo.timeline.previous|The title of the previous button in horizontal orientation."
|