@progress/kendo-angular-scheduler 4.3.0-dev.202207281540 → 4.3.1-dev.202208110754
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 -5
- 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 +87 -55
- package/navigation/focus.service.d.ts +6 -3
- package/package.json +1 -1
|
@@ -10,6 +10,7 @@ import { EditService } from './edit-service.interface';
|
|
|
10
10
|
import { DialogsService } from '../editing/dialogs.service';
|
|
11
11
|
import { EditMode } from '../types';
|
|
12
12
|
import { AddEvent, EditEvent } from '../events';
|
|
13
|
+
import { FocusService } from '../navigation';
|
|
13
14
|
import * as i0 from "@angular/core";
|
|
14
15
|
/**
|
|
15
16
|
* @hidden
|
|
@@ -18,6 +19,7 @@ export declare abstract class EditingDirectiveBase implements OnInit, OnDestroy
|
|
|
18
19
|
protected scheduler: SchedulerComponent;
|
|
19
20
|
protected localDataChangesService: LocalDataChangesService;
|
|
20
21
|
protected dialogsService: DialogsService;
|
|
22
|
+
private focusService;
|
|
21
23
|
/**
|
|
22
24
|
* Fires before the editing directive renders the **Add** dialog.
|
|
23
25
|
*/
|
|
@@ -36,7 +38,7 @@ export declare abstract class EditingDirectiveBase implements OnInit, OnDestroy
|
|
|
36
38
|
protected defaultEditService: EditService<any>;
|
|
37
39
|
protected userEditService: EditService<any>;
|
|
38
40
|
protected abstract createModel(args: any): any;
|
|
39
|
-
constructor(scheduler: SchedulerComponent, localDataChangesService: LocalDataChangesService, dialogsService: DialogsService);
|
|
41
|
+
constructor(scheduler: SchedulerComponent, localDataChangesService: LocalDataChangesService, dialogsService: DialogsService, focusService: FocusService);
|
|
40
42
|
/**
|
|
41
43
|
* @hidden
|
|
42
44
|
*/
|
|
@@ -8,6 +8,7 @@ import { EditingDirectiveBase } from './editing-directive-base';
|
|
|
8
8
|
import { CreateFormGroupArgs } from '../types/create-form-group-args.interface';
|
|
9
9
|
import { LocalDataChangesService } from '../editing/local-data-changes.service';
|
|
10
10
|
import { DialogsService } from '../editing/dialogs.service';
|
|
11
|
+
import { FocusService } from "../navigation";
|
|
11
12
|
import * as i0 from "@angular/core";
|
|
12
13
|
/**
|
|
13
14
|
* A directive which encapsulates the editing operations when the Scheduler
|
|
@@ -21,7 +22,7 @@ export declare class ReactiveEditingDirective extends EditingDirectiveBase {
|
|
|
21
22
|
* The function that creates the `FormGroup` for the edited model.
|
|
22
23
|
*/
|
|
23
24
|
createFormGroup: (args: CreateFormGroupArgs) => FormGroup;
|
|
24
|
-
constructor(scheduler: SchedulerComponent, localDataChangesService: LocalDataChangesService, dialogsService: DialogsService);
|
|
25
|
+
constructor(scheduler: SchedulerComponent, localDataChangesService: LocalDataChangesService, dialogsService: DialogsService, focusService: FocusService);
|
|
25
26
|
ngOnInit(): void;
|
|
26
27
|
protected editHandler(args: any): void;
|
|
27
28
|
protected saveHandler(args: any): void;
|
|
@@ -12,14 +12,16 @@ import * as i0 from "@angular/core";
|
|
|
12
12
|
import * as i1 from "../scheduler.component";
|
|
13
13
|
import * as i2 from "../editing/local-data-changes.service";
|
|
14
14
|
import * as i3 from "../editing/dialogs.service";
|
|
15
|
+
import * as i4 from "../navigation";
|
|
15
16
|
/**
|
|
16
17
|
* @hidden
|
|
17
18
|
*/
|
|
18
19
|
export class EditingDirectiveBase {
|
|
19
|
-
constructor(scheduler, localDataChangesService, dialogsService) {
|
|
20
|
+
constructor(scheduler, localDataChangesService, dialogsService, focusService) {
|
|
20
21
|
this.scheduler = scheduler;
|
|
21
22
|
this.localDataChangesService = localDataChangesService;
|
|
22
23
|
this.dialogsService = dialogsService;
|
|
24
|
+
this.focusService = focusService;
|
|
23
25
|
/**
|
|
24
26
|
* Fires before the editing directive renders the **Add** dialog.
|
|
25
27
|
*/
|
|
@@ -97,6 +99,7 @@ export class EditingDirectiveBase {
|
|
|
97
99
|
.subscribe((editMode) => {
|
|
98
100
|
if (editMode !== undefined) {
|
|
99
101
|
this.handleRemove(dataItem, editMode);
|
|
102
|
+
this.focusService.focusFirst();
|
|
100
103
|
}
|
|
101
104
|
});
|
|
102
105
|
}
|
|
@@ -105,6 +108,7 @@ export class EditingDirectiveBase {
|
|
|
105
108
|
.subscribe((shouldRemove) => {
|
|
106
109
|
if (shouldRemove) {
|
|
107
110
|
this.handleRemove(dataItem, 0 /* Event */);
|
|
111
|
+
this.focusService.focusFirst();
|
|
108
112
|
}
|
|
109
113
|
});
|
|
110
114
|
}
|
|
@@ -205,11 +209,11 @@ export class EditingDirectiveBase {
|
|
|
205
209
|
return editable && editable[action] !== false;
|
|
206
210
|
}
|
|
207
211
|
}
|
|
208
|
-
EditingDirectiveBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditingDirectiveBase, deps: [{ token: i1.SchedulerComponent }, { token: i2.LocalDataChangesService }, { token: i3.DialogsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
212
|
+
EditingDirectiveBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditingDirectiveBase, deps: [{ token: i1.SchedulerComponent }, { token: i2.LocalDataChangesService }, { token: i3.DialogsService }, { token: i4.FocusService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
209
213
|
EditingDirectiveBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: EditingDirectiveBase, inputs: { editService: "editService" }, outputs: { add: "add", edit: "edit" }, ngImport: i0 });
|
|
210
214
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: EditingDirectiveBase, decorators: [{
|
|
211
215
|
type: Directive
|
|
212
|
-
}], ctorParameters: function () { return [{ type: i1.SchedulerComponent }, { type: i2.LocalDataChangesService }, { type: i3.DialogsService }]; }, propDecorators: { add: [{
|
|
216
|
+
}], ctorParameters: function () { return [{ type: i1.SchedulerComponent }, { type: i2.LocalDataChangesService }, { type: i3.DialogsService }, { type: i4.FocusService }]; }, propDecorators: { add: [{
|
|
213
217
|
type: Output
|
|
214
218
|
}], edit: [{
|
|
215
219
|
type: Output
|
|
@@ -11,13 +11,14 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
import * as i1 from "../scheduler.component";
|
|
12
12
|
import * as i2 from "../editing/local-data-changes.service";
|
|
13
13
|
import * as i3 from "../editing/dialogs.service";
|
|
14
|
+
import * as i4 from "../navigation";
|
|
14
15
|
/**
|
|
15
16
|
* A directive which encapsulates the editing operations when the Scheduler
|
|
16
17
|
* uses the [Reactive Angular Forms]({{ site.data.urls.angular['reactiveforms'] }}).
|
|
17
18
|
*/
|
|
18
19
|
export class ReactiveEditingDirective extends EditingDirectiveBase {
|
|
19
|
-
constructor(scheduler, localDataChangesService, dialogsService) {
|
|
20
|
-
super(scheduler, localDataChangesService, dialogsService);
|
|
20
|
+
constructor(scheduler, localDataChangesService, dialogsService, focusService) {
|
|
21
|
+
super(scheduler, localDataChangesService, dialogsService, focusService);
|
|
21
22
|
this.scheduler = scheduler;
|
|
22
23
|
this.localDataChangesService = localDataChangesService;
|
|
23
24
|
this.dialogsService = dialogsService;
|
|
@@ -91,14 +92,14 @@ export class ReactiveEditingDirective extends EditingDirectiveBase {
|
|
|
91
92
|
return false;
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
|
-
ReactiveEditingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ReactiveEditingDirective, deps: [{ token: i1.SchedulerComponent }, { token: i2.LocalDataChangesService }, { token: i3.DialogsService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
95
|
+
ReactiveEditingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ReactiveEditingDirective, deps: [{ token: i1.SchedulerComponent }, { token: i2.LocalDataChangesService }, { token: i3.DialogsService }, { token: i4.FocusService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
95
96
|
ReactiveEditingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ReactiveEditingDirective, selector: "[kendoSchedulerReactiveEditing]", inputs: { createFormGroup: ["kendoSchedulerReactiveEditing", "createFormGroup"] }, usesInheritance: true, ngImport: i0 });
|
|
96
97
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ReactiveEditingDirective, decorators: [{
|
|
97
98
|
type: Directive,
|
|
98
99
|
args: [{
|
|
99
100
|
selector: '[kendoSchedulerReactiveEditing]'
|
|
100
101
|
}]
|
|
101
|
-
}], ctorParameters: function () { return [{ type: i1.SchedulerComponent }, { type: i2.LocalDataChangesService }, { type: i3.DialogsService }]; }, propDecorators: { createFormGroup: [{
|
|
102
|
+
}], ctorParameters: function () { return [{ type: i1.SchedulerComponent }, { type: i2.LocalDataChangesService }, { type: i3.DialogsService }, { type: i4.FocusService }]; }, propDecorators: { createFormGroup: [{
|
|
102
103
|
type: Input,
|
|
103
104
|
args: ['kendoSchedulerReactiveEditing']
|
|
104
105
|
}] } });
|
|
@@ -3,17 +3,18 @@
|
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
5
|
import { Injectable, Optional, EventEmitter } from '@angular/core';
|
|
6
|
-
import { Subscription } from 'rxjs';
|
|
6
|
+
import { Subscription, take } from 'rxjs';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "../views/common/dom-events.service";
|
|
9
9
|
/**
|
|
10
10
|
* @hidden
|
|
11
11
|
*/
|
|
12
12
|
export class FocusService {
|
|
13
|
-
constructor(renderer, wrapper, domEvents) {
|
|
13
|
+
constructor(renderer, wrapper, domEvents, zone) {
|
|
14
14
|
this.renderer = renderer;
|
|
15
15
|
this.wrapper = wrapper;
|
|
16
16
|
this.domEvents = domEvents;
|
|
17
|
+
this.zone = zone;
|
|
17
18
|
this.ariaActiveDescendant = new EventEmitter();
|
|
18
19
|
this.items = new Set();
|
|
19
20
|
this.elementMap = new WeakMap();
|
|
@@ -62,6 +63,24 @@ export class FocusService {
|
|
|
62
63
|
}
|
|
63
64
|
return this.activeItem !== currentItem;
|
|
64
65
|
}
|
|
66
|
+
focusFirst() {
|
|
67
|
+
const firstEvent = Array.from(this.items.values())[0];
|
|
68
|
+
if (!firstEvent) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
this.activate(firstEvent.element.nativeElement);
|
|
72
|
+
this.focus();
|
|
73
|
+
this.zone.onStable.pipe(take(1)).subscribe(() => {
|
|
74
|
+
const first = Array.from(this.items.values())[0];
|
|
75
|
+
if (!first) {
|
|
76
|
+
this.clearActiveDescendant();
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const id = first.element.nativeElement.getAttribute('id');
|
|
80
|
+
this.ariaActiveDescendant.next(id);
|
|
81
|
+
this.lastActiveDescendantId = id;
|
|
82
|
+
});
|
|
83
|
+
}
|
|
65
84
|
clearActiveDescendant() {
|
|
66
85
|
this.ariaActiveDescendant.next(null);
|
|
67
86
|
}
|
|
@@ -72,6 +91,7 @@ export class FocusService {
|
|
|
72
91
|
if (item === next) {
|
|
73
92
|
const id = item.element.nativeElement.getAttribute('id');
|
|
74
93
|
this.ariaActiveDescendant.next(id);
|
|
94
|
+
this.lastActiveDescendantId = id;
|
|
75
95
|
}
|
|
76
96
|
});
|
|
77
97
|
this.activeItem = next;
|
|
@@ -110,6 +130,10 @@ export class FocusService {
|
|
|
110
130
|
}
|
|
111
131
|
onFocusIn(e) {
|
|
112
132
|
const item = this.elementMap.get(e.target);
|
|
133
|
+
const shouldRestoreActiveDescendant = this.lastActiveDescendantId && this.lastActiveDescendantId !== (item === null || item === void 0 ? void 0 : item.element.nativeElement.getAttribute('id'));
|
|
134
|
+
if (shouldRestoreActiveDescendant) {
|
|
135
|
+
this.ariaActiveDescendant.next(this.lastActiveDescendantId);
|
|
136
|
+
}
|
|
113
137
|
if (!item || item === this.focusedItem) {
|
|
114
138
|
return;
|
|
115
139
|
}
|
|
@@ -126,10 +150,10 @@ export class FocusService {
|
|
|
126
150
|
}
|
|
127
151
|
this.focusedItem.toggleFocus(false);
|
|
128
152
|
this.focusedItem = null;
|
|
129
|
-
this.
|
|
153
|
+
this.clearActiveDescendant();
|
|
130
154
|
}
|
|
131
155
|
}
|
|
132
|
-
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: i1.DomEventsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
156
|
+
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: i1.DomEventsService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
133
157
|
FocusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService });
|
|
134
158
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusService, decorators: [{
|
|
135
159
|
type: Injectable
|
|
@@ -137,4 +161,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
137
161
|
type: Optional
|
|
138
162
|
}] }, { type: i0.ElementRef, decorators: [{
|
|
139
163
|
type: Optional
|
|
140
|
-
}] }, { type: i1.DomEventsService }]; } });
|
|
164
|
+
}] }, { type: i1.DomEventsService }, { type: i0.NgZone }]; } });
|
|
@@ -44,6 +44,7 @@ export class FocusableDirective {
|
|
|
44
44
|
this.element.nativeElement.focus();
|
|
45
45
|
}
|
|
46
46
|
toggleFocus(value) {
|
|
47
|
+
var _a;
|
|
47
48
|
const focusedClass = 'k-selected';
|
|
48
49
|
const element = this.element.nativeElement;
|
|
49
50
|
if (value) {
|
|
@@ -52,7 +53,11 @@ export class FocusableDirective {
|
|
|
52
53
|
else {
|
|
53
54
|
this.renderer.removeClass(element, focusedClass);
|
|
54
55
|
}
|
|
55
|
-
|
|
56
|
+
const selectable = element.matches('.k-scheduler-agendaview .k-scheduler-content .k-selected');
|
|
57
|
+
if (selectable) {
|
|
58
|
+
(_a = element.closest('.k-scheduler-agendaview').querySelector('[aria-selected="true"]')) === null || _a === void 0 ? void 0 : _a.removeAttribute('aria-selected');
|
|
59
|
+
this.renderer.setAttribute(element, 'aria-selected', value.toString());
|
|
60
|
+
}
|
|
56
61
|
}
|
|
57
62
|
}
|
|
58
63
|
FocusableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FocusableDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.FocusService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-scheduler',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
12
|
+
publishDate: 1660204372,
|
|
13
13
|
version: '',
|
|
14
14
|
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'
|
|
15
15
|
};
|
|
@@ -42,8 +42,8 @@ AgendaTaskItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0",
|
|
|
42
42
|
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: `
|
|
43
43
|
<div class="k-task" [title]="item.title">
|
|
44
44
|
<span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>
|
|
45
|
-
<span class="k-icon k-i-
|
|
46
|
-
<span class="k-icon k-i-
|
|
45
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
46
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
47
47
|
<ng-container *ngIf="!eventTemplate">
|
|
48
48
|
{{item?.title }}
|
|
49
49
|
</ng-container>
|
|
@@ -52,7 +52,7 @@ AgendaTaskItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
52
52
|
</ng-container>
|
|
53
53
|
|
|
54
54
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
55
|
-
<span class="k-icon k-i-
|
|
55
|
+
<span class="k-icon k-i-x"></span>
|
|
56
56
|
</span>
|
|
57
57
|
</div>
|
|
58
58
|
`, isInline: true, directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
@@ -65,8 +65,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
65
65
|
template: `
|
|
66
66
|
<div class="k-task" [title]="item.title">
|
|
67
67
|
<span class="k-scheduler-mark" *ngIf="eventColor" [style.background-color]="eventColor"></span>
|
|
68
|
-
<span class="k-icon k-i-
|
|
69
|
-
<span class="k-icon k-i-
|
|
68
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
69
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
70
70
|
<ng-container *ngIf="!eventTemplate">
|
|
71
71
|
{{item?.title }}
|
|
72
72
|
</ng-container>
|
|
@@ -75,7 +75,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
75
75
|
</ng-container>
|
|
76
76
|
|
|
77
77
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
78
|
-
<span class="k-icon k-i-
|
|
78
|
+
<span class="k-icon k-i-x"></span>
|
|
79
79
|
</span>
|
|
80
80
|
</div>
|
|
81
81
|
`
|
|
@@ -86,9 +86,9 @@ AgendaListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
|
|
|
86
86
|
</td>
|
|
87
87
|
<td class="k-scheduler-timecolumn" role="gridcell">
|
|
88
88
|
<div *ngIf="!agendaTimeTemplate">
|
|
89
|
-
<span class="k-icon k-i-
|
|
89
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="extractDataItem(item).tail"></span>
|
|
90
90
|
{{ formatTime(extractDataItem(item)) }}
|
|
91
|
-
<span class="k-icon k-i-
|
|
91
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="extractDataItem(item).head"></span>
|
|
92
92
|
</div>
|
|
93
93
|
<ng-container *ngIf="agendaTimeTemplate" [ngTemplateOutlet]="agendaTimeTemplate"
|
|
94
94
|
[ngTemplateOutletContext]="extractDataItem(item)">
|
|
@@ -128,9 +128,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
128
128
|
</td>
|
|
129
129
|
<td class="k-scheduler-timecolumn" role="gridcell">
|
|
130
130
|
<div *ngIf="!agendaTimeTemplate">
|
|
131
|
-
<span class="k-icon k-i-
|
|
131
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="extractDataItem(item).tail"></span>
|
|
132
132
|
{{ formatTime(extractDataItem(item)) }}
|
|
133
|
-
<span class="k-icon k-i-
|
|
133
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="extractDataItem(item).head"></span>
|
|
134
134
|
</div>
|
|
135
135
|
<ng-container *ngIf="agendaTimeTemplate" [ngTemplateOutlet]="agendaTimeTemplate"
|
|
136
136
|
[ngTemplateOutletContext]="extractDataItem(item)">
|
|
@@ -27,9 +27,9 @@ export class DayTimeViewItemComponent extends BaseViewItem {
|
|
|
27
27
|
DayTimeViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DayTimeViewItemComponent, deps: [{ token: i1.IntlService }, { token: i2.DayTimeSlotService }, { token: i3.LocalizationService }, { token: i4.FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
|
|
28
28
|
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: `
|
|
29
29
|
<span class="k-event-actions">
|
|
30
|
-
<span class="k-icon k-i-
|
|
31
|
-
<span class="k-icon k-i-
|
|
32
|
-
<span class="k-icon k-i-
|
|
30
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="item.tail && !vertical"></span>
|
|
31
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
32
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
33
33
|
</span>
|
|
34
34
|
<ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"
|
|
35
35
|
[ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">
|
|
@@ -41,17 +41,17 @@ DayTimeViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0
|
|
|
41
41
|
|
|
42
42
|
<span class="k-event-actions">
|
|
43
43
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
44
|
-
<span class="k-icon k-i-
|
|
44
|
+
<span class="k-icon k-i-x"></span>
|
|
45
45
|
</span>
|
|
46
|
-
<span class="k-icon k-i-
|
|
46
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="item.head && !vertical"></span>
|
|
47
47
|
</span>
|
|
48
48
|
|
|
49
49
|
<span class="k-event-top-actions" *ngIf="item.tail && vertical">
|
|
50
|
-
<span class="k-icon k-i-
|
|
50
|
+
<span class="k-icon k-i-caret-alt-up"></span>
|
|
51
51
|
</span>
|
|
52
52
|
|
|
53
53
|
<span class="k-event-bottom-actions" *ngIf="item.head && vertical">
|
|
54
|
-
<span class="k-icon k-i-
|
|
54
|
+
<span class="k-icon k-i-caret-alt-down"></span>
|
|
55
55
|
</span>
|
|
56
56
|
|
|
57
57
|
<ng-container *ngIf="resizable && vertical">
|
|
@@ -71,9 +71,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
71
71
|
selector: '[dayTimeViewItem]',
|
|
72
72
|
template: `
|
|
73
73
|
<span class="k-event-actions">
|
|
74
|
-
<span class="k-icon k-i-
|
|
75
|
-
<span class="k-icon k-i-
|
|
76
|
-
<span class="k-icon k-i-
|
|
74
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="item.tail && !vertical"></span>
|
|
75
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
76
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
77
77
|
</span>
|
|
78
78
|
<ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"
|
|
79
79
|
[ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">
|
|
@@ -85,17 +85,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
85
85
|
|
|
86
86
|
<span class="k-event-actions">
|
|
87
87
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
88
|
-
<span class="k-icon k-i-
|
|
88
|
+
<span class="k-icon k-i-x"></span>
|
|
89
89
|
</span>
|
|
90
|
-
<span class="k-icon k-i-
|
|
90
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="item.head && !vertical"></span>
|
|
91
91
|
</span>
|
|
92
92
|
|
|
93
93
|
<span class="k-event-top-actions" *ngIf="item.tail && vertical">
|
|
94
|
-
<span class="k-icon k-i-
|
|
94
|
+
<span class="k-icon k-i-caret-alt-up"></span>
|
|
95
95
|
</span>
|
|
96
96
|
|
|
97
97
|
<span class="k-event-bottom-actions" *ngIf="item.head && vertical">
|
|
98
|
-
<span class="k-icon k-i-
|
|
98
|
+
<span class="k-icon k-i-caret-alt-down"></span>
|
|
99
99
|
</span>
|
|
100
100
|
|
|
101
101
|
<ng-container *ngIf="resizable && vertical">
|
|
@@ -28,9 +28,9 @@ export class MonthViewItemComponent extends BaseViewItem {
|
|
|
28
28
|
MonthViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MonthViewItemComponent, deps: [{ token: i1.MonthSlotService }, { token: i2.LocalizationService }, { token: i3.FocusService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Component });
|
|
29
29
|
MonthViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: MonthViewItemComponent, selector: "[monthViewItem]", usesInheritance: true, ngImport: i0, template: `
|
|
30
30
|
<span class="k-event-actions">
|
|
31
|
-
<span class="k-icon k-i-
|
|
32
|
-
<span class="k-icon k-i-
|
|
33
|
-
<span class="k-icon k-i-
|
|
31
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="item.tail"></span>
|
|
32
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
33
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
34
34
|
</span>
|
|
35
35
|
<ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"
|
|
36
36
|
[ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">
|
|
@@ -41,9 +41,9 @@ MonthViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
41
41
|
|
|
42
42
|
<span class="k-event-actions">
|
|
43
43
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
44
|
-
<span class="k-icon k-i-
|
|
44
|
+
<span class="k-icon k-i-x"></span>
|
|
45
45
|
</span>
|
|
46
|
-
<span class="k-icon k-i-
|
|
46
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="item.head"></span>
|
|
47
47
|
</span>
|
|
48
48
|
|
|
49
49
|
<ng-container *ngIf="resizable">
|
|
@@ -58,9 +58,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
58
58
|
selector: '[monthViewItem]',
|
|
59
59
|
template: `
|
|
60
60
|
<span class="k-event-actions">
|
|
61
|
-
<span class="k-icon k-i-
|
|
62
|
-
<span class="k-icon k-i-
|
|
63
|
-
<span class="k-icon k-i-
|
|
61
|
+
<span class="k-icon k-i-caret-alt-left" *ngIf="item.tail"></span>
|
|
62
|
+
<span class="k-icon k-i-arrow-rotate-cw" *ngIf="isRecurrence"></span>
|
|
63
|
+
<span class="k-icon k-i-arrows-no-repeat" *ngIf="isRecurrenceException"></span>
|
|
64
64
|
</span>
|
|
65
65
|
<ng-container *ngIf="eventTemplate" [ngTemplateOutlet]="eventTemplate"
|
|
66
66
|
[ngTemplateOutletContext]="{ $implicit: item.event, event: item.event, resources: resources }">
|
|
@@ -71,9 +71,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
71
71
|
|
|
72
72
|
<span class="k-event-actions">
|
|
73
73
|
<span *ngIf="removable" class="k-link k-event-delete" aria-hidden="true" [attr.title]="deleteMessage">
|
|
74
|
-
<span class="k-icon k-i-
|
|
74
|
+
<span class="k-icon k-i-x"></span>
|
|
75
75
|
</span>
|
|
76
|
-
<span class="k-icon k-i-
|
|
76
|
+
<span class="k-icon k-i-caret-alt-right" *ngIf="item.head"></span>
|
|
77
77
|
</span>
|
|
78
78
|
|
|
79
79
|
<ng-container *ngIf="resizable">
|
|
@@ -276,7 +276,7 @@ MonthViewRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
|
|
|
276
276
|
</ng-container>
|
|
277
277
|
</table>
|
|
278
278
|
</div>
|
|
279
|
-
<div class="k-scheduler-content" #content>
|
|
279
|
+
<div class="k-scheduler-content" tabindex="0" #content>
|
|
280
280
|
<table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">
|
|
281
281
|
<ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex">
|
|
282
282
|
<tr *ngFor="let week of weeks; let rangeIndex = index; trackBy: itemIndex">
|
|
@@ -404,7 +404,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
404
404
|
</ng-container>
|
|
405
405
|
</table>
|
|
406
406
|
</div>
|
|
407
|
-
<div class="k-scheduler-content" #content>
|
|
407
|
+
<div class="k-scheduler-content" tabindex="0" #content>
|
|
408
408
|
<table class="k-scheduler-table k-user-select-none" #contentTable role="presentation">
|
|
409
409
|
<ng-container *ngFor="let resourceItem of verticalResources | resourceIterator; let verticalIndex = index; trackBy: itemIndex">
|
|
410
410
|
<tr *ngFor="let week of weeks; let rangeIndex = index; trackBy: itemIndex">
|