@acorex/cdk 22.1.7 → 22.2.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/auto-follow-scroll/README.md +9 -0
- package/fesm2022/acorex-cdk-accordion.mjs +19 -19
- package/fesm2022/acorex-cdk-accordion.mjs.map +1 -1
- package/fesm2022/acorex-cdk-auto-follow-scroll.mjs +187 -0
- package/fesm2022/acorex-cdk-auto-follow-scroll.mjs.map +1 -0
- package/fesm2022/acorex-cdk-carousel.mjs +25 -7
- package/fesm2022/acorex-cdk-carousel.mjs.map +1 -1
- package/fesm2022/acorex-cdk-clipboard.mjs +6 -6
- package/fesm2022/acorex-cdk-clipboard.mjs.map +1 -1
- package/fesm2022/acorex-cdk-common.mjs +146 -92
- package/fesm2022/acorex-cdk-common.mjs.map +1 -1
- package/fesm2022/acorex-cdk-dom.mjs +3 -3
- package/fesm2022/acorex-cdk-dom.mjs.map +1 -1
- package/fesm2022/acorex-cdk-drag-drop.mjs +161 -69
- package/fesm2022/acorex-cdk-drag-drop.mjs.map +1 -1
- package/fesm2022/acorex-cdk-drawer.mjs +11 -11
- package/fesm2022/acorex-cdk-drawer.mjs.map +1 -1
- package/fesm2022/acorex-cdk-focus-trap.mjs +3 -3
- package/fesm2022/acorex-cdk-focus-trap.mjs.map +1 -1
- package/fesm2022/acorex-cdk-full-screen.mjs +26 -147
- package/fesm2022/acorex-cdk-full-screen.mjs.map +1 -1
- package/fesm2022/acorex-cdk-gesture.mjs +30 -4
- package/fesm2022/acorex-cdk-gesture.mjs.map +1 -1
- package/fesm2022/acorex-cdk-highlight.mjs +8 -78
- package/fesm2022/acorex-cdk-highlight.mjs.map +1 -1
- package/fesm2022/acorex-cdk-horizontal-scroll.mjs +27 -10
- package/fesm2022/acorex-cdk-horizontal-scroll.mjs.map +1 -1
- package/fesm2022/acorex-cdk-input-mask.mjs +3 -3
- package/fesm2022/acorex-cdk-input-mask.mjs.map +1 -1
- package/fesm2022/acorex-cdk-list-navigation.mjs +10 -10
- package/fesm2022/acorex-cdk-list-navigation.mjs.map +1 -1
- package/fesm2022/acorex-cdk-outline.mjs +277 -74
- package/fesm2022/acorex-cdk-outline.mjs.map +1 -1
- package/fesm2022/acorex-cdk-overlay.mjs +224 -21
- package/fesm2022/acorex-cdk-overlay.mjs.map +1 -1
- package/fesm2022/acorex-cdk-pan-view.mjs +3 -3
- package/fesm2022/acorex-cdk-pan-view.mjs.map +1 -1
- package/fesm2022/acorex-cdk-qrcode.mjs.map +1 -1
- package/fesm2022/acorex-cdk-resizable.mjs +483 -200
- package/fesm2022/acorex-cdk-resizable.mjs.map +1 -1
- package/fesm2022/acorex-cdk-selection.mjs +10 -10
- package/fesm2022/acorex-cdk-selection.mjs.map +1 -1
- package/fesm2022/acorex-cdk-shimmer.mjs +220 -0
- package/fesm2022/acorex-cdk-shimmer.mjs.map +1 -0
- package/fesm2022/acorex-cdk-sliding-item.mjs +3 -3
- package/fesm2022/acorex-cdk-sliding-item.mjs.map +1 -1
- package/fesm2022/acorex-cdk-sticky.mjs +3 -3
- package/fesm2022/acorex-cdk-sticky.mjs.map +1 -1
- package/fesm2022/acorex-cdk-uploader.mjs +9 -9
- package/fesm2022/acorex-cdk-uploader.mjs.map +1 -1
- package/fesm2022/acorex-cdk-viewport-guard.mjs +616 -0
- package/fesm2022/acorex-cdk-viewport-guard.mjs.map +1 -0
- package/fesm2022/acorex-cdk-virtual-scroll.mjs +10 -10
- package/fesm2022/acorex-cdk-virtual-scroll.mjs.map +1 -1
- package/fesm2022/acorex-cdk-wysiwyg.mjs +689 -37
- package/fesm2022/acorex-cdk-wysiwyg.mjs.map +1 -1
- package/fesm2022/acorex-cdk-z-index.mjs +3 -3
- package/fesm2022/acorex-cdk-z-index.mjs.map +1 -1
- package/fesm2022/acorex-cdk.mjs.map +1 -1
- package/package.json +23 -7
- package/shimmer/README.md +11 -0
- package/types/acorex-cdk-auto-follow-scroll.d.ts +72 -0
- package/types/acorex-cdk-carousel.d.ts +2 -0
- package/types/acorex-cdk-clipboard.d.ts +1 -1
- package/types/acorex-cdk-common.d.ts +36 -19
- package/types/acorex-cdk-drag-drop.d.ts +43 -17
- package/types/acorex-cdk-full-screen.d.ts +18 -43
- package/types/acorex-cdk-gesture.d.ts +11 -1
- package/types/acorex-cdk-highlight.d.ts +1 -28
- package/types/acorex-cdk-horizontal-scroll.d.ts +3 -0
- package/types/acorex-cdk-outline.d.ts +20 -0
- package/types/acorex-cdk-overlay.d.ts +60 -4
- package/types/acorex-cdk-resizable.d.ts +80 -38
- package/types/acorex-cdk-shimmer.d.ts +68 -0
- package/types/acorex-cdk-uploader.d.ts +1 -1
- package/types/acorex-cdk-viewport-guard.d.ts +99 -0
- package/types/acorex-cdk-wysiwyg.d.ts +118 -14
- package/wysiwyg/README.md +3 -1
- package/fesm2022/acorex-cdk-double-click.mjs +0 -178
- package/fesm2022/acorex-cdk-double-click.mjs.map +0 -1
- package/types/acorex-cdk-double-click.d.ts +0 -66
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { OnInit, OnDestroy, TemplateRef, ElementRef, AfterContentInit } from '@angular/core';
|
|
2
|
+
import { InjectionToken, OnInit, OnDestroy, TemplateRef, ElementRef, AfterContentInit } from '@angular/core';
|
|
3
3
|
import { NXComponent, NXNativeEvent } from '@acorex/cdk/common';
|
|
4
4
|
|
|
5
|
+
declare class AXDragHandleDirective {
|
|
6
|
+
private el;
|
|
7
|
+
private parent;
|
|
8
|
+
readonly element: _angular_core.WritableSignal<any>;
|
|
9
|
+
constructor();
|
|
10
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXDragHandleDirective, never>;
|
|
11
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXDragHandleDirective, "[axDragHandle]", never, {}, {}, never, never, true, never>;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Parent drag instance that nested `axDragHandle` directives register with.
|
|
16
|
+
* Provided by `AXDragDirective` so handles work inside dynamically created content.
|
|
17
|
+
*/
|
|
18
|
+
declare const AX_DRAG_PARENT: InjectionToken<AXDragParent>;
|
|
19
|
+
interface AXDragParent {
|
|
20
|
+
registerHandle(handle: AXDragHandleDirective | HTMLElement): void;
|
|
21
|
+
unregisterHandle(handle: AXDragHandleDirective | HTMLElement): void;
|
|
22
|
+
}
|
|
23
|
+
|
|
5
24
|
type AXPositionType = {
|
|
6
25
|
x: number;
|
|
7
26
|
y: number;
|
|
8
27
|
};
|
|
9
|
-
declare class AXDragDirective implements OnInit, OnDestroy {
|
|
28
|
+
declare class AXDragDirective implements OnInit, OnDestroy, AXDragParent {
|
|
10
29
|
#private;
|
|
11
30
|
private zone;
|
|
12
31
|
private document;
|
|
@@ -15,7 +34,7 @@ declare class AXDragDirective implements OnInit, OnDestroy {
|
|
|
15
34
|
private platformId;
|
|
16
35
|
private viewContainerRef;
|
|
17
36
|
private el;
|
|
18
|
-
private
|
|
37
|
+
private registeredHandleElements;
|
|
19
38
|
axDrag: _angular_core.InputSignalWithTransform<boolean, string | boolean>;
|
|
20
39
|
dragData: _angular_core.InputSignal<unknown>;
|
|
21
40
|
dragDisabled: _angular_core.InputSignal<boolean>;
|
|
@@ -26,7 +45,7 @@ declare class AXDragDirective implements OnInit, OnDestroy {
|
|
|
26
45
|
dragResetOnDblClick: _angular_core.InputSignal<boolean>;
|
|
27
46
|
dragLockAxis: _angular_core.InputSignal<"x" | "y">;
|
|
28
47
|
dragClonedTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
29
|
-
dragCursor: _angular_core.InputSignal<"move" | "grab" | "none">;
|
|
48
|
+
dragCursor: _angular_core.InputSignal<"move" | "grab" | "grab-on-drag" | "none">;
|
|
30
49
|
dragBoundary: _angular_core.InputSignal<string | HTMLElement | ElementRef<HTMLElement>>;
|
|
31
50
|
dragTransitionDuration: _angular_core.InputSignal<number>;
|
|
32
51
|
readonly isDragDisabled: _angular_core.WritableSignal<boolean>;
|
|
@@ -34,7 +53,7 @@ declare class AXDragDirective implements OnInit, OnDestroy {
|
|
|
34
53
|
readonly dragBoundaryOverride: _angular_core.WritableSignal<string | HTMLElement | ElementRef<HTMLElement>>;
|
|
35
54
|
readonly startDelay: _angular_core.WritableSignal<number>;
|
|
36
55
|
readonly dragTouchAction: _angular_core.WritableSignal<"none" | "pan-x" | "pan-y">;
|
|
37
|
-
readonly dragCursorOverride: _angular_core.WritableSignal<"move" | "grab" | "none">;
|
|
56
|
+
readonly dragCursorOverride: _angular_core.WritableSignal<"move" | "grab" | "grab-on-drag" | "none">;
|
|
38
57
|
dragPositionChanged: _angular_core.OutputEmitterRef<AXPositionType>;
|
|
39
58
|
isMoving: _angular_core.WritableSignal<boolean>;
|
|
40
59
|
clonedElement: _angular_core.WritableSignal<HTMLElement>;
|
|
@@ -63,14 +82,21 @@ declare class AXDragDirective implements OnInit, OnDestroy {
|
|
|
63
82
|
private boundaryElement;
|
|
64
83
|
readonly elementRect: _angular_core.Signal<DOMRect>;
|
|
65
84
|
private boundaryRect;
|
|
85
|
+
private handleElements;
|
|
66
86
|
private handle;
|
|
67
87
|
private boundHandleDblClick;
|
|
68
88
|
private boundHandlePointerUp;
|
|
69
89
|
private boundHandlePointerDown;
|
|
70
90
|
private boundHandlePointerMove;
|
|
71
|
-
private
|
|
91
|
+
private attachedHandleElements;
|
|
92
|
+
private styledHandleElements;
|
|
93
|
+
private activeHandleElement;
|
|
94
|
+
registerHandle(handle: AXDragHandleDirective | HTMLElement): void;
|
|
95
|
+
unregisterHandle(handle: AXDragHandleDirective | HTMLElement): void;
|
|
96
|
+
private resolveHandleElement;
|
|
72
97
|
ngOnInit(): void;
|
|
73
98
|
ngOnDestroy(): void;
|
|
99
|
+
private usesGrabDragCursor;
|
|
74
100
|
private resolveDropCursor;
|
|
75
101
|
private setActiveDragCursor;
|
|
76
102
|
private clearActiveDragCursor;
|
|
@@ -83,6 +109,7 @@ declare class AXDragDirective implements OnInit, OnDestroy {
|
|
|
83
109
|
private handleDblClick;
|
|
84
110
|
private handlePointerMove;
|
|
85
111
|
private abortDragSequence;
|
|
112
|
+
private resetHandleCursorAfterDrag;
|
|
86
113
|
private startDrag;
|
|
87
114
|
private handlePointerUp;
|
|
88
115
|
private preventClicking;
|
|
@@ -104,14 +131,7 @@ declare class AXDragDirective implements OnInit, OnDestroy {
|
|
|
104
131
|
private addDocumentListeners;
|
|
105
132
|
private removeDocumentListeners;
|
|
106
133
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXDragDirective, never>;
|
|
107
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXDragDirective, "[axDrag]", never, { "axDrag": { "alias": "axDrag"; "required": false; "isSignal": true; }; "dragData": { "alias": "dragData"; "required": false; "isSignal": true; }; "dragDisabled": { "alias": "dragDisabled"; "required": false; "isSignal": true; }; "dragTransition": { "alias": "dragTransition"; "required": false; "isSignal": true; }; "dragElementClone": { "alias": "dragElementClone"; "required": false; "isSignal": true; }; "dropZoneGroup": { "alias": "dropZoneGroup"; "required": false; "isSignal": true; }; "dragStartDelay": { "alias": "dragStartDelay"; "required": false; "isSignal": true; }; "dragResetOnDblClick": { "alias": "dragResetOnDblClick"; "required": false; "isSignal": true; }; "dragLockAxis": { "alias": "dragLockAxis"; "required": false; "isSignal": true; }; "dragClonedTemplate": { "alias": "dragClonedTemplate"; "required": false; "isSignal": true; }; "dragCursor": { "alias": "dragCursor"; "required": false; "isSignal": true; }; "dragBoundary": { "alias": "dragBoundary"; "required": false; "isSignal": true; }; "dragTransitionDuration": { "alias": "dragTransitionDuration"; "required": false; "isSignal": true; }; }, { "dragPositionChanged": "dragPositionChanged"; },
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
declare class AXDragHandleDirective {
|
|
111
|
-
private el;
|
|
112
|
-
readonly element: _angular_core.WritableSignal<HTMLElement>;
|
|
113
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXDragHandleDirective, never>;
|
|
114
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXDragHandleDirective, "[axDragHandle]", never, {}, {}, never, never, true, never>;
|
|
134
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXDragDirective, "[axDrag]", never, { "axDrag": { "alias": "axDrag"; "required": false; "isSignal": true; }; "dragData": { "alias": "dragData"; "required": false; "isSignal": true; }; "dragDisabled": { "alias": "dragDisabled"; "required": false; "isSignal": true; }; "dragTransition": { "alias": "dragTransition"; "required": false; "isSignal": true; }; "dragElementClone": { "alias": "dragElementClone"; "required": false; "isSignal": true; }; "dropZoneGroup": { "alias": "dropZoneGroup"; "required": false; "isSignal": true; }; "dragStartDelay": { "alias": "dragStartDelay"; "required": false; "isSignal": true; }; "dragResetOnDblClick": { "alias": "dragResetOnDblClick"; "required": false; "isSignal": true; }; "dragLockAxis": { "alias": "dragLockAxis"; "required": false; "isSignal": true; }; "dragClonedTemplate": { "alias": "dragClonedTemplate"; "required": false; "isSignal": true; }; "dragCursor": { "alias": "dragCursor"; "required": false; "isSignal": true; }; "dragBoundary": { "alias": "dragBoundary"; "required": false; "isSignal": true; }; "dragTransitionDuration": { "alias": "dragTransitionDuration"; "required": false; "isSignal": true; }; }, { "dragPositionChanged": "dragPositionChanged"; }, never, never, true, never>;
|
|
115
135
|
}
|
|
116
136
|
|
|
117
137
|
/** Event object emitted when an item is dropped into a drop list. */
|
|
@@ -148,6 +168,8 @@ declare class AXDropListDirective extends NXComponent implements OnInit, AfterCo
|
|
|
148
168
|
dropListOrientation: _angular_core.InputSignal<"horizontal" | "vertical">;
|
|
149
169
|
/** Emits when an item is dropped into the list. */
|
|
150
170
|
dropListDropped: _angular_core.OutputEmitterRef<AXDropListDroppedEvent>;
|
|
171
|
+
/** Emits when the sort preview transforms change during an active drag. */
|
|
172
|
+
sortPreviewChanged: _angular_core.OutputEmitterRef<void>;
|
|
151
173
|
/** The `axDrag` directives that are direct children of this list. */
|
|
152
174
|
readonly _draggableItems: _angular_core.Signal<readonly AXDragDirective[]>;
|
|
153
175
|
/** The native element of the drop list. */
|
|
@@ -162,6 +184,8 @@ declare class AXDropListDirective extends NXComponent implements OnInit, AfterCo
|
|
|
162
184
|
private readonly _listInitialRect;
|
|
163
185
|
/** The detected `gap` of the list for the current orientation. */
|
|
164
186
|
private readonly _listGap;
|
|
187
|
+
/** Whether the list is in RTL direction (cached at drag start). */
|
|
188
|
+
private readonly _isRtl;
|
|
165
189
|
/** Internal orientation state; can be overridden programmatically by host components. */
|
|
166
190
|
readonly orientation: _angular_core.WritableSignal<"horizontal" | "vertical">;
|
|
167
191
|
/** Internal sorting-disabled state; can be overridden programmatically by host components. */
|
|
@@ -173,6 +197,8 @@ declare class AXDropListDirective extends NXComponent implements OnInit, AfterCo
|
|
|
173
197
|
ngOnDestroy(): void;
|
|
174
198
|
/** Checks if the given drag item is the one currently active in this list. */
|
|
175
199
|
isDragActiveForThisList(dragItem: AXDragDirective): boolean;
|
|
200
|
+
/** Whether the list is horizontal and in RTL direction. */
|
|
201
|
+
private isHorizontalRtl;
|
|
176
202
|
/**
|
|
177
203
|
* Prepares the list for sorting when a drag operation starts from within this list.
|
|
178
204
|
* @param dragItem The item that is being dragged.
|
|
@@ -233,7 +259,7 @@ declare class AXDropListDirective extends NXComponent implements OnInit, AfterCo
|
|
|
233
259
|
/** Resets the internal state of the directive to its initial values. */
|
|
234
260
|
resetSortState(): void;
|
|
235
261
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXDropListDirective, never>;
|
|
236
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXDropListDirective, "[axDropList]", ["axDropList"], { "axDropList": { "alias": "axDropList"; "required": false; "isSignal": true; }; "sortingDisabled": { "alias": "sortingDisabled"; "required": false; "isSignal": true; }; "dropListGroup": { "alias": "dropListGroup"; "required": false; "isSignal": true; }; "dropListOrientation": { "alias": "dropListOrientation"; "required": false; "isSignal": true; }; }, { "dropListDropped": "dropListDropped"; }, ["_draggableItems"], never, true, never>;
|
|
262
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXDropListDirective, "[axDropList]", ["axDropList"], { "axDropList": { "alias": "axDropList"; "required": false; "isSignal": true; }; "sortingDisabled": { "alias": "sortingDisabled"; "required": false; "isSignal": true; }; "dropListGroup": { "alias": "dropListGroup"; "required": false; "isSignal": true; }; "dropListOrientation": { "alias": "dropListOrientation"; "required": false; "isSignal": true; }; }, { "dropListDropped": "dropListDropped"; "sortPreviewChanged": "sortPreviewChanged"; }, ["_draggableItems"], never, true, never>;
|
|
237
263
|
}
|
|
238
264
|
|
|
239
265
|
interface AXDropZoneDropEvent extends NXNativeEvent<AXDropZoneDirective, MouseEvent> {
|
|
@@ -275,5 +301,5 @@ declare function moveItemInArray<T = any>(array: T[], fromIndex: number, toIndex
|
|
|
275
301
|
*/
|
|
276
302
|
declare function transferArrayItem<T = any>(currentArray: T[], targetArray: T[], currentIndex: number, targetIndex: number): void;
|
|
277
303
|
|
|
278
|
-
export { AXDragDirective, AXDragDropModule, AXDragHandleDirective, AXDropListDirective, AXDropZoneDirective, moveItemInArray, transferArrayItem };
|
|
279
|
-
export type { AXDropListDroppedEvent, AXDropZoneDropEvent, AXDropZoneHoverEvent };
|
|
304
|
+
export { AXDragDirective, AXDragDropModule, AXDragHandleDirective, AXDropListDirective, AXDropZoneDirective, AX_DRAG_PARENT, moveItemInArray, transferArrayItem };
|
|
305
|
+
export type { AXDragParent, AXDropListDroppedEvent, AXDropZoneDropEvent, AXDropZoneHoverEvent };
|
|
@@ -1,69 +1,44 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { OnDestroy } from '@angular/core';
|
|
3
|
+
import { AXFullScreenMode } from '@acorex/core/full-screen';
|
|
2
4
|
|
|
3
5
|
/**
|
|
4
|
-
* Fullscreen directive
|
|
6
|
+
* Fullscreen directive with overlay and browser modes.
|
|
5
7
|
* Usage: <element axFullscreen #fullscreen="axFullscreen"></element>
|
|
6
8
|
* Then: fullscreen.toggle() or fullscreen.enter() or fullscreen.exit()
|
|
7
9
|
*/
|
|
8
|
-
declare class AXFullScreenDirective {
|
|
10
|
+
declare class AXFullScreenDirective implements OnDestroy {
|
|
9
11
|
/**
|
|
10
|
-
*
|
|
12
|
+
* Fullscreen implementation mode.
|
|
13
|
+
* @defaultValue 'overlay'
|
|
11
14
|
*/
|
|
12
|
-
|
|
15
|
+
readonly mode: _angular_core.InputSignal<AXFullScreenMode>;
|
|
13
16
|
/**
|
|
14
|
-
*
|
|
17
|
+
* Fullscreen change event for this host element.
|
|
15
18
|
*/
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Original parent element reference
|
|
19
|
-
*/
|
|
20
|
-
private originalParent;
|
|
21
|
-
/**
|
|
22
|
-
* Fullscreen container element
|
|
23
|
-
*/
|
|
24
|
-
private fullscreenContainer;
|
|
25
|
-
/**
|
|
26
|
-
* Fullscreen change event
|
|
27
|
-
*/
|
|
28
|
-
readonly fullscreenChange: i0.OutputEmitterRef<boolean>;
|
|
29
|
-
/**
|
|
30
|
-
* Z-index token for this fullscreen instance
|
|
31
|
-
*/
|
|
32
|
-
private zToken;
|
|
33
|
-
private readonly renderer;
|
|
19
|
+
readonly fullscreenChange: _angular_core.OutputEmitterRef<boolean>;
|
|
34
20
|
private readonly elementRef;
|
|
35
|
-
private readonly
|
|
21
|
+
private readonly fullScreenService;
|
|
36
22
|
constructor();
|
|
37
23
|
/**
|
|
38
|
-
* Toggle fullscreen state
|
|
24
|
+
* Toggle fullscreen state.
|
|
39
25
|
*/
|
|
40
26
|
toggle(): void;
|
|
41
27
|
/**
|
|
42
|
-
* Enter fullscreen mode
|
|
28
|
+
* Enter fullscreen mode.
|
|
43
29
|
*/
|
|
44
30
|
enter(): void;
|
|
45
31
|
/**
|
|
46
|
-
* Exit fullscreen mode
|
|
32
|
+
* Exit fullscreen mode.
|
|
47
33
|
*/
|
|
48
34
|
exit(): void;
|
|
49
35
|
/**
|
|
50
|
-
* Check if currently in fullscreen mode
|
|
36
|
+
* Check if this host is currently in fullscreen mode.
|
|
51
37
|
*/
|
|
52
38
|
isFullscreen(): boolean;
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
private storeOriginalStyles;
|
|
57
|
-
/**
|
|
58
|
-
* Restore original element styles
|
|
59
|
-
*/
|
|
60
|
-
private restoreOriginalStyles;
|
|
61
|
-
/**
|
|
62
|
-
* Convert camelCase to kebab-case for CSS properties
|
|
63
|
-
*/
|
|
64
|
-
private camelToKebabCase;
|
|
65
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AXFullScreenDirective, never>;
|
|
66
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<AXFullScreenDirective, "[axFullscreen]", ["axFullscreen"], {}, { "fullscreenChange": "fullscreenChange"; }, never, never, true, never>;
|
|
39
|
+
ngOnDestroy(): void;
|
|
40
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFullScreenDirective, never>;
|
|
41
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXFullScreenDirective, "[axFullscreen]", ["axFullscreen"], { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "fullscreenChange": "fullscreenChange"; }, never, never, true, never>;
|
|
67
42
|
}
|
|
68
43
|
|
|
69
44
|
export { AXFullScreenDirective };
|
|
@@ -89,6 +89,11 @@ declare class AXGestureDirective implements OnDestroy {
|
|
|
89
89
|
* Stops gesture recognition when true.
|
|
90
90
|
*/
|
|
91
91
|
disabled: _angular_core.InputSignal<boolean>;
|
|
92
|
+
/**
|
|
93
|
+
* Maximum interval in milliseconds between taps for double-tap recognition.
|
|
94
|
+
* Maps to Hammer.js tap recognizer `interval`. Defaults to Hammer's built-in value (300ms).
|
|
95
|
+
*/
|
|
96
|
+
tapInterval: _angular_core.InputSignal<number>;
|
|
92
97
|
tap: OutputEmitterRef<AXGestureEvent>;
|
|
93
98
|
doubletap: OutputEmitterRef<AXGestureEvent>;
|
|
94
99
|
press: OutputEmitterRef<AXGestureEvent>;
|
|
@@ -108,6 +113,11 @@ declare class AXGestureDirective implements OnDestroy {
|
|
|
108
113
|
* The underlying Hammer manager, or null when not initialized.
|
|
109
114
|
*/
|
|
110
115
|
get manager(): AXGestureManager | null;
|
|
116
|
+
/**
|
|
117
|
+
* Suppresses native click propagation when Hammer.js is active so tap/doubletap
|
|
118
|
+
* outputs are the single source of click handling.
|
|
119
|
+
*/
|
|
120
|
+
protected onHostClick(event: MouseEvent): void;
|
|
111
121
|
ngOnDestroy(): void;
|
|
112
122
|
private setup;
|
|
113
123
|
private loadHammer;
|
|
@@ -115,7 +125,7 @@ declare class AXGestureDirective implements OnDestroy {
|
|
|
115
125
|
private teardown;
|
|
116
126
|
private readonly onHammerEvent;
|
|
117
127
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXGestureDirective, never>;
|
|
118
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXGestureDirective, "[axGesture]", ["axGesture"], { "options": { "alias": "options"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "enablePinch": { "alias": "enablePinch"; "required": false; "isSignal": true; }; "enableRotate": { "alias": "enableRotate"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "tap": "tap"; "doubletap": "doubletap"; "press": "press"; "pan": "pan"; "panstart": "panstart"; "panmove": "panmove"; "panend": "panend"; "swipe": "swipe"; "pinch": "pinch"; "rotate": "rotate"; }, never, never, true, never>;
|
|
128
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXGestureDirective, "[axGesture]", ["axGesture"], { "options": { "alias": "options"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "enablePinch": { "alias": "enablePinch"; "required": false; "isSignal": true; }; "enableRotate": { "alias": "enableRotate"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "tapInterval": { "alias": "tapInterval"; "required": false; "isSignal": true; }; }, { "tap": "tap"; "doubletap": "doubletap"; "press": "press"; "pan": "pan"; "panstart": "panstart"; "panmove": "panmove"; "panend": "panend"; "swipe": "swipe"; "pinch": "pinch"; "rotate": "rotate"; }, never, never, true, never>;
|
|
119
129
|
}
|
|
120
130
|
|
|
121
131
|
export { AXGestureDirective };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { PipeTransform } from '@angular/core';
|
|
3
3
|
import { AXHighlightOptions, AXHighlightSegment } from '@acorex/core/utils';
|
|
4
|
-
import { SafeHtml } from '@angular/platform-browser';
|
|
5
4
|
|
|
6
5
|
/**
|
|
7
6
|
* Directive that highlights text within the host element or its descendants.
|
|
@@ -43,32 +42,6 @@ declare class AXHighlightDirective {
|
|
|
43
42
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AXHighlightDirective, "[axHighlight]", never, { "axHighlight": { "alias": "axHighlight"; "required": false; "isSignal": true; }; "highlightSelector": { "alias": "highlightSelector"; "required": false; "isSignal": true; }; "highlightOptions": { "alias": "highlightOptions"; "required": false; "isSignal": true; }; "highlightDisabled": { "alias": "highlightDisabled"; "required": false; "isSignal": true; }; }, { "matchCount": "matchCount"; }, never, never, true, never>;
|
|
44
43
|
}
|
|
45
44
|
|
|
46
|
-
/**
|
|
47
|
-
* Renders text with search-term matches wrapped in `.ax-highlight` spans.
|
|
48
|
-
*
|
|
49
|
-
* Uses a single innerHTML string so Angular control-flow whitespace cannot insert
|
|
50
|
-
* gaps between highlighted and non-highlighted characters.
|
|
51
|
-
*
|
|
52
|
-
* Does not use the `ax-highlight-text` class on the host — that class is reserved for
|
|
53
|
-
* {@link AXHighlightService} DOM wrappers.
|
|
54
|
-
*/
|
|
55
|
-
declare class AXHighlightTextComponent {
|
|
56
|
-
#private;
|
|
57
|
-
private readonly sanitizer;
|
|
58
|
-
/** The full text to render. */
|
|
59
|
-
readonly text: _angular_core.InputSignal<string>;
|
|
60
|
-
/** The search term or terms to highlight within the text. */
|
|
61
|
-
readonly query: _angular_core.InputSignal<string | readonly string[]>;
|
|
62
|
-
/** When true, highlighting is disabled and plain text is shown. */
|
|
63
|
-
readonly highlightDisabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
64
|
-
/** Optional highlight behavior configuration. */
|
|
65
|
-
readonly highlightOptions: _angular_core.InputSignal<AXHighlightOptions>;
|
|
66
|
-
protected readonly segments: _angular_core.Signal<AXHighlightSegment[]>;
|
|
67
|
-
protected readonly highlightedHtml: _angular_core.Signal<SafeHtml>;
|
|
68
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXHighlightTextComponent, never>;
|
|
69
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXHighlightTextComponent, "ax-highlight-text", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "query": { "alias": "query"; "required": false; "isSignal": true; }; "highlightDisabled": { "alias": "highlightDisabled"; "required": false; "isSignal": true; }; "highlightOptions": { "alias": "highlightOptions"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
45
|
/**
|
|
73
46
|
* Pure pipe that splits text into highlight segments for template rendering.
|
|
74
47
|
*/
|
|
@@ -78,4 +51,4 @@ declare class AXHighlightTextPipe implements PipeTransform {
|
|
|
78
51
|
static ɵpipe: _angular_core.ɵɵPipeDeclaration<AXHighlightTextPipe, "axHighlightText", true>;
|
|
79
52
|
}
|
|
80
53
|
|
|
81
|
-
export { AXHighlightDirective,
|
|
54
|
+
export { AXHighlightDirective, AXHighlightTextPipe };
|
|
@@ -45,6 +45,7 @@ declare class AXHorizontalScrollDirective implements OnDestroy {
|
|
|
45
45
|
private panStartScrollPosition;
|
|
46
46
|
private suppressClickListener;
|
|
47
47
|
private suppressClickTimer;
|
|
48
|
+
private _isRtl;
|
|
48
49
|
private readonly interactiveSelector;
|
|
49
50
|
private readonly wheelListener;
|
|
50
51
|
protected touchAction(): string | null;
|
|
@@ -52,6 +53,8 @@ declare class AXHorizontalScrollDirective implements OnDestroy {
|
|
|
52
53
|
ngOnDestroy(): void;
|
|
53
54
|
private get nativeElement();
|
|
54
55
|
private isHorizontal;
|
|
56
|
+
private get rtlSign();
|
|
57
|
+
private refreshRtlState;
|
|
55
58
|
private getCurrentScrollPosition;
|
|
56
59
|
private getMaxScrollPosition;
|
|
57
60
|
private canScroll;
|
|
@@ -27,6 +27,8 @@ declare class AXOutlineContainerDirective implements OnDestroy, AfterViewInit {
|
|
|
27
27
|
scrollableElementId: _angular_core.InputSignal<string>;
|
|
28
28
|
private scrollTop;
|
|
29
29
|
private outlineItems;
|
|
30
|
+
private lastScrollSpyIndex;
|
|
31
|
+
private heldActiveIndex;
|
|
30
32
|
private scrollableElement;
|
|
31
33
|
private mutationSubject;
|
|
32
34
|
private readonly MUTATION_DEBOUNCE_TIME;
|
|
@@ -34,7 +36,25 @@ declare class AXOutlineContainerDirective implements OnDestroy, AfterViewInit {
|
|
|
34
36
|
outlineItems$: BehaviorSubject<outlineItemType[]>;
|
|
35
37
|
ngOnDestroy(): void;
|
|
36
38
|
ngAfterViewInit(): void;
|
|
39
|
+
scrollToItem(id: string): void;
|
|
40
|
+
private resolveScrollEventTarget;
|
|
41
|
+
private readScrollTop;
|
|
42
|
+
private handleInContentOutlineLinkClick;
|
|
43
|
+
private scrollToItemFromHash;
|
|
44
|
+
private releaseHeldActiveIndex;
|
|
45
|
+
private stopOngoingSmoothScroll;
|
|
46
|
+
private getOutlineIdFromHref;
|
|
47
|
+
private syncLocationHash;
|
|
37
48
|
private scrollChanged;
|
|
49
|
+
private bindUserScrollIntent;
|
|
50
|
+
private resolveActiveIndex;
|
|
51
|
+
/**
|
|
52
|
+
* Maps scroll position to the active outline item. Sections with little content often
|
|
53
|
+
* have overlapping activation thresholds; each section gets a minimum scroll slot so
|
|
54
|
+
* short blocks are not skipped while scrolling.
|
|
55
|
+
*/
|
|
56
|
+
private resolveByScrollSlots;
|
|
57
|
+
private applyActiveIndex;
|
|
38
58
|
private setOutlineItems;
|
|
39
59
|
refreshOutlineItems(): void;
|
|
40
60
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXOutlineContainerDirective, never>;
|
|
@@ -4,6 +4,40 @@ import { AXZToken } from '@acorex/core/z-index';
|
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
5
|
import { ElementRef, EmbeddedViewRef, ComponentRef } from '@angular/core';
|
|
6
6
|
|
|
7
|
+
declare const AX_OVERLAY_DEFAULT_ENTER_ANIMATION: string[];
|
|
8
|
+
declare const AX_OVERLAY_DEFAULT_LEAVE_ANIMATION: string[];
|
|
9
|
+
type AXOverlayAnimation = boolean | string[] | {
|
|
10
|
+
enter?: string[];
|
|
11
|
+
leave?: string[];
|
|
12
|
+
};
|
|
13
|
+
interface AXOverlayResolvedAnimation {
|
|
14
|
+
enter: string[];
|
|
15
|
+
leave: string[];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Resolves overlay animation classes.
|
|
19
|
+
* - omitted: no animation (opt-in at the overlay layer)
|
|
20
|
+
* - `true`: default fade in/out
|
|
21
|
+
* - `false` or `[]`: no animation
|
|
22
|
+
* - `string[]`: custom enter classes only
|
|
23
|
+
* - `{ enter, leave }`: omitted keys fall back to the default fade classes
|
|
24
|
+
*/
|
|
25
|
+
declare function resolveOverlayAnimation(animation?: AXOverlayAnimation): AXOverlayResolvedAnimation;
|
|
26
|
+
/** Prefers the content/pane so transforms are not applied to the full-screen container. */
|
|
27
|
+
declare function getOverlayAnimationTarget(container: HTMLElement): HTMLElement;
|
|
28
|
+
declare function applyOverlayAnimationClasses(element: HTMLElement, classes: string[]): void;
|
|
29
|
+
declare function removeOverlayAnimationClasses(element: HTMLElement, classes: string[]): void;
|
|
30
|
+
declare function prefersReducedMotion(documentRef: Document): boolean;
|
|
31
|
+
declare function parseCssTimeList(value: string): number[];
|
|
32
|
+
/** Maps theme duration utility classes to milliseconds (see tailwind-base). */
|
|
33
|
+
declare function getAnimationDurationFromClasses(classes: string[]): number;
|
|
34
|
+
declare function getOverlayAnimationTimeout(element: HTMLElement, documentRef: Document, fallbackMs?: number): number;
|
|
35
|
+
declare function playOverlayLeaveAnimation(element: HTMLElement, enter: string[], leave: string[], documentRef: Document): Promise<void>;
|
|
36
|
+
declare function waitForOverlayAnimationEnd(element: HTMLElement, documentRef: Document, options?: {
|
|
37
|
+
fallbackMs?: number;
|
|
38
|
+
animationName?: string;
|
|
39
|
+
}): Promise<void>;
|
|
40
|
+
|
|
7
41
|
type AXOverlayVisualContextScope = 'full' | 'theme';
|
|
8
42
|
interface AXOverlayVisualContext {
|
|
9
43
|
appearance?: string;
|
|
@@ -29,10 +63,12 @@ interface AXOverlayRef<T> {
|
|
|
29
63
|
instance: EmbeddedViewRef<T> | ComponentRef<T>;
|
|
30
64
|
/** Updates the overlay position relative to the anchor */
|
|
31
65
|
updatePosition: () => void;
|
|
32
|
-
/** Destroys the overlay
|
|
66
|
+
/** Destroys the overlay. DOM removal waits for a leave animation when one is configured. */
|
|
33
67
|
dispose: () => void;
|
|
34
68
|
/** The overlay container element */
|
|
35
69
|
overlayElement: HTMLElement | null;
|
|
70
|
+
/** The backdrop element if one was created */
|
|
71
|
+
backdropElement: HTMLElement | null;
|
|
36
72
|
/** The z-index token for this overlay */
|
|
37
73
|
zToken: AXZToken | null;
|
|
38
74
|
/** Brings this overlay to the front of all other overlays */
|
|
@@ -62,12 +98,20 @@ interface AXOverlayOptions extends AXComponentOptions {
|
|
|
62
98
|
anchorOptions?: AXOverlayAnchorOptions;
|
|
63
99
|
/** Custom CSS class for the overlay panel */
|
|
64
100
|
panelClass?: string | string[];
|
|
101
|
+
/**
|
|
102
|
+
* Enter/leave animation applied to overlay content (`.ax-overlay-content` or `.ax-overlay-pane`),
|
|
103
|
+
* not the full-screen container. Omitted: no animation. `true`: default fade in/out.
|
|
104
|
+
* `false` or `[]`: disabled. A class array is enter-only. `{ enter, leave }` configures both.
|
|
105
|
+
*/
|
|
106
|
+
animation?: AXOverlayAnimation;
|
|
65
107
|
/** Whether to close when clicking outside */
|
|
66
108
|
closeOnOutsideClick?: boolean;
|
|
67
109
|
/** Whether to close when pressing Escape */
|
|
68
110
|
closeOnEscape?: boolean;
|
|
69
111
|
/** Width of the overlay container (e.g., 'auto', '200px', '100%') */
|
|
70
112
|
width?: string;
|
|
113
|
+
/** Dispose this overlay when Angular starts a navigation. Default: true. */
|
|
114
|
+
closeOnNavigation?: boolean;
|
|
71
115
|
/** Callback when the overlay is disposed (e.g., due to scroll) */
|
|
72
116
|
onDispose?: () => void;
|
|
73
117
|
/** Whether to use centered container (default: true). Set to false for positioned overlays like toasts */
|
|
@@ -127,6 +171,7 @@ declare class AXOverlayService {
|
|
|
127
171
|
private document;
|
|
128
172
|
private zIndexService;
|
|
129
173
|
private _platform;
|
|
174
|
+
private router;
|
|
130
175
|
/**
|
|
131
176
|
* Creates an overlay with optional anchor-based positioning.
|
|
132
177
|
* @param content - Component or template to display
|
|
@@ -134,6 +179,17 @@ declare class AXOverlayService {
|
|
|
134
179
|
* @returns Promise<AXOverlayRef> - Reference to the created overlay
|
|
135
180
|
*/
|
|
136
181
|
create<T = unknown>(content: AXComponentContent<T>, options?: AXOverlayOptions): Promise<AXOverlayRef<T>>;
|
|
182
|
+
/**
|
|
183
|
+
* Mobile action sheets need a hit-testable scrim even when the caller did not
|
|
184
|
+
* ask for a backdrop. An explicit `backdrop.enabled: false` opts out.
|
|
185
|
+
*/
|
|
186
|
+
private needsActionSheetBackdrop;
|
|
187
|
+
/**
|
|
188
|
+
* Fills in the action-sheet scrim when the caller did not configure a backdrop.
|
|
189
|
+
* Outside-click closing stays with the popover (`clickOut`); this layer only
|
|
190
|
+
* intercepts hits so the page behind the sheet cannot be clicked.
|
|
191
|
+
*/
|
|
192
|
+
private withActionSheetBackdrop;
|
|
137
193
|
/**
|
|
138
194
|
* Creates a backdrop element.
|
|
139
195
|
*/
|
|
@@ -160,8 +216,8 @@ declare class AXOverlayService {
|
|
|
160
216
|
private positionOverlay;
|
|
161
217
|
private applyOverlayVisualContext;
|
|
162
218
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXOverlayService, never>;
|
|
163
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<
|
|
219
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
|
|
164
220
|
}
|
|
165
221
|
|
|
166
|
-
export { APPEARANCE_CLASSES, AXOverlayService, CONTRAST_CLASSES, MANAGED_OVERLAY_VISUAL_CLASSES, SIZE_CLASSES, THEME_CLASSES, applyVisualContext, calculateAnchorPosition, clampToViewport, findBestPosition, fitsInViewport, resolveContextElement, resolveVisualContext };
|
|
167
|
-
export type { AXOverlayAnchorOptions, AXOverlayOptions, AXOverlayRef, AXOverlayVisualContext, AXOverlayVisualContextScope };
|
|
222
|
+
export { APPEARANCE_CLASSES, AXOverlayService, AX_OVERLAY_DEFAULT_ENTER_ANIMATION, AX_OVERLAY_DEFAULT_LEAVE_ANIMATION, CONTRAST_CLASSES, MANAGED_OVERLAY_VISUAL_CLASSES, SIZE_CLASSES, THEME_CLASSES, applyOverlayAnimationClasses, applyVisualContext, calculateAnchorPosition, clampToViewport, findBestPosition, fitsInViewport, getAnimationDurationFromClasses, getOverlayAnimationTarget, getOverlayAnimationTimeout, parseCssTimeList, playOverlayLeaveAnimation, prefersReducedMotion, removeOverlayAnimationClasses, resolveContextElement, resolveOverlayAnimation, resolveVisualContext, waitForOverlayAnimationEnd };
|
|
223
|
+
export type { AXOverlayAnchorOptions, AXOverlayAnimation, AXOverlayOptions, AXOverlayRef, AXOverlayResolvedAnimation, AXOverlayVisualContext, AXOverlayVisualContextScope };
|