@acorex/components 19.13.0-next.1 → 19.13.0-next.11

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 (143) hide show
  1. package/README.md +12 -14
  2. package/calendar/lib/calendar-range.component.d.ts +2 -6
  3. package/data-pager/lib/data-pager-base.component.d.ts +2 -2
  4. package/data-pager/lib/data-pager-info.component.d.ts +1 -1
  5. package/data-pager/lib/data-pager-input-selector.component.d.ts +1 -1
  6. package/data-pager/lib/data-pager-next-buttons.component.d.ts +1 -1
  7. package/data-pager/lib/data-pager-numeric-selector.component.d.ts +1 -1
  8. package/data-pager/lib/data-pager-pagesize-dropdown.component.d.ts +1 -1
  9. package/data-pager/lib/data-pager-prev-buttons.component.d.ts +1 -1
  10. package/fesm2022/acorex-components-action-sheet.mjs +10 -10
  11. package/fesm2022/acorex-components-alert.mjs +7 -7
  12. package/fesm2022/acorex-components-audio-wave.mjs +7 -7
  13. package/fesm2022/acorex-components-autocomplete.mjs +7 -7
  14. package/fesm2022/acorex-components-avatar.mjs +10 -10
  15. package/fesm2022/acorex-components-badge.mjs +7 -7
  16. package/fesm2022/acorex-components-bottom-navigation.mjs +10 -10
  17. package/fesm2022/acorex-components-breadcrumbs.mjs +10 -10
  18. package/fesm2022/acorex-components-button-group.mjs +10 -10
  19. package/fesm2022/acorex-components-button.mjs +15 -15
  20. package/fesm2022/acorex-components-button.mjs.map +1 -1
  21. package/fesm2022/acorex-components-calendar.mjs +22 -20
  22. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  23. package/fesm2022/acorex-components-check-box.mjs +7 -7
  24. package/fesm2022/acorex-components-chips.mjs +7 -7
  25. package/fesm2022/acorex-components-circular-progress.mjs +7 -7
  26. package/fesm2022/acorex-components-collapse.mjs +10 -10
  27. package/fesm2022/acorex-components-color-box.mjs +7 -7
  28. package/fesm2022/acorex-components-color-palette.mjs +25 -25
  29. package/fesm2022/acorex-components-comment.mjs +28 -28
  30. package/fesm2022/acorex-components-common.mjs +91 -91
  31. package/fesm2022/acorex-components-conversation.mjs +49 -49
  32. package/fesm2022/acorex-components-cron-job.mjs +46 -46
  33. package/fesm2022/acorex-components-data-pager.mjs +45 -45
  34. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  35. package/fesm2022/acorex-components-data-table.mjs +37 -37
  36. package/fesm2022/acorex-components-datetime-box.mjs +7 -7
  37. package/fesm2022/acorex-components-datetime-input.mjs +9 -9
  38. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  39. package/fesm2022/acorex-components-datetime-picker.mjs +7 -7
  40. package/fesm2022/acorex-components-decorators.mjs +27 -27
  41. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  42. package/fesm2022/acorex-components-dialog.mjs +10 -10
  43. package/fesm2022/acorex-components-drawer.mjs +13 -13
  44. package/fesm2022/acorex-components-dropdown-button.mjs +7 -7
  45. package/fesm2022/acorex-components-dropdown.mjs +13 -13
  46. package/fesm2022/acorex-components-file-explorer.mjs +25 -25
  47. package/fesm2022/acorex-components-flow-chart.mjs +669 -0
  48. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -0
  49. package/fesm2022/acorex-components-form.mjs +29 -30
  50. package/fesm2022/acorex-components-form.mjs.map +1 -1
  51. package/fesm2022/acorex-components-grid-layout-builder.mjs +10 -10
  52. package/fesm2022/acorex-components-image-editor.mjs +34 -34
  53. package/fesm2022/acorex-components-image.mjs +23 -11
  54. package/fesm2022/acorex-components-image.mjs.map +1 -1
  55. package/fesm2022/acorex-components-json-viewer.mjs +7 -7
  56. package/fesm2022/acorex-components-kbd.mjs +10 -10
  57. package/fesm2022/acorex-components-label.mjs +7 -7
  58. package/fesm2022/acorex-components-list.mjs +7 -7
  59. package/fesm2022/acorex-components-loading-dialog.mjs +10 -10
  60. package/fesm2022/acorex-components-loading.mjs +16 -16
  61. package/fesm2022/acorex-components-map.mjs +10 -10
  62. package/fesm2022/acorex-components-media-viewer.mjs +34 -34
  63. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  64. package/fesm2022/acorex-components-menu.mjs +16 -16
  65. package/fesm2022/{acorex-components-modal-acorex-components-modal-DWBUhygA.mjs → acorex-components-modal-acorex-components-modal-B4nBGqa3.mjs} +21 -21
  66. package/fesm2022/acorex-components-modal-acorex-components-modal-B4nBGqa3.mjs.map +1 -0
  67. package/fesm2022/{acorex-components-modal-modal-content.component-4ttnaM8r.mjs → acorex-components-modal-modal-content.component-oWerCvDI.mjs} +10 -6
  68. package/fesm2022/acorex-components-modal-modal-content.component-oWerCvDI.mjs.map +1 -0
  69. package/fesm2022/acorex-components-modal.mjs +1 -1
  70. package/fesm2022/acorex-components-navbar.mjs +7 -7
  71. package/fesm2022/acorex-components-notification.mjs +10 -10
  72. package/fesm2022/acorex-components-number-box.mjs +7 -7
  73. package/fesm2022/acorex-components-otp.mjs +7 -7
  74. package/fesm2022/acorex-components-page.mjs +10 -10
  75. package/fesm2022/acorex-components-paint.mjs +25 -25
  76. package/fesm2022/acorex-components-password-box.mjs +10 -10
  77. package/fesm2022/acorex-components-pdf-reader.mjs +7 -7
  78. package/fesm2022/acorex-components-phone-box.mjs +7 -7
  79. package/fesm2022/acorex-components-picker.mjs +13 -13
  80. package/fesm2022/acorex-components-popover.mjs +7 -7
  81. package/fesm2022/acorex-components-popup.mjs +11 -11
  82. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  83. package/fesm2022/acorex-components-progress-bar.mjs +7 -7
  84. package/fesm2022/acorex-components-qrcode.mjs +7 -7
  85. package/fesm2022/acorex-components-query-builder.mjs +7 -7
  86. package/fesm2022/acorex-components-radio.mjs +7 -7
  87. package/fesm2022/acorex-components-rail-navigation.mjs +13 -13
  88. package/fesm2022/acorex-components-range-slider.mjs +7 -7
  89. package/fesm2022/acorex-components-rate-picker.mjs +7 -7
  90. package/fesm2022/acorex-components-rest-api-generator.mjs +22 -22
  91. package/fesm2022/acorex-components-result.mjs +7 -7
  92. package/fesm2022/acorex-components-routing-progress.mjs +7 -7
  93. package/fesm2022/acorex-components-scheduler.mjs +128 -72
  94. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  95. package/fesm2022/acorex-components-scss.mjs +4 -4
  96. package/fesm2022/acorex-components-search-box.mjs +7 -7
  97. package/fesm2022/acorex-components-select-box.mjs +7 -7
  98. package/fesm2022/acorex-components-selection-list.mjs +7 -7
  99. package/fesm2022/acorex-components-side-menu.mjs +13 -13
  100. package/fesm2022/acorex-components-skeleton.mjs +7 -7
  101. package/fesm2022/acorex-components-slider.mjs +7 -7
  102. package/fesm2022/acorex-components-sliding-item.mjs +13 -13
  103. package/fesm2022/acorex-components-step-wizard.mjs +13 -13
  104. package/fesm2022/acorex-components-switch.mjs +10 -10
  105. package/fesm2022/acorex-components-tabs.mjs +13 -13
  106. package/fesm2022/acorex-components-tag-box.mjs +7 -7
  107. package/fesm2022/acorex-components-tag.mjs +7 -7
  108. package/fesm2022/acorex-components-text-area.mjs +7 -7
  109. package/fesm2022/acorex-components-text-box.mjs +10 -10
  110. package/fesm2022/acorex-components-time-line.mjs +10 -10
  111. package/fesm2022/acorex-components-toast.mjs +10 -10
  112. package/fesm2022/acorex-components-toolbar.mjs +7 -7
  113. package/fesm2022/acorex-components-tooltip.mjs +10 -10
  114. package/fesm2022/acorex-components-tree-view.mjs +10 -10
  115. package/fesm2022/acorex-components-uploader.mjs +29 -29
  116. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  117. package/fesm2022/acorex-components-video-player.mjs +7 -7
  118. package/fesm2022/acorex-components-wysiwyg.mjs +31 -31
  119. package/flow-chart/README.md +3 -0
  120. package/flow-chart/index.d.ts +5 -0
  121. package/flow-chart/lib/flow-chart-creator/flow-chart-creator.component.d.ts +13 -0
  122. package/flow-chart/lib/flow-chart-renderer/flow-chart-renderer.component.d.ts +22 -0
  123. package/flow-chart/lib/flow-chart.component.d.ts +24 -0
  124. package/flow-chart/lib/flow-chart.module.d.ts +10 -0
  125. package/flow-chart/lib/flow-chart.service.d.ts +57 -0
  126. package/flow-chart/lib/flow-chart.type.d.ts +37 -0
  127. package/form/lib/form-field.component.d.ts +3 -2
  128. package/form/lib/validation-summary.component.d.ts +2 -4
  129. package/image/lib/image.component.d.ts +4 -1
  130. package/modal/lib/modal-content/modal-content.component.d.ts +5 -1
  131. package/modal/lib/modal-state.service.d.ts +1 -1
  132. package/modal/lib/modal.service.d.ts +1 -1
  133. package/package.json +5 -1
  134. package/scheduler/lib/scheduler.component.d.ts +3 -5
  135. package/scheduler/lib/views/agenda/scheduler-agenda-view.component.d.ts +6 -2
  136. package/scheduler/lib/views/day/scheduler-day-view.component.d.ts +3 -1
  137. package/scheduler/lib/views/month/scheduler-month-view.component.d.ts +3 -1
  138. package/scheduler/lib/views/timeline-day/scheduler-timeline-day-view.component.d.ts +3 -1
  139. package/scheduler/lib/views/timeline-month/scheduler-timeline-month-view.component.d.ts +6 -2
  140. package/scheduler/lib/views/timeline-multi-day/scheduler-timeline-multi-day-view.component.d.ts +4 -1
  141. package/scheduler/lib/views/week/scheduler-week-view.component.d.ts +5 -1
  142. package/fesm2022/acorex-components-modal-acorex-components-modal-DWBUhygA.mjs.map +0 -1
  143. package/fesm2022/acorex-components-modal-modal-content.component-4ttnaM8r.mjs.map +0 -1
