@acorex/components 19.13.0-next.0 → 19.13.0-next.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/calendar/lib/calendar-range.component.d.ts +0 -4
- package/fesm2022/acorex-components-action-sheet.mjs +10 -10
- package/fesm2022/acorex-components-alert.mjs +7 -7
- package/fesm2022/acorex-components-audio-wave.mjs +7 -7
- package/fesm2022/acorex-components-autocomplete.mjs +7 -7
- package/fesm2022/acorex-components-avatar.mjs +10 -10
- package/fesm2022/acorex-components-badge.mjs +7 -7
- package/fesm2022/acorex-components-bottom-navigation.mjs +10 -10
- package/fesm2022/acorex-components-breadcrumbs.mjs +10 -10
- package/fesm2022/acorex-components-button-group.mjs +10 -10
- package/fesm2022/acorex-components-button.mjs +15 -15
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +16 -17
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +7 -7
- package/fesm2022/acorex-components-chips.mjs +7 -7
- package/fesm2022/acorex-components-circular-progress.mjs +7 -7
- package/fesm2022/acorex-components-collapse.mjs +10 -10
- package/fesm2022/acorex-components-color-box.mjs +7 -7
- package/fesm2022/acorex-components-color-palette.mjs +25 -25
- package/fesm2022/acorex-components-comment.mjs +28 -28
- package/fesm2022/acorex-components-common.mjs +91 -91
- package/fesm2022/acorex-components-conversation.mjs +49 -49
- package/fesm2022/acorex-components-cron-job.mjs +46 -46
- package/fesm2022/acorex-components-data-pager.mjs +31 -31
- package/fesm2022/acorex-components-data-table.mjs +37 -37
- package/fesm2022/acorex-components-datetime-box.mjs +7 -7
- package/fesm2022/acorex-components-datetime-input.mjs +7 -7
- package/fesm2022/acorex-components-datetime-picker.mjs +7 -7
- package/fesm2022/acorex-components-decorators.mjs +27 -27
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +10 -10
- package/fesm2022/acorex-components-drawer.mjs +13 -13
- package/fesm2022/acorex-components-dropdown-button.mjs +7 -7
- package/fesm2022/acorex-components-dropdown.mjs +13 -13
- package/fesm2022/acorex-components-file-explorer.mjs +25 -25
- package/fesm2022/acorex-components-flow-chart.mjs +669 -0
- package/fesm2022/acorex-components-flow-chart.mjs.map +1 -0
- package/fesm2022/acorex-components-form.mjs +25 -23
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +10 -10
- package/fesm2022/acorex-components-image-editor.mjs +34 -34
- package/fesm2022/acorex-components-image.mjs +23 -11
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-json-viewer.mjs +7 -7
- package/fesm2022/acorex-components-kbd.mjs +10 -10
- package/fesm2022/acorex-components-label.mjs +7 -7
- package/fesm2022/acorex-components-list.mjs +7 -7
- package/fesm2022/acorex-components-loading-dialog.mjs +10 -10
- package/fesm2022/acorex-components-loading.mjs +16 -16
- package/fesm2022/acorex-components-map.mjs +10 -10
- package/fesm2022/acorex-components-media-viewer.mjs +34 -34
- package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +16 -16
- package/fesm2022/{acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs → acorex-components-modal-acorex-components-modal-B4nBGqa3.mjs} +21 -21
- package/fesm2022/acorex-components-modal-acorex-components-modal-B4nBGqa3.mjs.map +1 -0
- package/fesm2022/{acorex-components-modal-modal-content.component-zmFWBaiD.mjs → acorex-components-modal-modal-content.component-oWerCvDI.mjs} +10 -6
- package/fesm2022/acorex-components-modal-modal-content.component-oWerCvDI.mjs.map +1 -0
- package/fesm2022/acorex-components-modal.mjs +1 -1
- package/fesm2022/acorex-components-navbar.mjs +7 -7
- package/fesm2022/acorex-components-notification.mjs +10 -10
- package/fesm2022/acorex-components-number-box.mjs +7 -7
- package/fesm2022/acorex-components-otp.mjs +7 -7
- package/fesm2022/acorex-components-page.mjs +10 -10
- package/fesm2022/acorex-components-paint.mjs +25 -25
- package/fesm2022/acorex-components-password-box.mjs +10 -10
- package/fesm2022/acorex-components-pdf-reader.mjs +7 -7
- package/fesm2022/acorex-components-phone-box.mjs +7 -7
- package/fesm2022/acorex-components-picker.mjs +13 -13
- package/fesm2022/acorex-components-popover.mjs +7 -7
- package/fesm2022/acorex-components-popup.mjs +11 -11
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +7 -7
- package/fesm2022/acorex-components-qrcode.mjs +7 -7
- package/fesm2022/acorex-components-query-builder.mjs +7 -7
- package/fesm2022/acorex-components-radio.mjs +7 -7
- package/fesm2022/acorex-components-rail-navigation.mjs +13 -13
- package/fesm2022/acorex-components-range-slider.mjs +7 -7
- package/fesm2022/acorex-components-rate-picker.mjs +7 -7
- package/fesm2022/acorex-components-rest-api-generator.mjs +22 -22
- package/fesm2022/acorex-components-result.mjs +7 -7
- package/fesm2022/acorex-components-routing-progress.mjs +7 -7
- package/fesm2022/acorex-components-scheduler.mjs +585 -122
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-scss.mjs +4 -4
- package/fesm2022/acorex-components-search-box.mjs +7 -7
- package/fesm2022/acorex-components-select-box.mjs +7 -7
- package/fesm2022/acorex-components-selection-list.mjs +7 -7
- package/fesm2022/acorex-components-side-menu.mjs +13 -13
- package/fesm2022/acorex-components-skeleton.mjs +7 -7
- package/fesm2022/acorex-components-slider.mjs +7 -7
- package/fesm2022/acorex-components-sliding-item.mjs +13 -13
- package/fesm2022/acorex-components-step-wizard.mjs +13 -13
- package/fesm2022/acorex-components-switch.mjs +10 -10
- package/fesm2022/acorex-components-tabs.mjs +13 -13
- package/fesm2022/acorex-components-tag-box.mjs +7 -7
- package/fesm2022/acorex-components-tag.mjs +7 -7
- package/fesm2022/acorex-components-text-area.mjs +7 -7
- package/fesm2022/acorex-components-text-box.mjs +10 -10
- package/fesm2022/acorex-components-time-line.mjs +10 -10
- package/fesm2022/acorex-components-toast.mjs +10 -10
- package/fesm2022/acorex-components-toolbar.mjs +7 -7
- package/fesm2022/acorex-components-tooltip.mjs +10 -10
- package/fesm2022/acorex-components-tree-view.mjs +10 -10
- package/fesm2022/acorex-components-uploader.mjs +22 -22
- package/fesm2022/acorex-components-video-player.mjs +7 -7
- package/fesm2022/acorex-components-wysiwyg.mjs +31 -31
- package/flow-chart/README.md +3 -0
- package/flow-chart/index.d.ts +5 -0
- package/flow-chart/lib/flow-chart-creator/flow-chart-creator.component.d.ts +13 -0
- package/flow-chart/lib/flow-chart-renderer/flow-chart-renderer.component.d.ts +22 -0
- package/flow-chart/lib/flow-chart.component.d.ts +24 -0
- package/flow-chart/lib/flow-chart.module.d.ts +10 -0
- package/flow-chart/lib/flow-chart.service.d.ts +57 -0
- package/flow-chart/lib/flow-chart.type.d.ts +37 -0
- package/form/lib/form-field.component.d.ts +3 -2
- package/image/lib/image.component.d.ts +4 -1
- package/modal/lib/modal-content/modal-content.component.d.ts +5 -1
- package/modal/lib/modal-state.service.d.ts +1 -1
- package/modal/lib/modal.service.d.ts +1 -1
- package/package.json +5 -1
- package/scheduler/README.md +2 -2
- package/scheduler/index.d.ts +4 -0
- package/scheduler/lib/scheduler.class.d.ts +12 -6
- package/scheduler/lib/scheduler.component.d.ts +6 -12
- package/scheduler/lib/scheduler.module.d.ts +2 -1
- package/scheduler/lib/scheduler.service.d.ts +4 -0
- package/scheduler/lib/views/agenda/scheduler-agenda-view.component.d.ts +30 -0
- package/scheduler/lib/views/day/scheduler-day-view.component.d.ts +6 -4
- package/scheduler/lib/views/month/scheduler-month-view.component.d.ts +5 -3
- package/scheduler/lib/views/timeline-day/scheduler-timeline-day-view.component.d.ts +30 -0
- package/scheduler/lib/views/timeline-month/scheduler-timeline-month-view.component.d.ts +37 -0
- package/scheduler/lib/views/timeline-multi-day/scheduler-timeline-multi-day-view.component.d.ts +25 -0
- package/scheduler/lib/views/week/scheduler-week-view.component.d.ts +11 -7
- package/fesm2022/acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs.map +0 -1
- package/fesm2022/acorex-components-modal-modal-content.component-zmFWBaiD.mjs.map +0 -1
@@ -1,5 +1,5 @@
|
|
1
1
|
import { AXDateTime } from '@acorex/core/date-time';
|
2
|
-
export type AXSchedulerView = 'day' | 'week' | 'month' | '
|
2
|
+
export type AXSchedulerView = 'day' | 'week' | 'month' | 'timelineDay' | 'timelineMultiDay' | 'timelineMonth' | 'agenda';
|
3
3
|
export type AXDayOfWeekName = 'Sunday' | 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday';
|
4
4
|
export type AXSchedulerBlockIdentifier = {
|
5
5
|
dayIndex: number;
|
@@ -24,11 +24,6 @@ export type AXSchedulerDayAppointmentLayout = {
|
|
24
24
|
export type AXSchedulerBlockOccupancyMap = Map<string, any>;
|
25
25
|
export type AXSchedulerAppointmentsByStartBlock = Record<number, Record<number, AXSchedulerAppointmentType[]>>;
|
26
26
|
export type AXSchedulerActiveAppointmentsInBlock = Record<number, Record<number, AXSchedulerAppointmentType[]>>;
|
27
|
-
export type AXSchedulerWeekAppointmentLayout = AXSchedulerAppointmentType & {
|
28
|
-
layoutTop: string;
|
29
|
-
layoutLeft: string;
|
30
|
-
layoutHeight: string;
|
31
|
-
};
|
32
27
|
export type AXSchedulerOverflowBadge = {
|
33
28
|
key: any;
|
34
29
|
count: number;
|
@@ -51,3 +46,14 @@ export type AXSchedulerAllDaySlotData = {
|
|
51
46
|
day: AXDateTime;
|
52
47
|
appointments: AXSchedulerAppointmentType[];
|
53
48
|
};
|
49
|
+
export type AXSchedulerAppointmentLayout = {
|
50
|
+
appointment: AXSchedulerAppointmentType;
|
51
|
+
layoutLeft: string;
|
52
|
+
layoutWidth: string;
|
53
|
+
layoutTop: string;
|
54
|
+
layoutHeight: string;
|
55
|
+
};
|
56
|
+
export type AXSchedulerMultiDayViewAppointmentType = {
|
57
|
+
appointments: AXSchedulerAppointmentType[];
|
58
|
+
date: AXDateTime;
|
59
|
+
};
|
@@ -1,12 +1,11 @@
|
|
1
1
|
import { AXDataSource, AXValueChangedEvent, MXBaseComponent } from '@acorex/components/common';
|
2
2
|
import { AXDateTime } from '@acorex/core/date-time';
|
3
|
-
import { AXPlatform, AXScreenSizes } from '@acorex/core/platform';
|
4
3
|
import { OnInit } from '@angular/core';
|
5
4
|
import { AXDayOfWeekName, AXSchedulerAppointmentEvent, AXSchedulerAppointmentType, AXSchedulerSlotEvent, AXSchedulerView } from './scheduler.class';
|
6
5
|
import * as i0 from "@angular/core";
|
7
6
|
export declare class AXSchedulerComponent extends MXBaseComponent implements OnInit {
|
8
7
|
#private;
|
9
|
-
|
8
|
+
private platformId;
|
10
9
|
private unsubscriber;
|
11
10
|
private formatService;
|
12
11
|
private localeService;
|
@@ -14,12 +13,7 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
|
|
14
13
|
private schedulerService;
|
15
14
|
private translationService;
|
16
15
|
private viewModeSelectbox;
|
17
|
-
displayViews:
|
18
|
-
day: string;
|
19
|
-
week: string;
|
20
|
-
month: string;
|
21
|
-
year: string;
|
22
|
-
};
|
16
|
+
displayViews: Record<AXSchedulerView, string>;
|
23
17
|
calendar: import("@angular/core").InputSignal<string>;
|
24
18
|
calendarType: import("@angular/core").WritableSignal<string>;
|
25
19
|
startingDate: import("@angular/core").InputSignal<Date>;
|
@@ -28,7 +22,6 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
|
|
28
22
|
rtl: import("@angular/core").WritableSignal<boolean>;
|
29
23
|
isLoading: import("@angular/core").WritableSignal<boolean>;
|
30
24
|
isFullScreen: import("@angular/core").WritableSignal<boolean>;
|
31
|
-
size: import("@angular/core").WritableSignal<AXScreenSizes>;
|
32
25
|
viewsDataSource: import("@angular/core").WritableSignal<{
|
33
26
|
id: string;
|
34
27
|
text: string;
|
@@ -37,10 +30,12 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
|
|
37
30
|
endHour: import("@angular/core").InputSignal<number>;
|
38
31
|
startHour: import("@angular/core").InputSignal<number>;
|
39
32
|
keyField: import("@angular/core").InputSignal<string>;
|
33
|
+
readonly: import("@angular/core").InputSignal<boolean>;
|
40
34
|
titleField: import("@angular/core").InputSignal<string>;
|
41
35
|
allDayField: import("@angular/core").InputSignal<string>;
|
42
36
|
allowFullScreen: import("@angular/core").InputSignal<boolean>;
|
43
37
|
endDateField: import("@angular/core").InputSignal<string>;
|
38
|
+
multiDayViewDaysCount: import("@angular/core").InputSignal<number>;
|
44
39
|
readonlyField: import("@angular/core").InputSignal<string>;
|
45
40
|
startDateField: import("@angular/core").InputSignal<string>;
|
46
41
|
textColorField: import("@angular/core").InputSignal<string>;
|
@@ -64,12 +59,11 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
|
|
64
59
|
protected handleAppointmentRightClickInternal(eventData: AXSchedulerAppointmentEvent): void;
|
65
60
|
ngOnInit(): void;
|
66
61
|
fillDataSource(): Promise<void>;
|
67
|
-
private detectSize;
|
68
62
|
private getGridDateRange;
|
69
63
|
appointmentsList: import("@angular/core").Signal<AXDataSource<any>>;
|
70
64
|
private dataSourceItemsSignal;
|
71
65
|
currentDateText: import("@angular/core").Signal<string>;
|
72
|
-
calendarDepth: import("@angular/core").Signal<
|
66
|
+
calendarDepth: import("@angular/core").Signal<"day" | "month">;
|
73
67
|
mappedAppointments: import("@angular/core").Signal<AXSchedulerAppointmentType[]>;
|
74
68
|
viewAppointments: import("@angular/core").Signal<AXSchedulerAppointmentType[]>;
|
75
69
|
viewChanged(e: AXValueChangedEvent<AXSchedulerView>): void;
|
@@ -78,5 +72,5 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
|
|
78
72
|
calendarDateChanged(e: any): void;
|
79
73
|
handleFullScreen(): void;
|
80
74
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerComponent, never>;
|
81
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerComponent, "ax-scheduler", never, { "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "startingDate": { "alias": "startingDate"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": false; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": false; "isSignal": true; }; "keyField": { "alias": "keyField"; "required": false; "isSignal": true; }; "titleField": { "alias": "titleField"; "required": false; "isSignal": true; }; "allDayField": { "alias": "allDayField"; "required": false; "isSignal": true; }; "allowFullScreen": { "alias": "allowFullScreen"; "required": false; "isSignal": true; }; "endDateField": { "alias": "endDateField"; "required": false; "isSignal": true; }; "readonlyField": { "alias": "readonlyField"; "required": false; "isSignal": true; }; "startDateField": { "alias": "startDateField"; "required": false; "isSignal": true; }; "textColorField": { "alias": "textColorField"; "required": false; "isSignal": true; }; "descriptionField": { "alias": "descriptionField"; "required": false; "isSignal": true; }; "backgroundColorField": { "alias": "backgroundColorField"; "required": false; "isSignal": true; }; "dataSource": { "alias": "dataSource"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; "views": { "alias": "views"; "required": false; "isSignal": true; }; "selectedView": { "alias": "selectedView"; "required": false; "isSignal": true; }; }, { "selectedView": "selectedViewChange"; "onSlotClicked": "onSlotClicked"; "onSlotDblClicked": "onSlotDblClicked"; "onSlotRightClick": "onSlotRightClick"; "onAppointmentClicked": "onAppointmentClicked"; "onAppointmentDblClicked": "onAppointmentDblClicked"; "onAppointmentRightClick": "onAppointmentRightClick"; }, never, never, true, never>;
|
75
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerComponent, "ax-scheduler", never, { "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "startingDate": { "alias": "startingDate"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": false; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": false; "isSignal": true; }; "keyField": { "alias": "keyField"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "titleField": { "alias": "titleField"; "required": false; "isSignal": true; }; "allDayField": { "alias": "allDayField"; "required": false; "isSignal": true; }; "allowFullScreen": { "alias": "allowFullScreen"; "required": false; "isSignal": true; }; "endDateField": { "alias": "endDateField"; "required": false; "isSignal": true; }; "multiDayViewDaysCount": { "alias": "multiDayViewDaysCount"; "required": false; "isSignal": true; }; "readonlyField": { "alias": "readonlyField"; "required": false; "isSignal": true; }; "startDateField": { "alias": "startDateField"; "required": false; "isSignal": true; }; "textColorField": { "alias": "textColorField"; "required": false; "isSignal": true; }; "descriptionField": { "alias": "descriptionField"; "required": false; "isSignal": true; }; "backgroundColorField": { "alias": "backgroundColorField"; "required": false; "isSignal": true; }; "dataSource": { "alias": "dataSource"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; "views": { "alias": "views"; "required": false; "isSignal": true; }; "selectedView": { "alias": "selectedView"; "required": false; "isSignal": true; }; }, { "selectedView": "selectedViewChange"; "onSlotClicked": "onSlotClicked"; "onSlotDblClicked": "onSlotDblClicked"; "onSlotRightClick": "onSlotRightClick"; "onAppointmentClicked": "onAppointmentClicked"; "onAppointmentDblClicked": "onAppointmentDblClicked"; "onAppointmentRightClick": "onAppointmentRightClick"; }, never, never, true, never>;
|
82
76
|
}
|
@@ -3,8 +3,9 @@ import * as i1 from "./scheduler.component";
|
|
3
3
|
import * as i2 from "./views/day/scheduler-day-view.component";
|
4
4
|
import * as i3 from "./views/week/scheduler-week-view.component";
|
5
5
|
import * as i4 from "./views/month/scheduler-month-view.component";
|
6
|
+
import * as i5 from "./views/timeline-day/scheduler-timeline-day-view.component";
|
6
7
|
export declare class AXSchedulerModule {
|
7
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerModule, never>;
|
8
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AXSchedulerModule, never, [typeof i1.AXSchedulerComponent, typeof i2.AXSchedulerDayViewComponent, typeof i3.AXSchedulerWeekViewComponent, typeof i4.AXSchedulerMonthViewComponent], [typeof i1.AXSchedulerComponent, typeof i2.AXSchedulerDayViewComponent, typeof i3.AXSchedulerWeekViewComponent, typeof i4.AXSchedulerMonthViewComponent]>;
|
9
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<AXSchedulerModule, never, [typeof i1.AXSchedulerComponent, typeof i2.AXSchedulerDayViewComponent, typeof i3.AXSchedulerWeekViewComponent, typeof i4.AXSchedulerMonthViewComponent, typeof i5.AXSchedulerTimelineDayViewComponent], [typeof i1.AXSchedulerComponent, typeof i2.AXSchedulerDayViewComponent, typeof i3.AXSchedulerWeekViewComponent, typeof i4.AXSchedulerMonthViewComponent, typeof i5.AXSchedulerTimelineDayViewComponent]>;
|
9
10
|
static ɵinj: i0.ɵɵInjectorDeclaration<AXSchedulerModule>;
|
10
11
|
}
|
@@ -56,6 +56,10 @@ export declare class AXSchedulerService {
|
|
56
56
|
view: AXSchedulerView;
|
57
57
|
};
|
58
58
|
handleEvent(event: AXSchedulerSlotEvent | AXSchedulerAppointmentEvent, eventOutputMap: any, eventType: 'appointment' | 'slot'): void;
|
59
|
+
calculateTimelineLayout(appt: AXSchedulerAppointmentType, startHour: number, endHour: number): {
|
60
|
+
left: string;
|
61
|
+
width: string;
|
62
|
+
} | null;
|
59
63
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerService, never>;
|
60
64
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXSchedulerService>;
|
61
65
|
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { MXBaseComponent } from '@acorex/components/common';
|
2
|
+
import { AXDateTime } from '@acorex/core/date-time';
|
3
|
+
import { AXSchedulerAppointmentEvent, AXSchedulerAppointmentType, AXSchedulerMultiDayViewAppointmentType, AXSchedulerSlotEvent } from '../../scheduler.class';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class AXSchedulerAgendaViewComponent extends MXBaseComponent {
|
6
|
+
private calendarService;
|
7
|
+
private schedulerService;
|
8
|
+
daysCount: import("@angular/core").InputSignal<number>;
|
9
|
+
readonly: import("@angular/core").InputSignal<boolean>;
|
10
|
+
draggable: import("@angular/core").InputSignal<boolean>;
|
11
|
+
calendar: import("@angular/core").InputSignal<string>;
|
12
|
+
endHour: import("@angular/core").InputSignal<number>;
|
13
|
+
date: import("@angular/core").InputSignal<AXDateTime>;
|
14
|
+
startHour: import("@angular/core").InputSignal<number>;
|
15
|
+
appointments: import("@angular/core").InputSignal<AXSchedulerAppointmentType[]>;
|
16
|
+
multiDayAppointments: import("@angular/core").Signal<AXSchedulerMultiDayViewAppointmentType[]>;
|
17
|
+
slotClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
18
|
+
slotDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
19
|
+
slotRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
20
|
+
appointmentClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
21
|
+
appointmentDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
22
|
+
appointmentRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
23
|
+
private readonly eventOutputMap;
|
24
|
+
handleAppointmentEvent(mouseEvent: MouseEvent, appointment: AXSchedulerAppointmentType): void;
|
25
|
+
handleSlotEvent(mouseEvent: MouseEvent, date: AXDateTime): void;
|
26
|
+
protected isToday(date: AXDateTime): boolean;
|
27
|
+
get isReadonly(): boolean;
|
28
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerAgendaViewComponent, never>;
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerAgendaViewComponent, "ax-scheduler-agenda-view", never, { "daysCount": { "alias": "daysCount"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": true; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
30
|
+
}
|
@@ -3,8 +3,9 @@ import { AXDateTime } from '@acorex/core/date-time';
|
|
3
3
|
import { AXSchedulerAppointmentEvent, AXSchedulerAppointmentType, AXSchedulerDayAppointmentLayout, AXSchedulerSlotEvent } from '../../scheduler.class';
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
export declare class AXSchedulerDayViewComponent extends MXBaseComponent {
|
6
|
-
private
|
7
|
-
readonly
|
6
|
+
private schedulerService;
|
7
|
+
readonly GAP_PX = 1;
|
8
|
+
readonly: import("@angular/core").InputSignal<boolean>;
|
8
9
|
draggable: import("@angular/core").InputSignal<boolean>;
|
9
10
|
calendar: import("@angular/core").InputSignal<string>;
|
10
11
|
endHour: import("@angular/core").InputSignal<number>;
|
@@ -28,8 +29,9 @@ export declare class AXSchedulerDayViewComponent extends MXBaseComponent {
|
|
28
29
|
getAppointmentLayout(key: any): AXSchedulerDayAppointmentLayout | undefined;
|
29
30
|
getAppointmentLeft(key: any): string;
|
30
31
|
getAppointmentWidth(key: any): string;
|
31
|
-
|
32
|
+
getAppointmentTop(key: any): string;
|
32
33
|
getAppointmentHeight(key: any): string;
|
34
|
+
get isReadonly(): boolean;
|
33
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerDayViewComponent, never>;
|
34
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerDayViewComponent, "ax-scheduler-day-view", never, { "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": true; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
36
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerDayViewComponent, "ax-scheduler-day-view", never, { "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": true; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
35
37
|
}
|
@@ -14,14 +14,15 @@ export type AXSchedulerMonthDayCell = {
|
|
14
14
|
export declare class AXSchedulerMonthViewComponent extends MXBaseComponent {
|
15
15
|
private formatService;
|
16
16
|
private calendarService;
|
17
|
-
private
|
17
|
+
private schedulerService;
|
18
|
+
readonly: import("@angular/core").InputSignal<boolean>;
|
18
19
|
draggable: import("@angular/core").InputSignal<boolean>;
|
19
20
|
calendar: import("@angular/core").InputSignal<string>;
|
20
21
|
date: import("@angular/core").InputSignal<AXDateTime>;
|
21
22
|
appointments: import("@angular/core").InputSignal<AXSchedulerAppointmentType[]>;
|
22
23
|
firstDayOfWeek: import("@angular/core").InputSignal<AXDayOfWeekName>;
|
23
|
-
readonly MAX_VISIBLE_APPOINTMENTS_PER_DAY = 2;
|
24
24
|
readonly DAYS_IN_WEEK = 7;
|
25
|
+
readonly MAX_VISIBLE_APPOINTMENTS_PER_DAY = 2;
|
25
26
|
slotClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
26
27
|
slotDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
27
28
|
slotRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
@@ -40,6 +41,7 @@ export declare class AXSchedulerMonthViewComponent extends MXBaseComponent {
|
|
40
41
|
appointmentsGroupedByDay: import("@angular/core").Signal<Map<string, AXSchedulerAppointmentType[]>>;
|
41
42
|
dayCellLayouts: import("@angular/core").Signal<AXSchedulerMonthDayCell[]>;
|
42
43
|
gridTemplateRowsStyle: import("@angular/core").Signal<string>;
|
44
|
+
get isReadonly(): boolean;
|
43
45
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerMonthViewComponent, never>;
|
44
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerMonthViewComponent, "ax-scheduler-month-view", never, { "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
46
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerMonthViewComponent, "ax-scheduler-month-view", never, { "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
45
47
|
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { MXBaseComponent } from '@acorex/components/common';
|
2
|
+
import { AXDateTime } from '@acorex/core/date-time';
|
3
|
+
import { AXSchedulerAppointmentEvent, AXSchedulerAppointmentLayout, AXSchedulerAppointmentType, AXSchedulerSlotEvent } from '../../scheduler.class';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class AXSchedulerTimelineDayViewComponent extends MXBaseComponent {
|
6
|
+
private schedulerService;
|
7
|
+
readonly GAP_PX = 1;
|
8
|
+
readonly: import("@angular/core").InputSignal<boolean>;
|
9
|
+
draggable: import("@angular/core").InputSignal<boolean>;
|
10
|
+
calendar: import("@angular/core").InputSignal<string>;
|
11
|
+
endHour: import("@angular/core").InputSignal<number>;
|
12
|
+
date: import("@angular/core").InputSignal<AXDateTime>;
|
13
|
+
startHour: import("@angular/core").InputSignal<number>;
|
14
|
+
appointments: import("@angular/core").InputSignal<AXSchedulerAppointmentType[]>;
|
15
|
+
singleDayAppointments: import("@angular/core").Signal<AXSchedulerAppointmentType[]>;
|
16
|
+
slotClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
17
|
+
slotDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
18
|
+
slotRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
19
|
+
appointmentClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
20
|
+
appointmentDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
21
|
+
appointmentRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
22
|
+
private readonly eventOutputMap;
|
23
|
+
handleAppointmentEvent(mouseEvent: MouseEvent, appointment: AXSchedulerAppointmentType): void;
|
24
|
+
handleSlotEvent(mouseEvent: MouseEvent, startDate: AXDateTime): void;
|
25
|
+
hoursArray: import("@angular/core").Signal<AXDateTime[]>;
|
26
|
+
appointmentLayouts: import("@angular/core").Signal<AXSchedulerAppointmentLayout[]>;
|
27
|
+
get isReadonly(): boolean;
|
28
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerTimelineDayViewComponent, never>;
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerTimelineDayViewComponent, "ax-scheduler-timeline-day-view", never, { "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": true; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
30
|
+
}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import { MXBaseComponent } from '@acorex/components/common';
|
2
|
+
import { AXDateTime } from '@acorex/core/date-time';
|
3
|
+
import { AXSchedulerAppointmentEvent, AXSchedulerAppointmentType, AXSchedulerSlotEvent } from '../../scheduler.class';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export interface MultiDayViewDayData {
|
6
|
+
date: AXDateTime;
|
7
|
+
visibleAppointments: AXSchedulerAppointmentType[];
|
8
|
+
hiddenAppointments: AXSchedulerAppointmentType[];
|
9
|
+
moreCount: number;
|
10
|
+
}
|
11
|
+
export declare class AXSchedulerTimelineMonthViewComponent extends MXBaseComponent {
|
12
|
+
private calendarService;
|
13
|
+
private schedulerService;
|
14
|
+
private readonly MAX_VISIBLE_APPOINTMENTS_PER_DAY;
|
15
|
+
readonly: import("@angular/core").InputSignal<boolean>;
|
16
|
+
draggable: import("@angular/core").InputSignal<boolean>;
|
17
|
+
calendar: import("@angular/core").InputSignal<string>;
|
18
|
+
endHour: import("@angular/core").InputSignal<number>;
|
19
|
+
date: import("@angular/core").InputSignal<AXDateTime>;
|
20
|
+
startHour: import("@angular/core").InputSignal<number>;
|
21
|
+
appointments: import("@angular/core").InputSignal<AXSchedulerAppointmentType[]>;
|
22
|
+
singleDayAppointments: import("@angular/core").Signal<AXSchedulerAppointmentType[]>;
|
23
|
+
monthAppointments: import("@angular/core").Signal<MultiDayViewDayData[]>;
|
24
|
+
slotClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
25
|
+
slotDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
26
|
+
slotRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
27
|
+
appointmentClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
28
|
+
appointmentDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
29
|
+
appointmentRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
30
|
+
private readonly eventOutputMap;
|
31
|
+
handleAppointmentEvent(mouseEvent: MouseEvent, appointment: AXSchedulerAppointmentType): void;
|
32
|
+
handleSlotEvent(mouseEvent: MouseEvent, date: AXDateTime): void;
|
33
|
+
protected isToday(date: AXDateTime): boolean;
|
34
|
+
get isReadonly(): boolean;
|
35
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerTimelineMonthViewComponent, never>;
|
36
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerTimelineMonthViewComponent, "ax-scheduler-timeline-month-view", never, { "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": true; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
37
|
+
}
|
package/scheduler/lib/views/timeline-multi-day/scheduler-timeline-multi-day-view.component.d.ts
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
import { MXBaseComponent } from '@acorex/components/common';
|
2
|
+
import { AXDateTime } from '@acorex/core/date-time';
|
3
|
+
import { AXSchedulerAppointmentEvent, AXSchedulerAppointmentType, AXSchedulerMultiDayViewAppointmentType, AXSchedulerSlotEvent } from '../../scheduler.class';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class AXSchedulerTimelineMultiDayViewComponent extends MXBaseComponent {
|
6
|
+
private calendarService;
|
7
|
+
daysCount: import("@angular/core").InputSignal<number>;
|
8
|
+
readonly: import("@angular/core").InputSignal<boolean>;
|
9
|
+
draggable: import("@angular/core").InputSignal<boolean>;
|
10
|
+
calendar: import("@angular/core").InputSignal<string>;
|
11
|
+
endHour: import("@angular/core").InputSignal<number>;
|
12
|
+
date: import("@angular/core").InputSignal<AXDateTime>;
|
13
|
+
startHour: import("@angular/core").InputSignal<number>;
|
14
|
+
appointments: import("@angular/core").InputSignal<AXSchedulerAppointmentType[]>;
|
15
|
+
multiDayAppointments: import("@angular/core").Signal<AXSchedulerMultiDayViewAppointmentType[]>;
|
16
|
+
slotClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
17
|
+
slotDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
18
|
+
slotRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
19
|
+
appointmentClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
20
|
+
appointmentDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
21
|
+
appointmentRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
|
22
|
+
protected isToday(date: AXDateTime): boolean;
|
23
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerTimelineMultiDayViewComponent, never>;
|
24
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerTimelineMultiDayViewComponent, "ax-scheduler-timeline-multi-day-view", never, { "daysCount": { "alias": "daysCount"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": true; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
25
|
+
}
|
@@ -1,19 +1,23 @@
|
|
1
1
|
import { MXBaseComponent } from '@acorex/components/common';
|
2
2
|
import { AXDateTime } from '@acorex/core/date-time';
|
3
|
-
import { AXSchedulerActiveAppointmentsInBlock, AXSchedulerAllDaySlotData, AXSchedulerAppointmentEvent, AXSchedulerAppointmentsByStartBlock, AXSchedulerAppointmentType, AXSchedulerOverflowBadge, AXSchedulerSlotEvent
|
3
|
+
import { AXSchedulerActiveAppointmentsInBlock, AXSchedulerAllDaySlotData, AXSchedulerAppointmentEvent, AXSchedulerAppointmentLayout, AXSchedulerAppointmentsByStartBlock, AXSchedulerAppointmentType, AXSchedulerOverflowBadge, AXSchedulerSlotEvent } from '../../scheduler.class';
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
type AXSchedulerGridBadgeInfo = AXSchedulerOverflowBadge & {
|
6
6
|
hiddenAppointments: AXSchedulerAppointmentType[];
|
7
7
|
};
|
8
8
|
export declare class AXSchedulerWeekViewComponent extends MXBaseComponent {
|
9
|
-
private
|
10
|
-
|
9
|
+
private calendarService;
|
10
|
+
private schedulerService;
|
11
|
+
readonly GAP_PX = 1;
|
12
|
+
readonly: import("@angular/core").InputSignal<boolean>;
|
11
13
|
draggable: import("@angular/core").InputSignal<boolean>;
|
12
14
|
calendar: import("@angular/core").InputSignal<string>;
|
13
15
|
endHour: import("@angular/core").InputSignal<number>;
|
14
16
|
date: import("@angular/core").InputSignal<AXDateTime>;
|
15
17
|
startHour: import("@angular/core").InputSignal<number>;
|
16
18
|
appointments: import("@angular/core").InputSignal<AXSchedulerAppointmentType[]>;
|
19
|
+
allDayAppointments: import("@angular/core").Signal<AXSchedulerAppointmentType[]>;
|
20
|
+
singleDayAppointments: import("@angular/core").Signal<AXSchedulerAppointmentType[]>;
|
17
21
|
slotClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
18
22
|
slotDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
19
23
|
slotRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerSlotEvent>;
|
@@ -24,19 +28,19 @@ export declare class AXSchedulerWeekViewComponent extends MXBaseComponent {
|
|
24
28
|
handleAppointmentEvent(mouseEvent: MouseEvent, appointment: AXSchedulerAppointmentType): void;
|
25
29
|
handleSingleSlotEvent(mouseEvent: MouseEvent, hour: AXDateTime, day: AXDateTime, minuteIndex: number): void;
|
26
30
|
handleAllDaySlotEvent(mouseEvent: MouseEvent, day: AXDateTime): void;
|
27
|
-
allDayAppointments: import("@angular/core").Signal<AXSchedulerAppointmentType[]>;
|
28
|
-
singleDayAppointments: import("@angular/core").Signal<AXSchedulerAppointmentType[]>;
|
29
31
|
hoursArray: import("@angular/core").Signal<AXDateTime[]>;
|
30
32
|
daysArray: import("@angular/core").Signal<AXDateTime[]>;
|
31
33
|
totalBlocksPerViewDay: import("@angular/core").Signal<number>;
|
32
34
|
appointmentsByStartBlock: import("@angular/core").Signal<AXSchedulerAppointmentsByStartBlock>;
|
33
35
|
activeAppointmentsInBlock: import("@angular/core").Signal<AXSchedulerActiveAppointmentsInBlock>;
|
34
|
-
visibleAppointmentsLayout: import("@angular/core").Signal<
|
36
|
+
visibleAppointmentsLayout: import("@angular/core").Signal<AXSchedulerAppointmentLayout[]>;
|
35
37
|
visualOccupancyMap: import("@angular/core").Signal<Map<string, any>>;
|
36
38
|
overflowBadges: import("@angular/core").Signal<AXSchedulerOverflowBadge[]>;
|
37
39
|
allDayAppointmentsPerDay: import("@angular/core").Signal<AXSchedulerAllDaySlotData[]>;
|
38
40
|
overflowBadgesWithData: import("@angular/core").Signal<AXSchedulerGridBadgeInfo[]>;
|
41
|
+
protected isToday(date: AXDateTime): boolean;
|
42
|
+
get isReadonly(): boolean;
|
39
43
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerWeekViewComponent, never>;
|
40
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerWeekViewComponent, "ax-scheduler-week-view", never, { "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": true; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
44
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerWeekViewComponent, "ax-scheduler-week-view", never, { "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "endHour": { "alias": "endHour"; "required": true; "isSignal": true; }; "date": { "alias": "date"; "required": true; "isSignal": true; }; "startHour": { "alias": "startHour"; "required": true; "isSignal": true; }; "appointments": { "alias": "appointments"; "required": false; "isSignal": true; }; }, { "slotClickedInternal": "slotClickedInternal"; "slotDblClickedInternal": "slotDblClickedInternal"; "slotRightClickedInternal": "slotRightClickedInternal"; "appointmentClickedInternal": "appointmentClickedInternal"; "appointmentDblClickedInternal": "appointmentDblClickedInternal"; "appointmentRightClickedInternal": "appointmentRightClickedInternal"; }, never, never, true, never>;
|
41
45
|
}
|
42
46
|
export {};
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-modal-acorex-components-modal-BzlZIwq8.mjs","sources":["../../../../libs/components/modal/src/lib/modal-footer/modal-footer.component.ts","../../../../libs/components/modal/src/lib/modal-footer/modal-footer.component.html","../../../../libs/components/modal/src/lib/modal-state.service.ts","../../../../libs/components/modal/src/lib/modal.component.ts","../../../../libs/components/modal/src/lib/modal.service.ts","../../../../libs/components/modal/src/lib/modal.module.ts","../../../../libs/components/modal/src/lib/modal.types.ts","../../../../libs/components/modal/src/acorex-components-modal.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'ax-modal-footer',\n templateUrl: './modal-footer.component.html',\n styleUrl: './modal-footer.component.scss',\n imports: [],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXModalFooterComponent {}\n","<ng-content select=\"ax-modal-footer\">\n <ng-content select=\"ax-prefix\"></ng-content>\n <ng-content select=\"ax-suffix\"></ng-content>\n</ng-content>\n","import { AXOverlayRef, AXOverlayService } from '@acorex/cdk/overlay';\nimport { AXComponentContent, AXComponentInputs } from '@acorex/core/components';\nimport { ComponentRef, inject, Injectable, signal } from '@angular/core';\nimport { cloneDeep, set } from 'lodash-es';\nimport { Subject } from 'rxjs';\nimport { AXModalContentComponent } from './modal-content/modal-content.component';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXModalStateService {\n private modalList = new Map<number, { overlay: AXOverlayRef<AXModalContentComponent>; modal: AXModalRef }>();\n private overlayService = inject(AXOverlayService);\n modalOption = signal<AXModalOptions>(null);\n\n async open<TResult = any>(content: AXComponentContent, options?: AXModalOptions): Promise<AXModalRef<TResult>> {\n this.modalOption.set(options);\n const randomId = Math.floor(Math.random() * 100000000000);\n const modalContentComp = (await import('./modal-content/modal-content.component')).AXModalContentComponent;\n const onClose = new Subject<TResult>();\n\n const returnRef: AXModalRef = {\n close: (data) => {\n this.close(randomId, data);\n },\n setInputs: (values: AXComponentInputs) => {\n this.setInputs(randomId, values);\n },\n minimize: () => {\n this.minimize(randomId);\n },\n maximize: () => {\n this.maximize(randomId);\n },\n restore: () => {\n this.restore(randomId);\n },\n onClose,\n };\n\n const finalInputs = { ...(cloneDeep(options?.inputs) ?? {}), ...{ __modal__: returnRef } };\n const finalOptions = set(cloneDeep(options) ?? {}, 'inputs', finalInputs);\n\n const ref = await this.overlayService.create(modalContentComp, {\n position: options?.position,\n backdrop: options?.backdrop,\n inputs: {\n __content__: content,\n inputs: {\n ...finalOptions?.inputs,\n },\n id: randomId,\n },\n });\n\n this.modalList.set(randomId, { overlay: ref, modal: returnRef });\n\n return returnRef;\n }\n\n async close<TResult = any>(id: number, data?: TResult) {\n const ref = this.modalList.get(id);\n if (!ref) return;\n ref.modal.onClose.next(data);\n ref.overlay.instance.destroy();\n this.modalList.delete(id);\n }\n\n async setInputs(id: number, values: AXComponentInputs) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n const comRef = ref as ComponentRef<any>;\n Object.entries(values).forEach((v) => {\n comRef.setInput(v[0], v[1]);\n });\n } else {\n ref.context.inputs.set(values);\n }\n }\n\n async minimize(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.minimize();\n } else {\n ref.context.minimize();\n }\n }\n\n async maximize(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.maximize();\n } else {\n ref.context.maximize();\n }\n }\n\n async restore(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.restore();\n } else {\n ref.context.restore();\n }\n }\n\n getMapIndexOf(targetKey: any) {\n let index = 0;\n for (const key of this.modalList.keys()) {\n if (key === targetKey) {\n return index;\n }\n index++;\n }\n return -1;\n }\n}\n","import { NXComponent } from '@acorex/components/common';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n signal,\n TemplateRef,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXModalStateService } from './modal-state.service';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Component({\n selector: 'ax-modal',\n template: `\n <ng-template #contentTemplate>\n <ng-content></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXModalComponent extends NXComponent {\n private service = inject(AXModalStateService);\n protected template = viewChild(TemplateRef);\n private ref = signal<AXModalRef<any>>(null);\n\n async open(options?: AXModalOptions) {\n const ref = await this.service.open(this.template(), options);\n this.ref.set(ref);\n return ref;\n }\n\n async close() {\n if (this.ref()) return;\n this.ref().close();\n }\n\n async setInputs(values: AXComponentInputs) {\n if (!this.ref()) return;\n const transform = { inputs: values };\n this.ref().setInputs(transform);\n }\n\n async minimize() {\n if (!this.ref()) return;\n this.ref().minimize();\n }\n\n async maximize() {\n if (!this.ref()) return;\n this.ref().maximize();\n }\n\n async restore() {\n if (!this.ref()) return;\n this.ref().restore();\n }\n}\n","import { AXComponentContent, AXComponentInputs } from '@acorex/core/components';\nimport { inject, Injectable, signal } from '@angular/core';\nimport { AXModalStateService } from './modal-state.service';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Injectable()\nexport class AXModalService {\n private stateService = inject(AXModalStateService);\n private ref = signal<AXModalRef<any>>(null);\n\n async open(content: AXComponentContent, options?: AXModalOptions): Promise<AXModalRef> {\n const ref = await this.stateService.open(content, options);\n this.ref.set(ref);\n return ref;\n }\n\n async close() {\n if (!this.ref()) return;\n this.ref().close();\n }\n\n async setInputs(values: AXComponentInputs) {\n if (!this.ref()) return;\n const transform = { inputs: values };\n this.ref().setInputs(transform);\n }\n\n async minimize() {\n if (!this.ref()) return;\n this.ref().minimize();\n }\n\n async maximize() {\n if (!this.ref()) return;\n this.ref().maximize();\n }\n\n async restore() {\n if (!this.ref()) return;\n this.ref().restore();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { AXModalFooterComponent } from './modal-footer/modal-footer.component';\nimport { AXModalComponent } from './modal.component';\nimport { AXModalService } from './modal.service';\n\nconst COMPONENT = [AXModalComponent, AXModalFooterComponent];\n\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [AXModalService],\n})\nexport class AXModalModule {}\n","import { AXOverlayOptions } from '@acorex/cdk/overlay';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport { Directive, Input } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nexport interface AXModalOptions extends AXOverlayOptions {\n title?: string;\n buttons?: {\n minimize?: {\n enable: boolean;\n position: 'bottom-right' | 'bottom-left';\n };\n maximize?: boolean;\n close?: boolean;\n };\n draggable?: boolean;\n size?: 'sm' | 'md' | 'lg' | 'full' | 'fit';\n}\n\nexport interface AXModalRef<TResult = any> {\n minimize: () => void;\n maximize: () => void;\n restore: () => void;\n close: (data?: TResult) => void;\n setInputs: (values: AXComponentInputs) => void;\n onClose: Subject<TResult>;\n}\n\n@Directive()\nexport abstract class AXModalComponentBase {\n @Input()\n private __modal__: AXModalRef;\n\n public close(data: any = null) {\n this.__modal__.close(data);\n }\n\n public minimize() {\n this.__modal__.minimize();\n }\n\n public restore() {\n this.__modal__.restore();\n }\n\n public maximize() {\n this.__modal__.maximize();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-modal-modal-content.component-zmFWBaiD.mjs","sources":["../../../../libs/components/modal/src/lib/modal-content/modal-content.component.ts","../../../../libs/components/modal/src/lib/modal-content/modal-content.component.html"],"sourcesContent":["import { AXFocusTrapDirective } from '@acorex/cdk/focus-trap';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { NXComponent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXComponentContent, AXComponentInputs, AXComponentType } from '@acorex/core/components';\nimport { animate, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n ElementRef,\n HostBinding,\n HostListener,\n inject,\n input,\n model,\n signal,\n TemplateRef,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXModalFooterComponent } from '../modal-footer/modal-footer.component';\nimport { AXModalStateService } from '../modal-state.service';\n\n@Component({\n selector: 'ax-modal-content',\n templateUrl: './modal-content.component.html',\n styleUrl: './modal-content.component.scss',\n imports: [CommonModule, AXButtonComponent, AXDecoratorModule],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [AXFocusTrapDirective],\n animations: [\n trigger('fadeInOut', [\n transition(':enter', [\n style({ opacity: 0, transform: 'scale(0.85)' }),\n animate('200ms ease-out', style({ opacity: 1, transform: 'scale(1)' })),\n ]),\n transition(':leave', [animate('200ms ease-in', style({ opacity: 0, transform: 'scale(0.85)' }))]),\n ]),\n ],\n})\nexport class AXModalContentComponent extends NXComponent {\n __content__ = input.required<AXComponentContent>();\n public id = input<number>();\n public inputs = model<AXComponentInputs>();\n private serviceState = inject(AXModalStateService);\n\n protected modalContainer = viewChild<ElementRef>('c');\n protected footer = viewChild<AXModalFooterComponent>(AXModalFooterComponent);\n\n protected isTemplate = computed(() => this.__content__() instanceof TemplateRef);\n public component = computed(() => this.__content__() as AXComponentType<any>);\n public template = computed(() => this.__content__() as TemplateRef<any>);\n protected modalSizeState = signal<'maximize' | 'minimize' | 'normal'>('normal');\n private isMouseDown = signal(false);\n private offsetX = signal(0);\n private offsetY = signal(0);\n private prevLeft = signal('');\n private prevTop = signal('');\n private backdropState = computed(() => this.serviceState.modalOption()?.backdrop?.enabled);\n protected closeHeaderButton = computed(() => this.serviceState.modalOption()?.buttons.close);\n private backdropBackground = computed(() => this.serviceState.modalOption()?.backdrop?.background);\n private backdropClass = computed(() => this.serviceState.modalOption()?.backdrop?.cssClass);\n private backdropCloseOnClick = computed(() => this.serviceState.modalOption()?.backdrop?.closeOnClick);\n private minimizePosition = computed(() => this.serviceState.modalOption()?.buttons.minimize.position);\n protected minimizeState = computed(() => this.serviceState.modalOption()?.buttons.minimize.enable);\n protected maximizeState = computed(() => this.serviceState.modalOption()?.buttons.maximize);\n protected modalSize = computed(() => this.serviceState.modalOption()?.size || 'fit');\n protected headerTitle = computed(() => this.serviceState.modalOption()?.title);\n private draggable = computed(() => this.serviceState.modalOption()?.draggable);\n\n #init = afterNextRender(() => {\n const popFooter = this.nativeElement.querySelector<HTMLDivElement>('.ax-modal-footer');\n const footer = this.nativeElement.querySelector<HTMLDivElement>('.ax-modal-content ax-modal-footer');\n if (footer) {\n popFooter?.append(footer);\n }\n });\n\n protected closeHandler() {\n this.serviceState.close(this.id());\n }\n\n minimize() {\n const index = this.serviceState.getMapIndexOf(this.id());\n\n this.modalContainer().nativeElement.style.top = `auto`;\n this.modalContainer().nativeElement.style.bottom = `0`;\n\n if (this.backdropState()) this.nativeElement.classList.remove('ax-backdrop');\n this.modalContainer().nativeElement.classList.remove('ax-normal-modal');\n this.modalContainer().nativeElement.classList.remove('ax-maximize-modal');\n this.modalContainer().nativeElement.classList.add(`ax-minimize-modal`);\n\n if (this.minimizePosition() === 'bottom-right') {\n this.modalContainer().nativeElement.style.left = `auto`;\n this.modalContainer().nativeElement.style.right = `${index * this.modalContainer().nativeElement.offsetWidth}px`;\n } else {\n this.modalContainer().nativeElement.style.right = `auto`;\n this.modalContainer().nativeElement.style.left = `${index * this.modalContainer().nativeElement.offsetWidth}px`;\n }\n\n this.modalSizeState.set('minimize');\n }\n\n maximize() {\n if (this.modalSizeState() === 'minimize') this.restore();\n\n this.modalContainer().nativeElement.style.top = `auto`;\n this.modalContainer().nativeElement.style.right = `auto`;\n this.modalContainer().nativeElement.style.left = `auto`;\n this.modalContainer().nativeElement.style.bottom = `auto`;\n\n this.modalContainer().nativeElement.classList.remove(`ax-minimize-modal`);\n this.modalContainer().nativeElement.classList.remove(`ax-normal-modal`);\n this.modalContainer().nativeElement.classList.add('ax-maximize-modal');\n this.modalSizeState.set('maximize');\n }\n\n restore() {\n this.modalContainer().nativeElement.style.bottom = `auto`;\n this.modalContainer().nativeElement.style.right = `auto`;\n this.modalContainer().nativeElement.style.left = this.prevLeft();\n this.modalContainer().nativeElement.style.top = this.prevTop();\n\n if (this.backdropState()) this.nativeElement.classList.add('ax-backdrop');\n this.modalContainer().nativeElement.classList.remove(`ax-minimize-modal`);\n this.modalContainer().nativeElement.classList.remove(`ax-maximize-modal`);\n this.modalContainer().nativeElement.classList.add('ax-normal-modal');\n this.modalSizeState.set('normal');\n }\n\n protected pointerDownHandler(e: MouseEvent) {\n if (!this.draggable() || this.modalSizeState() !== 'normal') return;\n this.isMouseDown.set(true);\n this.modalContainer().nativeElement.style.transition = 'none';\n this.offsetX.set(e.clientX - this.modalContainer().nativeElement.offsetLeft);\n this.offsetY.set(e.clientY - this.modalContainer().nativeElement.offsetTop);\n }\n\n @HostListener('pointermove', ['$event'])\n protected pointerMoveHandler(e: MouseEvent) {\n if (!this.draggable() || this.modalSizeState() !== 'normal') return;\n if (!this.isMouseDown()) return;\n this.modalContainer().nativeElement.style.left = `${e.clientX - this.offsetX()}px`;\n this.modalContainer().nativeElement.style.top = `${e.clientY - this.offsetY()}px`;\n this.prevLeft.set(`${e.clientX - this.offsetX()}px`);\n this.prevTop.set(`${e.clientY - this.offsetY()}px`);\n }\n\n @HostListener('pointerup', ['$event'])\n @HostListener('pointerleave', ['$event'])\n protected pointerUpHandler() {\n if (!this.draggable() || this.modalSizeState() !== 'normal') return;\n this.modalContainer().nativeElement.style.transition = '0.5s all ease';\n this.isMouseDown.set(false);\n }\n\n @HostListener('click', ['$event'])\n protected backdropCloseHandler(e: MouseEvent) {\n if (!this.backdropCloseOnClick()) return;\n if (e.target === e.currentTarget) {\n this.closeHandler();\n }\n }\n\n @HostBinding('@fadeInOut') fadeInOut = true;\n\n #eff = effect(() => {\n const host = this.nativeElement;\n if (this.draggable()) host.classList.add('ax-draggable');\n if (!this.backdropState()) return;\n host.classList.add('ax-backdrop');\n if (!this.backdropBackground()) return;\n if (this.backdropClass()) {\n host.classList.add(this.backdropClass());\n } else {\n host.classList.add('ax-default-backdrop');\n }\n });\n}\n","<div #c class=\"ax-modal-container ax-{{ modalSizeState() }}-modal ax-modal-{{ modalSize() }}\">\n <div (pointerdown)=\"pointerDownHandler($event)\" class=\"ax-modal-header\">\n <ax-text>{{ headerTitle() }}</ax-text>\n\n <div>\n @if (minimizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"minimize()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-minimize\"> </ax-icon>\n </ax-button>\n }\n\n @if (modalSizeState() !== 'normal') {\n <ax-button class=\"ax-sm\" (onClick)=\"restore()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-maximize\"> </ax-icon>\n </ax-button>\n }\n\n @if (maximizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"maximize()\" look=\"blank\" color=\"primary\">\n <ax-icon class=\"ax-icon ax-icon-full-screen\"> </ax-icon>\n </ax-button>\n }\n\n @if (closeHeaderButton()) {\n <ax-button class=\"ax-sm\" look=\"blank\" (onClick)=\"closeHandler()\" color=\"danger\">\n <ax-icon class=\"ax-icon ax-icon-close\"> </ax-icon>\n </ax-button>\n }\n </div>\n </div>\n <div class=\"ax-modal-content\">\n @if (isTemplate()) {\n <ng-container [ngTemplateOutlet]=\"this.template()\" [ngTemplateOutletContext]=\"inputs()\"></ng-container>\n } @else {\n <ng-container [ngComponentOutlet]=\"this.component()\" [ngComponentOutletInputs]=\"inputs()\"></ng-container>\n }\n </div>\n <div class=\"ax-modal-footer\"></div>\n</div>\n"],"names":[],"mappings":"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"}
|