@acorex/components 21.0.0-next52 → 21.0.1-next.1

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 (54) hide show
  1. package/code-editor/index.d.ts +5 -1
  2. package/data-list/index.d.ts +1 -1
  3. package/decorators/index.d.ts +5 -1
  4. package/fesm2022/acorex-components-code-editor.mjs +17 -6
  5. package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
  6. package/fesm2022/acorex-components-data-list.mjs +11 -22
  7. package/fesm2022/acorex-components-data-list.mjs.map +1 -1
  8. package/fesm2022/acorex-components-data-pager.mjs +0 -1
  9. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  10. package/fesm2022/acorex-components-data-table.mjs +12 -5
  11. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  12. package/fesm2022/acorex-components-decorators.mjs +22 -3
  13. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  14. package/fesm2022/acorex-components-form.mjs +6 -8
  15. package/fesm2022/acorex-components-form.mjs.map +1 -1
  16. package/fesm2022/acorex-components-json-viewer.mjs +11 -5
  17. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  18. package/fesm2022/acorex-components-media-viewer.mjs +18 -24
  19. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  20. package/fesm2022/acorex-components-menu.mjs +26 -5
  21. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  22. package/fesm2022/{acorex-components-modal-acorex-components-modal-iYSPzoLn.mjs → acorex-components-modal-acorex-components-modal-BNmjgw73.mjs} +27 -3
  23. package/fesm2022/acorex-components-modal-acorex-components-modal-BNmjgw73.mjs.map +1 -0
  24. package/fesm2022/{acorex-components-modal-modal-content.component-sZWKhYM-.mjs → acorex-components-modal-modal-content.component-B02583hv.mjs} +2 -2
  25. package/fesm2022/{acorex-components-modal-modal-content.component-sZWKhYM-.mjs.map → acorex-components-modal-modal-content.component-B02583hv.mjs.map} +1 -1
  26. package/fesm2022/acorex-components-modal.mjs +1 -1
  27. package/fesm2022/acorex-components-number-box.mjs +4 -5
  28. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  29. package/fesm2022/acorex-components-pdf-reader.mjs +2 -2
  30. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  31. package/fesm2022/acorex-components-phone-box.mjs +12 -3
  32. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  33. package/fesm2022/acorex-components-popover.mjs +136 -175
  34. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  35. package/fesm2022/acorex-components-popup.mjs +308 -105
  36. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  37. package/fesm2022/acorex-components-side-menu.mjs +2 -2
  38. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  39. package/fesm2022/acorex-components-tree-view.mjs +68 -7
  40. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  41. package/fesm2022/acorex-components-wysiwyg.mjs +5 -5
  42. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  43. package/json-viewer/index.d.ts +3 -2
  44. package/media-viewer/index.d.ts +3 -4
  45. package/menu/index.d.ts +4 -0
  46. package/modal/index.d.ts +7 -0
  47. package/number-box/index.d.ts +1 -1
  48. package/package.json +7 -7
  49. package/phone-box/index.d.ts +4 -1
  50. package/popover/index.d.ts +20 -27
  51. package/popup/index.d.ts +103 -27
  52. package/tree-view/index.d.ts +26 -4
  53. package/wysiwyg/index.d.ts +0 -1
  54. package/fesm2022/acorex-components-modal-acorex-components-modal-iYSPzoLn.mjs.map +0 -1
@@ -5,8 +5,9 @@ import * as i3 from '@angular/common';
5
5
 