@@ -0,0 +1,24 @@
1
+ import { NXComponent } from '@acorex/components/common';
2
+ import { AXFlowChartEdges, AXFlowChartNodes } from './flow-chart.type';
3
+ import * as i0 from "@angular/core";
4
+ export declare class AXFlowChartComponent extends NXComponent {
5
+ #private;
6
+ private flowChartService;
7
+ initialFlowChartNode: import("@angular/core").InputSignal<AXFlowChartNodes[]>;
8
+ initialFlowChartEdge: import("@angular/core").InputSignal<AXFlowChartEdges[]>;
9
+ selectedNode: import("@angular/core").Signal<AXFlowChartNodes>;
10
+ selectedEdge: import("@angular/core").Signal<AXFlowChartEdges>;
11
+ handleKeyboardEvent(event: KeyboardEvent): void;
12
+ drawEdges(edges: AXFlowChartEdges[]): void;
13
+ removeEdge(edge: AXFlowChartEdges): void;
14
+ createNode(nodes: {
15
+ id: string;
16
+ type: string;
17
+ label: string;
18
+ x: number;
19
+ y: number;
20
+ }[]): void;
21
+ removeNode(nodeId: string): void;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXFlowChartComponent, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXFlowChartComponent, "ax-flow-chart", never, { "initialFlowChartNode": { "alias": "initialFlowChartNode"; "required": true; "isSignal": true; }; "initialFlowChartEdge": { "alias": "initialFlowChartEdge"; "required": true; "isSignal": true; }; }, {}, never, ["ax-header", "ax-flow-chart-renderer", "ax-footer"], true, never>;
24
+ }
@@ -0,0 +1,10 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "@angular/common";
3
+ import * as i2 from "./flow-chart-renderer/flow-chart-renderer.component";
4
+ import * as i3 from "./flow-chart-creator/flow-chart-creator.component";
5
+ import * as i4 from "./flow-chart.component";
6
+ export declare class AXFlowChartModule {
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXFlowChartModule, never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXFlowChartModule, never, [typeof i1.CommonModule, typeof i2.AXFlowChartRendererComponent, typeof i3.AXFlowChartCreatorComponent, typeof i4.AXFlowChartComponent], [typeof i2.AXFlowChartRendererComponent, typeof i3.AXFlowChartCreatorComponent, typeof i4.AXFlowChartComponent]>;
9
+ static ɵinj: i0.ɵɵInjectorDeclaration<AXFlowChartModule>;
10
+ }
@@ -0,0 +1,57 @@
1
+ import { Subject } from 'rxjs';
2
+ import { AXFlowChartEdges, AXFlowChartNodes, AXLineClickEvent, AXNodeClickEvent } from './flow-chart.type';
3
+ import * as i0 from "@angular/core";
4
+ export declare class AXFlowChartService {
5
+ #private;
6
+ private zone;
7
+ initialFlowChartEdge: import("@angular/core").WritableSignal<any[]>;
8
+ initialFlowChartNode: import("@angular/core").WritableSignal<any[]>;
9
+ selectedNode: import("@angular/core").WritableSignal<AXFlowChartNodes>;
10
+ selectedEdge: import("@angular/core").WritableSignal<AXFlowChartEdges>;
11
+ readonly svgService: import("@angular/core").WritableSignal<any>;
12
+ readonly canvasService: import("@angular/core").WritableSignal<any>;
13
+ readonly lineClick: Subject<AXLineClickEvent>;
14
+ readonly lineDbClick: Subject<AXLineClickEvent>;
15
+ readonly nodeClick: Subject<AXNodeClickEvent>;
16
+ readonly nodeDbClick: Subject<AXNodeClickEvent>;
17
+ readonly onEdgeUpdate: Subject<AXFlowChartEdges>;
18
+ readonly onNodeUpdate: Subject<AXFlowChartNodes>;
19
+ private nodesMap;
20
+ private eventListeners;
21
+ private anchorClickBuffer;
22
+ private currentConnection;
23
+ private draggingConnection;
24
+ private tempLine;
25
+ private addEventListener;
26
+ private removeEventListeners;
27
+ private setupNodeEventListeners;
28
+ private setupAnchorEventListeners;
29
+ private addAnchors;
30
+ private makeDraggable;
31
+ private positionAnchor;
32
+ private getAnchorPoint;
33
+ private startTempLine;
34
+ private clearTempLine;
35
+ private pushAndCreateEdgeData;
36
+ drawEdges(edges?: AXFlowChartEdges[]): void;
37
+ createLine(from: {
38
+ x: number;
39
+ y: number;
40
+ }, to: {
41
+ x: number;
42
+ y: number;
43
+ }, edge: AXFlowChartEdges): SVGLineElement;
44
+ private finishConnection;
45
+ removeEdge(edge: AXFlowChartEdges): void;
46
+ createNode(nodes: {
47
+ id: string;
48
+ type: string;
49
+ label: string;
50
+ x: number;
51
+ y: number;
52
+ }[]): void;
53
+ removeNode(nodeId: string): void;
54
+ cleanup(): void;
55
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXFlowChartService, never>;
56
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXFlowChartService>;
57
+ }
@@ -0,0 +1,37 @@
1
+ export interface AXFlowChart {
2
+ nodes: AXFlowChartNodes[];
3
+ edges: AXFlowChartEdges[];
4
+ }
5
+ export interface AXFlowChartNodes {
6
+ id: string;
7
+ type: string;
8
+ label: string;
9
+ x: number;
10
+ y: number;
11
+ }
12
+ export interface AXFlowChartEdges {
13
+ id: string;
14
+ source: {
15
+ id: string;
16
+ anchor: string;
17
+ };
18
+ target: {
19
+ id: string;
20
+ anchor: string;
21
+ };
22
+ }
23
+ export interface HTMLElementWithDataset extends HTMLElement {
24
+ dataset: {
25
+ id?: string;
26
+ anchor?: string;
27
+ nodeId?: string;
28
+ };
29
+ }
30
+ export type AXNodeClickEvent = {
31
+ target: HTMLElementWithDataset;
32
+ event: MouseEvent;
33
+ };
34
+ export type AXLineClickEvent = {
35
+ target: AXFlowChartEdges;
36
+ event: MouseEvent;
37
+ };
@@ -1,5 +1,5 @@
1
1
  import { MXBaseComponent } from '@acorex/components/common';
