@progress/kendo-angular-navigation 19.0.0-develop.1 → 19.0.0-develop.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/actionsheet/actionsheet-view.component.d.ts +32 -0
- package/actionsheet/actionsheet.component.d.ts +66 -7
- package/actionsheet/models/actionsheet-action-layout.d.ts +34 -0
- package/actionsheet/models/actionsheet-action.d.ts +64 -0
- package/actionsheet/models/index.d.ts +2 -0
- package/actionsheet.module.d.ts +7 -6
- package/directives.d.ts +3 -2
- package/esm2022/actionsheet/actionsheet-view.component.mjs +145 -0
- package/esm2022/actionsheet/actionsheet.component.mjs +255 -112
- package/esm2022/actionsheet/models/actionsheet-action-layout.mjs +5 -0
- package/esm2022/actionsheet/models/actionsheet-action.mjs +5 -0
- package/esm2022/actionsheet.module.mjs +7 -6
- package/esm2022/directives.mjs +2 -0
- package/esm2022/index.mjs +1 -0
- package/esm2022/navigation.module.mjs +15 -14
- package/esm2022/package-metadata.mjs +2 -2
- package/fesm2022/progress-kendo-angular-navigation.mjs +402 -124
- package/index.d.ts +2 -1
- package/navigation.module.d.ts +14 -13
- package/package.json +6 -6
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { ChangeDetectorRef, Component, ContentChild, ElementRef, EventEmitter, HostBinding, Input, NgZone, Output, Renderer2, ViewChild } from '@angular/core';
|
|
6
|
-
import { NgIf, NgClass, NgTemplateOutlet } from '@angular/common';
|
|
5
|
+
import { ChangeDetectorRef, Component, ContentChild, ContentChildren, ElementRef, EventEmitter, HostBinding, Input, NgZone, Output, Renderer2, ViewChild, QueryList, forwardRef } from '@angular/core';
|
|
6
|
+
import { NgIf, NgClass, NgTemplateOutlet, NgFor, NgStyle } from '@angular/common';
|
|
7
7
|
import { validatePackage } from '@progress/kendo-licensing';
|
|
8
8
|
import { packageMetadata } from '../package-metadata';
|
|
9
9
|
import { Subscription } from 'rxjs';
|
|
@@ -15,12 +15,14 @@ import { AnimationBuilder } from '@angular/animations';
|
|
|
15
15
|
import { slideDown, slideUp } from './animation/animations';
|
|
16
16
|
import { take } from 'rxjs/operators';
|
|
17
17
|
import { ActionSheetListComponent } from './list.component';
|
|
18
|
+
import { ButtonDirective } from '@progress/kendo-angular-buttons';
|
|
19
|
+
import { ActionSheetViewComponent } from './actionsheet-view.component';
|
|
18
20
|
import * as i0 from "@angular/core";
|
|
19
21
|
import * as i1 from "@progress/kendo-angular-l10n";
|
|
20
22
|
import * as i2 from "@angular/animations";
|
|
21
23
|
const DEFAULT_ANIMATION_CONFIG = { duration: 300 };
|
|
22
24
|
/**
|
|
23
|
-
* Represents the [Kendo UI ActionSheet component for Angular](
|
|
25
|
+
* Represents the [Kendo UI ActionSheet component for Angular](slug:overview_actionsheet).
|
|
24
26
|
* Used to display a set of choices related to a task the user initiates.
|
|
25
27
|
*/
|
|
26
28
|
export class ActionSheetComponent {
|
|
@@ -30,6 +32,10 @@ export class ActionSheetComponent {
|
|
|
30
32
|
localizationService;
|
|
31
33
|
builder;
|
|
32
34
|
cdr;
|
|
35
|
+
/**
|
|
36
|
+
* @hidden
|
|
37
|
+
*/
|
|
38
|
+
currentView = 1;
|
|
33
39
|
/**
|
|
34
40
|
* @hidden
|
|
35
41
|
*/
|
|
@@ -40,6 +46,24 @@ export class ActionSheetComponent {
|
|
|
40
46
|
* @hidden
|
|
41
47
|
*/
|
|
42
48
|
direction;
|
|
49
|
+
/**
|
|
50
|
+
* Specifies the ActionSheet action buttons.
|
|
51
|
+
*/
|
|
52
|
+
actions;
|
|
53
|
+
/**
|
|
54
|
+
* Specifies the layout of the action buttons.
|
|
55
|
+
* By default, the action buttons are rendered horizontally and stretched.
|
|
56
|
+
*/
|
|
57
|
+
actionsLayout = {
|
|
58
|
+
orientation: 'horizontal',
|
|
59
|
+
alignment: 'stretched'
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Specifies if the ActionSheet is closed on overlay click.
|
|
63
|
+
*
|
|
64
|
+
* @default false
|
|
65
|
+
*/
|
|
66
|
+
overlayClickClose = false;
|
|
43
67
|
/**
|
|
44
68
|
* Specifies the text that is rendered as title.
|
|
45
69
|
*/
|
|
@@ -58,8 +82,13 @@ export class ActionSheetComponent {
|
|
|
58
82
|
*/
|
|
59
83
|
cssClass;
|
|
60
84
|
/**
|
|
61
|
-
*
|
|
62
|
-
*
|
|
85
|
+
* The inline styles that will be rendered on the inner ActionSheet element.
|
|
86
|
+
* Supports the type of values that are supported by [ngStyle](link:site.data.urls.angular['ngstyleapi']).
|
|
87
|
+
*/
|
|
88
|
+
cssStyle;
|
|
89
|
+
/**
|
|
90
|
+
* Configures the ActionSheet opening and closing animations ([see example](slug:animations_actionsheet)).
|
|
91
|
+
* By default, the animations are turned off. The default animations' duration is `300ms`.
|
|
63
92
|
*
|
|
64
93
|
* @default true
|
|
65
94
|
*/
|
|
@@ -72,16 +101,26 @@ export class ActionSheetComponent {
|
|
|
72
101
|
expanded = false;
|
|
73
102
|
/**
|
|
74
103
|
* Sets the `aria-labelledby` attribute of the ActionSheet wrapper element.
|
|
75
|
-
* Use this option when the built-in header element is replaced through the [`ActionSheetHeaderTemplate`](
|
|
76
|
-
* or [`ActionSheetContentTemplate`](
|
|
104
|
+
* Use this option when the built-in header element is replaced through the [`ActionSheetHeaderTemplate`](slug:api_navigation_actionsheetheadertemplatedirective)
|
|
105
|
+
* or [`ActionSheetContentTemplate`](slug:api_navigation_actionsheetcontenttemplatedirective).
|
|
77
106
|
*
|
|
78
107
|
*/
|
|
79
108
|
titleId = getId('k-actionsheet-title');
|
|
109
|
+
/**
|
|
110
|
+
* @hidden
|
|
111
|
+
*
|
|
112
|
+
* Determines if the ActionSheet should focus the first focusable element when opened.
|
|
113
|
+
*/
|
|
114
|
+
initialFocus = true;
|
|
80
115
|
/**
|
|
81
116
|
* Fires when the `expanded` property of the component is updated.
|
|
82
117
|
* Used to provide a two-way binding for the `expanded` property.
|
|
83
118
|
*/
|
|
84
119
|
expandedChange = new EventEmitter();
|
|
120
|
+
/**
|
|
121
|
+
* Fires when any of the ActionSheet action buttons is clicked.
|
|
122
|
+
*/
|
|
123
|
+
action = new EventEmitter();
|
|
85
124
|
/**
|
|
86
125
|
* Fires when the ActionSheet is expanded and its animation is complete.
|
|
87
126
|
*/
|
|
@@ -102,6 +141,10 @@ export class ActionSheetComponent {
|
|
|
102
141
|
* @hidden
|
|
103
142
|
*/
|
|
104
143
|
childContainer;
|
|
144
|
+
/**
|
|
145
|
+
* @hidden
|
|
146
|
+
*/
|
|
147
|
+
actionSheetViews;
|
|
105
148
|
/**
|
|
106
149
|
* @hidden
|
|
107
150
|
*/
|
|
@@ -158,6 +201,24 @@ export class ActionSheetComponent {
|
|
|
158
201
|
this.player.destroy();
|
|
159
202
|
}
|
|
160
203
|
}
|
|
204
|
+
/**
|
|
205
|
+
* @hidden
|
|
206
|
+
* Navigates to the next view.
|
|
207
|
+
*/
|
|
208
|
+
nextView() {
|
|
209
|
+
if (this.currentView < this.actionSheetViews.length) {
|
|
210
|
+
this.currentView += 1;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* @hidden
|
|
215
|
+
* Navigates to the previous view.
|
|
216
|
+
*/
|
|
217
|
+
prevView() {
|
|
218
|
+
if (this.currentView > 1) {
|
|
219
|
+
this.currentView -= 1;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
161
222
|
/**
|
|
162
223
|
* Toggles the visibility of the ActionSheet.
|
|
163
224
|
*
|
|
@@ -184,6 +245,18 @@ export class ActionSheetComponent {
|
|
|
184
245
|
this[current ? 'expand' : 'collapse'].emit();
|
|
185
246
|
}
|
|
186
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* @hidden
|
|
250
|
+
*/
|
|
251
|
+
get orientationClass() {
|
|
252
|
+
return this.actionsLayout.orientation ? `k-actions-${this.actionsLayout.orientation}` : '';
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* @hidden
|
|
256
|
+
*/
|
|
257
|
+
get alignmentClass() {
|
|
258
|
+
return this.actionsLayout.alignment ? `k-actions-${this.actionsLayout.alignment}` : '';
|
|
259
|
+
}
|
|
187
260
|
/**
|
|
188
261
|
* @hidden
|
|
189
262
|
*/
|
|
@@ -207,6 +280,9 @@ export class ActionSheetComponent {
|
|
|
207
280
|
*/
|
|
208
281
|
onOverlayClick() {
|
|
209
282
|
this.overlayClick.emit();
|
|
283
|
+
if (this.overlayClickClose) {
|
|
284
|
+
this.toggle(false);
|
|
285
|
+
}
|
|
210
286
|
}
|
|
211
287
|
/**
|
|
212
288
|
* @hidden
|
|
@@ -252,7 +328,7 @@ export class ActionSheetComponent {
|
|
|
252
328
|
}
|
|
253
329
|
handleInitialFocus() {
|
|
254
330
|
const [firstFocusable] = getFirstAndLastFocusable(this.element.nativeElement);
|
|
255
|
-
if (firstFocusable) {
|
|
331
|
+
if (firstFocusable && this.initialFocus) {
|
|
256
332
|
firstFocusable.focus();
|
|
257
333
|
}
|
|
258
334
|
}
|
|
@@ -311,80 +387,106 @@ export class ActionSheetComponent {
|
|
|
311
387
|
this.player.play();
|
|
312
388
|
}
|
|
313
389
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionSheetComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i2.AnimationBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
314
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ActionSheetComponent, isStandalone: true, selector: "kendo-actionsheet", inputs: { title: "title", subtitle: "subtitle", items: "items", cssClass: "cssClass", animation: "animation", expanded: "expanded", titleId: "titleId" }, outputs: { expandedChange: "expandedChange", expand: "expand", collapse: "collapse", itemClick: "itemClick", overlayClick: "overlayClick" }, host: { properties: { "class.k-actionsheet-container": "this.hostClass", "attr.dir": "this.direction" } }, providers: [
|
|
390
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ActionSheetComponent, isStandalone: true, selector: "kendo-actionsheet", inputs: { actions: "actions", actionsLayout: "actionsLayout", overlayClickClose: "overlayClickClose", title: "title", subtitle: "subtitle", items: "items", cssClass: "cssClass", cssStyle: "cssStyle", animation: "animation", expanded: "expanded", titleId: "titleId", initialFocus: "initialFocus" }, outputs: { expandedChange: "expandedChange", action: "action", expand: "expand", collapse: "collapse", itemClick: "itemClick", overlayClick: "overlayClick" }, host: { properties: { "class.k-actionsheet-container": "this.hostClass", "attr.dir": "this.direction" } }, providers: [
|
|
315
391
|
LocalizationService,
|
|
316
392
|
{
|
|
317
393
|
provide: L10N_PREFIX,
|
|
318
394
|
useValue: 'kendo.actionsheet.component'
|
|
319
395
|
}
|
|
320
|
-
], queries: [{ propertyName: "actionSheetTemplate", first: true, predicate: ActionSheetTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: ActionSheetHeaderTemplateDirective, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ActionSheetContentTemplateDirective, descendants: true }, { propertyName: "itemTemplate", first: true, predicate: ActionSheetItemTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: ActionSheetFooterTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "childContainer", first: true, predicate: ["childContainer"], descendants: true }], exportAs: ["kendoActionSheet"], usesOnChanges: true, ngImport: i0, template: `
|
|
396
|
+
], queries: [{ propertyName: "actionSheetTemplate", first: true, predicate: ActionSheetTemplateDirective, descendants: true }, { propertyName: "headerTemplate", first: true, predicate: ActionSheetHeaderTemplateDirective, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ActionSheetContentTemplateDirective, descendants: true }, { propertyName: "itemTemplate", first: true, predicate: ActionSheetItemTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: ActionSheetFooterTemplateDirective, descendants: true }, { propertyName: "actionSheetViews", predicate: i0.forwardRef(function () { return ActionSheetViewComponent; }) }], viewQueries: [{ propertyName: "childContainer", first: true, predicate: ["childContainer"], descendants: true }], exportAs: ["kendoActionSheet"], usesOnChanges: true, ngImport: i0, template: `
|
|
321
397
|
<ng-container *ngIf="expanded">
|
|
322
398
|
<div class="k-overlay" (click)="onOverlayClick()"></div>
|
|
323
399
|
<div class="k-animation-container k-animation-container-shown">
|
|
324
400
|
<div #childContainer class="k-child-animation-container" [style]="'bottom: 0px; width: 100%;'">
|
|
325
|
-
<div
|
|
401
|
+
<div
|
|
402
|
+
class="k-actionsheet k-actionsheet-bottom"
|
|
326
403
|
[ngClass]="cssClass"
|
|
404
|
+
[ngStyle]="cssStyle"
|
|
327
405
|
role="dialog"
|
|
328
406
|
aria-modal="true"
|
|
329
|
-
[attr.aria-labelledby]="titleId"
|
|
407
|
+
[attr.aria-labelledby]="titleId"
|
|
408
|
+
[style.--kendo-actionsheet-view-current]="actionSheetViews?.length > 0 ? currentView : null"
|
|
409
|
+
>
|
|
410
|
+
<ng-content *ngIf="actionSheetViews?.length > 0" select="kendo-actionsheet-view"></ng-content>
|
|
411
|
+
|
|
412
|
+
<div *ngIf="actionSheetViews?.length === 0" class="k-actionsheet-view">
|
|
413
|
+
<ng-template *ngIf="actionSheetTemplate; else defaultTemplate"
|
|
414
|
+
[ngTemplateOutlet]="actionSheetTemplate?.templateRef">
|
|
415
|
+
</ng-template>
|
|
330
416
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
417
|
+
<ng-template #defaultTemplate>
|
|
418
|
+
<div *ngIf="title || subtitle || headerTemplate" class="k-actionsheet-titlebar">
|
|
419
|
+
<ng-template *ngIf="headerTemplate; else defaultHeaderTemplate"
|
|
420
|
+
[ngTemplateOutlet]="headerTemplate?.templateRef">
|
|
421
|
+
</ng-template>
|
|
334
422
|
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
423
|
+
<ng-template #defaultHeaderTemplate>
|
|
424
|
+
<div class="k-actionsheet-titlebar-group k-hbox">
|
|
425
|
+
<div class="k-actionsheet-title" [id]="titleId">
|
|
426
|
+
<div *ngIf="title" class="k-text-center">{{title}}</div>
|
|
427
|
+
<div *ngIf="subtitle" class="k-actionsheet-subtitle k-text-center">{{subtitle}}</div>
|
|
428
|
+
</div>
|
|
429
|
+
</div>
|
|
430
|
+
</ng-template>
|
|
431
|
+
</div>
|
|
340
432
|
|
|
341
|
-
<
|
|
342
|
-
<
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
433
|
+
<div *ngIf="items || contentTemplate" class="k-actionsheet-content">
|
|
434
|
+
<ng-template *ngIf="contentTemplate; else defaultContentTemplate"
|
|
435
|
+
[ngTemplateOutlet]="contentTemplate?.templateRef">
|
|
436
|
+
</ng-template>
|
|
437
|
+
<ng-template #defaultContentTemplate>
|
|
438
|
+
<div *ngIf="topGroupItems" kendoActionSheetList
|
|
439
|
+
class="k-list-ul"
|
|
440
|
+
role="group"
|
|
441
|
+
[groupItems]="topGroupItems"
|
|
442
|
+
[allItems]="items"
|
|
443
|
+
[itemTemplate]="itemTemplate?.templateRef"
|
|
444
|
+
(itemClick)="onItemClick($event)">
|
|
445
|
+
</div>
|
|
446
|
+
|
|
447
|
+
<hr *ngIf="shouldRenderSeparator" class="k-hr"/>
|
|
448
|
+
|
|
449
|
+
<div *ngIf="bottomGroupItems" kendoActionSheetList
|
|
450
|
+
class="k-list-ul"
|
|
451
|
+
role="group"
|
|
452
|
+
[groupItems]="bottomGroupItems"
|
|
453
|
+
[allItems]="items"
|
|
454
|
+
[itemTemplate]="itemTemplate?.templateRef"
|
|
455
|
+
(itemClick)="onItemClick($event)">
|
|
346
456
|
</div>
|
|
347
|
-
</
|
|
348
|
-
</
|
|
349
|
-
|
|
457
|
+
</ng-template>
|
|
458
|
+
</div>
|
|
459
|
+
<div *ngIf="footerTemplate || actions" [ngClass]="[orientationClass, alignmentClass, 'k-actions', 'k-actionsheet-footer']">
|
|
460
|
+
<ng-template
|
|
461
|
+
*ngIf="footerTemplate"
|
|
462
|
+
[ngTemplateOutlet]="footerTemplate?.templateRef">
|
|
463
|
+
</ng-template>
|
|
350
464
|
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
[allItems]="items"
|
|
372
|
-
[itemTemplate]="itemTemplate?.templateRef"
|
|
373
|
-
(itemClick)="onItemClick($event)">
|
|
374
|
-
</div>
|
|
375
|
-
</ng-template>
|
|
376
|
-
</div>
|
|
377
|
-
<div *ngIf="footerTemplate" class="k-actionsheet-footer">
|
|
378
|
-
<ng-template
|
|
379
|
-
[ngTemplateOutlet]="footerTemplate?.templateRef">
|
|
380
|
-
</ng-template>
|
|
381
|
-
</div>
|
|
382
|
-
</ng-template>
|
|
465
|
+
<ng-container *ngIf="!footerTemplate && actions">
|
|
466
|
+
<button
|
|
467
|
+
*ngFor="let actionButton of actions"
|
|
468
|
+
kendoButton
|
|
469
|
+
type="button"
|
|
470
|
+
[icon]="actionButton.icon"
|
|
471
|
+
[title]="actionButton.title"
|
|
472
|
+
[svgIcon]="actionButton.svgIcon"
|
|
473
|
+
[themeColor]="actionButton.themeColor"
|
|
474
|
+
[fillMode]="actionButton.fillMode"
|
|
475
|
+
[size]="actionButton.size"
|
|
476
|
+
[attr.aria-label]="actionButton.text"
|
|
477
|
+
(click)="action.emit(actionButton)"
|
|
478
|
+
>
|
|
479
|
+
{{ actionButton.text }}
|
|
480
|
+
</button>
|
|
481
|
+
</ng-container>
|
|
482
|
+
</div>
|
|
483
|
+
</ng-template>
|
|
484
|
+
</div>
|
|
383
485
|
</div>
|
|
384
486
|
</div>
|
|
385
487
|
</div>
|
|
386
488
|
</ng-container>
|
|
387
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ActionSheetListComponent, selector: "[kendoActionSheetList]", inputs: ["groupItems", "allItems", "itemTemplate"], outputs: ["itemClick"] }] });
|
|
489
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ActionSheetListComponent, selector: "[kendoActionSheetList]", inputs: ["groupItems", "allItems", "itemTemplate"], outputs: ["itemClick"] }, { kind: "component", type: ButtonDirective, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
|
|
388
490
|
}
|
|
389
491
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionSheetComponent, decorators: [{
|
|
390
492
|
type: Component,
|
|
@@ -396,64 +498,90 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
396
498
|
<div class="k-overlay" (click)="onOverlayClick()"></div>
|
|
397
499
|
<div class="k-animation-container k-animation-container-shown">
|
|
398
500
|
<div #childContainer class="k-child-animation-container" [style]="'bottom: 0px; width: 100%;'">
|
|
399
|
-
<div
|
|
501
|
+
<div
|
|
502
|
+
class="k-actionsheet k-actionsheet-bottom"
|
|
400
503
|
[ngClass]="cssClass"
|
|
504
|
+
[ngStyle]="cssStyle"
|
|
401
505
|
role="dialog"
|
|
402
506
|
aria-modal="true"
|
|
403
|
-
[attr.aria-labelledby]="titleId"
|
|
507
|
+
[attr.aria-labelledby]="titleId"
|
|
508
|
+
[style.--kendo-actionsheet-view-current]="actionSheetViews?.length > 0 ? currentView : null"
|
|
509
|
+
>
|
|
510
|
+
<ng-content *ngIf="actionSheetViews?.length > 0" select="kendo-actionsheet-view"></ng-content>
|
|
404
511
|
|
|
405
|
-
<
|
|
406
|
-
|
|
407
|
-
|
|
512
|
+
<div *ngIf="actionSheetViews?.length === 0" class="k-actionsheet-view">
|
|
513
|
+
<ng-template *ngIf="actionSheetTemplate; else defaultTemplate"
|
|
514
|
+
[ngTemplateOutlet]="actionSheetTemplate?.templateRef">
|
|
515
|
+
</ng-template>
|
|
408
516
|
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
517
|
+
<ng-template #defaultTemplate>
|
|
518
|
+
<div *ngIf="title || subtitle || headerTemplate" class="k-actionsheet-titlebar">
|
|
519
|
+
<ng-template *ngIf="headerTemplate; else defaultHeaderTemplate"
|
|
520
|
+
[ngTemplateOutlet]="headerTemplate?.templateRef">
|
|
521
|
+
</ng-template>
|
|
414
522
|
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
523
|
+
<ng-template #defaultHeaderTemplate>
|
|
524
|
+
<div class="k-actionsheet-titlebar-group k-hbox">
|
|
525
|
+
<div class="k-actionsheet-title" [id]="titleId">
|
|
526
|
+
<div *ngIf="title" class="k-text-center">{{title}}</div>
|
|
527
|
+
<div *ngIf="subtitle" class="k-actionsheet-subtitle k-text-center">{{subtitle}}</div>
|
|
528
|
+
</div>
|
|
529
|
+
</div>
|
|
530
|
+
</ng-template>
|
|
531
|
+
</div>
|
|
532
|
+
|
|
533
|
+
<div *ngIf="items || contentTemplate" class="k-actionsheet-content">
|
|
534
|
+
<ng-template *ngIf="contentTemplate; else defaultContentTemplate"
|
|
535
|
+
[ngTemplateOutlet]="contentTemplate?.templateRef">
|
|
536
|
+
</ng-template>
|
|
537
|
+
<ng-template #defaultContentTemplate>
|
|
538
|
+
<div *ngIf="topGroupItems" kendoActionSheetList
|
|
539
|
+
class="k-list-ul"
|
|
540
|
+
role="group"
|
|
541
|
+
[groupItems]="topGroupItems"
|
|
542
|
+
[allItems]="items"
|
|
543
|
+
[itemTemplate]="itemTemplate?.templateRef"
|
|
544
|
+
(itemClick)="onItemClick($event)">
|
|
545
|
+
</div>
|
|
546
|
+
|
|
547
|
+
<hr *ngIf="shouldRenderSeparator" class="k-hr"/>
|
|
548
|
+
|
|
549
|
+
<div *ngIf="bottomGroupItems" kendoActionSheetList
|
|
550
|
+
class="k-list-ul"
|
|
551
|
+
role="group"
|
|
552
|
+
[groupItems]="bottomGroupItems"
|
|
553
|
+
[allItems]="items"
|
|
554
|
+
[itemTemplate]="itemTemplate?.templateRef"
|
|
555
|
+
(itemClick)="onItemClick($event)">
|
|
420
556
|
</div>
|
|
421
|
-
</
|
|
422
|
-
</
|
|
423
|
-
|
|
557
|
+
</ng-template>
|
|
558
|
+
</div>
|
|
559
|
+
<div *ngIf="footerTemplate || actions" [ngClass]="[orientationClass, alignmentClass, 'k-actions', 'k-actionsheet-footer']">
|
|
560
|
+
<ng-template
|
|
561
|
+
*ngIf="footerTemplate"
|
|
562
|
+
[ngTemplateOutlet]="footerTemplate?.templateRef">
|
|
563
|
+
</ng-template>
|
|
424
564
|
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
[allItems]="items"
|
|
446
|
-
[itemTemplate]="itemTemplate?.templateRef"
|
|
447
|
-
(itemClick)="onItemClick($event)">
|
|
448
|
-
</div>
|
|
449
|
-
</ng-template>
|
|
450
|
-
</div>
|
|
451
|
-
<div *ngIf="footerTemplate" class="k-actionsheet-footer">
|
|
452
|
-
<ng-template
|
|
453
|
-
[ngTemplateOutlet]="footerTemplate?.templateRef">
|
|
454
|
-
</ng-template>
|
|
455
|
-
</div>
|
|
456
|
-
</ng-template>
|
|
565
|
+
<ng-container *ngIf="!footerTemplate && actions">
|
|
566
|
+
<button
|
|
567
|
+
*ngFor="let actionButton of actions"
|
|
568
|
+
kendoButton
|
|
569
|
+
type="button"
|
|
570
|
+
[icon]="actionButton.icon"
|
|
571
|
+
[title]="actionButton.title"
|
|
572
|
+
[svgIcon]="actionButton.svgIcon"
|
|
573
|
+
[themeColor]="actionButton.themeColor"
|
|
574
|
+
[fillMode]="actionButton.fillMode"
|
|
575
|
+
[size]="actionButton.size"
|
|
576
|
+
[attr.aria-label]="actionButton.text"
|
|
577
|
+
(click)="action.emit(actionButton)"
|
|
578
|
+
>
|
|
579
|
+
{{ actionButton.text }}
|
|
580
|
+
</button>
|
|
581
|
+
</ng-container>
|
|
582
|
+
</div>
|
|
583
|
+
</ng-template>
|
|
584
|
+
</div>
|
|
457
585
|
</div>
|
|
458
586
|
</div>
|
|
459
587
|
</div>
|
|
@@ -467,7 +595,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
467
595
|
}
|
|
468
596
|
],
|
|
469
597
|
standalone: true,
|
|
470
|
-
imports: [NgIf, NgClass, NgTemplateOutlet, ActionSheetListComponent]
|
|
598
|
+
imports: [NgIf, NgFor, NgStyle, NgClass, NgTemplateOutlet, ActionSheetListComponent, ButtonDirective]
|
|
471
599
|
}]
|
|
472
600
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i2.AnimationBuilder }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { hostClass: [{
|
|
473
601
|
type: HostBinding,
|
|
@@ -475,6 +603,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
475
603
|
}], direction: [{
|
|
476
604
|
type: HostBinding,
|
|
477
605
|
args: ['attr.dir']
|
|
606
|
+
}], actions: [{
|
|
607
|
+
type: Input
|
|
608
|
+
}], actionsLayout: [{
|
|
609
|
+
type: Input
|
|
610
|
+
}], overlayClickClose: [{
|
|
611
|
+
type: Input
|
|
478
612
|
}], title: [{
|
|
479
613
|
type: Input
|
|
480
614
|
}], subtitle: [{
|
|
@@ -483,14 +617,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
483
617
|
type: Input
|
|
484
618
|
}], cssClass: [{
|
|
485
619
|
type: Input
|
|
620
|
+
}], cssStyle: [{
|
|
621
|
+
type: Input
|
|
486
622
|
}], animation: [{
|
|
487
623
|
type: Input
|
|
488
624
|
}], expanded: [{
|
|
489
625
|
type: Input
|
|
490
626
|
}], titleId: [{
|
|
491
627
|
type: Input
|
|
628
|
+
}], initialFocus: [{
|
|
629
|
+
type: Input
|
|
492
630
|
}], expandedChange: [{
|
|
493
631
|
type: Output
|
|
632
|
+
}], action: [{
|
|
633
|
+
type: Output
|
|
494
634
|
}], expand: [{
|
|
495
635
|
type: Output
|
|
496
636
|
}], collapse: [{
|
|
@@ -502,6 +642,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
502
642
|
}], childContainer: [{
|
|
503
643
|
type: ViewChild,
|
|
504
644
|
args: ['childContainer']
|
|
645
|
+
}], actionSheetViews: [{
|
|
646
|
+
type: ContentChildren,
|
|
647
|
+
args: [forwardRef(() => ActionSheetViewComponent)]
|
|
505
648
|
}], actionSheetTemplate: [{
|
|
506
649
|
type: ContentChild,
|
|
507
650
|
args: [ActionSheetTemplateDirective]
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
export {};
|
|
@@ -7,11 +7,12 @@ import { IconsService } from '@progress/kendo-angular-icons';
|
|
|
7
7
|
import { KENDO_ACTIONSHEET } from './directives';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
import * as i1 from "./actionsheet/actionsheet.component";
|
|
10
|
-
import * as i2 from "./actionsheet/
|
|
11
|
-
import * as i3 from "./actionsheet/templates/
|
|
12
|
-
import * as i4 from "./actionsheet/templates/
|
|
13
|
-
import * as i5 from "./actionsheet/templates/
|
|
14
|
-
import * as i6 from "./actionsheet/templates/
|
|
10
|
+
import * as i2 from "./actionsheet/actionsheet-view.component";
|
|
11
|
+
import * as i3 from "./actionsheet/templates/header-template.directive";
|
|
12
|
+
import * as i4 from "./actionsheet/templates/item-template.directive";
|
|
13
|
+
import * as i5 from "./actionsheet/templates/content-template.directive";
|
|
14
|
+
import * as i6 from "./actionsheet/templates/footer-template.directive";
|
|
15
|
+
import * as i7 from "./actionsheet/templates/actionsheet-template";
|
|
15
16
|
// IMPORTANT: NgModule export kept for backwards compatibility
|
|
16
17
|
/**
|
|
17
18
|
* Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
|
|
@@ -47,7 +48,7 @@ import * as i6 from "./actionsheet/templates/actionsheet-template";
|
|
|
47
48
|
*/
|
|
48
49
|
export class ActionSheetModule {
|
|
49
50
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionSheetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
50
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: ActionSheetModule, imports: [i1.ActionSheetComponent, i2.
|
|
51
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: ActionSheetModule, imports: [i1.ActionSheetComponent, i2.ActionSheetViewComponent, i3.ActionSheetHeaderTemplateDirective, i4.ActionSheetItemTemplateDirective, i5.ActionSheetContentTemplateDirective, i6.ActionSheetFooterTemplateDirective, i7.ActionSheetTemplateDirective], exports: [i1.ActionSheetComponent, i2.ActionSheetViewComponent, i3.ActionSheetHeaderTemplateDirective, i4.ActionSheetItemTemplateDirective, i5.ActionSheetContentTemplateDirective, i6.ActionSheetFooterTemplateDirective, i7.ActionSheetTemplateDirective] });
|
|
51
52
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionSheetModule, providers: [IconsService], imports: [i1.ActionSheetComponent] });
|
|
52
53
|
}
|
|
53
54
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionSheetModule, decorators: [{
|
package/esm2022/directives.mjs
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Copyright © 2025 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { ActionSheetViewComponent } from "./actionsheet/actionsheet-view.component";
|
|
5
6
|
import { ActionSheetComponent } from "./actionsheet/actionsheet.component";
|
|
6
7
|
import { ActionSheetContentTemplateDirective, ActionSheetFooterTemplateDirective, ActionSheetHeaderTemplateDirective, ActionSheetItemTemplateDirective, ActionSheetTemplateDirective } from "./actionsheet/models";
|
|
7
8
|
import { AppBarSectionComponent } from "./appbar/appbar-section.component";
|
|
@@ -16,6 +17,7 @@ import { BreadCrumbItemTemplateDirective } from "./breadcrumb/template-directive
|
|
|
16
17
|
*/
|
|
17
18
|
export const KENDO_ACTIONSHEET = [
|
|
18
19
|
ActionSheetComponent,
|
|
20
|
+
ActionSheetViewComponent,
|
|
19
21
|
ActionSheetHeaderTemplateDirective,
|
|
20
22
|
ActionSheetItemTemplateDirective,
|
|
21
23
|
ActionSheetContentTemplateDirective,
|
package/esm2022/index.mjs
CHANGED
|
@@ -21,6 +21,7 @@ export { BreadCrumbItemComponent } from './breadcrumb/breadcrumb-item.component'
|
|
|
21
21
|
export { BreadCrumbListComponent } from './breadcrumb/list.component';
|
|
22
22
|
//ActionSheet exports
|
|
23
23
|
export { ActionSheetComponent } from './actionsheet/actionsheet.component';
|
|
24
|
+
export { ActionSheetViewComponent } from './actionsheet/actionsheet-view.component';
|
|
24
25
|
export { ActionSheetItemClickEvent, ActionSheetHeaderTemplateDirective, ActionSheetItemTemplateDirective, ActionSheetContentTemplateDirective, ActionSheetFooterTemplateDirective, ActionSheetTemplateDirective } from './actionsheet/models';
|
|
25
26
|
export { ActionSheetModule } from './actionsheet.module';
|
|
26
27
|
export * from './directives';
|