@progress/kendo-angular-scheduler 4.3.0 → 4.3.1-dev.202208290849
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/bundles/kendo-angular-scheduler.umd.js +1 -1
- package/editing-directives/editing-directive-base.d.ts +3 -1
- package/editing-directives/reactive-editing.directive.d.ts +2 -1
- package/esm2015/editing-directives/editing-directive-base.js +7 -3
- package/esm2015/editing-directives/reactive-editing.directive.js +5 -4
- package/esm2015/navigation/focus.service.js +29 -4
- package/esm2015/navigation/focusable.directive.js +6 -1
- package/esm2015/package-metadata.js +1 -1
- package/esm2015/views/agenda/agenda-task-item.component.js +6 -6
- package/esm2015/views/agenda/agenda-view-list.component.js +4 -4
- package/esm2015/views/day-time/day-time-view-item.component.js +14 -14
- package/esm2015/views/month/month-view-item.component.js +10 -10
- package/esm2015/views/month/month-view-renderer.component.js +2 -2
- package/fesm2015/kendo-angular-scheduler.js +81 -49
- package/navigation/focus.service.d.ts +6 -3
- package/package.json +1 -1
|
@@ -43,7 +43,7 @@ const packageMetadata = {
|
|
|
43
43
|
name: '@progress/kendo-angular-scheduler',
|
|
44
44
|
productName: 'Kendo UI for Angular',
|
|
45
45
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
46
|
-
publishDate:
|
|
46
|
+
publishDate: 1661762899,
|
|
47
47
|
version: '',
|
|
48
48
|
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'
|
|
49
49
|
};
|
|
@@ -1434,10 +1434,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
1434
1434
|
* @hidden
|
|
1435
1435
|
*/
|
|
1436
1436
|
class FocusService {
|
|
1437
|
-
constructor(renderer, wrapper, domEvents) {
|
|
1437
|
+
constructor(renderer, wrapper, domEvents, zone) {
|
|
1438
1438
|
this.renderer = renderer;
|
|
1439
1439
|
this.wrapper = wrapper;
|
|
1440
1440
|
this.domEvents = domEvents;
|
|
1441
|
+
this.zone = zone;
|
|
1441
1442
|
this.ariaActiveDescendant = new EventEmitter();
|
|
1442
1443
|
this.items = new Set();
|
|
1443
1444
|
this.elementMap = new WeakMap();
|
|
@@ -1486,6 +1487,24 @@ class FocusService {
|
|
|
1486
1487
|
}
|
|
1487
1488
|
return this.activeItem !== currentItem;
|
|
1488
1489
|
}
|
|
1490
|
+
focusFirst() {
|
|
1491
|
+
const firstEvent = Array.from(this.items.values())[0];
|
|
1492
|
+
if (!firstEvent) {
|
|
1493
|
+
return;
|
|
1494
|
+
}
|
|
1495
|
+
this.activate(firstEvent.element.nativeElement);
|
|
1496
|
+
this.focus();
|
|
1497
|
+
this.zone.onStable.pipe(take(1)).subscribe(() => {
|
|
1498
|
+
const first = Array.from(this.items.values())[0];
|
|
1499
|
+
if (!first) {
|
|
1500
|
+
this.clearActiveDescendant();
|
|
1501
|
+
return;
|
|
1502
|
+
}
|
|
1503
|
+
const id = first.element.nativeElement.getAttribute('id');
|
|
1504
|
+
this.ariaActiveDescendant.next(id);
|
|
1505
|
+
this.lastActiveDescendantId = id;
|
|
1506
|
+
});
|
|
1507
|
+
}
|
|
1489
1508
|
clearActiveDescendant() {
|
|
1490
1509
|
this.ariaActiveDescendant.next(null);
|
|
1491
1510
|
}
|
|
@@ -1496,6 +1515,7 @@ class FocusService {
|
|
|
1496
1515
|
if (item === next) {
|
|
1497
1516
|
const id = item.element.nativeElement.getAttribute('id');
|
|
1498
1517
|
this.ariaActiveDescendant.next(id);
|
|
1518
|
+
this.lastActiveDescendantId = id;
|
|
1499
1519
|
}
|
|
1500
1520
|
});
|
|
1501
1521
|
this.activeItem = next;
|
|
@@ -1534,6 +1554,10 @@ class FocusService {
|
|
|
1534
1554
|
}
|
|
1535
1555
|
onFocusIn(e) {
|
|
1536
1556
|
const item = this.elementMap.get(e.target);
|
|
1557
|
+
const shouldRestoreActiveDescendant = this.lastActiveDescendantId && this.lastActiveDescendantId !== (item === null || item === void 0 ? void 0 : item.element.nativeElement.getAttribute('id'));
|
|
1558
|
+
if (shouldRestoreActiveDescendant) {
|
|
1559
|
+
this.ariaActiveDescendant.next(this.lastActiveDescendantId);
|
|
1560
|
+
}
|
|
1537
1561
|
if (!item || item === this.focusedItem) {
|
|
1538
1562
|
return;
|
|
1539
1563
|
}
|
|
@@ -1550,10 +1574,10 @@ class FocusService {
|
|
|
1550
1574
|
}
|
|
1551
1575
|
this.focusedItem.toggleFocus(false);
|
|
1552
1576
|
this.focusedItem = null;
|
|
1553
|
-
this.
|
|
1577
|
+
this.clearActiveDescendant();
|
|
1554
1578
|
}
|
|
1555
1579
|
}
|
|
1556
|
-
FocusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService, deps: [{ token: i0.Renderer2, optional: true }, { token: i0.ElementRef, optional: true }, { token: DomEventsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1580
|
+
FocusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService, deps: [{ token: i0.Renderer2, optional: true }, { token: i0.ElementRef, optional: true }, { token: DomEventsService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1557
1581
|
FocusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService });
|
|
1558
1582
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService, decorators: [{
|
|
1559
1583
|
type: Injectable
|
|
@@ -1561,7 +1585,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
1561
1585
|
type: Optional
|
|
1562
1586
|
}] }, { type: i0.ElementRef, decorators: [{
|
|
1563
1587
|
type: Optional
|
|
1564
|
-
}] }, { type: DomEventsService }]; } });
|
|
1588
|
+
}] }, { type: DomEventsService }, { type: i0.NgZone }]; } });
|
|
1565
1589
|
|
|
1566
1590
|
/**
|
|
1567
1591
|
* @hidden
|
|
@@ -1798,6 +1822,7 @@ class FocusableDirective {
|
|
|
1798
1822
|
this.element.nativeElement.focus();
|
|
1799
1823
|
}
|
|
1800
1824
|
toggleFocus(value) {
|
|
1825
|
+
var _a;
|
|
1801
1826
|
const focusedClass = 'k-selected';
|
|
1802
1827
|
const element = this.element.nativeElement;
|
|
1803
1828
|
if (value) {
|
|
@@ -1806,7 +1831,11 @@ class FocusableDirective {
|
|
|
1806
1831
|
else {
|
|
1807
1832
|
this.renderer.removeClass(element, focusedClass);
|
|
1808
1833
|
}
|
|
1809
|
-
|
|
1834
|
+
const selectable = element.matches('.k-scheduler-agendaview .k-scheduler-content .k-selected');
|
|
1835
|
+
if (selectable) {
|
|
1836
|
+
(_a = element.closest('.k-scheduler-agendaview').querySelector('[aria-selected="true"]')) === null || _a === void 0 ? void 0 : _a.removeAttribute('aria-selected');
|
|
1837
|
+
this.renderer.setAttribute(element, 'aria-selected', value.toString());
|
|
1838
|
+
}
|
|
1810
1839
|
}
|
|
1811
1840
|
}
|
|
1812
1841
|
FocusableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusableDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: FocusService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
@@ -8013,8 +8042,8 @@ AgendaTaskItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0",
|
|
|
8013
8042
|
AgendaTaskItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: AgendaTaskItemComponent, selector: "[kendoSchedulerAgendaTaskItem]", inputs: { item: ["kendoSchedulerAgendaTaskItem", "item"], color: "color", eventTemplate: "eventTemplate", editable: "editable" }, host: { properties: { "attr.aria-label": "this.eventTitle" } }, ngImport: i0, template: `
|
|
8014
8043
|
<div class="k-task" [title]="item.title">
|
|
8015
8044
|
<span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>
|
|
8016
|
-
<span class="k-icon k-i-
|
|
8017
|
-
<span class="k-icon k-i-
|
|
8045
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
8046
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
8018
8047
|
<ng-container *ngIf="!eventTemplate">
|
|
8019
8048
|
{{item?.title }}
|
|
8020
8049
|
</ng-container>
|
|
@@ -8023,7 +8052,7 @@ AgendaTaskItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
8023
8052
|
</ng-container>
|
|
8024
8053
|
|
|
8025
8054
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
8026
|
-
<span class="k-icon k-i-
|
|
8055
|
+
<span class="k-icon k-i-x"></span>
|
|
8027
8056
|
</span>
|
|
8028
8057
|
</div>
|
|
8029
8058
|
`, isInline: true, directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
@@ -8036,8 +8065,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
8036
8065
|
template: `
|
|
8037
8066
|
<div class="k-task" [title]="item.title">
|
|
8038
8067
|
<span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>
|
|
8039
|
-
<span class="k-icon k-i-
|
|
8040
|
-
<span class="k-icon k-i-
|
|
8068
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
8069
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
8041
8070
|
<ng-container *ngIf="!eventTemplate">
|
|
8042
8071
|
{{item?.title }}
|
|
8043
8072
|
</ng-container>
|
|
@@ -8046,7 +8075,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
8046
8075
|
</ng-container>
|
|
8047
8076
|
|
|
8048
8077
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
8049
|
-
<span class="k-icon k-i-
|
|
8078
|
+
<span class="k-icon k-i-x"></span>
|
|
8050
8079
|
</span>
|
|
8051
8080
|
</div>
|
|
8052
8081
|
`
|
|
@@ -8142,9 +8171,9 @@ AgendaListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
8142
8171
|
</td>
|
|
8143
8172
|
<td class="k-scheduler-timecolumn" role="gridcell">
|
|
8144
8173
|
<div *ngIf="!agendaTimeTemplate">
|
|
8145
|
-
<span class="k-icon k-i-
|
|
8174
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="extractDataItem(item).tail"></span>
|
|
8146
8175
|
{{ formatTime(extractDataItem(item)) }}
|
|
8147
|
-
<span class="k-icon k-i-
|
|
8176
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="extractDataItem(item).head"></span>
|
|
8148
8177
|
</div>
|
|
8149
8178
|
<ng-container *ngIf="agendaTimeTemplate" [ngTemplateOutlet]="agendaTimeTemplate"
|
|
8150
8179
|
[ngTemplateOutletContext]="extractDataItem(item)">
|
|
@@ -8184,9 +8213,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
8184
8213
|
</td>
|
|
8185
8214
|
<td class="k-scheduler-timecolumn" role="gridcell">
|
|
8186
8215
|
<div *ngIf="!agendaTimeTemplate">
|
|
8187
|
-
<span class="k-icon k-i-
|
|
8216
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="extractDataItem(item).tail"></span>
|
|
8188
8217
|
{{ formatTime(extractDataItem(item)) }}
|
|
8189
|
-
<span class="k-icon k-i-
|
|
8218
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="extractDataItem(item).head"></span>
|
|
8190
8219
|
</div>
|
|
8191
8220
|
<ng-container *ngIf="agendaTimeTemplate" [ngTemplateOutlet]="agendaTimeTemplate"
|
|
8192
8221
|
[ngTemplateOutletContext]="extractDataItem(item)">
|
|
@@ -9308,9 +9337,9 @@ class MonthViewItemComponent extends BaseViewItem {
|
|
|
9308
9337
|
MonthViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MonthViewItemComponent, deps: [{ token: MonthSlotService }, { token: i2.LocalizationService }, { token: FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
|
|
9309
9338
|
MonthViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: MonthViewItemComponent, selector: "[monthViewItem]", usesInheritance: true, ngImport: i0, template: `
|
|
9310
9339
|
<span class="k-event-actions">
|
|
9311
|
-
<span class="k-icon k-i-
|
|
9312
|
-
<span class="k-icon k-i-
|
|
9313
|
-
<span class="k-icon k-i-
|
|
9340
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="item.tail"></span>
|
|
9341
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
9342
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
9314
9343
|
</span>
|
|
9315
9344
|
<ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"
|
|
9316
9345
|
[ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">
|
|
@@ -9321,9 +9350,9 @@ MonthViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
9321
9350
|
|
|
9322
9351
|
<span class="k-event-actions">
|
|
9323
9352
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
9324
|
-
<span class="k-icon k-i-
|
|
9353
|
+
<span class="k-icon k-i-x"></span>
|
|
9325
9354
|
</span>
|
|
9326
|
-
<span class="k-icon k-i-
|
|
9355
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="item.head"></span>
|
|
9327
9356
|
</span>
|
|
9328
9357
|
|
|
9329
9358
|
<ng-container *ngIf="resizable">
|
|
@@ -9338,9 +9367,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
9338
9367
|
selector: '[monthViewItem]',
|
|
9339
9368
|
template: `
|
|
9340
9369
|
<span class="k-event-actions">
|
|
9341
|
-
<span class="k-icon k-i-
|
|
9342
|
-
<span class="k-icon k-i-
|
|
9343
|
-
<span class="k-icon k-i-
|
|
9370
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="item.tail"></span>
|
|
9371
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
9372
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
9344
9373
|
</span>
|
|
9345
9374
|
<ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"
|
|
9346
9375
|
[ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">
|
|
@@ -9351,9 +9380,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
9351
9380
|
|
|
9352
9381
|
<span class="k-event-actions">
|
|
9353
9382
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
9354
|
-
<span class="k-icon k-i-
|
|
9383
|
+
<span class="k-icon k-i-x"></span>
|
|
9355
9384
|
</span>
|
|
9356
|
-
<span class="k-icon k-i-
|
|
9385
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="item.head"></span>
|
|
9357
9386
|
</span>
|
|
9358
9387
|
|
|
9359
9388
|
<ng-container *ngIf="resizable">
|
|
@@ -10997,7 +11026,7 @@ MonthViewRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
|
|
|
10997
11026
|
</ng-container>
|
|
10998
11027
|
</table>
|
|
10999
11028
|
</div>
|
|
11000
|
-
<div class="k-scheduler-content" #content>
|
|
11029
|
+
<div class="k-scheduler-content" tabindex="0" #content>
|
|
11001
11030
|
<table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">
|
|
11002
11031
|
<ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex">
|
|
11003
11032
|
<tr *ngFor="let week of weeks; let rangeIndex = index; trackBy: itemIndex">
|
|
@@ -11125,7 +11154,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
11125
11154
|
</ng-container>
|
|
11126
11155
|
</table>
|
|
11127
11156
|
</div>
|
|
11128
|
-
<div class="k-scheduler-content" #content>
|
|
11157
|
+
<div class="k-scheduler-content" tabindex="0" #content>
|
|
11129
11158
|
<table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">
|
|
11130
11159
|
<ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex">
|
|
11131
11160
|
<tr *ngFor="let week of weeks; let rangeIndex = index; trackBy: itemIndex">
|
|
@@ -12311,9 +12340,9 @@ class DayTimeViewItemComponent extends BaseViewItem {
|
|
|
12311
12340
|
DayTimeViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DayTimeViewItemComponent, deps: [{ token: i1$3.IntlService }, { token: DayTimeSlotService }, { token: i2.LocalizationService }, { token: FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
|
|
12312
12341
|
DayTimeViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: DayTimeViewItemComponent, selector: "[dayTimeViewItem]", inputs: { vertical: "vertical", isAllDay: "isAllDay" }, usesInheritance: true, ngImport: i0, template: `
|
|
12313
12342
|
<span class="k-event-actions">
|
|
12314
|
-
<span class="k-icon k-i-
|
|
12315
|
-
<span class="k-icon k-i-
|
|
12316
|
-
<span class="k-icon k-i-
|
|
12343
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="item.tail && !vertical"></span>
|
|
12344
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
12345
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
12317
12346
|
</span>
|
|
12318
12347
|
<ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"
|
|
12319
12348
|
[ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">
|
|
@@ -12325,17 +12354,17 @@ DayTimeViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0
|
|
|
12325
12354
|
|
|
12326
12355
|
<span class="k-event-actions">
|
|
12327
12356
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
12328
|
-
<span class="k-icon k-i-
|
|
12357
|
+
<span class="k-icon k-i-x"></span>
|
|
12329
12358
|
</span>
|
|
12330
|
-
<span class="k-icon k-i-
|
|
12359
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="item.head && !vertical"></span>
|
|
12331
12360
|
</span>
|
|
12332
12361
|
|
|
12333
12362
|
<span class="k-event-top-actions" *ngIf="item.tail && vertical">
|
|
12334
|
-
<span class="k-icon k-i-
|
|
12363
|
+
<span class="k-icon k-i-caret-alt-up"></span>
|
|
12335
12364
|
</span>
|
|
12336
12365
|
|
|
12337
12366
|
<span class="k-event-bottom-actions" *ngIf="item.head && vertical">
|
|
12338
|
-
<span class="k-icon k-i-
|
|
12367
|
+
<span class="k-icon k-i-caret-alt-down"></span>
|
|
12339
12368
|
</span>
|
|
12340
12369
|
|
|
12341
12370
|
<ng-container *ngIf="resizable && vertical">
|
|
@@ -12355,9 +12384,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
12355
12384
|
selector: '[dayTimeViewItem]',
|
|
12356
12385
|
template: `
|
|
12357
12386
|
<span class="k-event-actions">
|
|
12358
|
-
<span class="k-icon k-i-
|
|
12359
|
-
<span class="k-icon k-i-
|
|
12360
|
-
<span class="k-icon k-i-
|
|
12387
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="item.tail && !vertical"></span>
|
|
12388
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
12389
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
12361
12390
|
</span>
|
|
12362
12391
|
<ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"
|
|
12363
12392
|
[ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">
|
|
@@ -12369,17 +12398,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
12369
12398
|
|
|
12370
12399
|
<span class="k-event-actions">
|
|
12371
12400
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
12372
|
-
<span class="k-icon k-i-
|
|
12401
|
+
<span class="k-icon k-i-x"></span>
|
|
12373
12402
|
</span>
|
|
12374
|
-
<span class="k-icon k-i-
|
|
12403
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="item.head && !vertical"></span>
|
|
12375
12404
|
</span>
|
|
12376
12405
|
|
|
12377
12406
|
<span class="k-event-top-actions" *ngIf="item.tail && vertical">
|
|
12378
|
-
<span class="k-icon k-i-
|
|
12407
|
+
<span class="k-icon k-i-caret-alt-up"></span>
|
|
12379
12408
|
</span>
|
|
12380
12409
|
|
|
12381
12410
|
<span class="k-event-bottom-actions" *ngIf="item.head && vertical">
|
|
12382
|
-
<span class="k-icon k-i-
|
|
12411
|
+
<span class="k-icon k-i-caret-alt-down"></span>
|
|
12383
12412
|
</span>
|
|
12384
12413
|
|
|
12385
12414
|
<ng-container *ngIf="resizable && vertical">
|
|
@@ -15411,10 +15440,11 @@ function seriesDate(head, occurrence, current, field) {
|
|
|
15411
15440
|
* @hidden
|
|
15412
15441
|
*/
|
|
15413
15442
|
class EditingDirectiveBase {
|
|
15414
|
-
constructor(scheduler, localDataChangesService, dialogsService) {
|
|
15443
|
+
constructor(scheduler, localDataChangesService, dialogsService, focusService) {
|
|
15415
15444
|
this.scheduler = scheduler;
|
|
15416
15445
|
this.localDataChangesService = localDataChangesService;
|
|
15417
15446
|
this.dialogsService = dialogsService;
|
|
15447
|
+
this.focusService = focusService;
|
|
15418
15448
|
/**
|
|
15419
15449
|
* Fires before the editing directive renders the **Add** dialog.
|
|
15420
15450
|
*/
|
|
@@ -15492,6 +15522,7 @@ class EditingDirectiveBase {
|
|
|
15492
15522
|
.subscribe((editMode) => {
|
|
15493
15523
|
if (editMode !== undefined) {
|
|
15494
15524
|
this.handleRemove(dataItem, editMode);
|
|
15525
|
+
this.focusService.focusFirst();
|
|
15495
15526
|
}
|
|
15496
15527
|
});
|
|
15497
15528
|
}
|
|
@@ -15500,6 +15531,7 @@ class EditingDirectiveBase {
|
|
|
15500
15531
|
.subscribe((shouldRemove) => {
|
|
15501
15532
|
if (shouldRemove) {
|
|
15502
15533
|
this.handleRemove(dataItem, 0 /* Event */);
|
|
15534
|
+
this.focusService.focusFirst();
|
|
15503
15535
|
}
|
|
15504
15536
|
});
|
|
15505
15537
|
}
|
|
@@ -15600,11 +15632,11 @@ class EditingDirectiveBase {
|
|
|
15600
15632
|
return editable && editable[action] !== false;
|
|
15601
15633
|
}
|
|
15602
15634
|
}
|
|
15603
|
-
EditingDirectiveBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditingDirectiveBase, deps: [{ token: SchedulerComponent }, { token: LocalDataChangesService }, { token: DialogsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
15635
|
+
EditingDirectiveBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditingDirectiveBase, deps: [{ token: SchedulerComponent }, { token: LocalDataChangesService }, { token: DialogsService }, { token: FocusService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
15604
15636
|
EditingDirectiveBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: EditingDirectiveBase, inputs: { editService: "editService" }, outputs: { add: "add", edit: "edit" }, ngImport: i0 });
|
|
15605
15637
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditingDirectiveBase, decorators: [{
|
|
15606
15638
|
type: Directive
|
|
15607
|
-
}], ctorParameters: function () { return [{ type: SchedulerComponent }, { type: LocalDataChangesService }, { type: DialogsService }]; }, propDecorators: { add: [{
|
|
15639
|
+
}], ctorParameters: function () { return [{ type: SchedulerComponent }, { type: LocalDataChangesService }, { type: DialogsService }, { type: FocusService }]; }, propDecorators: { add: [{
|
|
15608
15640
|
type: Output
|
|
15609
15641
|
}], edit: [{
|
|
15610
15642
|
type: Output
|
|
@@ -15617,8 +15649,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
15617
15649
|
* uses the [Reactive Angular Forms]({{ site.data.urls.angular['reactiveforms'] }}).
|
|
15618
15650
|
*/
|
|
15619
15651
|
class ReactiveEditingDirective extends EditingDirectiveBase {
|
|
15620
|
-
constructor(scheduler, localDataChangesService, dialogsService) {
|
|
15621
|
-
super(scheduler, localDataChangesService, dialogsService);
|
|
15652
|
+
constructor(scheduler, localDataChangesService, dialogsService, focusService) {
|
|
15653
|
+
super(scheduler, localDataChangesService, dialogsService, focusService);
|
|
15622
15654
|
this.scheduler = scheduler;
|
|
15623
15655
|
this.localDataChangesService = localDataChangesService;
|
|
15624
15656
|
this.dialogsService = dialogsService;
|
|
@@ -15692,14 +15724,14 @@ class ReactiveEditingDirective extends EditingDirectiveBase {
|
|
|
15692
15724
|
return false;
|
|
15693
15725
|
}
|
|
15694
15726
|
}
|
|
15695
|
-
ReactiveEditingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ReactiveEditingDirective, deps: [{ token: SchedulerComponent }, { token: LocalDataChangesService }, { token: DialogsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
15727
|
+
ReactiveEditingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ReactiveEditingDirective, deps: [{ token: SchedulerComponent }, { token: LocalDataChangesService }, { token: DialogsService }, { token: FocusService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
15696
15728
|
ReactiveEditingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ReactiveEditingDirective, selector: "[kendoSchedulerReactiveEditing]", inputs: { createFormGroup: ["kendoSchedulerReactiveEditing", "createFormGroup"] }, usesInheritance: true, ngImport: i0 });
|
|
15697
15729
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ReactiveEditingDirective, decorators: [{
|
|
15698
15730
|
type: Directive,
|
|
15699
15731
|
args: [{
|
|
15700
15732
|
selector: '[kendoSchedulerReactiveEditing]'
|
|
15701
15733
|
}]
|
|
15702
|
-
}], ctorParameters: function () { return [{ type: SchedulerComponent }, { type: LocalDataChangesService }, { type: DialogsService }]; }, propDecorators: { createFormGroup: [{
|
|
15734
|
+
}], ctorParameters: function () { return [{ type: SchedulerComponent }, { type: LocalDataChangesService }, { type: DialogsService }, { type: FocusService }]; }, propDecorators: { createFormGroup: [{
|
|
15703
15735
|
type: Input,
|
|
15704
15736
|
args: ['kendoSchedulerReactiveEditing']
|
|
15705
15737
|
}] } });
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2021 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 { ElementRef, Renderer2, OnDestroy, EventEmitter } from '@angular/core';
|
|
5
|
+
import { ElementRef, Renderer2, OnDestroy, EventEmitter, NgZone } from '@angular/core';
|
|
6
6
|
import { FocusableElement } from './focusable-element.interface';
|
|
7
7
|
import { DomEventsService } from '../views/common/dom-events.service';
|
|
8
8
|
import { FocusPosition } from './focus-position.interface';
|
|
@@ -14,19 +14,22 @@ export declare class FocusService implements OnDestroy {
|
|
|
14
14
|
private renderer;
|
|
15
15
|
private wrapper;
|
|
16
16
|
private domEvents;
|
|
17
|
+
private zone;
|
|
17
18
|
get activeElement(): ElementRef;
|
|
18
19
|
ariaActiveDescendant: EventEmitter<string | null>;
|
|
19
20
|
private activeItem;
|
|
20
21
|
private focusedItem;
|
|
22
|
+
private lastActiveDescendantId;
|
|
21
23
|
private items;
|
|
22
24
|
private elementMap;
|
|
23
25
|
private subs;
|
|
24
|
-
constructor(renderer: Renderer2, wrapper: ElementRef, domEvents: DomEventsService);
|
|
26
|
+
constructor(renderer: Renderer2, wrapper: ElementRef, domEvents: DomEventsService, zone: NgZone);
|
|
25
27
|
ngOnDestroy(): void;
|
|
26
28
|
register(item: FocusableElement): void;
|
|
27
29
|
unregister(item: FocusableElement): void;
|
|
28
30
|
focus(): void;
|
|
29
31
|
focusNext(options?: FocusPosition): boolean;
|
|
32
|
+
focusFirst(): void;
|
|
30
33
|
clearActiveDescendant(): void;
|
|
31
34
|
private activate;
|
|
32
35
|
private activateNext;
|
|
@@ -34,6 +37,6 @@ export declare class FocusService implements OnDestroy {
|
|
|
34
37
|
private toggleWrapper;
|
|
35
38
|
private onFocusIn;
|
|
36
39
|
private onFocusOut;
|
|
37
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<FocusService, [{ optional: true; }, { optional: true; }, null]>;
|
|
40
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FocusService, [{ optional: true; }, { optional: true; }, null, null]>;
|
|
38
41
|
static ɵprov: i0.ɵɵInjectableDeclaration<FocusService>;
|
|
39
42
|
}
|