2
- import { ViewContainerRef, WritableSignal } from '@angular/core';
2
+ import { AfterContentChecked, ViewContainerRef, WritableSignal } from '@angular/core';
3
3
  import { AXFormComponent, AXLabelMode } from './form.component';
4
4
  import * as i0 from "@angular/core";
5
5
  /**
@@ -7,7 +7,7 @@ import * as i0 from "@angular/core";
7
7
  *
8
8
  * @category Components
9
9
  */
10
- export declare class AXFormFieldComponent extends MXBaseComponent {
10
+ export declare class AXFormFieldComponent extends MXBaseComponent implements AfterContentChecked {
11
11
  /**
12
12
  * Specifies the mode of the label in the form field.
13
13
  * @defaultValue 'static'
@@ -33,6 +33,7 @@ export declare class AXFormFieldComponent extends MXBaseComponent {
33
33
  * @ignore
34
34
  */
35
35
  constructor();
36
+ ngAfterContentChecked(): void;
36
37
  /**
37
38
  * Calculates and sets the indentation size for the label based on the width of the prefix element.
38
39
  * @ignore
@@ -1,6 +1,5 @@
1
1
  import { MXBaseComponent } from '@acorex/components/common';
2
2
  import { AXToastService } from '@acorex/components/toast';
3
- import { AXTranslationService } from '@acorex/core/translation';
4
3
  import { OnDestroy } from '@angular/core';
5
4
  import { AXFormComponent } from './form.component';
6
5
  import * as i0 from "@angular/core";
@@ -13,7 +12,6 @@ export type AXValidationSummaryDisplayMode = 'toast' | 'alert';
13
12
  export declare class AXValidationSummaryComponent extends MXBaseComponent implements OnDestroy {
14
13
  private _tosatService;
15
14
  private host;
16
- private translateService;
17
15
  /**
18
16
  * @ignore
19
17
  */
@@ -58,7 +56,7 @@ export declare class AXValidationSummaryComponent extends MXBaseComponent implem
58
56
  /**
59
57
  * @ignore
60
58
  */
61
- constructor(_tosatService: AXToastService, host: AXFormComponent, translateService: AXTranslationService);
59
+ constructor(_tosatService: AXToastService, host: AXFormComponent);
62
60
  /**
63
61
  * @ignore
64
62
  */
@@ -71,6 +69,6 @@ export declare class AXValidationSummaryComponent extends MXBaseComponent implem
71
69
  * @ignore
72
70
  */
73
71
  ngOnDestroy(): void;
74
- static ɵfac: i0.ɵɵFactoryDeclaration<AXValidationSummaryComponent, [null, { optional: true; }, null]>;
72
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXValidationSummaryComponent, [null, { optional: true; }]>;
75
73
  static ɵcmp: i0.ɵɵComponentDeclaration<AXValidationSummaryComponent, "ax-validation-summary", never, { "title": { "alias": "title"; "required": false; }; "displayMode": { "alias": "displayMode"; "required": false; }; "timeOut": { "alias": "timeOut"; "required": false; }; "autoHide": { "alias": "autoHide"; "required": false; }; }, {}, never, never, true, never>;
76
74
  }
@@ -7,6 +7,8 @@ import * as i0 from "@angular/core";
7
7
  * @category Components
8
8
  */
9
9
  export declare class AXImageComponent extends MXBaseComponent implements OnInit {
10
+ width: import("@angular/core").InputSignal<number>;
11
+ height: import("@angular/core").InputSignal<number>;
10
12
  /**
11
13
  * Specifies when the image overlay should be shown.
12
14
  *
@@ -77,6 +79,7 @@ export declare class AXImageComponent extends MXBaseComponent implements OnInit
77
79
  * @ignore
78
80
  */
79
81
  get __hostClass(): string[];
82
+ private get __hostStyle();
80
83
  static ɵfac: i0.ɵɵFactoryDeclaration<AXImageComponent, never>;
81
- static ɵcmp: i0.ɵɵComponentDeclaration<AXImageComponent, "ax-image", never, { "overlayMode": { "alias": "overlayMode"; "required": false; }; "src": { "alias": "src"; "required": false; }; "alt": { "alias": "alt"; "required": false; }; "priority": { "alias": "priority"; "required": false; }; "lazy": { "alias": "lazy"; "required": false; }; }, { "onLoad": "onLoad"; "onError": "onError"; }, never, ["ax-overlay", "ax-placeholder, ng-content", "ax-loading, ax-loading-spinner"], true, never>;
84
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXImageComponent, "ax-image", never, { "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "overlayMode": { "alias": "overlayMode"; "required": false; }; "src": { "alias": "src"; "required": false; }; "alt": { "alias": "alt"; "required": false; }; "priority": { "alias": "priority"; "required": false; }; "lazy": { "alias": "lazy"; "required": false; }; }, { "onLoad": "onLoad"; "onError": "onError"; }, never, ["ax-overlay", "ax-placeholder, ng-content", "ax-loading, ax-loading-spinner"], true, never>;
82
85
  }
@@ -1,20 +1,24 @@
1
1
  import { NXComponent } from '@acorex/components/common';
2
2
  import { AXComponentContent, AXComponentInputs, AXComponentType } from '@acorex/core/components';
3
3
  import { ElementRef, TemplateRef } from '@angular/core';
4
+ import { DomSanitizer } from '@angular/platform-browser';
4
5
  import { AXModalFooterComponent } from '../modal-footer/modal-footer.component';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@acorex/cdk/focus-trap";
7
8
  export declare class AXModalContentComponent extends NXComponent {
8
9
  #private;
9
- __content__: import("@angular/core").InputSignal<AXComponentContent>;
10
+ __content__: import("@angular/core").InputSignal<AXComponentContent | HTMLElement>;
10
11
  id: import("@angular/core").InputSignal<number>;
11
12
  inputs: import("@angular/core").ModelSignal<AXComponentInputs>;
12
13
  private serviceState;
14
+ protected sanitizer: DomSanitizer;
13
15
  protected modalContainer: import("@angular/core").Signal<ElementRef<any>>;
14
16
  protected footer: import("@angular/core").Signal<AXModalFooterComponent>;
15
17
  protected isTemplate: import("@angular/core").Signal<boolean>;
18
+ protected isHtmlElement: import("@angular/core").Signal<boolean>;
16
19
  component: import("@angular/core").Signal<AXComponentType<any>>;
17
20
  template: import("@angular/core").Signal<TemplateRef<any>>;
21
+ element: import("@angular/core").Signal<HTMLElement>;
18
22
  protected modalSizeState: import("@angular/core").WritableSignal<"maximize" | "minimize" | "normal">;
19
23
  private isMouseDown;
20
24
  private offsetX;
@@ -5,7 +5,7 @@ export declare class AXModalStateService {
5
5
  private modalList;
6
6
  private overlayService;
7
7
  modalOption: import("@angular/core").WritableSignal<AXModalOptions>;
8
- open<TResult = any>(content: AXComponentContent, options?: AXModalOptions): Promise<AXModalRef<TResult>>;
8
+ open<TResult = any>(content: AXComponentContent | HTMLElement, options?: AXModalOptions): Promise<AXModalRef<TResult>>;
9
9
  close<TResult = any>(id: number, data?: TResult): Promise<void>;
10
10
  setInputs(id: number, values: AXComponentInputs): Promise<void>;
11
11
  minimize(id: number): Promise<void>;
@@ -4,7 +4,7 @@ import * as i0 from "@angular/core";
4
4
  export declare class AXModalService {
5
5
  private stateService;
6
6
  private ref;
7
- open(content: AXComponentContent, options?: AXModalOptions): Promise<AXModalRef>;
7
+ open(content: AXComponentContent | HTMLElement, options?: AXModalOptions): Promise<AXModalRef>;
8
8
  close(): Promise<void>;
9
9
  setInputs(values: AXComponentInputs): Promise<void>;
10
10
  minimize(): Promise<void>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex/components",
3
- "version": "19.13.0-next.1",
3
+ "version": "19.13.0-next.11",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=19.0.0",
6
6
  "@angular/core": ">=19.0.0",
@@ -153,6 +153,10 @@
153
153
  "types": "./file-explorer/index.d.ts",
154
154
  "default": "./fesm2022/acorex-components-file-explorer.mjs"
155
155
  },
156
+ "./flow-chart": {
157
+ "types": "./flow-chart/index.d.ts",
158
+ "default": "./fesm2022/acorex-components-flow-chart.mjs"
159
+ },
156
160
  "./form": {
157
161
  "types": "./form/index.d.ts",
158
162
  "default": "./fesm2022/acorex-components-form.mjs"
@@ -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
- protected platform: AXPlatform;
8
+ private platformId;
10
9
  private unsubscriber;
11
10
  private formatService;
12
11
  private localeService;
@@ -23,7 +22,6 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
23
22
  rtl: import("@angular/core").WritableSignal<boolean>;
24
23
  isLoading: import("@angular/core").WritableSignal<boolean>;
25
24
  isFullScreen: import("@angular/core").WritableSignal<boolean>;
26
- size: import("@angular/core").WritableSignal<AXScreenSizes>;
27
25
  viewsDataSource: import("@angular/core").WritableSignal<{
28
26
  id: string;
29
27
  text: string;
@@ -32,6 +30,7 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
32
30
  endHour: import("@angular/core").InputSignal<number>;
33
31
  startHour: import("@angular/core").InputSignal<number>;
34
32
  keyField: import("@angular/core").InputSignal<string>;
33
+ readonly: import("@angular/core").InputSignal<boolean>;
35
34
  titleField: import("@angular/core").InputSignal<string>;
36
35
  allDayField: import("@angular/core").InputSignal<string>;
37
36
  allowFullScreen: import("@angular/core").InputSignal<boolean>;
@@ -60,7 +59,6 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
60
59
  protected handleAppointmentRightClickInternal(eventData: AXSchedulerAppointmentEvent): void;
61
60
  ngOnInit(): void;
62
61
  fillDataSource(): Promise<void>;
63
- private detectSize;
64
62
  private getGridDateRange;
65
63
  appointmentsList: import("@angular/core").Signal<AXDataSource<any>>;
66
64
  private dataSourceItemsSignal;
@@ -74,5 +72,5 @@ export declare class AXSchedulerComponent extends MXBaseComponent implements OnI
74
72
  calendarDateChanged(e: any): void;
75
73
  handleFullScreen(): void;
76
74
  static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerComponent, never>;
77
- 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; }; "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>;
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>;
78
76
  }
@@ -3,8 +3,10 @@ import { AXDateTime } from '@acorex/core/date-time';
3
3
  import { AXSchedulerAppointmentEvent, AXSchedulerAppointmentType, AXSchedulerMultiDayViewAppointmentType, AXSchedulerSlotEvent } from '../../scheduler.class';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class AXSchedulerAgendaViewComponent extends MXBaseComponent {
6
+ private calendarService;
6
7
  private schedulerService;
7
8
  daysCount: import("@angular/core").InputSignal<number>;
9
+ readonly: import("@angular/core").InputSignal<boolean>;
8
10
  draggable: import("@angular/core").InputSignal<boolean>;
9
11
  calendar: import("@angular/core").InputSignal<string>;
10
12
  endHour: import("@angular/core").InputSignal<number>;
@@ -20,7 +22,9 @@ export declare class AXSchedulerAgendaViewComponent extends MXBaseComponent {
20
22
  appointmentRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
21
23
  private readonly eventOutputMap;
22
24
  handleAppointmentEvent(mouseEvent: MouseEvent, appointment: AXSchedulerAppointmentType): void;
23
- handleSlotEvent(mouseEvent: MouseEvent, startDate: AXDateTime): void;
25
+ handleSlotEvent(mouseEvent: MouseEvent, date: AXDateTime): void;
26
+ protected isToday(date: AXDateTime): boolean;
27
+ get isReadonly(): boolean;
24
28
  static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerAgendaViewComponent, never>;
25
- static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerAgendaViewComponent, "ax-scheduler-agenda-view", never, { "daysCount": { "alias": "daysCount"; "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>;
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>;
26
30
  }
@@ -5,6 +5,7 @@ import * as i0 from "@angular/core";
5
5
  export declare class AXSchedulerDayViewComponent extends MXBaseComponent {
6
6
  private schedulerService;
7
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>;
@@ -30,6 +31,7 @@ export declare class AXSchedulerDayViewComponent extends MXBaseComponent {
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
  }
@@ -15,6 +15,7 @@ export declare class AXSchedulerMonthViewComponent extends MXBaseComponent {
15
15
  private formatService;
16
16
  private calendarService;
17
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>;
@@ -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
  }
@@ -5,6 +5,7 @@ import * as i0 from "@angular/core";
5
5
  export declare class AXSchedulerTimelineDayViewComponent extends MXBaseComponent {
6
6
  private schedulerService;
7
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>;
@@ -23,6 +24,7 @@ export declare class AXSchedulerTimelineDayViewComponent extends MXBaseComponent
23
24
  handleSlotEvent(mouseEvent: MouseEvent, startDate: AXDateTime): void;
24
25
  hoursArray: import("@angular/core").Signal<AXDateTime[]>;
25
26
  appointmentLayouts: import("@angular/core").Signal<AXSchedulerAppointmentLayout[]>;
27
+ get isReadonly(): boolean;
26
28
  static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerTimelineDayViewComponent, never>;
27
- static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerTimelineDayViewComponent, "ax-scheduler-timeline-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>;
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>;
28
30
  }
@@ -9,8 +9,10 @@ export interface MultiDayViewDayData {
9
9
  moreCount: number;
10
10
  }
11
11
  export declare class AXSchedulerTimelineMonthViewComponent extends MXBaseComponent {
12
+ private calendarService;
12
13
  private schedulerService;
13
14
  private readonly MAX_VISIBLE_APPOINTMENTS_PER_DAY;
15
+ readonly: import("@angular/core").InputSignal<boolean>;
14
16
  draggable: import("@angular/core").InputSignal<boolean>;
15
17
  calendar: import("@angular/core").InputSignal<string>;
16
18
  endHour: import("@angular/core").InputSignal<number>;
@@ -27,7 +29,9 @@ export declare class AXSchedulerTimelineMonthViewComponent extends MXBaseCompone
27
29
  appointmentRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
28
30
  private readonly eventOutputMap;
29
31
  handleAppointmentEvent(mouseEvent: MouseEvent, appointment: AXSchedulerAppointmentType): void;
30
- handleSlotEvent(mouseEvent: MouseEvent, startDate: AXDateTime): void;
32
+ handleSlotEvent(mouseEvent: MouseEvent, date: AXDateTime): void;
33
+ protected isToday(date: AXDateTime): boolean;
34
+ get isReadonly(): boolean;
31
35
  static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerTimelineMonthViewComponent, never>;
32
- static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerTimelineMonthViewComponent, "ax-scheduler-timeline-month-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<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>;
33
37
  }
@@ -3,7 +3,9 @@ import { AXDateTime } from '@acorex/core/date-time';
3
3
  import { AXSchedulerAppointmentEvent, AXSchedulerAppointmentType, AXSchedulerMultiDayViewAppointmentType, AXSchedulerSlotEvent } from '../../scheduler.class';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class AXSchedulerTimelineMultiDayViewComponent extends MXBaseComponent {
6
+ private calendarService;
6
7
  daysCount: import("@angular/core").InputSignal<number>;
8
+ readonly: import("@angular/core").InputSignal<boolean>;
7
9
  draggable: import("@angular/core").InputSignal<boolean>;
8
10
  calendar: import("@angular/core").InputSignal<string>;
9
11
  endHour: import("@angular/core").InputSignal<number>;
@@ -17,6 +19,7 @@ export declare class AXSchedulerTimelineMultiDayViewComponent extends MXBaseComp
17
19
  appointmentClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
18
20
  appointmentDblClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
19
21
  appointmentRightClickedInternal: import("@angular/core").OutputEmitterRef<AXSchedulerAppointmentEvent>;
22
+ protected isToday(date: AXDateTime): boolean;
20
23
  static ɵfac: i0.ɵɵFactoryDeclaration<AXSchedulerTimelineMultiDayViewComponent, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<AXSchedulerTimelineMultiDayViewComponent, "ax-scheduler-timeline-multi-day-view", never, { "daysCount": { "alias": "daysCount"; "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>;
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>;
22
25
  }
@@ -6,8 +6,10 @@ type AXSchedulerGridBadgeInfo = AXSchedulerOverflowBadge & {
6
6
  hiddenAppointments: AXSchedulerAppointmentType[];
7
7
  };
8
8
  export declare class AXSchedulerWeekViewComponent extends MXBaseComponent {
9
+ private calendarService;
9
10
  private schedulerService;
10
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>;
@@ -36,7 +38,9 @@ export declare class AXSchedulerWeekViewComponent extends MXBaseComponent {
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-DWBUhygA.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-4ttnaM8r.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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"}