@acorex/components 22.0.0-next.1 → 22.0.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 (30) hide show
  1. package/fesm2022/acorex-components-conversation.mjs +2 -2
  2. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  3. package/fesm2022/acorex-components-datetime-box.mjs +44 -12
  4. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  5. package/fesm2022/acorex-components-datetime-input.mjs +332 -312
  6. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  7. package/fesm2022/acorex-components-datetime-picker.mjs +11 -1
  8. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  9. package/fesm2022/acorex-components-decorators.mjs +2 -2
  10. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  11. package/fesm2022/acorex-components-file-viewer.mjs +328 -107
  12. package/fesm2022/acorex-components-file-viewer.mjs.map +1 -1
  13. package/fesm2022/acorex-components-map.mjs +1170 -13712
  14. package/fesm2022/acorex-components-map.mjs.map +1 -1
  15. package/fesm2022/acorex-components-popup.mjs +388 -78
  16. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  17. package/package.json +3 -7
  18. package/types/acorex-components-datetime-box.d.ts +16 -4
  19. package/types/acorex-components-datetime-input.d.ts +62 -68
  20. package/types/acorex-components-file-viewer.d.ts +109 -17
  21. package/types/acorex-components-map.d.ts +299 -45
  22. package/types/acorex-components-popup.d.ts +143 -35
  23. package/fesm2022/acorex-components-modal-acorex-components-modal-Djl-uo9b.mjs +0 -388
  24. package/fesm2022/acorex-components-modal-acorex-components-modal-Djl-uo9b.mjs.map +0 -1
  25. package/fesm2022/acorex-components-modal-modal-content.component-BpUsCI8D.mjs +0 -247
  26. package/fesm2022/acorex-components-modal-modal-content.component-BpUsCI8D.mjs.map +0 -1
  27. package/fesm2022/acorex-components-modal.mjs +0 -2
  28. package/fesm2022/acorex-components-modal.mjs.map +0 -1
  29. package/modal/README.md +0 -3
  30. package/types/acorex-components-modal.d.ts +0 -132
@@ -1,8 +1,10 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { Provider, OnDestroy } from '@angular/core';
2
+ import { OnDestroy, TemplateRef, Type, Provider } from '@angular/core';
3
+ import { AXComponentContent, AXComponentInputs } from '@acorex/core/components';
4
+ import { Subject } from 'rxjs';
5
+ import { AXStyleColorType, AXComponentClosedPromise } from '@acorex/cdk/common';
3
6
  import * as _acorex_core_file from '@acorex/core/file';
4
7
  import { AXFileTypeExtensionHint, AXFileType, AXFileTypeViewComponent } from '@acorex/core/file';
5
- import { AXStyleColorType } from '@acorex/cdk/common';
6
8
  import { SafeResourceUrl } from '@angular/platform-browser';
7
9
 
8
10
  /** Single item displayed in a file-viewer carousel. */
@@ -36,34 +38,35 @@ declare class AXFileViewerService {
36
38
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXFileViewerService>;
37
39
  }
38
40
 
39
- /** Registers file-viewer components on standard file-type catalog entries. */
40
- declare function provideFileViewer(): Provider[];
41
-
42
41
  /** Infers a file-type catalog name from the item. */
43
42
  declare function resolveFileViewerFileType(item: AXFileViewerItem): string;
44
43
  /** Builds an extension hint from item metadata. */
45
44
  declare function buildFileViewerExtensionHint(item: AXFileViewerItem): AXFileTypeExtensionHint | undefined;
46
45
 