6
6
  declare class JsonViewerComponent {
7
7
  #private;
8
- readonly json: i0.InputSignal<object>;
9
- protected convertedData: i0.WritableSignal<any>;
8
+ readonly json: i0.InputSignal<string | number | boolean | object>;
9
+ protected convertedObject: i0.WritableSignal<[]>;
10
+ protected primitiveData: i0.WritableSignal<any>;
10
11
  protected convertNestedToArray(obj: any): any;
11
12
  protected isArray(arry: any): arry is any[];
12
13
  protected isNumber(i: any): i is number;
@@ -54,10 +54,12 @@ declare class AXMediaViewerContainerComponent implements OnDestroy {
54
54
  pagination: i0.InputSignal<boolean>;
55
55
  protected service: AXMediaViewerService;
56
56
  protected sanitizer: DomSanitizer;
57
+ protected isMobile: boolean;
58
+ private readonly elementRef;
57
59
  protected thumbnailArray: i0.WritableSignal<Thumbnail[]>;
58
60
  protected option: i0.WritableSignal<swiper_types.SwiperOptions>;
59
61
  protected thumbnailOption: i0.WritableSignal<swiper_types.SwiperOptions>;
60
- isFullScreen: i0.WritableSignal<boolean>;
62
+ protected isFullScreen: i0.WritableSignal<boolean>;
61
63
  private swiperRef;
62
64
  private swiperRef2;
63
65
  private fullScreenButton;
@@ -69,9 +71,6 @@ declare class AXMediaViewerContainerComponent implements OnDestroy {
69
71
  prev(): void;
70
72
  interVal: any;
71
73
  goToIndex(index: number, speed?: number): void;
72
- protected closeHandler(): void;
73
- /** @ignore */
74
- get __hostClass(): string;
75
74
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMediaViewerContainerComponent, never>;
76
75
  static ɵcmp: i0.ɵɵComponentDeclaration<AXMediaViewerContainerComponent, "ax-media-viewer-container", never, { "dataArray": { "alias": "dataArray"; "required": false; "isSignal": true; }; "thumbnail": { "alias": "thumbnail"; "required": false; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": false; "isSignal": true; }; }, {}, ["fullScreenButton"], ["ax-header", "ax-suffix", "ax-prefix"], true, never>;
77
76
  }
package/menu/index.d.ts CHANGED
@@ -65,6 +65,8 @@ declare class AXContextMenuComponent extends NXComponent {
65
65
  private renderer;
66
66
  private document;
67
67
  private platformID;
68
+ private zIndexService;
69
+ private zToken;
68
70
  /** @ignore */
69
71
  constructor();
70
72
  ngOnDestroy(): void;
@@ -127,6 +129,8 @@ declare class AXMenuItemComponent extends NXComponent implements OnDestroy {
127
129
  private scrollableParents;
128
130
  private unsuscriber;
129
131
  private renderer;
132
+ private zIndexService;
133
+ private zToken;
130
134
  protected arrowIcon: _angular_core.Signal<string>;
131
135
  onClick: _angular_core.OutputEmitterRef<AXMenuItemClickEvent>;
132
136
  name: _angular_core.InputSignal<string>;
package/modal/index.d.ts CHANGED
@@ -33,6 +33,8 @@ interface AXModalRef<TResult = any> {
33
33
  restore: () => void;
34
34
  close: (data?: TResult) => void;
35
35
  setInputs: (values: AXComponentInputs) => void;
36
+ /** Brings this modal to the front of all other overlays */
37
+ bringToFront: () => void;
36
38
  onClose: Subject<TResult>;
37
39
  }
38
40
  declare abstract class AXModalComponentBase {
@@ -41,6 +43,7 @@ declare abstract class AXModalComponentBase {
41
43
  minimize(): void;
42
44
  restore(): void;
43
45
  maximize(): void;
46
+ bringToFront(): void;
44
47
  static ɵfac: i0.ɵɵFactoryDeclaration<AXModalComponentBase, never>;
45
48
  static ɵdir: i0.ɵɵDirectiveDeclaration<AXModalComponentBase, never, never, { "__modal__": { "alias": "__modal__"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
46
49
  }
@@ -117,6 +120,10 @@ declare class AXModalService {
117
120
  * Restores the modal from minimized or maximized state.
118
121
  */
119
122
  restore(): Promise<void>;
123
+ /**
124
+ * Brings the modal to the front of all other overlays.
125
+ */
126
+ bringToFront(): void;
120
127
  static ɵfac: i0.ɵɵFactoryDeclaration<AXModalService, never>;
121
128
  static ɵprov: i0.ɵɵInjectableDeclaration<AXModalService>;
122
129
  }
@@ -37,7 +37,7 @@ declare class AXNumberBoxComponent extends AXNumberBoxComponent_base {
37
37
  protected handleDownClick(): void;
38
38
  protected handleOnMaskChanged(e: AXInputMaskEvent): void;
39
39
  protected onWheel(event: WheelEvent): void;
40
- reset(e?: boolean): void;
40
+ reset(): void;
41
41
  private get __hostName();
42
42
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXNumberBoxComponent, never>;
43
43
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXNumberBoxComponent, "ax-number-box", never, { "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "look": { "alias": "look"; "required": false; }; "minValue": { "alias": "minValue"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; "showSpinButtons": { "alias": "showSpinButtons"; "required": false; "isSignal": true; }; "thousandsSeparator": { "alias": "thousandsSeparator"; "required": false; "isSignal": true; }; "decimals": { "alias": "decimals"; "required": false; "isSignal": true; }; "changeOnScroll": { "alias": "changeOnScroll"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onKeyDown": "onKeyDown"; "onKeyUp": "onKeyUp"; "onKeyPress": "onKeyPress"; "thousandsSeparator": "thousandsSeparatorChange"; }, never, ["ax-prefix", "ax-clear-button", "ax-suffix", "ax-validation-rule"], true, never>;
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acorex/components",
3
- "version": "21.0.0-next52",
3
+ "version": "21.0.1-next.1",
4
4
  "peerDependencies": {
5
- "@acorex/core": "21.0.0-next52",
6
- "@acorex/cdk": "21.0.0-next52",
5
+ "@acorex/core": "21.0.1-next.1",
6
+ "@acorex/cdk": "21.0.1-next.1",
7
7
  "@angular/common": "^20.0.0",
8
8
  "@angular/core": "^20.0.0",
9
9
  "@angular/cdk": "^20.0.0",
@@ -301,6 +301,10 @@
301
301
  "types": "./number-box-legacy/index.d.ts",
302
302
  "default": "./fesm2022/acorex-components-number-box-legacy.mjs"
303
303
  },
304
+ "./otp": {
305
+ "types": "./otp/index.d.ts",
306
+ "default": "./fesm2022/acorex-components-otp.mjs"
307
+ },
304
308
  "./page": {
305
309
  "types": "./page/index.d.ts",
306
310
  "default": "./fesm2022/acorex-components-page.mjs"
@@ -313,10 +317,6 @@
313
317
  "types": "./password-box/index.d.ts",
314
318
  "default": "./fesm2022/acorex-components-password-box.mjs"
315
319
  },
316
- "./otp": {
317
- "types": "./otp/index.d.ts",
318
- "default": "./fesm2022/acorex-components-otp.mjs"
319
- },
320
320
  "./pdf-reader": {
321
321
  "types": "./pdf-reader/index.d.ts",
322
322
  "default": "./fesm2022/acorex-components-pdf-reader.mjs"
@@ -27,6 +27,9 @@ declare class AXPhoneBoxComponent extends AXPhoneBoxComponent_base {
27
27
  /** @ignore */
28
28
  private textbox;
29
29
  protected flags: _angular_core.WritableSignal<string>;
30
+ private translationService;
31
+ protected messageError: Promise<string>;
32
+ callTranslate(): Promise<string>;
30
33
  /**
31
34
  * CSS classes to apply to the component.
32
35
  */
@@ -83,7 +86,7 @@ declare class AXPhoneBoxComponent extends AXPhoneBoxComponent_base {
83
86
  _handleCountryValueChanged(event: AXValueChangedEvent): void;
84
87
  private get __hostName();
85
88
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPhoneBoxComponent, never>;
86
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPhoneBoxComponent, "ax-phone-box", never, { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "allowNull": { "alias": "allowNull"; "required": false; }; "type": { "alias": "type"; "required": false; }; "autoComplete": { "alias": "autoComplete"; "required": false; }; "look": { "alias": "look"; "required": false; }; "classNames": { "alias": "class"; "required": false; }; "precode": { "alias": "precode"; "required": false; "isSignal": true; }; "country": { "alias": "country"; "required": false; "isSignal": true; }; "included": { "alias": "included"; "required": false; "isSignal": true; }; "excluded": { "alias": "excluded"; "required": false; "isSignal": true; }; }, { "onBlur": "onBlur"; "onFocus": "onFocus"; "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onKeyDown": "onKeyDown"; "onKeyUp": "onKeyUp"; "onKeyPress": "onKeyPress"; "country": "countryChange"; }, never, ["ax-clear-button ", "ax-validation-rule"], true, never>;
89
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPhoneBoxComponent, "ax-phone-box", never, { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "allowNull": { "alias": "allowNull"; "required": false; }; "type": { "alias": "type"; "required": false; }; "autoComplete": { "alias": "autoComplete"; "required": false; }; "look": { "alias": "look"; "required": false; }; "classNames": { "alias": "class"; "required": false; }; "precode": { "alias": "precode"; "required": false; "isSignal": true; }; "country": { "alias": "country"; "required": false; "isSignal": true; }; "included": { "alias": "included"; "required": false; "isSignal": true; }; "excluded": { "alias": "excluded"; "required": false; "isSignal": true; }; }, { "onBlur": "onBlur"; "onFocus": "onFocus"; "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onKeyDown": "onKeyDown"; "onKeyUp": "onKeyUp"; "onKeyPress": "onKeyPress"; "country": "countryChange"; }, never, ["ax-validation-rule", "ax-clear-button "], true, never>;
87
90
  }
88
91
 
89
92
  declare class AXPhoneBoxModule {
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { OnDestroy, ElementRef, ComponentRef, TemplateRef, EventEmitter } from '@angular/core';
3
3
  import { MXBaseComponent, AXPlacementType, AXEvent } from '@acorex/cdk/common';
4
- import { ComponentType } from '@angular/cdk/portal';
4
+ import { AXComponentType } from '@acorex/core/components';
5
5
  import * as i1 from '@angular/common';
6
6
 
7
7
  type AXPopoverOpenTrigger = 'manual' | 'click' | 'hover' | 'toggle';
@@ -11,27 +11,19 @@ type AXPopoverCloseTrigger = 'manual' | 'clickOut' | 'leave';
11
11
  * A popover component with custom encapsulation and change detection settings.
12
12
  */
13
13
  declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
14
- #private;
14
+ private platform;
15
15
  private document;
16
16
  private platformID;
17
- private renderer;
18
- private onKeyDownListenerFn;
19
- /** @ignore */
20
- private _platform;
21
- /** @ignore */
22
- private _overlay;
17
+ private overlayService;
18
+ private onKeyDownHandler;
23
19
  /** @ignore */
24
20
  private _overlayRef;
25
21
  /** @ignore */
26
- private _isMouseOverButton;
27
- /** @ignore */
28
- private _isMouseOverTooltip;
29
- /** @ignore */
30
22
  private _lastActiveElement;
31
23
  /** @ignore */
32
24
  private _targetEvents;
33
25
  /** @ignore */
34
- private _overlayEvents;
26
+ private _outsideClickHandler;
35
27
  /** @ignore */
36
28
  private resizeObserver;
37
29
  /** @ignore */
@@ -76,7 +68,7 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
76
68
  */
77
69
  set target(v: Element | ElementRef | MXBaseComponent);
78
70
  /** @ignore */
79
- private _defautPlacements;
71
+ private _defaultPlacements;
80
72
  /** @ignore */
81
73
  private _placements;
82
74
  /** @ignore */
@@ -90,13 +82,11 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
90
82
  */
91
83
  set placement(v: AXPlacementType);
92
84
  /** @ignore */
93
- private _portal;
94
- /** @ignore */
95
85
  private _componentRef;
96
86
  /**
97
87
  * Gets the reference to the component.
98
88
  */
99
- get componentRef(): ComponentRef<unknown>;
89
+ get componentRef(): ComponentRef<unknown> | null;
100
90
  /**
101
91
  * Holds the context data for the component.
102
92
  */
@@ -106,7 +96,7 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
106
96
  /**
107
97
  * Defines the content to be displayed, which can be a template or a component.
108
98
  */
109
- content: TemplateRef<unknown> | ComponentType<unknown>;
99
+ content: TemplateRef<unknown> | AXComponentType<unknown>;
110
100
  /** @ignore */
111
101
  private _openOn;
112
102
  /**
@@ -125,7 +115,6 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
125
115
  get closeOn(): AXPopoverCloseTrigger;
126
116
  /**
127
117
  * Sets the trigger for closing the popover and rebinds target events.
128
- * @param v
129
118
  */
130
119
  set closeOn(v: AXPopoverCloseTrigger);
131
120
  /**
@@ -145,7 +134,7 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
145
134
  */
146
135
  backdropClass: string;
147
136
  /**
148
- * CSS class to apply to the backdrop element.
137
+ * CSS class to apply to the panel element.
149
138
  */
150
139
  panelClass: string;
151
140
  /**
@@ -167,10 +156,6 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
167
156
  /** @ignore */
168
157
  private _emitOnClosedEvent;
169
158
  /** @ignore */
170
- protected _handleMouseEnter(e: MouseEvent): void;
171
- /** @ignore */
172
- protected _handleMouseLeave(e: MouseEvent): void;
173
- /** @ignore */
174
159
  private removeTargetEvents;
175
160
  /** @ignore */
176
161
  private bindTargetEvents;
@@ -178,6 +163,8 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
178
163
  private bindOverlayEvents;
179
164
  /** @ignore */
180
165
  private removeOverlayEvents;
166
+ /** @ignore */
167
+ private handleOverlayDisposed;
181
168
  /**
182
169
  * Toggles the component's open state.
183
170
  */
@@ -189,7 +176,11 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
189
176
  /**
190
177
  * Opens the component if it's not already open, saves focus, opens the overlay, and emits the opened event.
191
178
  */
192
- open(): void;
179
+ open(): Promise<void>;
180
+ /** @ignore */
181
+ private addKeyDownListener;
182
+ /** @ignore */
183
+ private removeKeyDownListener;
193
184
  /** @ignore */
194
185
  private saveFocus;
195
186
  /** @ignore */
@@ -207,8 +198,6 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
207
198
  */
208
199
  get isActionsheetStyle(): boolean;
209
200
  /** @ignore */
210
- private updatePositionStrategy;
211
- /** @ignore */
212
201
  private updateOffset;
213
202
  /**
214
203
  * Updates the position of the overlay and focuses on it.
@@ -218,6 +207,10 @@ declare class AXPopoverComponent extends MXBaseComponent implements OnDestroy {
218
207
  * Focuses the overlay element.
219
208
  */
220
209
  focus(): void;
210
+ /**
211
+ * Brings this popover to the front of all other overlays.
212
+ */
213
+ bringToFront(): void;
221
214
  /** @ignore */
222
215
  private initializeResizeObserver;
223
216
  /** @ignore */
package/popup/index.d.ts CHANGED
@@ -1,17 +1,14 @@
1
- import * as i5 from '@angular/cdk/portal';
2
- import { ComponentType, Portal, CdkPortalOutletAttachedRef } from '@angular/cdk/portal';
1
+ import { AXComponentType, AXComponentInputs } from '@acorex/core/components';
3
2
  import * as i0 from '@angular/core';
4
- import { TemplateRef, ViewContainerRef, StaticProvider, OnInit } from '@angular/core';
3
+ import { TemplateRef, ViewContainerRef, StaticProvider, OnInit, OnDestroy } from '@angular/core';
4
+ import { Subject } from 'rxjs';
5
5
  import * as i2 from '@acorex/cdk/common';
6
6
  import { MXBaseComponent, AXComponentClosedPromise } from '@acorex/cdk/common';
7
7
  import * as i1 from '@angular/common';
8
- import * as i3 from '@angular/cdk/drag-drop';
9
- import * as i4 from '@angular/cdk/a11y';
10
- import * as i6 from '@acorex/components/decorators';
11
- import * as i7 from '@angular/cdk/dialog';
12
- import * as i8 from '@acorex/core/translation';
8
+ import * as i3 from '@acorex/components/decorators';
9
+ import * as i4 from '@acorex/core/translation';
13
10
 
14
- type AXPopupContentType = TemplateRef<unknown> | ComponentType<unknown>;
11
+ type AXPopupContentType = TemplateRef<unknown> | AXComponentType<unknown>;
15
12
  type AXPopupSizeType = 'sm' | 'md' | 'lg' | 'full' | 'fit';
16
13
  interface AXPopupConfig {
17
14
  title?: string;
@@ -39,19 +36,77 @@ interface AXPopupData {
39
36
  draggable: boolean;
40
37
  content: AXPopupContentType;
41
38
  }
39
+ interface AXPopupRef<TResult = any> {
40
+ close: (data?: TResult) => void;
41
+ setInputs: (values: AXComponentInputs) => void;
42
+ setTitle: (title: string) => void;
43
+ /** Brings this popup to the front of all other overlays */
44
+ bringToFront: () => void;
45
+ onClose: Subject<TResult>;
46
+ }
47
+ declare abstract class AXPopupComponentBase {
48
+ __popup__: i0.InputSignal<AXPopupRef<any>>;
49
+ close(data?: any): void;
50
+ setTitle(title: string): void;
51
+ bringToFront(): void;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPopupComponentBase, never>;
53
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AXPopupComponentBase, never, never, { "__popup__": { "alias": "__popup__"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
54
+ }
55
+
56
+ declare class AXPopupStateService {
57
+ private popupList;
58
+ private overlayService;
59
+ /**
60
+ * Opens a popup with the specified content and configuration.
61
+ * @param content - Component or template to display
62
+ * @param config - Configuration options for the popup
63
+ * @returns Promise<AXPopupRef> - Reference to the opened popup
64
+ */
65
+ open<TResult = any>(content: AXPopupContentType, config: AXPopupConfig): Promise<AXPopupRef<TResult>>;
66
+ /**
67
+ * Closes a popup by its ID.
68
+ * @param id - The popup ID to close
69
+ * @param data - Optional data to pass to the close event
70
+ */
71
+ close<TResult = any>(id: number, data?: TResult): Promise<void>;
72
+ /**
73
+ * Sets input values for a popup by its ID.
74
+ * @param id - The popup ID
75
+ * @param values - Object containing input values to set
76
+ */
77
+ setInputs(id: number, values: AXComponentInputs): Promise<void>;
78
+ /**
79
+ * Sets the title for a popup by its ID.
80
+ * @param id - The popup ID
81
+ * @param title - The new title
82
+ */
83
+ setTitle(id: number, title: string): Promise<void>;
84
+ /**
85
+ * Brings a popup to the front of all other overlays.
86
+ * @param id - The popup ID to bring to front
87
+ */
88
+ bringToFront(id: number): void;
89
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPopupStateService, never>;
90
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPopupStateService>;
91
+ }
42
92
 
43
93
  /**
44
- * The Button is a component which detects user interaction and triggers a corresponding event
94
+ * The Popup is a component which displays content in a dialog overlay
45
95
  *
46
96
  * @category Components
47
97
  */
48
- declare class AXPopupComponent extends MXBaseComponent implements OnInit {
98
+ declare class AXPopupComponent extends MXBaseComponent implements OnInit, OnDestroy {
49
99
  private _zone;
50
- private _viewContainerRef;
100
+ private _document;
51
101
  private loadingService;
52
102
  private _platform;
53
- protected data: AXPopupData;
54
- private dialogRef;
103
+ private componentService;
104
+ private contentContainerRef;
105
+ private contentContainerEl;
106
+ readonly __content__: i0.InputSignal<AXPopupContentType>;
107
+ readonly __config__: i0.InputSignal<AXPopupConfig>;
108
+ readonly __popupRef__: i0.InputSignal<AXPopupRef<any>>;
109
+ readonly __id__: i0.InputSignal<number>;
55
110
  /**
56
111
  * Indicates whether the component is loading.
57
112
  * @defaultValue true
@@ -60,19 +115,28 @@ declare class AXPopupComponent extends MXBaseComponent implements OnInit {
60
115
  /** @ignore */
61
116
  private _loadingId;
62
117
  /** @ignore */
63
- protected _selectedPortal: Portal<unknown>;
118
+ private _componentRef;
119
+ /** Current title */
120
+ protected title: i0.WritableSignal<string>;
64
121
  /** @ignore */
65
- protected _footerPortal: Portal<unknown>;
122
+ protected isDragging: i0.WritableSignal<boolean>;
66
123
  /** @ignore */
67
- protected _headerPortal: Portal<unknown>;
124
+ protected dragOffset: i0.WritableSignal<{
125
+ x: number;
126
+ y: number;
127
+ }>;
68
128
  /** @ignore */
69
- private _componentRef;
129
+ private dragStartPos;
130
+ /** @ignore */
131
+ private elementStartPos;
70
132
  /** @ignore */
71
133
  ngOnInit(): void;
72
134
  /** @ignore */
73
- protected _handleAttched(ref: CdkPortalOutletAttachedRef): void;
135
+ private renderContent;
74
136
  /** @ignore */
75
- onKeydownHandler(event: KeyboardEvent): void;
137
+ private handleContentRendered;
138
+ /** @ignore */
139
+ onKeydownHandler(): void;
76
140
  /** @ignore */
77
141
  protected _handleCloseClick(): void;
78
142
  /** @ignore */
@@ -82,17 +146,30 @@ declare class AXPopupComponent extends MXBaseComponent implements OnInit {
82
146
  */
83
147
  focus(): void;
84
148
  /**
85
- * Closes the dialog, emitting component reference, host element, and optional data.
149
+ * Closes the popup, emitting component reference, host element, and optional data.
86
150
  * @param {unknown} [data]
87
151
  */
88
152
  close(data?: unknown): void;
153
+ /**
154
+ * Sets inputs on the content component.
155
+ * @param values - Object containing input values to set
156
+ */
157
+ setContentInputs(values: AXComponentInputs): void;
158
+ /**
159
+ * Sets the popup title.
160
+ * @param title - The new title
161
+ */
162
+ setTitle(title: string): void;
163
+ protected onDragStart(event: MouseEvent): void;
164
+ onDragMove(event: MouseEvent): void;
165
+ onDragEnd(): void;
89
166
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPopupComponent, never>;
90
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPopupComponent, "ax-popup", never, {}, {}, never, never, true, never>;
167
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPopupComponent, "ax-popup", never, { "__content__": { "alias": "__content__"; "required": false; "isSignal": true; }; "__config__": { "alias": "__config__"; "required": false; "isSignal": true; }; "__popupRef__": { "alias": "__popupRef__"; "required": false; "isSignal": true; }; "__id__": { "alias": "__id__"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
91
168
  }
92
169
 
93
170
  declare class AXPopupModule {
94
171
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPopupModule, never>;
95
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXPopupModule, never, [typeof i1.CommonModule, typeof i2.AXCommonModule, typeof i3.DragDropModule, typeof i4.A11yModule, typeof i5.PortalModule, typeof i6.AXDecoratorModule, typeof i7.DialogModule, typeof i8.AXTranslationModule, typeof AXPopupComponent], [typeof AXPopupComponent]>;
172
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXPopupModule, never, [typeof i1.CommonModule, typeof i2.AXCommonModule, typeof i3.AXDecoratorModule, typeof i4.AXTranslationModule, typeof AXPopupComponent], [typeof AXPopupComponent]>;
96
173
  static ɵinj: i0.ɵɵInjectorDeclaration<AXPopupModule>;
97
174
  }
98
175
 
@@ -102,8 +179,7 @@ declare class AXPopupModule {
102
179
  * @category Components
103
180
  */
104
181
  declare class AXPopupService {
105
- #private;
106
- private dialog;
182
+ private stateService;
107
183
  /**
108
184
  * Open popup 1
109
185
  */
@@ -116,5 +192,5 @@ declare class AXPopupService {
116
192
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPopupService>;
117
193
  }
118
194
 
119
- export { AXPopupComponent, AXPopupModule, AXPopupService };
120
- export type { AXPopupConfig, AXPopupContentType, AXPopupData, AXPopupSizeType };
195
+ export { AXPopupComponent, AXPopupComponentBase, AXPopupModule, AXPopupService, AXPopupStateService };
196
+ export type { AXPopupConfig, AXPopupContentType, AXPopupData, AXPopupRef, AXPopupSizeType };
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { TemplateRef } from '@angular/core';
2
+ import { TemplateRef, EventEmitter } from '@angular/core';
3
3
  import { AXEvent, AXHtmlEvent, AXValueChangedEvent } from '@acorex/cdk/common';
4
4
  import { AXDropListDroppedEvent } from '@acorex/cdk/drag-drop';
5
5
 
@@ -237,6 +237,12 @@ declare class AXTreeViewComponent {
237
237
  readonly dataField: _angular_core.InputSignal<string>;
238
238
  /** Whether disabled state is inherited from parent nodes. Default: `true`. */
239
239
  readonly inheritDisabled: _angular_core.InputSignal<boolean>;
240
+ /** Whether double-click on node content toggles expand/collapse. Default: `true`. */
241
+ readonly expandOnDoubleClick: _angular_core.InputSignal<boolean>;
242
+ /** Duration in milliseconds for detecting double-clicks. Default: `50`. */
243
+ readonly doubleClickDuration: _angular_core.InputSignal<number>;
244
+ /** Duration in milliseconds for detecting double-clicks. Default: `50`. */
245
+ readonly tooltipDelay: _angular_core.InputSignal<number>;
240
246
  /** Emitted before a drop operation - set canceled to true to prevent drop */
241
247
  readonly onBeforeDrop: _angular_core.OutputEmitterRef<AXTreeViewBeforeDropEvent>;
242
248
  /** Emitted when a node is toggled (expanded/collapsed) */
@@ -244,7 +250,7 @@ declare class AXTreeViewComponent {
244
250
  /** Emitted when a node is selected/deselected */
245
251
  readonly onNodeSelect: _angular_core.OutputEmitterRef<AXTreeViewNodeSelectEvent>;
246
252
  /** Emitted when a node is double-clicked */
247
- readonly onNodeDoubleClick: _angular_core.OutputEmitterRef<AXTreeViewNodeDoubleClickEvent>;
253
+ onNodeDoubleClick: EventEmitter<AXTreeViewNodeDoubleClickEvent>;
248
254
  /** Emitted when a node is double-clicked */
249
255
  readonly onNodeClick: _angular_core.OutputEmitterRef<AXTreeViewNodeClickEvent>;
250
256
  /** Emitted when selection changes - returns all currently selected nodes */
@@ -284,6 +290,17 @@ declare class AXTreeViewComponent {
284
290
  protected readonly hasIntermediateState: _angular_core.Signal<boolean>;
285
291
  /** Computed: Returns true when drag handle should be shown */
286
292
  protected readonly shouldShowDragHandle: _angular_core.Signal<boolean>;
293
+ /** Signal to track if double-click output has subscribers */
294
+ private readonly hasDoubleClickSubscribers;
295
+ /**
296
+ * Returns true if double-click output has no subscribers (should disable directive)
297
+ * Uses a computed signal that checks if EventEmitter has observers
298
+ * If no subscribers AND expandOnDoubleClick is false, disable the directive (return true)
299
+ * If has subscribers OR expandOnDoubleClick is true, enable the directive (return false)
300
+ */
301
+ protected readonly isDoubleClickDisabled: _angular_core.Signal<boolean>;
302
+ /** Check EventEmitter observers and update signal */
303
+ private checkDoubleClickSubscribers;
287
304
  /**
288
305
  * Get a property value from a node using the configured field name
289
306
  */
@@ -583,6 +600,11 @@ declare class AXTreeViewComponent {
583
600
  * Check if checkboxes should be shown (only for multiple mode)
584
601
  */
585
602
  shouldShowCheckbox(): boolean;
603
+ /**
604
+ * Check if double-click directive should be disabled for a node
605
+ * Disabled for leaf nodes (immediate clicks) or when isDoubleClickDisabled is true
606
+ */
607
+ protected isDoubleClickDisabledForNode(node: AXTreeViewNode): boolean;
586
608
  /**
587
609
  * Check if a node is a leaf (has no children)
588
610
  * A node is a leaf if it has no loaded children AND no childrenCount (or childrenCount is 0)
@@ -623,7 +645,7 @@ declare class AXTreeViewComponent {
623
645
  /**
624
646
  * Handle node double click
625
647
  */
626
- onNodeDoubleClickHandle(node: AXTreeViewNode, event: Event): void;
648
+ onNodeDoubleClickHandle(node: AXTreeViewNode, event: Event): Promise<void>;
627
649
  /**
628
650
  * Handle node click handle
629
651
  */
@@ -758,7 +780,7 @@ declare class AXTreeViewComponent {
758
780
  */
759
781
  private handleError;
760
782
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXTreeViewComponent, never>;
761
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXTreeViewComponent, "ax-tree-view", never, { "datasource": { "alias": "datasource"; "required": true; "isSignal": true; }; "selectMode": { "alias": "selectMode"; "required": false; "isSignal": true; }; "selectionBehavior": { "alias": "selectionBehavior"; "required": false; "isSignal": true; }; "dragArea": { "alias": "dragArea"; "required": false; "isSignal": true; }; "dragBehavior": { "alias": "dragBehavior"; "required": false; "isSignal": true; }; "showIcons": { "alias": "showIcons"; "required": false; "isSignal": true; }; "showChildrenBadge": { "alias": "showChildrenBadge"; "required": false; "isSignal": true; }; "expandedIcon": { "alias": "expandedIcon"; "required": false; "isSignal": true; }; "collapsedIcon": { "alias": "collapsedIcon"; "required": false; "isSignal": true; }; "indentSize": { "alias": "indentSize"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "nodeTemplate": { "alias": "nodeTemplate"; "required": false; "isSignal": true; }; "idField": { "alias": "idField"; "required": false; "isSignal": true; }; "titleField": { "alias": "titleField"; "required": false; "isSignal": true; }; "tooltipField": { "alias": "tooltipField"; "required": false; "isSignal": true; }; "iconField": { "alias": "iconField"; "required": false; "isSignal": true; }; "expandedField": { "alias": "expandedField"; "required": false; "isSignal": true; }; "selectedField": { "alias": "selectedField"; "required": false; "isSignal": true; }; "indeterminateField": { "alias": "indeterminateField"; "required": false; "isSignal": true; }; "disabledField": { "alias": "disabledField"; "required": false; "isSignal": true; }; "hiddenField": { "alias": "hiddenField"; "required": false; "isSignal": true; }; "childrenField": { "alias": "childrenField"; "required": false; "isSignal": true; }; "childrenCountField": { "alias": "childrenCountField"; "required": false; "isSignal": true; }; "dataField": { "alias": "dataField"; "required": false; "isSignal": true; }; "inheritDisabled": { "alias": "inheritDisabled"; "required": false; "isSignal": true; }; }, { "datasource": "datasourceChange"; "onBeforeDrop": "onBeforeDrop"; "onNodeToggle": "onNodeToggle"; "onNodeSelect": "onNodeSelect"; "onNodeDoubleClick": "onNodeDoubleClick"; "onNodeClick": "onNodeClick"; "onSelectionChange": "onSelectionChange"; "onOrderChange": "onOrderChange"; "onMoveChange": "onMoveChange"; "onItemsChange": "onItemsChange"; }, never, never, true, never>;
783
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXTreeViewComponent, "ax-tree-view", never, { "datasource": { "alias": "datasource"; "required": true; "isSignal": true; }; "selectMode": { "alias": "selectMode"; "required": false; "isSignal": true; }; "selectionBehavior": { "alias": "selectionBehavior"; "required": false; "isSignal": true; }; "dragArea": { "alias": "dragArea"; "required": false; "isSignal": true; }; "dragBehavior": { "alias": "dragBehavior"; "required": false; "isSignal": true; }; "showIcons": { "alias": "showIcons"; "required": false; "isSignal": true; }; "showChildrenBadge": { "alias": "showChildrenBadge"; "required": false; "isSignal": true; }; "expandedIcon": { "alias": "expandedIcon"; "required": false; "isSignal": true; }; "collapsedIcon": { "alias": "collapsedIcon"; "required": false; "isSignal": true; }; "indentSize": { "alias": "indentSize"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "nodeTemplate": { "alias": "nodeTemplate"; "required": false; "isSignal": true; }; "idField": { "alias": "idField"; "required": false; "isSignal": true; }; "titleField": { "alias": "titleField"; "required": false; "isSignal": true; }; "tooltipField": { "alias": "tooltipField"; "required": false; "isSignal": true; }; "iconField": { "alias": "iconField"; "required": false; "isSignal": true; }; "expandedField": { "alias": "expandedField"; "required": false; "isSignal": true; }; "selectedField": { "alias": "selectedField"; "required": false; "isSignal": true; }; "indeterminateField": { "alias": "indeterminateField"; "required": false; "isSignal": true; }; "disabledField": { "alias": "disabledField"; "required": false; "isSignal": true; }; "hiddenField": { "alias": "hiddenField"; "required": false; "isSignal": true; }; "childrenField": { "alias": "childrenField"; "required": false; "isSignal": true; }; "childrenCountField": { "alias": "childrenCountField"; "required": false; "isSignal": true; }; "dataField": { "alias": "dataField"; "required": false; "isSignal": true; }; "inheritDisabled": { "alias": "inheritDisabled"; "required": false; "isSignal": true; }; "expandOnDoubleClick": { "alias": "expandOnDoubleClick"; "required": false; "isSignal": true; }; "doubleClickDuration": { "alias": "doubleClickDuration"; "required": false; "isSignal": true; }; "tooltipDelay": { "alias": "tooltipDelay"; "required": false; "isSignal": true; }; }, { "datasource": "datasourceChange"; "onBeforeDrop": "onBeforeDrop"; "onNodeToggle": "onNodeToggle"; "onNodeSelect": "onNodeSelect"; "onNodeDoubleClick": "onNodeDoubleClick"; "onNodeClick": "onNodeClick"; "onSelectionChange": "onSelectionChange"; "onOrderChange": "onOrderChange"; "onMoveChange": "onMoveChange"; "onItemsChange": "onItemsChange"; }, never, never, true, never>;
762
784
  }
763
785
 
764
786
  declare class AXTreeViewModule {
@@ -61,7 +61,6 @@ declare class AXWysiwygContainerComponent extends AXWysiwygContainerComponent_ba
61
61
  * @param isDisabled - Whether the component should be disabled.
62
62
  * @returns void - No return value.
63
63
  */
64
- setDisabledState(isDisabled: boolean): void;
65
64
  setWysiwygContent(value: string): void;
66
65
  private get __hostName();
67
66
  get __hostClass(): string;