@daypilot/daypilot-lite-angular 4.8.1 → 5.0.0-sandbox.760

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.
Files changed (31) hide show
  1. package/{esm2020 → esm2022}/daypilot-daypilot-lite-angular.mjs +4 -4
  2. package/esm2022/lib/core/daypilot-core.mjs +4122 -0
  3. package/esm2022/lib/daypilot-calendar.component.mjs +146 -0
  4. package/esm2022/lib/daypilot-month.component.mjs +136 -0
  5. package/esm2022/lib/daypilot-navigator.component.mjs +183 -0
  6. package/esm2022/lib/daypilot-scheduler.component.mjs +145 -0
  7. package/esm2022/lib/daypilot.module.mjs +37 -0
  8. package/esm2022/lib/util.mjs +45 -0
  9. package/{esm2020 → esm2022}/public-api.mjs +9 -9
  10. package/{fesm2020 → fesm2022}/daypilot-daypilot-lite-angular.mjs +4777 -4199
  11. package/fesm2022/daypilot-daypilot-lite-angular.mjs.map +1 -0
  12. package/{daypilot-daypilot-lite-angular.d.ts → index.d.ts} +5 -5
  13. package/lib/core/daypilot-core.d.ts +1431 -1427
  14. package/lib/daypilot-calendar.component.d.ts +31 -25
  15. package/lib/daypilot-month.component.d.ts +29 -22
  16. package/lib/daypilot-navigator.component.d.ts +36 -29
  17. package/lib/daypilot-scheduler.component.d.ts +31 -25
  18. package/lib/daypilot.module.d.ts +10 -10
  19. package/lib/util.d.ts +8 -6
  20. package/package.json +10 -16
  21. package/public-api.d.ts +6 -6
  22. package/esm2020/lib/core/daypilot-core.mjs +0 -3732
  23. package/esm2020/lib/daypilot-calendar.component.mjs +0 -102
  24. package/esm2020/lib/daypilot-month.component.mjs +0 -82
  25. package/esm2020/lib/daypilot-navigator.component.mjs +0 -127
  26. package/esm2020/lib/daypilot-scheduler.component.mjs +0 -102
  27. package/esm2020/lib/daypilot.module.mjs +0 -36
  28. package/esm2020/lib/util.mjs +0 -49
  29. package/fesm2015/daypilot-daypilot-lite-angular.mjs +0 -6487
  30. package/fesm2015/daypilot-daypilot-lite-angular.mjs.map +0 -1
  31. package/fesm2020/daypilot-daypilot-lite-angular.mjs.map +0 -1