47
- declare function createFileViewerFileTypes(): AXFileType[];
48
-
49
46
  declare class AXFileViewerContainerComponent implements OnDestroy {
50
47
  #private;
51
48
  readonly items: _angular_core.InputSignal<AXFileViewerItem[]>;
49
+ readonly startIndex: _angular_core.InputSignal<number>;
52
50
  readonly thumbnail: _angular_core.InputSignal<boolean>;
53
51
  readonly pagination: _angular_core.InputSignal<boolean>;
54
52
  readonly download: _angular_core.InputSignal<boolean>;
55
53
  readonly fullscreen: _angular_core.InputSignal<boolean>;
54
+ /** When true, opens in a gallery overlay and closes when fullscreen exits. */
55
+ readonly galleryMode: _angular_core.InputSignal<boolean>;
56
+ readonly headerContent: _angular_core.InputSignal<AXComponentContent>;
57
+ readonly headerContentInputs: _angular_core.InputSignal<AXComponentInputs>;
58
+ readonly fallbackContent: _angular_core.InputSignal<AXComponentContent>;
59
+ readonly fallbackContentInputs: _angular_core.InputSignal<AXComponentInputs>;
56
60
  /** External loading flag — show overlay while parent data is being fetched. */
57
61
  readonly loading: _angular_core.InputSignal<boolean>;
62
+ readonly fullscreenClosed: _angular_core.OutputEmitterRef<void>;
58
63
  readonly service: AXFileViewerService;
59
64
  private readonly host;
60
- private readonly zIndexService;
61
65
  private readonly fullScreenService;
62
66
  private readonly mainCarouselRef;
63
67
  private readonly thumbCarouselRef;
64
- readonly fullscreenActive: _angular_core.WritableSignal<boolean>;
65
- private zToken;
66
68
  private initToken;
69
+ readonly isFullscreenActive: _angular_core.WritableSignal<boolean>;
67
70
  /** True while carousels are being (re)initialized. */
68
71
  readonly initializing: _angular_core.WritableSignal<boolean>;
69
72
  readonly isBusy: _angular_core.Signal<boolean>;
@@ -74,34 +77,123 @@ declare class AXFileViewerContainerComponent implements OnDestroy {
74
77
  readonly currentTypeLabel: _angular_core.Signal<string>;
75
78
  readonly currentTypeColor: _angular_core.Signal<AXStyleColorType>;
76
79
  readonly slideCounter: _angular_core.Signal<string>;
80
+ readonly headerTemplateContent: _angular_core.Signal<TemplateRef<any>>;
81
+ readonly headerComponentContent: _angular_core.Signal<Type<unknown>>;
82
+ readonly hasHeaderCenterContent: _angular_core.Signal<boolean>;
83
+ readonly headerContentContext: _angular_core.Signal<{
84
+ item: AXFileViewerItem;
85
+ items: AXFileViewerItem[];
86
+ selectedIndex: number;
87
+ slideCounter: string;
88
+ }>;
77
89
  readonly resolveFileType: typeof resolveFileViewerFileType;
78
90
  resolveTypeLabel(item: AXFileViewerItem): string;
79
91
  formatSize(size?: number): string;
80
92
  private readonly mainCarouselOptions;
81
93
  private readonly thumbnailCarouselOptions;
82
- private acquireFullscreenZIndex;
83
- private releaseFullscreenZIndex;
94
+ toggleFullscreen(): void;
95
+ enterFullscreen(): void;
96
+ /** @param emitGalleryClose When false, skips gallery close notification (used during service teardown). */
97
+ exitFullscreen(emitGalleryClose?: boolean): void;
98
+ closeGallery(): void;
84
99
  private initCarousels;
85
100
  private readonly onSlideChange;
86
101
  next(): void;
87
102
  prev(): void;
88
103
  goToIndex(index: number, speed?: number): void;
89
- toggleFullscreen(): void;
90
104
  downloadCurrent(): Promise<void>;
91
105
  ngOnDestroy(): void;
92
106
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerContainerComponent, never>;
93
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerContainerComponent, "ax-file-viewer-container", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "thumbnail": { "alias": "thumbnail"; "required": false; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": false; "isSignal": true; }; "download": { "alias": "download"; "required": false; "isSignal": true; }; "fullscreen": { "alias": "fullscreen"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, never, ["ax-header"], true, never>;
107
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerContainerComponent, "ax-file-viewer-container", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "startIndex": { "alias": "startIndex"; "required": false; "isSignal": true; }; "thumbnail": { "alias": "thumbnail"; "required": false; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": false; "isSignal": true; }; "download": { "alias": "download"; "required": false; "isSignal": true; }; "fullscreen": { "alias": "fullscreen"; "required": false; "isSignal": true; }; "galleryMode": { "alias": "galleryMode"; "required": false; "isSignal": true; }; "headerContent": { "alias": "headerContent"; "required": false; "isSignal": true; }; "headerContentInputs": { "alias": "headerContentInputs"; "required": false; "isSignal": true; }; "fallbackContent": { "alias": "fallbackContent"; "required": false; "isSignal": true; }; "fallbackContentInputs": { "alias": "fallbackContentInputs"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, { "fullscreenClosed": "fullscreenClosed"; }, never, never, true, never>;
108
+ }
109
+
110
+ interface AXFileViewerGalleryConfig {
111
+ items: AXFileViewerItem[];
112
+ startIndex?: number;
113
+ thumbnail?: boolean;
114
+ download?: boolean;
115
+ loading?: boolean;
116
+ panelClass?: string[];
117
+ headerContent?: AXComponentContent | null;
118
+ headerContentInputs?: AXComponentInputs | null;
119
+ fallbackContent?: AXComponentContent | null;
120
+ fallbackContentInputs?: AXComponentInputs | null;
121
+ }
122
+ interface AXFileViewerGalleryRef<TResult = any> {
123
+ close: (data?: TResult) => void;
124
+ setInputs: (values: AXComponentInputs) => void;
125
+ bringToFront: () => void;
126
+ onClose: Subject<TResult>;
127
+ componentInstance?: AXFileViewerContainerComponent;
128
+ }
129
+
130
+ /** Opens {@link AXFileViewerContainerComponent} in fullscreen gallery mode. */
131
+ declare class AXFileViewerGalleryService {
132
+ private readonly galleryList;
133
+ private readonly overlayService;
134
+ /**
135
+ * Opens a file viewer gallery in fullscreen.
136
+ * @param config - Gallery configuration
137
+ * @returns Promise that resolves when the gallery is closed
138
+ */
139
+ open(config: AXFileViewerGalleryConfig): AXComponentClosedPromise;
140
+ /**
141
+ * Closes a gallery by its ID.
142
+ * @param id - The gallery ID to close
143
+ * @param data - Optional data to pass to the close event
144
+ */
145
+ close<TResult = unknown>(id: number, data?: TResult): void;
146
+ /**
147
+ * Sets input values for a gallery by its ID.
148
+ * @param id - The gallery ID
149
+ * @param values - Object containing input values to set
150
+ */
151
+ setInputs(id: number, values: AXComponentInputs): void;
152
+ /**
153
+ * Brings a gallery to the front of all other overlays.
154
+ * @param id - The gallery ID to bring to front
155
+ */
156
+ bringToFront(id: number): void;
157
+ private openInternal;
158
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerGalleryService, never>;
159
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXFileViewerGalleryService>;
160
+ }
161
+
162
+ /** Registers file-viewer components on standard file-type catalog entries. */
163
+ declare function provideFileViewer(): Provider[];
164
+
165
+ declare function createFileViewerFileTypes(): AXFileType[];
166
+
167
+ /** Optional center header slot component for use with {@link headerContent}. */
168
+ declare class AXFileViewerHeaderPlaceholderComponent {
169
+ readonly slideCounter: _angular_core.InputSignal<string>;
170
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerHeaderPlaceholderComponent, never>;
171
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerHeaderPlaceholderComponent, "ax-file-viewer-header-placeholder", never, { "slideCounter": { "alias": "slideCounter"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
94
172
  }
95
173
 
96
174
  declare class AXFileViewerSlideComponent {
97
175
  readonly item: _angular_core.InputSignal<AXFileViewerItem>;
98
176
  readonly index: _angular_core.InputSignal<number>;
177
+ readonly fallbackContent: _angular_core.InputSignal<AXComponentContent>;
178
+ readonly fallbackContentInputs: _angular_core.InputSignal<AXComponentInputs>;
99
179
  private readonly service;
100
180
  readonly fileTypeName: _angular_core.Signal<string>;
101
181
  readonly extensionHint: _angular_core.Signal<_acorex_core_file.AXFileTypeExtensionHint>;
102
182
  readonly viewPayload: _angular_core.Signal<AXFileViewerViewPayload>;
183
+ readonly fallbackTemplateContent: _angular_core.Signal<TemplateRef<any>>;
184
+ readonly fallbackComponentContent: _angular_core.Signal<Type<unknown>>;
185
+ readonly useCustomFallback: _angular_core.Signal<boolean>;
186
+ readonly fallbackContentContext: _angular_core.Signal<{
187
+ payload: AXFileViewerViewPayload;
188
+ item: AXFileViewerItem;
189
+ index: number;
190
+ active: boolean;
191
+ }>;
192
+ readonly fallbackComponentInputs: _angular_core.Signal<{
193
+ payload: AXFileViewerViewPayload;
194
+ }>;
103
195
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerSlideComponent, never>;
104
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerSlideComponent, "ax-file-viewer-slide", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; "index": { "alias": "index"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
196
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerSlideComponent, "ax-file-viewer-slide", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; "index": { "alias": "index"; "required": true; "isSignal": true; }; "fallbackContent": { "alias": "fallbackContent"; "required": false; "isSignal": true; }; "fallbackContentInputs": { "alias": "fallbackContentInputs"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
105
197
  }
106
198
 
107
199
  declare class AXFileViewerThumbPreviewComponent {
@@ -176,5 +268,5 @@ declare class AXFileViewerFileFallbackComponent implements AXFileTypeViewCompone
176
268
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerFileFallbackComponent, "ax-file-viewer-fallback", never, { "payload": { "alias": "payload"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
177
269
  }
178
270
 
179
- export { AXFileViewerAudioComponent, AXFileViewerContainerComponent, AXFileViewerFileFallbackComponent, AXFileViewerImageComponent, AXFileViewerPdfComponent, AXFileViewerService, AXFileViewerSlideComponent, AXFileViewerThumbPreviewComponent, AXFileViewerThumbnailsComponent, AXFileViewerVideoComponent, buildFileViewerExtensionHint, createFileViewerFileTypes, provideFileViewer, resolveFileViewerFileType };
180
- export type { AXFileViewerItem, AXFileViewerViewPayload };
271
+ export { AXFileViewerAudioComponent, AXFileViewerContainerComponent, AXFileViewerFileFallbackComponent, AXFileViewerGalleryService, AXFileViewerHeaderPlaceholderComponent, AXFileViewerImageComponent, AXFileViewerPdfComponent, AXFileViewerService, AXFileViewerSlideComponent, AXFileViewerThumbPreviewComponent, AXFileViewerThumbnailsComponent, AXFileViewerVideoComponent, buildFileViewerExtensionHint, createFileViewerFileTypes, provideFileViewer, resolveFileViewerFileType };
272
+ export type { AXFileViewerGalleryConfig, AXFileViewerGalleryRef, AXFileViewerItem, AXFileViewerViewPayload };