@acorex/components 22.0.0-next.8 → 22.1.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/combo-box/README.md +26 -0
- package/fesm2022/acorex-components-calendar.mjs +10 -12
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-combo-box.mjs +237 -0
- package/fesm2022/acorex-components-combo-box.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-DCcRJYfF.mjs +50 -0
- package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-DCcRJYfF.mjs.map +1 -0
- package/fesm2022/{acorex-components-conversation-open-composer-picker-for-files-Hh5Oyp3p.mjs → acorex-components-conversation-open-composer-picker-for-files-BuNEjswI.mjs} +2 -2
- package/fesm2022/{acorex-components-conversation-open-composer-picker-for-files-Hh5Oyp3p.mjs.map → acorex-components-conversation-open-composer-picker-for-files-BuNEjswI.mjs.map} +1 -1
- package/fesm2022/acorex-components-conversation.mjs +2034 -7467
- package/fesm2022/acorex-components-conversation.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +135 -45
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +14 -16
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-input.mjs +61 -32
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +3 -2
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-file-viewer.mjs +38 -78
- package/fesm2022/acorex-components-file-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +238 -36
- package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +2 -2
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-lookup.mjs +1292 -0
- package/fesm2022/acorex-components-lookup.mjs.map +1 -0
- package/fesm2022/acorex-components-menu.mjs +211 -74
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +30 -29
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +7 -17
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +2 -2
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-tag-box.mjs +2 -2
- package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
- package/lookup/README.md +47 -0
- package/package.json +11 -3
- package/types/acorex-components-combo-box.d.ts +114 -0
- package/types/acorex-components-conversation.d.ts +317 -94
- package/types/acorex-components-data-table.d.ts +35 -3
- package/types/acorex-components-datetime-box.d.ts +2 -0
- package/types/acorex-components-datetime-input.d.ts +24 -5
- package/types/acorex-components-file-viewer.d.ts +15 -52
- package/types/acorex-components-grid-layout-builder.d.ts +34 -2
- package/types/acorex-components-lookup.d.ts +454 -0
- package/types/acorex-components-menu.d.ts +26 -4
- package/types/acorex-components-number-box.d.ts +3 -1
- package/types/acorex-components-scheduler.d.ts +2 -4
- package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-CNHiM1Sp.mjs +0 -106
- package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-CNHiM1Sp.mjs.map +0 -1
|
@@ -155,6 +155,7 @@ declare abstract class AXBaseDataTable extends MXBaseComponent {
|
|
|
155
155
|
set highlightText(value: string | undefined);
|
|
156
156
|
selectedRowsChange: EventEmitter<unknown[]>;
|
|
157
157
|
protected readonly highlightedRows: WritableSignal<Map<string | number, AXDataTableRowHighlight>>;
|
|
158
|
+
protected readonly highlightedColumns: WritableSignal<Map<string, AXDataTableRowColorType>>;
|
|
158
159
|
private readonly rowCssClassCache;
|
|
159
160
|
private readonly cellCssClassCache;
|
|
160
161
|
private readonly highlightService;
|
|
@@ -180,9 +181,40 @@ declare abstract class AXBaseDataTable extends MXBaseComponent {
|
|
|
180
181
|
*/
|
|
181
182
|
highlightRows(rows: unknown[], options?: AXDataTableRowHighlightOptions): void;
|
|
182
183
|
/**
|
|
183
|
-
*
|
|
184
|
+
* Applies a color highlight to rows by their key (id) values.
|
|
185
|
+
* Unlike `highlightRow`, no badge, pulse, or pinning is applied.
|
|
186
|
+
*
|
|
187
|
+
* @param keys - Key (id) values of the rows to highlight.
|
|
188
|
+
* @param color - Semantic highlight color. @defaultValue `'primary'`
|
|
189
|
+
*/
|
|
190
|
+
highlightRowsByKey(keys: (string | number)[], color?: AXDataTableRowColorType): void;
|
|
191
|
+
/**
|
|
192
|
+
* Clears temporary row highlights.
|
|
193
|
+
*
|
|
194
|
+
* @param keys - When provided, only highlights of rows with these key (id) values are cleared.
|
|
195
|
+
*/
|
|
196
|
+
clearRowHighlights(keys?: (string | number)[]): void;
|
|
197
|
+
/**
|
|
198
|
+
* Applies a color highlight to one or more columns.
|
|
199
|
+
*
|
|
200
|
+
* @param columnNames - Column identifiers; either the column `name` (e.g. `cl-firstName`) or its `dataField`.
|
|
201
|
+
* @param color - Semantic highlight color. @defaultValue `'primary'`
|
|
202
|
+
*/
|
|
203
|
+
highlightColumns(columnNames: string | string[], color?: AXDataTableRowColorType): void;
|
|
204
|
+
/**
|
|
205
|
+
* Clears column highlights.
|
|
206
|
+
*
|
|
207
|
+
* @param columnNames - When provided, only highlights of these columns are cleared.
|
|
208
|
+
*/
|
|
209
|
+
clearColumnHighlights(columnNames?: string | string[]): void;
|
|
210
|
+
/**
|
|
211
|
+
* Returns the highlight color of a column, if any.
|
|
212
|
+
*/
|
|
213
|
+
getColumnHighlightColor(column: AXDataTableColumnComponent): AXDataTableRowColorType | null;
|
|
214
|
+
/**
|
|
215
|
+
* Returns the CSS class of a highlighted column, applied to its header and body cells.
|
|
184
216
|
*/
|
|
185
|
-
|
|
217
|
+
getColumnCssClass(column: AXDataTableColumnComponent): string;
|
|
186
218
|
/**
|
|
187
219
|
* Returns the temporary highlight state for a row, if any.
|
|
188
220
|
*/
|
|
@@ -200,7 +232,7 @@ declare abstract class AXBaseDataTable extends MXBaseComponent {
|
|
|
200
232
|
*/
|
|
201
233
|
getRowCssClass(row: unknown, rowIndex: number): string;
|
|
202
234
|
/**
|
|
203
|
-
* Returns CSS classes for a body cell, merging column `cssClass
|
|
235
|
+
* Returns CSS classes for a body cell, merging column `cssClass`, column highlight, and `cellCssClass`.
|
|
204
236
|
*/
|
|
205
237
|
getCellCssClass(row: unknown, column: AXDataTableColumnComponent, rowIndex: number): string;
|
|
206
238
|
/**
|
|
@@ -37,6 +37,7 @@ declare const AXDateTimeBoxComponent_base: polytype.Polytype.ClusteredConstructo
|
|
|
37
37
|
* @category Components
|
|
38
38
|
*/
|
|
39
39
|
declare class AXDateTimeBoxComponent extends AXDateTimeBoxComponent_base {
|
|
40
|
+
private readonly defaultConfig;
|
|
40
41
|
/**
|
|
41
42
|
* @ignore
|
|
42
43
|
*/
|
|
@@ -59,6 +60,7 @@ declare class AXDateTimeBoxComponent extends AXDateTimeBoxComponent_base {
|
|
|
59
60
|
* Indicates whether typing is allowed in the input.
|
|
60
61
|
* When false, clicking the input (or the calendar icon) opens the picker.
|
|
61
62
|
* When true, the input is for typing and the picker opens from the calendar button.
|
|
63
|
+
* Defaults to `AX_DATETIME_INPUT_CONFIG.allowTyping` when not set on the instance.
|
|
62
64
|
*
|
|
63
65
|
* @defaultValue false
|
|
64
66
|
*/
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { InjectionToken } from '@angular/core';
|
|
2
3
|
import { MXInputBaseValueComponent, AXClickEvent } from '@acorex/cdk/common';
|
|
3
4
|
import { AXDateTimePickerType } from '@acorex/components/calendar';
|
|
5
|
+
import { AXLocaleProfile } from '@acorex/core/locale';
|
|
4
6
|
|
|
5
7
|
/**
|
|
6
8
|
* A component for date and time input with segment-based typing, keyboard navigation,
|
|
@@ -10,9 +12,9 @@ import { AXDateTimePickerType } from '@acorex/components/calendar';
|
|
|
10
12
|
*/
|
|
11
13
|
declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
|
|
12
14
|
#private;
|
|
13
|
-
private platformService;
|
|
14
15
|
private localeService;
|
|
15
16
|
private calendarService;
|
|
17
|
+
private readonly defaultConfig;
|
|
16
18
|
/** @ignore */
|
|
17
19
|
private readonly _editingParts;
|
|
18
20
|
/** @ignore */
|
|
@@ -24,6 +26,7 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
|
|
|
24
26
|
/**
|
|
25
27
|
* When true, the user can type digits and navigate segments with the keyboard.
|
|
26
28
|
* When false, keyboard input is blocked (used by datetime-box picker mode).
|
|
29
|
+
* Defaults to `AX_DATETIME_INPUT_CONFIG.allowTyping` when not set on the instance.
|
|
27
30
|
* @defaultValue false
|
|
28
31
|
*/
|
|
29
32
|
allowTyping: _angular_core.InputSignal<boolean>;
|
|
@@ -46,6 +49,8 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
|
|
|
46
49
|
protected readonly _calendarSystem: _angular_core.Signal<string>;
|
|
47
50
|
protected readonly _resolvedFormat: _angular_core.Signal<string>;
|
|
48
51
|
/** @ignore */
|
|
52
|
+
protected readonly _isHijriRtl: _angular_core.Signal<boolean>;
|
|
53
|
+
/** @ignore */
|
|
49
54
|
private _editingDate;
|
|
50
55
|
/** @ignore */
|
|
51
56
|
private inputRef;
|
|
@@ -54,9 +59,7 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
|
|
|
54
59
|
/**
|
|
55
60
|
* @description check if page is in rtl or ltr
|
|
56
61
|
*/
|
|
57
|
-
protected isRtl: _angular_core.
|
|
58
|
-
/** @ignore */
|
|
59
|
-
protected ngOnInit(): void;
|
|
62
|
+
protected readonly isRtl: _angular_core.Signal<boolean>;
|
|
60
63
|
/**
|
|
61
64
|
* Formats a part using the calendar already attached to the AXDateTime.
|
|
62
65
|
* @ignore
|
|
@@ -67,6 +70,8 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
|
|
|
67
70
|
/** @ignore */
|
|
68
71
|
private _getOrderedParts;
|
|
69
72
|
/** @ignore */
|
|
73
|
+
private _getNavigationParts;
|
|
74
|
+
/** @ignore */
|
|
70
75
|
private _clearInputBuffer;
|
|
71
76
|
/** @ignore */
|
|
72
77
|
private _updateText;
|
|
@@ -108,10 +113,24 @@ declare class AXDateTimeInputComponent extends MXInputBaseValueComponent<Date> {
|
|
|
108
113
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXDateTimeInputComponent, "ax-datetime-input", 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; }; "allowTyping": { "alias": "allowTyping"; "required": false; "isSignal": true; }; "calendar": { "alias": "calendar"; "required": false; "isSignal": true; }; "minValue": { "alias": "minValue"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; "picker": { "alias": "picker"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onKeyDown": "onKeyDown"; "onKeyUp": "onKeyUp"; "onKeyPress": "onKeyPress"; "onClick": "onClick"; }, never, ["ax-validation-rule"], true, never>;
|
|
109
114
|
}
|
|
110
115
|
|
|
116
|
+
interface AXDateTimeInputConfig {
|
|
117
|
+
allowTyping: boolean;
|
|
118
|
+
}
|
|
119
|
+
declare const AXDateTimeInputDefaultConfig: AXDateTimeInputConfig;
|
|
120
|
+
declare const AX_DATETIME_INPUT_CONFIG: InjectionToken<AXDateTimeInputConfig>;
|
|
121
|
+
declare function resolveDateTimeInputFormat(options: {
|
|
122
|
+
customFormat: string | null | undefined;
|
|
123
|
+
calendarSystem: string;
|
|
124
|
+
picker: AXDateTimePickerType;
|
|
125
|
+
isRtl: boolean;
|
|
126
|
+
localeFormats: AXLocaleProfile['formats'];
|
|
127
|
+
}): string;
|
|
128
|
+
|
|
111
129
|
declare class AXDateTimeInputModule {
|
|
112
130
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXDateTimeInputModule, never>;
|
|
113
131
|
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXDateTimeInputModule, never, [typeof AXDateTimeInputComponent], [typeof AXDateTimeInputComponent]>;
|
|
114
132
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXDateTimeInputModule>;
|
|
115
133
|
}
|
|
116
134
|
|
|
117
|
-
export { AXDateTimeInputComponent, AXDateTimeInputModule };
|
|
135
|
+
export { AXDateTimeInputComponent, AXDateTimeInputDefaultConfig, AXDateTimeInputModule, AX_DATETIME_INPUT_CONFIG, resolveDateTimeInputFormat };
|
|
136
|
+
export type { AXDateTimeInputConfig };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { AXComponentContent, AXComponentInputs } from '@acorex/core/components';
|
|
2
1
|
import * as _angular_core from '@angular/core';
|
|
3
2
|
import { OnDestroy, TemplateRef, Type, Provider } from '@angular/core';
|
|
3
|
+
import { AXComponentContent, AXComponentInputs } from '@acorex/core/components';
|
|
4
4
|
import { Subject } from 'rxjs';
|
|
5
|
-
import * as dist_packages_core_types_acorex_core_components from 'dist/packages/core/types/acorex-core-components';
|
|
6
5
|
import { AXStyleColorType, AXComponentClosedPromise } from '@acorex/cdk/common';
|
|
7
6
|
import * as _acorex_core_file from '@acorex/core/file';
|
|
8
7
|
import { AXFileTypeExtensionHint, AXFileType, AXFileTypeViewComponent } from '@acorex/core/file';
|
|
@@ -27,18 +26,6 @@ interface AXFileViewerViewPayload {
|
|
|
27
26
|
index: number;
|
|
28
27
|
active: boolean;
|
|
29
28
|
}
|
|
30
|
-
/** Component or template rendered in the file-viewer header center slot. */
|
|
31
|
-
type AXFileViewerHeaderContent = AXComponentContent;
|
|
32
|
-
/** Inputs passed to {@link AXFileViewerHeaderContent} when it is a component. */
|
|
33
|
-
type AXFileViewerHeaderContentInputs = AXComponentInputs;
|
|
34
|
-
/** Placeholder component or template shown in the center when {@link AXFileViewerHeaderContent} is omitted. */
|
|
35
|
-
type AXFileViewerHeaderPlaceholderContent = AXComponentContent;
|
|
36
|
-
/** Inputs passed to the header placeholder when it is a component. */
|
|
37
|
-
type AXFileViewerHeaderPlaceholderInputs = AXComponentInputs;
|
|
38
|
-
/** Component or template rendered instead of the built-in fallback viewer for `file` type items. */
|
|
39
|
-
type AXFileViewerFallbackContent = AXComponentContent;
|
|
40
|
-
/** Inputs passed to {@link AXFileViewerFallbackContent} when it is a component. */
|
|
41
|
-
type AXFileViewerFallbackContentInputs = AXComponentInputs;
|
|
42
29
|
|
|
43
30
|
/** Carousel state shared between container, slides and thumbnails. Provided per-container. */
|
|
44
31
|
declare class AXFileViewerService {
|
|
@@ -66,22 +53,10 @@ declare class AXFileViewerContainerComponent implements OnDestroy {
|
|
|
66
53
|
readonly fullscreen: _angular_core.InputSignal<boolean>;
|
|
67
54
|
/** When true, opens in a gallery overlay and closes when fullscreen exits. */
|
|
68
55
|
readonly galleryMode: _angular_core.InputSignal<boolean>;
|
|
69
|
-
|
|
70
|
-
readonly
|
|
71
|
-
|
|
72
|
-
readonly
|
|
73
|
-
/** Context data exposed as `$implicit` to header templates. */
|
|
74
|
-
readonly headerContentData: _angular_core.InputSignal<unknown>;
|
|
75
|
-
/** Custom placeholder when {@link headerContent} is omitted. */
|
|
76
|
-
readonly headerContentPlaceholder: _angular_core.InputSignal<AXFileViewerHeaderPlaceholderContent>;
|
|
77
|
-
/** Inputs for {@link headerContentPlaceholder} when it is a component. */
|
|
78
|
-
readonly headerContentPlaceholderInputs: _angular_core.InputSignal<dist_packages_core_types_acorex_core_components.AXComponentInputs>;
|
|
79
|
-
/** Component or template replacing the built-in fallback viewer for `file` type items. */
|
|
80
|
-
readonly fallbackContent: _angular_core.InputSignal<AXFileViewerFallbackContent>;
|
|
81
|
-
/** Inputs for {@link fallbackContent} when it is a component. */
|
|
82
|
-
readonly fallbackContentInputs: _angular_core.InputSignal<dist_packages_core_types_acorex_core_components.AXComponentInputs>;
|
|
83
|
-
/** Context data exposed as `$implicit` to fallback templates. */
|
|
84
|
-
readonly fallbackContentData: _angular_core.InputSignal<unknown>;
|
|
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>;
|
|
85
60
|
/** External loading flag — show overlay while parent data is being fetched. */
|
|
86
61
|
readonly loading: _angular_core.InputSignal<boolean>;
|
|
87
62
|
readonly fullscreenClosed: _angular_core.OutputEmitterRef<void>;
|
|
@@ -104,11 +79,8 @@ declare class AXFileViewerContainerComponent implements OnDestroy {
|
|
|
104
79
|
readonly slideCounter: _angular_core.Signal<string>;
|
|
105
80
|
readonly headerTemplateContent: _angular_core.Signal<TemplateRef<any>>;
|
|
106
81
|
readonly headerComponentContent: _angular_core.Signal<Type<unknown>>;
|
|
107
|
-
readonly headerPlaceholderTemplateContent: _angular_core.Signal<TemplateRef<any>>;
|
|
108
|
-
readonly headerPlaceholderComponentContent: _angular_core.Signal<Type<unknown>>;
|
|
109
82
|
readonly hasHeaderCenterContent: _angular_core.Signal<boolean>;
|
|
110
83
|
readonly headerContentContext: _angular_core.Signal<{
|
|
111
|
-
$implicit: unknown;
|
|
112
84
|
item: AXFileViewerItem;
|
|
113
85
|
items: AXFileViewerItem[];
|
|
114
86
|
selectedIndex: number;
|
|
@@ -132,7 +104,7 @@ declare class AXFileViewerContainerComponent implements OnDestroy {
|
|
|
132
104
|
downloadCurrent(): Promise<void>;
|
|
133
105
|
ngOnDestroy(): void;
|
|
134
106
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerContainerComponent, never>;
|
|
135
|
-
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; }; "
|
|
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>;
|
|
136
108
|
}
|
|
137
109
|
|
|
138
110
|
interface AXFileViewerGalleryConfig {
|
|
@@ -142,14 +114,10 @@ interface AXFileViewerGalleryConfig {
|
|
|
142
114
|
download?: boolean;
|
|
143
115
|
loading?: boolean;
|
|
144
116
|
panelClass?: string[];
|
|
145
|
-
headerContent?:
|
|
146
|
-
headerContentInputs?:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
headerContentPlaceholderInputs?: AXFileViewerHeaderPlaceholderInputs;
|
|
150
|
-
fallbackContent?: AXFileViewerFallbackContent | null;
|
|
151
|
-
fallbackContentInputs?: AXFileViewerFallbackContentInputs;
|
|
152
|
-
fallbackContentData?: unknown;
|
|
117
|
+
headerContent?: AXComponentContent | null;
|
|
118
|
+
headerContentInputs?: AXComponentInputs | null;
|
|
119
|
+
fallbackContent?: AXComponentContent | null;
|
|
120
|
+
fallbackContentInputs?: AXComponentInputs | null;
|
|
153
121
|
}
|
|
154
122
|
interface AXFileViewerGalleryRef<TResult = any> {
|
|
155
123
|
close: (data?: TResult) => void;
|
|
@@ -196,7 +164,7 @@ declare function provideFileViewer(): Provider[];
|
|
|
196
164
|
|
|
197
165
|
declare function createFileViewerFileTypes(): AXFileType[];
|
|
198
166
|
|
|
199
|
-
/** Optional center header slot component for use with {@link
|
|
167
|
+
/** Optional center header slot component for use with {@link headerContent}. */
|
|
200
168
|
declare class AXFileViewerHeaderPlaceholderComponent {
|
|
201
169
|
readonly slideCounter: _angular_core.InputSignal<string>;
|
|
202
170
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerHeaderPlaceholderComponent, never>;
|
|
@@ -206,12 +174,8 @@ declare class AXFileViewerHeaderPlaceholderComponent {
|
|
|
206
174
|
declare class AXFileViewerSlideComponent {
|
|
207
175
|
readonly item: _angular_core.InputSignal<AXFileViewerItem>;
|
|
208
176
|
readonly index: _angular_core.InputSignal<number>;
|
|
209
|
-
|
|
210
|
-
readonly
|
|
211
|
-
/** Inputs for {@link fallbackContent} when it is a component. */
|
|
212
|
-
readonly fallbackContentInputs: _angular_core.InputSignal<dist_packages_core_types_acorex_core_components.AXComponentInputs>;
|
|
213
|
-
/** Context data exposed as `$implicit` to fallback templates. */
|
|
214
|
-
readonly fallbackContentData: _angular_core.InputSignal<unknown>;
|
|
177
|
+
readonly fallbackContent: _angular_core.InputSignal<AXComponentContent>;
|
|
178
|
+
readonly fallbackContentInputs: _angular_core.InputSignal<AXComponentInputs>;
|
|
215
179
|
private readonly service;
|
|
216
180
|
readonly fileTypeName: _angular_core.Signal<string>;
|
|
217
181
|
readonly extensionHint: _angular_core.Signal<_acorex_core_file.AXFileTypeExtensionHint>;
|
|
@@ -220,7 +184,6 @@ declare class AXFileViewerSlideComponent {
|
|
|
220
184
|
readonly fallbackComponentContent: _angular_core.Signal<Type<unknown>>;
|
|
221
185
|
readonly useCustomFallback: _angular_core.Signal<boolean>;
|
|
222
186
|
readonly fallbackContentContext: _angular_core.Signal<{
|
|
223
|
-
$implicit: unknown;
|
|
224
187
|
payload: AXFileViewerViewPayload;
|
|
225
188
|
item: AXFileViewerItem;
|
|
226
189
|
index: number;
|
|
@@ -230,7 +193,7 @@ declare class AXFileViewerSlideComponent {
|
|
|
230
193
|
payload: AXFileViewerViewPayload;
|
|
231
194
|
}>;
|
|
232
195
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerSlideComponent, never>;
|
|
233
|
-
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; };
|
|
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>;
|
|
234
197
|
}
|
|
235
198
|
|
|
236
199
|
declare class AXFileViewerThumbPreviewComponent {
|
|
@@ -306,4 +269,4 @@ declare class AXFileViewerFileFallbackComponent implements AXFileTypeViewCompone
|
|
|
306
269
|
}
|
|
307
270
|
|
|
308
271
|
export { AXFileViewerAudioComponent, AXFileViewerContainerComponent, AXFileViewerFileFallbackComponent, AXFileViewerGalleryService, AXFileViewerHeaderPlaceholderComponent, AXFileViewerImageComponent, AXFileViewerPdfComponent, AXFileViewerService, AXFileViewerSlideComponent, AXFileViewerThumbPreviewComponent, AXFileViewerThumbnailsComponent, AXFileViewerVideoComponent, buildFileViewerExtensionHint, createFileViewerFileTypes, provideFileViewer, resolveFileViewerFileType };
|
|
309
|
-
export type {
|
|
272
|
+
export type { AXFileViewerGalleryConfig, AXFileViewerGalleryRef, AXFileViewerItem, AXFileViewerViewPayload };
|
|
@@ -5,6 +5,8 @@ import { NXEvent, NXComponent } from '@acorex/cdk/common';
|
|
|
5
5
|
import { Subscription } from 'rxjs';
|
|
6
6
|
import * as gridstack from 'gridstack';
|
|
7
7
|
|
|
8
|
+
/** Grid size preset as `[width, height]` in column/row units. */
|
|
9
|
+
type AXGridLayoutSize = readonly [width: number, height: number];
|
|
8
10
|
interface AXGridLayoutPosition {
|
|
9
11
|
/** widget position x (default?: 0) */
|
|
10
12
|
x?: number;
|
|
@@ -22,6 +24,11 @@ interface AXGridLayoutPosition {
|
|
|
22
24
|
minWidth?: number;
|
|
23
25
|
/** minimum height of widget in rows (default?: undefined = un-constrained) */
|
|
24
26
|
minHeight?: number;
|
|
27
|
+
/**
|
|
28
|
+
* When set, resize is limited to these `[width, height]` presets.
|
|
29
|
+
* Invalid sizes revert to the previous size on resize end. Min/max bounds are derived from this list.
|
|
30
|
+
*/
|
|
31
|
+
allowedSizes?: readonly AXGridLayoutSize[];
|
|
25
32
|
}
|
|
26
33
|
interface AXGridLayoutWidget extends AXGridLayoutPosition {
|
|
27
34
|
id?: string;
|
|
@@ -318,5 +325,30 @@ declare class AXGridLayoutBuilderModule {
|
|
|
318
325
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXGridLayoutBuilderModule>;
|
|
319
326
|
}
|
|
320
327
|
|
|
321
|
-
|
|
322
|
-
|
|
328
|
+
declare const AX_GRID_LAYOUT_ALLOWED_SIZES_ATTR = "data-ax-allowed-sizes";
|
|
329
|
+
declare function convertAXGridLayoutWidgetToGridStackWidget(widget: AXGridLayoutWidget): gridstack.GridStackWidget;
|
|
330
|
+
declare function convertGridStackWidgetToAXGridLayoutWidget(widget: gridstack.GridStackWidget): AXGridLayoutWidget;
|
|
331
|
+
declare function convertAXGridLayoutNodeToGridStackNode(node: AXGridLayoutNode): gridstack.GridStackNode;
|
|
332
|
+
declare function convertGridStackNodeToAXGridLayoutNode(node: gridstack.GridStackNode): AXGridLayoutNode;
|
|
333
|
+
declare function convertAXGridLayoutOptionsToGridStackOptions(options: AXGridLayoutOptions): gridstack.GridStackOptions;
|
|
334
|
+
declare function convertGridStackOptionsToAXGridLayoutOptions(options: gridstack.GridStackOptions): AXGridLayoutOptions;
|
|
335
|
+
/** remove keys which are undefined */
|
|
336
|
+
declare function removeUndefinedKeys<T extends object>(obj: T): T;
|
|
337
|
+
declare function writeAllowedSizesToElement(element: HTMLElement | undefined, allowedSizes: readonly AXGridLayoutSize[] | undefined): void;
|
|
338
|
+
declare function readAllowedSizesFromElement(element: HTMLElement): readonly AXGridLayoutSize[] | undefined;
|
|
339
|
+
declare const AX_GRID_LAYOUT_RESIZE_INVALID_CLASS = "ax-grid-layout-resize-invalid";
|
|
340
|
+
declare const AX_GRID_LAYOUT_RESIZE_PREV_SIZE_ATTR = "data-ax-resize-prev-size";
|
|
341
|
+
declare function isExactAllowedSize(width: number, height: number, allowedSizes: readonly AXGridLayoutSize[]): boolean;
|
|
342
|
+
declare function updateResizeValidityMarkers(gridEl: HTMLElement, element: gridstack.GridItemHTMLElement): void;
|
|
343
|
+
declare function clearResizeValidityMarkers(gridEl: HTMLElement): void;
|
|
344
|
+
declare function storeResizeStartSize(element: gridstack.GridItemHTMLElement): void;
|
|
345
|
+
declare function clearResizeStartSize(element: HTMLElement): void;
|
|
346
|
+
declare function readResizeStartSize(element: HTMLElement): AXGridLayoutSize | undefined;
|
|
347
|
+
declare function snapToAllowedSize(width: number, height: number, allowedSizes: readonly AXGridLayoutSize[]): AXGridLayoutSize;
|
|
348
|
+
declare function deriveMinMaxFromAllowedSizes(allowedSizes: readonly AXGridLayoutSize[]): Pick<AXGridLayoutWidget, 'minWidth' | 'maxWidth' | 'minHeight' | 'maxHeight'>;
|
|
349
|
+
declare function normalizeLayoutNodeWithAllowedSizes<T extends AXGridLayoutWidget>(node: T): T;
|
|
350
|
+
declare function snapElementToAllowedSize(grid: gridstack.GridStack, element: gridstack.GridItemHTMLElement): boolean;
|
|
351
|
+
declare function revertElementToAllowedSizeIfInvalid(grid: gridstack.GridStack, element: gridstack.GridItemHTMLElement): boolean;
|
|
352
|
+
|
|
353
|
+
export { AXGridLayoutBuilderModule, AXGridLayoutContainerComponent, AXGridLayoutWidgetComponent, AX_GRID_LAYOUT_ALLOWED_SIZES_ATTR, AX_GRID_LAYOUT_RESIZE_INVALID_CLASS, AX_GRID_LAYOUT_RESIZE_PREV_SIZE_ATTR, clearResizeStartSize, clearResizeValidityMarkers, convertAXGridLayoutNodeToGridStackNode, convertAXGridLayoutOptionsToGridStackOptions, convertAXGridLayoutWidgetToGridStackWidget, convertGridStackNodeToAXGridLayoutNode, convertGridStackOptionsToAXGridLayoutOptions, convertGridStackWidgetToAXGridLayoutWidget, deriveMinMaxFromAllowedSizes, isExactAllowedSize, normalizeLayoutNodeWithAllowedSizes, readAllowedSizesFromElement, readResizeStartSize, removeUndefinedKeys, revertElementToAllowedSizeIfInvalid, snapElementToAllowedSize, snapToAllowedSize, storeResizeStartSize, updateResizeValidityMarkers, writeAllowedSizesToElement };
|
|
354
|
+
export type { AXGridLayout, AXGridLayoutContainerElement, AXGridLayoutEvent, AXGridLayoutNode, AXGridLayoutOptions, AXGridLayoutPosition, AXGridLayoutSize, AXGridLayoutWidget, AXGridLayoutWidgetElement };
|