@@ -1,102 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { DayPilot } from "./core/daypilot-core";
3
- import { optHash, rand } from "./util";
4
- import * as i0 from "@angular/core";
5
- export class DayPilotCalendarComponent {
6
- constructor() {
7
- this.viewChange = new EventEmitter();
8
- this.events = [];
9
- this._requestUpdateFull = false;
10
- this._requestUpdateEvents = false;
11
- this._requestViewChange = false;
12
- this._hashOptions = "";
13
- this._hashEvents = "";
14
- this._id = "dp_" + new Date().getTime() + rand();
15
- }
16
- get id() {
17
- return this._id;
18
- }
19
- ngOnInit() {
20
- }
21
- ngOnDestroy() {
22
- this.dispose();
23
- }
24
- ngAfterViewInit() {
25
- this.dispose();
26
- let dp = new DayPilot.Calendar(this.id);
27
- this.control = dp;
28
- this.updateOptions();
29
- this.updateEvents();
30
- this._requestUpdateFull = false; // config just loaded and calling init(), no need to call update again
31
- this._requestUpdateEvents = false; // config just loaded and calling init(), no need to call update again
32
- dp.init();
33
- }
34
- ngDoCheck() {
35
- if (!this.control) {
36
- return;
37
- }
38
- this.updateOptions();
39
- this.updateEvents();
40
- if (this._requestUpdateFull) {
41
- this.control.update();
42
- this._requestUpdateFull = false;
43
- this._requestUpdateEvents = false;
44
- }
45
- else if (this._requestUpdateEvents) {
46
- this.control.update({ "events": this.events });
47
- this._requestUpdateEvents = false;
48
- }
49
- if (this._requestViewChange) {
50
- this._requestViewChange = false;
51
- let args = {};
52
- this.viewChange.emit(args);
53
- }
54
- }
55
- dispose() {
56
- if (this.control) {
57
- this.control.dispose();
58
- //@ts-ignore
59
- this.control = null;
60
- }
61
- }
62
- updateOptions() {
63
- let hash = optHash(this.config);
64
- if (hash !== this._hashOptions) {
65
- let dp = this.control;
66
- dp.internal.loadOptions(this.config);
67
- this._requestUpdateFull = true;
68
- this._requestViewChange = true;
69
- }
70
- this._hashOptions = hash;
71
- }
72
- updateEvents() {
73
- let hash = optHash(this.events);
74
- if (hash !== this._hashEvents) {
75
- let dp = this.control;
76
- if (dp) {
77
- dp.events.list = this.events;
78
- }
79
- this._requestUpdateEvents = true;
80
- }
81
- this._hashEvents = hash;
82
- }
83
- }
84
- DayPilotCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
85
- DayPilotCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: DayPilotCalendarComponent, selector: "daypilot-calendar", inputs: { events: "events", config: "config" }, outputs: { viewChange: "viewChange" }, ngImport: i0, template: `
86
- <div id='{{id}}'></div>`, isInline: true, styles: [""] });
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotCalendarComponent, decorators: [{
88
- type: Component,
89
- args: [{
90
- selector: 'daypilot-calendar',
91
- template: `
92
- <div id='{{id}}'></div>`,
93
- styles: [``]
94
- }]
95
- }], propDecorators: { viewChange: [{
96
- type: Output
97
- }], events: [{
98
- type: Input
99
- }], config: [{
100
- type: Input
101
- }] } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5cGlsb3QtY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF5cGlsb3QvZGF5cGlsb3QtbGl0ZS1hbmd1bGFyL3NyYy9saWIvZGF5cGlsb3QtY2FsZW5kYXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFXLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoSCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDOUMsT0FBTyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxRQUFRLENBQUM7O0FBUXJDLE1BQU0sT0FBTyx5QkFBeUI7SUFOdEM7UUFTWSxlQUFVLEdBQWdDLElBQUksWUFBWSxFQUFpQixDQUFDO1FBQzdFLFdBQU0sR0FBeUIsRUFBRSxDQUFDO1FBRW5DLHVCQUFrQixHQUFZLEtBQUssQ0FBQztRQUNwQyx5QkFBb0IsR0FBWSxLQUFLLENBQUM7UUFDdEMsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ3BDLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQzFCLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBRXpCLFFBQUcsR0FBVyxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLEVBQUUsQ0FBQztLQTZFN0Q7SUEzRUMsSUFBSSxFQUFFO1FBQ0osT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixJQUFJLEVBQUUsR0FBRyxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxDQUFDLHNFQUFzRTtRQUN2RyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDLENBQUMsc0VBQXNFO1FBQ3pHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7WUFDaEMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQztTQUNuQzthQUNJLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUM7U0FDbkM7UUFDRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUMzQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO1lBQ2hDLElBQUksSUFBSSxHQUFRLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM1QjtJQUNILENBQUM7SUFFTyxPQUFPO1FBQ2IsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdkIsWUFBWTtZQUNaLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoQyxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQzlCLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFjLENBQUM7WUFDN0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7WUFDL0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztTQUNoQztRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBRTNCLENBQUM7SUFFTyxZQUFZO1FBQ2xCLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUM3QixJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ3RCLElBQUksRUFBRSxFQUFFO2dCQUNOLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7YUFDOUI7WUFDRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDO1NBQ2xDO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQzs7c0hBeEZVLHlCQUF5QjswR0FBekIseUJBQXlCLGdKQUoxQjs0QkFDZ0I7MkZBR2YseUJBQXlCO2tCQU5yQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRTs0QkFDZ0I7b0JBQzFCLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztpQkFDYjs4QkFJVyxVQUFVO3NCQUFuQixNQUFNO2dCQUNFLE1BQU07c0JBQWQsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRG9DaGVjaywgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RheVBpbG90fSBmcm9tIFwiLi9jb3JlL2RheXBpbG90LWNvcmVcIjtcbmltcG9ydCB7b3B0SGFzaCwgcmFuZH0gZnJvbSBcIi4vdXRpbFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYXlwaWxvdC1jYWxlbmRhcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBpZD0ne3tpZH19Jz48L2Rpdj5gLFxuICBzdHlsZXM6IFtgYF1cbn0pXG5leHBvcnQgY2xhc3MgRGF5UGlsb3RDYWxlbmRhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBEb0NoZWNrIHtcblxuICBwdWJsaWMgY29udHJvbCE6IERheVBpbG90LkNhbGVuZGFyO1xuICBAT3V0cHV0KCkgdmlld0NoYW5nZTogRXZlbnRFbWl0dGVyPERheVBpbG90LkRhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXlQaWxvdC5EYXRlPigpO1xuICBASW5wdXQoKSBldmVudHM6IERheVBpbG90LkV2ZW50RGF0YVtdID0gW107XG4gIEBJbnB1dCgpIGNvbmZpZzogYW55O1xuICBwcml2YXRlIF9yZXF1ZXN0VXBkYXRlRnVsbDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9yZXF1ZXN0VXBkYXRlRXZlbnRzOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX3JlcXVlc3RWaWV3Q2hhbmdlOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX2hhc2hPcHRpb25zOiBzdHJpbmcgPSBcIlwiO1xuICBwcml2YXRlIF9oYXNoRXZlbnRzOiBzdHJpbmcgPSBcIlwiO1xuXG4gIHByaXZhdGUgX2lkOiBzdHJpbmcgPSBcImRwX1wiICsgbmV3IERhdGUoKS5nZXRUaW1lKCkgKyByYW5kKCk7XG5cbiAgZ2V0IGlkKCkge1xuICAgIHJldHVybiB0aGlzLl9pZDtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwb3NlKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwb3NlKCk7XG4gICAgbGV0IGRwID0gbmV3IERheVBpbG90LkNhbGVuZGFyKHRoaXMuaWQpO1xuICAgIHRoaXMuY29udHJvbCA9IGRwO1xuICAgIHRoaXMudXBkYXRlT3B0aW9ucygpO1xuICAgIHRoaXMudXBkYXRlRXZlbnRzKCk7XG4gICAgdGhpcy5fcmVxdWVzdFVwZGF0ZUZ1bGwgPSBmYWxzZTsgLy8gY29uZmlnIGp1c3QgbG9hZGVkIGFuZCBjYWxsaW5nIGluaXQoKSwgbm8gbmVlZCB0byBjYWxsIHVwZGF0ZSBhZ2FpblxuICAgIHRoaXMuX3JlcXVlc3RVcGRhdGVFdmVudHMgPSBmYWxzZTsgLy8gY29uZmlnIGp1c3QgbG9hZGVkIGFuZCBjYWxsaW5nIGluaXQoKSwgbm8gbmVlZCB0byBjYWxsIHVwZGF0ZSBhZ2FpblxuICAgIGRwLmluaXQoKTtcbiAgfVxuXG4gIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuY29udHJvbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnVwZGF0ZU9wdGlvbnMoKTtcbiAgICB0aGlzLnVwZGF0ZUV2ZW50cygpO1xuICAgIGlmICh0aGlzLl9yZXF1ZXN0VXBkYXRlRnVsbCkge1xuICAgICAgdGhpcy5jb250cm9sLnVwZGF0ZSgpO1xuICAgICAgdGhpcy5fcmVxdWVzdFVwZGF0ZUZ1bGwgPSBmYWxzZTtcbiAgICAgIHRoaXMuX3JlcXVlc3RVcGRhdGVFdmVudHMgPSBmYWxzZTtcbiAgICB9XG4gICAgZWxzZSBpZiAodGhpcy5fcmVxdWVzdFVwZGF0ZUV2ZW50cykge1xuICAgICAgdGhpcy5jb250cm9sLnVwZGF0ZSh7IFwiZXZlbnRzXCI6IHRoaXMuZXZlbnRzIH0pO1xuICAgICAgdGhpcy5fcmVxdWVzdFVwZGF0ZUV2ZW50cyA9IGZhbHNlO1xuICAgIH1cbiAgICBpZiAodGhpcy5fcmVxdWVzdFZpZXdDaGFuZ2UpIHtcbiAgICAgIHRoaXMuX3JlcXVlc3RWaWV3Q2hhbmdlID0gZmFsc2U7XG4gICAgICBsZXQgYXJnczogYW55ID0ge307XG4gICAgICB0aGlzLnZpZXdDaGFuZ2UuZW1pdChhcmdzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRpc3Bvc2UoKSB7XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgdGhpcy5jb250cm9sLmRpc3Bvc2UoKTtcbiAgICAgIC8vQHRzLWlnbm9yZVxuICAgICAgdGhpcy5jb250cm9sID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZU9wdGlvbnMoKTogdm9pZCB7XG4gICAgbGV0IGhhc2ggPSBvcHRIYXNoKHRoaXMuY29uZmlnKTtcbiAgICBpZiAoaGFzaCAhPT0gdGhpcy5faGFzaE9wdGlvbnMpIHtcbiAgICAgIGxldCBkcCA9IHRoaXMuY29udHJvbCBhcyBhbnk7XG4gICAgICBkcC5pbnRlcm5hbC5sb2FkT3B0aW9ucyh0aGlzLmNvbmZpZyk7XG4gICAgICB0aGlzLl9yZXF1ZXN0VXBkYXRlRnVsbCA9IHRydWU7XG4gICAgICB0aGlzLl9yZXF1ZXN0Vmlld0NoYW5nZSA9IHRydWU7XG4gICAgfVxuICAgIHRoaXMuX2hhc2hPcHRpb25zID0gaGFzaDtcblxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVFdmVudHMoKTogdm9pZCB7XG4gICAgbGV0IGhhc2ggPSBvcHRIYXNoKHRoaXMuZXZlbnRzKTtcbiAgICBpZiAoaGFzaCAhPT0gdGhpcy5faGFzaEV2ZW50cykge1xuICAgICAgbGV0IGRwID0gdGhpcy5jb250cm9sO1xuICAgICAgaWYgKGRwKSB7XG4gICAgICAgIGRwLmV2ZW50cy5saXN0ID0gdGhpcy5ldmVudHM7XG4gICAgICB9XG4gICAgICB0aGlzLl9yZXF1ZXN0VXBkYXRlRXZlbnRzID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy5faGFzaEV2ZW50cyA9IGhhc2g7XG4gIH1cbn1cbiJdfQ==
@@ -1,82 +0,0 @@
1
- import { Component, Input } from "@angular/core";
2
- import { DayPilot } from "./core/daypilot-core";
3
- import { optHash, rand } from "./util";
4
- import * as i0 from "@angular/core";
5
- export class DayPilotMonthComponent {
6
- constructor() {
7
- this.events = [];
8
- this._requestUpdate = false;
9
- this._hashOptions = "";
10
- this._hashEvents = "";
11
- this._id = "dp_" + new Date().getTime() + rand();
12
- }
13
- get id() {
14
- return this._id;
15
- }
16
- ngOnInit() {
17
- }
18
- ngOnDestroy() {
19
- this.dispose();
20
- }
21
- ngAfterViewInit() {
22
- this.dispose();
23
- this.control = new DayPilot.Month(this.id);
24
- this.updateOptions();
25
- this.updateEvents();
26
- this._requestUpdate = false; // config just loaded and calling init(), no need to call update again
27
- this.control.init();
28
- }
29
- ngDoCheck() {
30
- if (!this.control) {
31
- return;
32
- }
33
- this.updateOptions();
34
- this.updateEvents();
35
- if (this._requestUpdate) {
36
- this.control.update();
37
- this._requestUpdate = false;
38
- }
39
- }
40
- dispose() {
41
- if (this.control) {
42
- this.control.dispose();
43
- //@ts-ignore
44
- this.control = null;
45
- }
46
- }
47
- updateOptions() {
48
- let hash = optHash(this.config);
49
- if (hash !== this._hashOptions) {
50
- let dp = this.control;
51
- dp.internal.loadOptions(this.config);
52
- this._requestUpdate = true;
53
- }
54
- this._hashOptions = hash;
55
- }
56
- updateEvents() {
57
- let hash = optHash(this.events);
58
- if (hash !== this._hashEvents) {
59
- let dp = this.control;
60
- dp.events.list = this.events;
61
- this._requestUpdate = true;
62
- }
63
- this._hashEvents = hash;
64
- }
65
- }
66
- DayPilotMonthComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotMonthComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
67
- DayPilotMonthComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: DayPilotMonthComponent, selector: "daypilot-month", inputs: { events: "events", config: "config" }, ngImport: i0, template: `
68
- <div id='{{id}}'></div>`, isInline: true, styles: [""] });
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotMonthComponent, decorators: [{
70
- type: Component,
71
- args: [{
72
- selector: 'daypilot-month',
73
- template: `
74
- <div id='{{id}}'></div>`,
75
- styles: [``]
76
- }]
77
- }], propDecorators: { events: [{
78
- type: Input
79
- }], config: [{
80
- type: Input
81
- }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5cGlsb3QtbW9udGguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF5cGlsb3QvZGF5cGlsb3QtbGl0ZS1hbmd1bGFyL3NyYy9saWIvZGF5cGlsb3QtbW9udGguY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFXLEtBQUssRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sUUFBUSxDQUFDOztBQVFyQyxNQUFNLE9BQU8sc0JBQXNCO0lBTm5DO1FBU1csV0FBTSxHQUF5QixFQUFFLENBQUM7UUFFbkMsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFFekIsUUFBRyxHQUFXLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDO0tBOEQ3RDtJQTVEQyxJQUFJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLENBQUMsc0VBQXNFO1FBQ25HLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNqQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVPLE9BQU87UUFDYixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QixZQUFZO1lBQ1osSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hDLElBQUksSUFBSSxLQUFLLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDOUIsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQWMsQ0FBQztZQUM3QixFQUFFLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDckMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7U0FDNUI7UUFDRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hDLElBQUksSUFBSSxLQUFLLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDN0IsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUN0QixFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQzdCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1NBQzVCO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFFMUIsQ0FBQzs7bUhBdEVVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHNHQUp2Qjs0QkFDZ0I7MkZBR2Ysc0JBQXNCO2tCQU5sQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRTs0QkFDZ0I7b0JBQzFCLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztpQkFDYjs4QkFJVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIERvQ2hlY2ssIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7RGF5UGlsb3R9IGZyb20gXCIuL2NvcmUvZGF5cGlsb3QtY29yZVwiO1xuaW1wb3J0IHtvcHRIYXNoLCByYW5kfSBmcm9tIFwiLi91dGlsXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RheXBpbG90LW1vbnRoJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGlkPSd7e2lkfX0nPjwvZGl2PmAsXG4gIHN0eWxlczogW2BgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXlQaWxvdE1vbnRoQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIERvQ2hlY2sge1xuXG4gIHB1YmxpYyBjb250cm9sITogRGF5UGlsb3QuTW9udGg7XG4gIEBJbnB1dCgpIGV2ZW50czogRGF5UGlsb3QuRXZlbnREYXRhW10gPSBbXTtcbiAgQElucHV0KCkgY29uZmlnOiBhbnk7XG4gIHByaXZhdGUgX3JlcXVlc3RVcGRhdGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaGFzaE9wdGlvbnM6IHN0cmluZyA9IFwiXCI7XG4gIHByaXZhdGUgX2hhc2hFdmVudHM6IHN0cmluZyA9IFwiXCI7XG5cbiAgcHJpdmF0ZSBfaWQ6IHN0cmluZyA9IFwiZHBfXCIgKyBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIHJhbmQoKTtcblxuICBnZXQgaWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgICB0aGlzLmNvbnRyb2wgPSBuZXcgRGF5UGlsb3QuTW9udGgodGhpcy5pZCk7XG4gICAgdGhpcy51cGRhdGVPcHRpb25zKCk7XG4gICAgdGhpcy51cGRhdGVFdmVudHMoKTtcbiAgICB0aGlzLl9yZXF1ZXN0VXBkYXRlID0gZmFsc2U7IC8vIGNvbmZpZyBqdXN0IGxvYWRlZCBhbmQgY2FsbGluZyBpbml0KCksIG5vIG5lZWQgdG8gY2FsbCB1cGRhdGUgYWdhaW5cbiAgICB0aGlzLmNvbnRyb2wuaW5pdCgpO1xuICB9XG5cbiAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudXBkYXRlT3B0aW9ucygpO1xuICAgIHRoaXMudXBkYXRlRXZlbnRzKCk7XG4gICAgaWYgKHRoaXMuX3JlcXVlc3RVcGRhdGUpIHtcbiAgICAgIHRoaXMuY29udHJvbC51cGRhdGUoKTtcbiAgICAgIHRoaXMuX3JlcXVlc3RVcGRhdGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRpc3Bvc2UoKSB7XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgdGhpcy5jb250cm9sLmRpc3Bvc2UoKTtcbiAgICAgIC8vQHRzLWlnbm9yZVxuICAgICAgdGhpcy5jb250cm9sID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZU9wdGlvbnMoKTogdm9pZCB7XG4gICAgbGV0IGhhc2ggPSBvcHRIYXNoKHRoaXMuY29uZmlnKTtcbiAgICBpZiAoaGFzaCAhPT0gdGhpcy5faGFzaE9wdGlvbnMpIHtcbiAgICAgIGxldCBkcCA9IHRoaXMuY29udHJvbCBhcyBhbnk7XG4gICAgICBkcC5pbnRlcm5hbC5sb2FkT3B0aW9ucyh0aGlzLmNvbmZpZyk7XG4gICAgICB0aGlzLl9yZXF1ZXN0VXBkYXRlID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy5faGFzaE9wdGlvbnMgPSBoYXNoO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVFdmVudHMoKTogdm9pZCB7XG4gICAgbGV0IGhhc2ggPSBvcHRIYXNoKHRoaXMuZXZlbnRzKTtcbiAgICBpZiAoaGFzaCAhPT0gdGhpcy5faGFzaEV2ZW50cykge1xuICAgICAgbGV0IGRwID0gdGhpcy5jb250cm9sO1xuICAgICAgZHAuZXZlbnRzLmxpc3QgPSB0aGlzLmV2ZW50cztcbiAgICAgIHRoaXMuX3JlcXVlc3RVcGRhdGUgPSB0cnVlO1xuICAgIH1cbiAgICB0aGlzLl9oYXNoRXZlbnRzID0gaGFzaDtcblxuICB9XG59XG4iXX0=
@@ -1,127 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from "@angular/core";
2
- import { DayPilot } from "./core/daypilot-core";
3
- import { optHash, rand } from "./util";
4
- import * as i0 from "@angular/core";
5
- export class DayPilotNavigatorComponent {
6
- constructor() {
7
- this.events = [];
8
- this.dateChange = new EventEmitter();
9
- this._requestUpdate = false;
10
- this._hashOptions = "";
11
- this._hashEvents = "";
12
- this._onTrs = null;
13
- this._dateSet = false;
14
- this._currentDate = null;
15
- this._date = DayPilot.Date.today();
16
- this._id = "dp_" + new Date().getTime() + rand();
17
- }
18
- get date() {
19
- return this._date;
20
- }
21
- // @Input() date: DayPilot.Date = DayPilot.Date.today();
22
- set date(value) {
23
- this._date = value;
24
- this._dateSet = true;
25
- }
26
- get id() {
27
- return this._id;
28
- }
29
- ngOnInit() {
30
- }
31
- ngOnDestroy() {
32
- this.dispose();
33
- }
34
- ngAfterViewInit() {
35
- this.dispose();
36
- this.control = new DayPilot.Navigator(this.id);
37
- let component = this;
38
- this.updateOptions();
39
- this.updateEvents();
40
- let dp = this.control;
41
- this.control.onTimeRangeSelected = function (args) {
42
- // emit event
43
- component.dateChange.emit(args.day);
44
- // call the original
45
- if (component._onTrs) {
46
- component._onTrs.call(dp, args);
47
- }
48
- };
49
- this._requestUpdate = false; // config just loaded and calling init(), no need to call update again
50
- this.control.init();
51
- if (this.control.selectionDay !== DayPilot.Date.today()) {
52
- component.dateChange.emit(this.control.selectionDay);
53
- }
54
- }
55
- ngDoCheck() {
56
- if (!this.control) {
57
- return;
58
- }
59
- this.updateOptions();
60
- this.updateEvents();
61
- if (this._requestUpdate) {
62
- this.control.update();
63
- this._requestUpdate = false;
64
- }
65
- }
66
- dispose() {
67
- if (this.control) {
68
- this.control.dispose();
69
- //@ts-ignore
70
- this.control = null;
71
- }
72
- }
73
- updateOptions() {
74
- let dp = this.control;
75
- let hash = optHash(this.config);
76
- if (hash !== this._hashOptions) {
77
- for (let name in this.config) {
78
- if (name === "selectionDay") {
79
- continue; // ignore
80
- }
81
- if (name === "onTimeRangeSelected") {
82
- this._onTrs = this.config.onTimeRangeSelected;
83
- }
84
- else {
85
- dp[name] = this.config[name];
86
- }
87
- this._requestUpdate = true;
88
- }
89
- }
90
- if (this._dateSet && this.date) {
91
- this._dateSet = false;
92
- this._currentDate = dp.selectionDay;
93
- dp.select(this.date);
94
- }
95
- this._hashOptions = hash;
96
- }
97
- updateEvents() {
98
- let hash = optHash(this.events);
99
- if (hash !== this._hashEvents) {
100
- let dp = this.control;
101
- dp.events.list = this.events;
102
- this._requestUpdate = true;
103
- }
104
- this._hashEvents = hash;
105
- }
106
- }
107
- DayPilotNavigatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotNavigatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
108
- DayPilotNavigatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: DayPilotNavigatorComponent, selector: "daypilot-navigator", inputs: { events: "events", config: "config", date: "date" }, outputs: { dateChange: "dateChange" }, ngImport: i0, template: `
109
- <div id='{{id}}'></div>`, isInline: true, styles: [""] });
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotNavigatorComponent, decorators: [{
111
- type: Component,
112
- args: [{
113
- selector: 'daypilot-navigator',
114
- template: `
115
- <div id='{{id}}'></div>`,
116
- styles: [``]
117
- }]
118
- }], propDecorators: { events: [{
119
- type: Input
120
- }], config: [{
121
- type: Input
122
- }], dateChange: [{
123
- type: Output
124
- }], date: [{
125
- type: Input
126
- }] } });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5cGlsb3QtbmF2aWdhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RheXBpbG90L2RheXBpbG90LWxpdGUtYW5ndWxhci9zcmMvbGliL2RheXBpbG90LW5hdmlnYXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQVcsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLFFBQVEsQ0FBQzs7QUFRckMsTUFBTSxPQUFPLDBCQUEwQjtJQU52QztRQVFXLFdBQU0sR0FBOEIsRUFBRSxDQUFDO1FBRXRDLGVBQVUsR0FBZ0MsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFFOUUsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsV0FBTSxHQUFRLElBQUksQ0FBQztRQUNuQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGlCQUFZLEdBQXlCLElBQUksQ0FBQztRQUUxQyxVQUFLLEdBQWtCLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFhN0MsUUFBRyxHQUFXLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDO0tBK0Y3RDtJQTFHQyxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELHdEQUF3RDtJQUN4RCxJQUNXLElBQUksQ0FBQyxLQUFvQjtRQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJ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QUFRLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztZQUN0QixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7WUFDcEMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdEI7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hDLElBQUksSUFBSSxLQUFLLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDN0IsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUN0QixFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQzdCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1NBQzVCO1FBQ0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQzs7dUhBeEhVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLCtKQUozQjs0QkFDZ0I7MkZBR2YsMEJBQTBCO2tCQU50QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs0QkFDZ0I7b0JBQzFCLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztpQkFDYjs4QkFHVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU07Z0JBaUJJLElBQUk7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBEb0NoZWNrLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtEYXlQaWxvdH0gZnJvbSBcIi4vY29yZS9kYXlwaWxvdC1jb3JlXCI7XG5pbXBvcnQge29wdEhhc2gsIHJhbmR9IGZyb20gXCIuL3V0aWxcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZGF5cGlsb3QtbmF2aWdhdG9yJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGlkPSd7e2lkfX0nPjwvZGl2PmAsXG4gIHN0eWxlczogW2BgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXlQaWxvdE5hdmlnYXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBEb0NoZWNrIHtcblxuICBASW5wdXQoKSBldmVudHM6IERheVBpbG90LkV2ZW50RGF0YVNob3J0W10gPSBbXTtcbiAgQElucHV0KCkgY29uZmlnOiBhbnk7XG4gIEBPdXRwdXQoKSBkYXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF5UGlsb3QuRGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPERheVBpbG90LkRhdGU+KCk7XG4gIHB1YmxpYyBjb250cm9sITogRGF5UGlsb3QuTmF2aWdhdG9yO1xuICBwcml2YXRlIF9yZXF1ZXN0VXBkYXRlOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX2hhc2hPcHRpb25zOiBzdHJpbmcgPSBcIlwiO1xuICBwcml2YXRlIF9oYXNoRXZlbnRzOiBzdHJpbmcgPSBcIlwiO1xuICBwcml2YXRlIF9vblRyczogYW55ID0gbnVsbDtcbiAgcHJpdmF0ZSBfZGF0ZVNldDogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9jdXJyZW50RGF0ZTogRGF5UGlsb3QuRGF0ZSB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX2RhdGU6IERheVBpbG90LkRhdGUgPSBEYXlQaWxvdC5EYXRlLnRvZGF5KCk7XG5cbiAgcHVibGljIGdldCBkYXRlKCk6IERheVBpbG90LkRhdGUge1xuICAgIHJldHVybiB0aGlzLl9kYXRlO1xuICB9XG5cbiAgLy8gQElucHV0KCkgZGF0ZTogRGF5UGlsb3QuRGF0ZSA9IERheVBpbG90LkRhdGUudG9kYXkoKTtcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkYXRlKHZhbHVlOiBEYXlQaWxvdC5EYXRlKSB7XG4gICAgdGhpcy5fZGF0ZSA9IHZhbHVlO1xuICAgIHRoaXMuX2RhdGVTZXQgPSB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfaWQ6IHN0cmluZyA9IFwiZHBfXCIgKyBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIHJhbmQoKTtcblxuICBnZXQgaWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgICB0aGlzLmNvbnRyb2wgPSBuZXcgRGF5UGlsb3QuTmF2aWdhdG9yKHRoaXMuaWQpO1xuICAgIGxldCBjb21wb25lbnQgPSB0aGlzO1xuXG4gICAgdGhpcy51cGRhdGVPcHRpb25zKCk7XG4gICAgdGhpcy51cGRhdGVFdmVudHMoKTtcbiAgICBsZXQgZHAgPSB0aGlzLmNvbnRyb2w7XG4gICAgdGhpcy5jb250cm9sLm9uVGltZVJhbmdlU2VsZWN0ZWQgPSBmdW5jdGlvbiAoYXJncykge1xuICAgICAgLy8gZW1pdCBldmVudFxuICAgICAgY29tcG9uZW50LmRhdGVDaGFuZ2UuZW1pdChhcmdzLmRheSk7XG4gICAgICAvLyBjYWxsIHRoZSBvcmlnaW5hbFxuICAgICAgaWYgKGNvbXBvbmVudC5fb25UcnMpIHtcbiAgICAgICAgY29tcG9uZW50Ll9vblRycy5jYWxsKGRwLCBhcmdzKTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHRoaXMuX3JlcXVlc3RVcGRhdGUgPSBmYWxzZTsgLy8gY29uZmlnIGp1c3QgbG9hZGVkIGFuZCBjYWxsaW5nIGluaXQoKSwgbm8gbmVlZCB0byBjYWxsIHVwZGF0ZSBhZ2FpblxuICAgIHRoaXMuY29udHJvbC5pbml0KCk7XG5cbiAgICBpZiAodGhpcy5jb250cm9sLnNlbGVjdGlvbkRheSAhPT0gRGF5UGlsb3QuRGF0ZS50b2RheSgpKSB7XG4gICAgICBjb21wb25lbnQuZGF0ZUNoYW5nZS5lbWl0KHRoaXMuY29udHJvbC5zZWxlY3Rpb25EYXkpO1xuICAgIH1cblxuICB9XG5cbiAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudXBkYXRlT3B0aW9ucygpO1xuICAgIHRoaXMudXBkYXRlRXZlbnRzKCk7XG4gICAgaWYgKHRoaXMuX3JlcXVlc3RVcGRhdGUpIHtcbiAgICAgIHRoaXMuY29udHJvbC51cGRhdGUoKTtcbiAgICAgIHRoaXMuX3JlcXVlc3RVcGRhdGUgPSBmYWxzZTtcbiAgICB9XG5cbiAgfVxuXG4gIHByaXZhdGUgZGlzcG9zZSgpIHtcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wuZGlzcG9zZSgpO1xuICAgICAgLy9AdHMtaWdub3JlXG4gICAgICB0aGlzLmNvbnRyb2wgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlT3B0aW9ucygpOiB2b2lkIHtcbiAgICBsZXQgZHAgPSB0aGlzLmNvbnRyb2wgYXMgYW55O1xuICAgIGxldCBoYXNoID0gb3B0SGFzaCh0aGlzLmNvbmZpZyk7XG5cbiAgICBpZiAoaGFzaCAhPT0gdGhpcy5faGFzaE9wdGlvbnMpIHtcbiAgICAgIGZvciAobGV0IG5hbWUgaW4gdGhpcy5jb25maWcpIHtcbiAgICAgICAgaWYgKG5hbWUgPT09IFwic2VsZWN0aW9uRGF5XCIpIHtcbiAgICAgICAgICBjb250aW51ZTsgLy8gaWdub3JlXG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5hbWUgPT09IFwib25UaW1lUmFuZ2VTZWxlY3RlZFwiKSB7XG4gICAgICAgICAgdGhpcy5fb25UcnMgPSB0aGlzLmNvbmZpZy5vblRpbWVSYW5nZVNlbGVjdGVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRwW25hbWVdID0gdGhpcy5jb25maWdbbmFtZV07XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fcmVxdWVzdFVwZGF0ZSA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2RhdGVTZXQgJiYgdGhpcy5kYXRlKSB7XG4gICAgICB0aGlzLl9kYXRlU2V0ID0gZmFsc2U7XG4gICAgICB0aGlzLl9jdXJyZW50RGF0ZSA9IGRwLnNlbGVjdGlvbkRheTtcbiAgICAgIGRwLnNlbGVjdCh0aGlzLmRhdGUpO1xuICAgIH1cblxuICAgIHRoaXMuX2hhc2hPcHRpb25zID0gaGFzaDtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlRXZlbnRzKCk6IHZvaWQge1xuICAgIGxldCBoYXNoID0gb3B0SGFzaCh0aGlzLmV2ZW50cyk7XG4gICAgaWYgKGhhc2ggIT09IHRoaXMuX2hhc2hFdmVudHMpIHtcbiAgICAgIGxldCBkcCA9IHRoaXMuY29udHJvbDtcbiAgICAgIGRwLmV2ZW50cy5saXN0ID0gdGhpcy5ldmVudHM7XG4gICAgICB0aGlzLl9yZXF1ZXN0VXBkYXRlID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy5faGFzaEV2ZW50cyA9IGhhc2g7XG4gIH1cbn1cbiJdfQ==
@@ -1,102 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { DayPilot } from "./core/daypilot-core";
3
- import { optHash, rand } from "./util";
4
- import * as i0 from "@angular/core";
5
- export class DayPilotSchedulerComponent {
6
- constructor() {
7
- this.viewChange = new EventEmitter();
8
- this.events = [];
9
- this._requestUpdateFull = false;
10
- this._requestUpdateEvents = false;
11
- this._requestViewChange = false;
12
- this._hashOptions = "";
13
- this._hashEvents = "";
14
- this._id = "dp_" + new Date().getTime() + rand();
15
- }
16
- get id() {
17
- return this._id;
18
- }
19
- ngOnInit() {
20
- }
21
- ngOnDestroy() {
22
- this.dispose();
23
- }
24
- ngAfterViewInit() {
25
- this.dispose();
26
- let dp = new DayPilot.Scheduler(this.id);
27
- this.control = dp;
28
- this.updateOptions();
29
- this.updateEvents();
30
- this._requestUpdateFull = false; // config just loaded and calling init(), no need to call update again
31
- this._requestUpdateEvents = false; // config just loaded and calling init(), no need to call update again
32
- dp.init();
33
- }
34
- ngDoCheck() {
35
- if (!this.control) {
36
- return;
37
- }
38
- this.updateOptions();
39
- this.updateEvents();
40
- if (this._requestUpdateFull) {
41
- this.control.update();
42
- this._requestUpdateFull = false;
43
- this._requestUpdateEvents = false;
44
- }
45
- else if (this._requestUpdateEvents) {
46
- this.control.update({ "events": this.events });
47
- this._requestUpdateEvents = false;
48
- }
49
- if (this._requestViewChange) {
50
- this._requestViewChange = false;
51
- let args = {};
52
- this.viewChange.emit(args);
53
- }
54
- }
55
- dispose() {
56
- if (this.control) {
57
- this.control.dispose();
58
- //@ts-ignore
59
- this.control = null;
60
- }
61
- }
62
- updateOptions() {
63
- let hash = optHash(this.config);
64
- if (hash !== this._hashOptions) {
65
- let dp = this.control;
66
- dp.internal.loadOptions(this.config);
67
- this._requestUpdateFull = true;
68
- this._requestViewChange = true;
69
- }
70
- this._hashOptions = hash;
71
- }
72
- updateEvents() {
73
- let hash = optHash(this.events);
74
- if (hash !== this._hashEvents) {
75
- let dp = this.control;
76
- if (dp) {
77
- dp.events.list = this.events;
78
- }
79
- this._requestUpdateEvents = true;
80
- }
81
- this._hashEvents = hash;
82
- }
83
- }
84
- DayPilotSchedulerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotSchedulerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
85
- DayPilotSchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.0", type: DayPilotSchedulerComponent, selector: "daypilot-scheduler", inputs: { events: "events", config: "config" }, outputs: { viewChange: "viewChange" }, ngImport: i0, template: `
86
- <div id='{{id}}'></div>`, isInline: true, styles: [""] });
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotSchedulerComponent, decorators: [{
88
- type: Component,
89
- args: [{
90
- selector: 'daypilot-scheduler',
91
- template: `
92
- <div id='{{id}}'></div>`,
93
- styles: [``]
94
- }]
95
- }], propDecorators: { viewChange: [{
96
- type: Output
97
- }], events: [{
98
- type: Input
99
- }], config: [{
100
- type: Input
101
- }] } });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5cGlsb3Qtc2NoZWR1bGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RheXBpbG90L2RheXBpbG90LWxpdGUtYW5ndWxhci9zcmMvbGliL2RheXBpbG90LXNjaGVkdWxlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQVcsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLFFBQVEsQ0FBQzs7QUFRckMsTUFBTSxPQUFPLDBCQUEwQjtJQU52QztRQVNZLGVBQVUsR0FBZ0MsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFDN0UsV0FBTSxHQUF5QixFQUFFLENBQUM7UUFFbkMsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQ3BDLHlCQUFvQixHQUFZLEtBQUssQ0FBQztRQUN0Qyx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFDcEMsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFFekIsUUFBRyxHQUFXLEtBQUssR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksRUFBRSxDQUFDO0tBNkU3RDtJQTNFQyxJQUFJLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDbEIsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNmLElBQUksRUFBRSxHQUFHLElBQUksUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJ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LENBQUMsRUFBRSxDQUFDO2lCQUNiOzhCQUlXLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0UsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBEb0NoZWNrLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RGF5UGlsb3R9IGZyb20gXCIuL2NvcmUvZGF5cGlsb3QtY29yZVwiO1xuaW1wb3J0IHtvcHRIYXNoLCByYW5kfSBmcm9tIFwiLi91dGlsXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RheXBpbG90LXNjaGVkdWxlcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBpZD0ne3tpZH19Jz48L2Rpdj5gLFxuICBzdHlsZXM6IFtgYF1cbn0pXG5leHBvcnQgY2xhc3MgRGF5UGlsb3RTY2hlZHVsZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCwgRG9DaGVjayB7XG5cbiAgcHVibGljIGNvbnRyb2whOiBEYXlQaWxvdC5TY2hlZHVsZXI7XG4gIEBPdXRwdXQoKSB2aWV3Q2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF5UGlsb3QuRGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPERheVBpbG90LkRhdGU+KCk7XG4gIEBJbnB1dCgpIGV2ZW50czogRGF5UGlsb3QuRXZlbnREYXRhW10gPSBbXTtcbiAgQElucHV0KCkgY29uZmlnOiBhbnk7XG4gIHByaXZhdGUgX3JlcXVlc3RVcGRhdGVGdWxsOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX3JlcXVlc3RVcGRhdGVFdmVudHM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfcmVxdWVzdFZpZXdDaGFuZ2U6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaGFzaE9wdGlvbnM6IHN0cmluZyA9IFwiXCI7XG4gIHByaXZhdGUgX2hhc2hFdmVudHM6IHN0cmluZyA9IFwiXCI7XG5cbiAgcHJpdmF0ZSBfaWQ6IHN0cmluZyA9IFwiZHBfXCIgKyBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIHJhbmQoKTtcblxuICBnZXQgaWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgICBsZXQgZHAgPSBuZXcgRGF5UGlsb3QuU2NoZWR1bGVyKHRoaXMuaWQpO1xuICAgIHRoaXMuY29udHJvbCA9IGRwO1xuICAgIHRoaXMudXBkYXRlT3B0aW9ucygpO1xuICAgIHRoaXMudXBkYXRlRXZlbnRzKCk7XG4gICAgdGhpcy5fcmVxdWVzdFVwZGF0ZUZ1bGwgPSBmYWxzZTsgLy8gY29uZmlnIGp1c3QgbG9hZGVkIGFuZCBjYWxsaW5nIGluaXQoKSwgbm8gbmVlZCB0byBjYWxsIHVwZGF0ZSBhZ2FpblxuICAgIHRoaXMuX3JlcXVlc3RVcGRhdGVFdmVudHMgPSBmYWxzZTsgLy8gY29uZmlnIGp1c3QgbG9hZGVkIGFuZCBjYWxsaW5nIGluaXQoKSwgbm8gbmVlZCB0byBjYWxsIHVwZGF0ZSBhZ2FpblxuICAgIGRwLmluaXQoKTtcbiAgfVxuXG4gIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuY29udHJvbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnVwZGF0ZU9wdGlvbnMoKTtcbiAgICB0aGlzLnVwZGF0ZUV2ZW50cygpO1xuICAgIGlmICh0aGlzLl9yZXF1ZXN0VXBkYXRlRnVsbCkge1xuICAgICAgdGhpcy5jb250cm9sLnVwZGF0ZSgpO1xuICAgICAgdGhpcy5fcmVxdWVzdFVwZGF0ZUZ1bGwgPSBmYWxzZTtcbiAgICAgIHRoaXMuX3JlcXVlc3RVcGRhdGVFdmVudHMgPSBmYWxzZTtcbiAgICB9XG4gICAgZWxzZSBpZiAodGhpcy5fcmVxdWVzdFVwZGF0ZUV2ZW50cykge1xuICAgICAgdGhpcy5jb250cm9sLnVwZGF0ZSh7IFwiZXZlbnRzXCI6IHRoaXMuZXZlbnRzIH0pO1xuICAgICAgdGhpcy5fcmVxdWVzdFVwZGF0ZUV2ZW50cyA9IGZhbHNlO1xuICAgIH1cbiAgICBpZiAodGhpcy5fcmVxdWVzdFZpZXdDaGFuZ2UpIHtcbiAgICAgIHRoaXMuX3JlcXVlc3RWaWV3Q2hhbmdlID0gZmFsc2U7XG4gICAgICBsZXQgYXJnczogYW55ID0ge307XG4gICAgICB0aGlzLnZpZXdDaGFuZ2UuZW1pdChhcmdzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRpc3Bvc2UoKSB7XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgdGhpcy5jb250cm9sLmRpc3Bvc2UoKTtcbiAgICAgIC8vQHRzLWlnbm9yZVxuICAgICAgdGhpcy5jb250cm9sID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZU9wdGlvbnMoKTogdm9pZCB7XG4gICAgbGV0IGhhc2ggPSBvcHRIYXNoKHRoaXMuY29uZmlnKTtcbiAgICBpZiAoaGFzaCAhPT0gdGhpcy5faGFzaE9wdGlvbnMpIHtcbiAgICAgIGxldCBkcCA9IHRoaXMuY29udHJvbCBhcyBhbnk7XG4gICAgICBkcC5pbnRlcm5hbC5sb2FkT3B0aW9ucyh0aGlzLmNvbmZpZyk7XG4gICAgICB0aGlzLl9yZXF1ZXN0VXBkYXRlRnVsbCA9IHRydWU7XG4gICAgICB0aGlzLl9yZXF1ZXN0Vmlld0NoYW5nZSA9IHRydWU7XG4gICAgfVxuICAgIHRoaXMuX2hhc2hPcHRpb25zID0gaGFzaDtcblxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVFdmVudHMoKTogdm9pZCB7XG4gICAgbGV0IGhhc2ggPSBvcHRIYXNoKHRoaXMuZXZlbnRzKTtcbiAgICBpZiAoaGFzaCAhPT0gdGhpcy5faGFzaEV2ZW50cykge1xuICAgICAgbGV0IGRwID0gdGhpcy5jb250cm9sO1xuICAgICAgaWYgKGRwKSB7XG4gICAgICAgIGRwLmV2ZW50cy5saXN0ID0gdGhpcy5ldmVudHM7XG4gICAgICB9XG4gICAgICB0aGlzLl9yZXF1ZXN0VXBkYXRlRXZlbnRzID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy5faGFzaEV2ZW50cyA9IGhhc2g7XG4gIH1cbn1cbiJdfQ==
@@ -1,36 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { DayPilotCalendarComponent } from './daypilot-calendar.component';
3
- import { DayPilotMonthComponent } from "./daypilot-month.component";
4
- import { DayPilotNavigatorComponent } from "./daypilot-navigator.component";
5
- import { DayPilotSchedulerComponent } from "./daypilot-scheduler.component";
6
- import * as i0 from "@angular/core";
7
- const COMPONENTS = [
8
- DayPilotCalendarComponent,
9
- DayPilotSchedulerComponent,
10
- DayPilotMonthComponent,
11
- DayPilotNavigatorComponent
12
- ];
13
- export class DayPilotModule {
14
- }
15
- DayPilotModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
16
- DayPilotModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotModule, declarations: [DayPilotCalendarComponent,
17
- DayPilotSchedulerComponent,
18
- DayPilotMonthComponent,
19
- DayPilotNavigatorComponent], exports: [DayPilotCalendarComponent,
20
- DayPilotSchedulerComponent,
21
- DayPilotMonthComponent,
22
- DayPilotNavigatorComponent] });
23
- DayPilotModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotModule, imports: [[]] });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.0", ngImport: i0, type: DayPilotModule, decorators: [{
25
- type: NgModule,
26
- args: [{
27
- declarations: [
28
- ...COMPONENTS
29
- ],
30
- imports: [],
31
- exports: [
32
- ...COMPONENTS
33
- ]
34
- }]
35
- }] });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5cGlsb3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF5cGlsb3QvZGF5cGlsb3QtbGl0ZS1hbmd1bGFyL3NyYy9saWIvZGF5cGlsb3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDbEUsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUUsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7O0FBRTFFLE1BQU0sVUFBVSxHQUFVO0lBQ3hCLHlCQUF5QjtJQUN6QiwwQkFBMEI7SUFDMUIsc0JBQXNCO0lBQ3RCLDBCQUEwQjtDQUMzQixDQUFDO0FBWUYsTUFBTSxPQUFPLGNBQWM7OzJHQUFkLGNBQWM7NEdBQWQsY0FBYyxpQkFoQnpCLHlCQUF5QjtRQUN6QiwwQkFBMEI7UUFDMUIsc0JBQXNCO1FBQ3RCLDBCQUEwQixhQUgxQix5QkFBeUI7UUFDekIsMEJBQTBCO1FBQzFCLHNCQUFzQjtRQUN0QiwwQkFBMEI7NEdBYWYsY0FBYyxZQU5oQixFQUNSOzJGQUtVLGNBQWM7a0JBVjFCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLEdBQUcsVUFBVTtxQkFDZDtvQkFDRCxPQUFPLEVBQUUsRUFDUjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsR0FBRyxVQUFVO3FCQUNkO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERheVBpbG90Q2FsZW5kYXJDb21wb25lbnQgfSBmcm9tICcuL2RheXBpbG90LWNhbGVuZGFyLmNvbXBvbmVudCc7XG5pbXBvcnQge0RheVBpbG90TW9udGhDb21wb25lbnR9IGZyb20gXCIuL2RheXBpbG90LW1vbnRoLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtEYXlQaWxvdE5hdmlnYXRvckNvbXBvbmVudH0gZnJvbSBcIi4vZGF5cGlsb3QtbmF2aWdhdG9yLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtEYXlQaWxvdFNjaGVkdWxlckNvbXBvbmVudH0gZnJvbSBcIi4vZGF5cGlsb3Qtc2NoZWR1bGVyLmNvbXBvbmVudFwiO1xuXG5jb25zdCBDT01QT05FTlRTOiBhbnlbXSA9IFtcbiAgRGF5UGlsb3RDYWxlbmRhckNvbXBvbmVudCxcbiAgRGF5UGlsb3RTY2hlZHVsZXJDb21wb25lbnQsXG4gIERheVBpbG90TW9udGhDb21wb25lbnQsXG4gIERheVBpbG90TmF2aWdhdG9yQ29tcG9uZW50XG5dO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICAuLi5DT01QT05FTlRTXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIC4uLkNPTVBPTkVOVFNcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXlQaWxvdE1vZHVsZSB7IH1cbiJdfQ==
@@ -1,49 +0,0 @@
1
- export function rand() {
2
- return ((1 + Math.random()) * 0x10000) | 0;
3
- }
4
- ;
5
- export function optHash(options) {
6
- return JSON.stringify(options);
7
- }
8
- ;
9
- export class EventDiff {
10
- constructor() {
11
- this.orig = { "hashes": {} };
12
- }
13
- diff(list) {
14
- const orig = this.orig;
15
- let result = {};
16
- // new hashes, new ids
17
- let hashes = {};
18
- list = list || [];
19
- for (let i = 0; i < list.length; i++) {
20
- let e = list[i];
21
- let id = e.id;
22
- if (!id) {
23
- throw "The 'id' property must be specified for event data object";
24
- }
25
- if (hashes.hasOwnProperty("" + id)) {
26
- throw "Duplicate event IDs are not allowed, id: " + id;
27
- }
28
- hashes["" + id] = JSON.stringify(e);
29
- }
30
- // array of new objects
31
- result.add = list.filter(function (item) {
32
- return !orig.hashes.hasOwnProperty(item.id);
33
- });
34
- // array of IDs
35
- result.remove = Object.getOwnPropertyNames(orig.hashes).filter(function (id) {
36
- return !hashes.hasOwnProperty(id);
37
- }).map(function (id) {
38
- return JSON.parse(orig.hashes[id]).id;
39
- }); // array of ids
40
- // array of new objects
41
- result.modify = list.filter(function (item) {
42
- return orig.hashes.hasOwnProperty(item.id) && orig.hashes[item.id] !== hashes[item.id];
43
- });
44
- result.changeCount = result.add.length + result.modify.length + result.remove.length;
45
- orig.hashes = hashes;
46
- return result;
47
- }
48
- }
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RheXBpbG90L2RheXBpbG90LWxpdGUtYW5ndWxhci9zcmMvbGliL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLElBQUk7SUFDbEIsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQUM1QyxDQUFDO0FBQUEsQ0FBQztBQUVGLE1BQU0sVUFBVSxPQUFPLENBQUMsT0FBWTtJQUNsQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDakMsQ0FBQztBQUFBLENBQUM7QUFFRixNQUFNLE9BQU8sU0FBUztJQUF0QjtRQUNFLFNBQUksR0FBUSxFQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUMsQ0FBQztJQTRDN0IsQ0FBQztJQTFDQyxJQUFJLENBQUMsSUFBVztRQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdkIsSUFBSSxNQUFNLEdBQVEsRUFBRSxDQUFDO1FBRXJCLHNCQUFzQjtRQUN0QixJQUFJLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFDckIsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDbEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDcEMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hCLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsRUFBRSxFQUFFO2dCQUNQLE1BQU0sMkRBQTJELENBQUM7YUFDbkU7WUFDRCxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFO2dCQUNsQyxNQUFNLDJDQUEyQyxHQUFHLEVBQUUsQ0FBQzthQUN4RDtZQUNELE1BQU0sQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyQztRQUVELHVCQUF1QjtRQUN2QixNQUFNLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxJQUFJO1lBQ3JDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFFSCxlQUFlO1FBQ2YsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDekUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRTtZQUNqQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQyxDQUFFLGVBQWU7UUFFcEIsdUJBQXVCO1FBQ3ZCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLElBQUk7WUFDeEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6RixDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFFckYsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFckIsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIHJhbmQoKSB7XG4gIHJldHVybiAoKDEgKyBNYXRoLnJhbmRvbSgpKSAqIDB4MTAwMDApIHwgMFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIG9wdEhhc2gob3B0aW9uczogYW55KSB7XG4gIHJldHVybiBKU09OLnN0cmluZ2lmeShvcHRpb25zKTtcbn07XG5cbmV4cG9ydCBjbGFzcyBFdmVudERpZmYge1xuICBvcmlnOiBhbnkgPSB7XCJoYXNoZXNcIjoge319O1xuXG4gIGRpZmYobGlzdDogYW55W10pIHtcbiAgICBjb25zdCBvcmlnID0gdGhpcy5vcmlnO1xuICAgIGxldCByZXN1bHQ6IGFueSA9IHt9O1xuXG4gICAgLy8gbmV3IGhhc2hlcywgbmV3IGlkc1xuICAgIGxldCBoYXNoZXM6IGFueSA9IHt9O1xuICAgIGxpc3QgPSBsaXN0IHx8IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykge1xuICAgICAgbGV0IGUgPSBsaXN0W2ldO1xuICAgICAgbGV0IGlkID0gZS5pZDtcbiAgICAgIGlmICghaWQpIHtcbiAgICAgICAgdGhyb3cgXCJUaGUgJ2lkJyBwcm9wZXJ0eSBtdXN0IGJlIHNwZWNpZmllZCBmb3IgZXZlbnQgZGF0YSBvYmplY3RcIjtcbiAgICAgIH1cbiAgICAgIGlmIChoYXNoZXMuaGFzT3duUHJvcGVydHkoXCJcIiArIGlkKSkge1xuICAgICAgICB0aHJvdyBcIkR1cGxpY2F0ZSBldmVudCBJRHMgYXJlIG5vdCBhbGxvd2VkLCBpZDogXCIgKyBpZDtcbiAgICAgIH1cbiAgICAgIGhhc2hlc1tcIlwiICsgaWRdID0gSlNPTi5zdHJpbmdpZnkoZSk7XG4gICAgfVxuXG4gICAgLy8gYXJyYXkgb2YgbmV3IG9iamVjdHNcbiAgICByZXN1bHQuYWRkID0gbGlzdC5maWx0ZXIoZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgIHJldHVybiAhb3JpZy5oYXNoZXMuaGFzT3duUHJvcGVydHkoaXRlbS5pZCk7XG4gICAgfSk7XG5cbiAgICAvLyBhcnJheSBvZiBJRHNcbiAgICByZXN1bHQucmVtb3ZlID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMob3JpZy5oYXNoZXMpLmZpbHRlcihmdW5jdGlvbiAoaWQpIHtcbiAgICAgIHJldHVybiAhaGFzaGVzLmhhc093blByb3BlcnR5KGlkKTtcbiAgICB9KS5tYXAoZnVuY3Rpb24gKGlkKSB7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShvcmlnLmhhc2hlc1tpZF0pLmlkO1xuICAgIH0pOyAgLy8gYXJyYXkgb2YgaWRzXG5cbiAgICAvLyBhcnJheSBvZiBuZXcgb2JqZWN0c1xuICAgIHJlc3VsdC5tb2RpZnkgPSBsaXN0LmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgcmV0dXJuIG9yaWcuaGFzaGVzLmhhc093blByb3BlcnR5KGl0ZW0uaWQpICYmIG9yaWcuaGFzaGVzW2l0ZW0uaWRdICE9PSBoYXNoZXNbaXRlbS5pZF07XG4gICAgfSk7XG5cbiAgICByZXN1bHQuY2hhbmdlQ291bnQgPSByZXN1bHQuYWRkLmxlbmd0aCArIHJlc3VsdC5tb2RpZnkubGVuZ3RoICsgcmVzdWx0LnJlbW92ZS5sZW5ndGg7XG5cbiAgICBvcmlnLmhhc2hlcyA9IGhhc2hlcztcblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cbn1cbiJdfQ==