@acorex/components 22.1.6 → 22.1.8

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 (81) hide show
  1. package/fesm2022/acorex-components-accordion.mjs +2 -2
  2. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  3. package/fesm2022/acorex-components-button-group.mjs +12 -5
  4. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  5. package/fesm2022/acorex-components-button.mjs +2 -2
  6. package/fesm2022/acorex-components-button.mjs.map +1 -1
  7. package/fesm2022/acorex-components-combo-box.mjs +43 -13
  8. package/fesm2022/acorex-components-combo-box.mjs.map +1 -1
  9. package/fesm2022/{acorex-components-conversation-acorex-components-conversation-CdAHDQD1.mjs → acorex-components-conversation-acorex-components-conversation-Cl_dlCTX.mjs} +1685 -882
  10. package/fesm2022/acorex-components-conversation-acorex-components-conversation-Cl_dlCTX.mjs.map +1 -0
  11. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-COUB9zrM.mjs +50 -0
  12. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-COUB9zrM.mjs.map +1 -0
  13. package/fesm2022/{acorex-components-conversation-image-picker-editor-dialog.component-QVs1XWYf.mjs → acorex-components-conversation-image-picker-editor-dialog.component-AO1evM19.mjs} +4 -4
  14. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-AO1evM19.mjs.map +1 -0
  15. package/fesm2022/{acorex-components-conversation-picker-rename-file-dialog.component-swqLQ8g0.mjs → acorex-components-conversation-picker-rename-file-dialog.component-_F-fv3Ti.mjs} +3 -3
  16. package/fesm2022/{acorex-components-conversation-picker-rename-file-dialog.component-swqLQ8g0.mjs.map → acorex-components-conversation-picker-rename-file-dialog.component-_F-fv3Ti.mjs.map} +1 -1
  17. package/fesm2022/acorex-components-conversation.mjs +1 -1
  18. package/fesm2022/acorex-components-cron-job.mjs +1 -1
  19. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  20. package/fesm2022/acorex-components-data-pager.mjs +4 -4
  21. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  22. package/fesm2022/acorex-components-data-table.mjs +34 -10
  23. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  24. package/fesm2022/acorex-components-datetime-picker.mjs +1 -1
  25. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  26. package/fesm2022/acorex-components-dialog.mjs +1 -1
  27. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  28. package/fesm2022/acorex-components-dropdown-button.mjs +1 -1
  29. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  30. package/fesm2022/acorex-components-fab.mjs +2 -2
  31. package/fesm2022/acorex-components-fab.mjs.map +1 -1
  32. package/fesm2022/acorex-components-file-viewer.mjs +29 -11
  33. package/fesm2022/acorex-components-file-viewer.mjs.map +1 -1
  34. package/fesm2022/acorex-components-flow-chart.mjs +1 -1
  35. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
  36. package/fesm2022/acorex-components-form.mjs +1 -1
  37. package/fesm2022/acorex-components-form.mjs.map +1 -1
  38. package/fesm2022/acorex-components-image-editor.mjs +7 -7
  39. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  40. package/fesm2022/acorex-components-loading-dialog.mjs +1 -1
  41. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  42. package/fesm2022/acorex-components-lookup.mjs +168 -41
  43. package/fesm2022/acorex-components-lookup.mjs.map +1 -1
  44. package/fesm2022/acorex-components-notification.mjs +1 -1
  45. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  46. package/fesm2022/acorex-components-paint.mjs +1 -1
  47. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  48. package/fesm2022/acorex-components-popup.mjs +1 -1
  49. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  50. package/fesm2022/acorex-components-query-builder.mjs +1 -1
  51. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  52. package/fesm2022/acorex-components-rest-api-generator.mjs +5 -5
  53. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  54. package/fesm2022/acorex-components-rrule.mjs +1 -1
  55. package/fesm2022/acorex-components-rrule.mjs.map +1 -1
  56. package/fesm2022/acorex-components-scheduler-picker.mjs +5 -5
  57. package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
  58. package/fesm2022/acorex-components-scheduler.mjs +1 -1
  59. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  60. package/fesm2022/acorex-components-selection-list.mjs +1 -2
  61. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  62. package/fesm2022/acorex-components-tabs.mjs +185 -34
  63. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  64. package/fesm2022/acorex-components-tree-view.mjs +1 -1
  65. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  66. package/package.json +4 -3
  67. package/types/acorex-components-button-group.d.ts +4 -0
  68. package/types/acorex-components-button.d.ts +1 -1
  69. package/types/acorex-components-combo-box.d.ts +13 -0
  70. package/types/acorex-components-conversation.d.ts +135 -126
  71. package/types/acorex-components-data-table.d.ts +6 -1
  72. package/types/acorex-components-file-viewer.d.ts +1 -0
  73. package/types/acorex-components-lookup.d.ts +13 -0
  74. package/types/acorex-components-selection-list.d.ts +1 -1
  75. package/types/acorex-components-tabs.d.ts +50 -6
  76. package/fesm2022/acorex-components-conversation-acorex-components-conversation-CdAHDQD1.mjs.map +0 -1
  77. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-D4ca9Mvt.mjs +0 -51
  78. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-D4ca9Mvt.mjs.map +0 -1
  79. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-QVs1XWYf.mjs.map +0 -1
  80. package/fesm2022/acorex-components-conversation-open-composer-picker-for-files-DBWQaSVC.mjs +0 -210
  81. package/fesm2022/acorex-components-conversation-open-composer-picker-for-files-DBWQaSVC.mjs.map +0 -1
@@ -385,6 +385,7 @@ declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent imple
385
385
  adaptivityEnabled: _angular_core.InputSignal<boolean>;
386
386
  /**
387
387
  * Title shown in the actionsheet header on small screens. Falls back to `placeholder`.
388
+ * Supports i18n expressions (e.g. `@acorex:selectbox.popover.title`).
388
389
  */
389
390
  caption: _angular_core.InputSignal<string>;
390
391
  /**
@@ -396,12 +397,18 @@ declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent imple
396
397
  * Placeholder for the trigger search input when items are already selected
397
398
  * (mainly useful in `multi-select` / `multi-select-tree`), and for the in-sheet search field on small screens.
398
399
  * Falls back to `placeholder` when the selection is empty on desktop.
400
+ * Supports i18n expressions (e.g. `@acorex:common.actions.search`).
399
401
  */
400
402
  searchPlaceholder: _angular_core.InputSignal<string>;
401
403
  /**
402
404
  * The placeholder text shown when no value is selected.
405
+ * Supports i18n expressions (e.g. `@acorex:chat.placeholders.select-conversation`).
403
406
  */
404
407
  placeholder: _angular_core.InputSignal<string>;
408
+ /** Resolved `placeholder` (i18n-aware). */
409
+ protected translatedPlaceholder: _angular_core.Signal<string>;
410
+ /** Resolved `searchPlaceholder` (i18n-aware). */
411
+ protected translatedSearchPlaceholder: _angular_core.Signal<string>;
405
412
  /**
406
413
  * Whether the lookup is disabled.
407
414
  */
@@ -523,6 +530,12 @@ declare class AXLookupComponent<T = AXLookupItem> extends NXValueComponent imple
523
530
  protected selectedItems: _angular_core.WritableSignal<AXLookupItem[]>;
524
531
  /** Display text shown in the trigger for single modes. */
525
532
  protected displayText: _angular_core.Signal<string>;
533
+ /** Resolved display text for the trigger input (i18n-aware). */
534
+ protected translatedDisplayText: _angular_core.Signal<string>;
535
+ /** Actionsheet header title with i18n fallback chain. */
536
+ protected actionsheetTitleSource: _angular_core.Signal<string>;
537
+ /** Resolved actionsheet title (i18n-aware). */
538
+ protected actionsheetTitle: _angular_core.Signal<string>;
526
539
  /**
527
540
  * Text typed in the editable trigger input.
528
541
  * Multi-select starts empty; single modes sync from the selected display text.
@@ -80,7 +80,7 @@ declare class AXSelectionListComponent extends MXSelectionValueComponent {
80
80
  /** @ignore */
81
81
  private get __hostClass();
82
82
  static ɵfac: i0.ɵɵFactoryDeclaration<AXSelectionListComponent, never>;
83
- static ɵcmp: i0.ɵɵComponentDeclaration<AXSelectionListComponent, "ax-selection-list", never, { "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "size": { "alias": "size"; "required": false; }; "value": { "alias": "value"; "required": false; }; "valueField": { "alias": "valueField"; "required": false; }; "textField": { "alias": "textField"; "required": false; }; "disabledField": { "alias": "disabledField"; "required": false; }; "readonlyField": { "alias": "readonlyField"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "customTemplate": { "alias": "customTemplate"; "required": false; "isSignal": true; }; "showControl": { "alias": "showControl"; "required": false; }; "items": { "alias": "items"; "required": false; }; "look": { "alias": "look"; "required": false; }; }, { "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; }, never, ["ax-validation-rule"], true, never>;
83
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXSelectionListComponent, "ax-selection-list", never, { "id": { "alias": "id"; "required": false; }; "name": { "alias": "name"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "value": { "alias": "value"; "required": false; }; "valueField": { "alias": "valueField"; "required": false; }; "textField": { "alias": "textField"; "required": false; }; "disabledField": { "alias": "disabledField"; "required": false; }; "readonlyField": { "alias": "readonlyField"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "customTemplate": { "alias": "customTemplate"; "required": false; "isSignal": true; }; "showControl": { "alias": "showControl"; "required": false; }; "items": { "alias": "items"; "required": false; }; "look": { "alias": "look"; "required": false; }; }, { "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; }, never, ["ax-validation-rule"], true, never>;
84
84
  }
85
85
 
86
86
  declare class AXSelectionListModule {
@@ -1,8 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { TemplateRef, EventEmitter, AfterViewInit, AfterContentInit, OnDestroy } from '@angular/core';
3
3
  import { MXInteractiveComponent, AXClickEvent, MXComponentOptionChanged, AXEvent, MXBaseComponent } from '@acorex/cdk/common';
4
- import * as i1 from '@angular/common';
5
- import * as i2 from '@angular/cdk/portal';
4
+ import * as i1 from '@acorex/cdk/drag-drop';
5
+ import * as i2 from '@acorex/cdk/horizontal-scroll';
6
+ import * as i1$1 from '@angular/common';
7
+ import * as i2$1 from '@angular/cdk/portal';
6
8
  import * as i3 from '@acorex/components/decorators';
7
9
 
8
10
  declare class AXTabContentDirective {
@@ -19,6 +21,9 @@ declare class AXTabContentDirective {
19
21
  * Represents an individual tab item in a tab component.
20
22
  */
21
23
  declare class AXTabItemComponent extends MXInteractiveComponent {
24
+ private readonly _drag;
25
+ private _reorderEnabled;
26
+ private _panTouchAction;
22
27
  /**
23
28
  * Defines the text content to be displayed within the component.
24
29
  */
@@ -50,6 +55,12 @@ declare class AXTabItemComponent extends MXInteractiveComponent {
50
55
  */
51
56
  get active(): boolean;
52
57
  set active(value: boolean);
58
+ /** @ignore */
59
+ setReorderEnabled(enabled: boolean, delay?: number, touchAction?: 'none' | 'pan-x' | 'pan-y'): void;
60
+ /** @ignore */
61
+ private updateDragState;
62
+ /** @ignore */
63
+ private applyScrollTouchAction;
53
64
  /**
54
65
  * @ignore
55
66
  */
@@ -70,13 +81,19 @@ declare class AXTabItemComponent extends MXInteractiveComponent {
70
81
  top: number;
71
82
  };
72
83
  static ɵfac: i0.ɵɵFactoryDeclaration<AXTabItemComponent, never>;
73
- static ɵcmp: i0.ɵɵComponentDeclaration<AXTabItemComponent, "ax-tab-item", never, { "disabled": { "alias": "disabled"; "required": false; }; "text": { "alias": "text"; "required": false; }; "key": { "alias": "key"; "required": false; }; "headerTemplate": { "alias": "headerTemplate"; "required": false; }; "active": { "alias": "active"; "required": false; }; }, { "disabledChange": "disabledChange"; "onClick": "onClick"; "onBlur": "onBlur"; "onFocus": "onFocus"; "activeChange": "activeChange"; }, never, ["ax-prefix", "ax-suffix", "ax-content"], true, never>;
84
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXTabItemComponent, "ax-tab-item", never, { "disabled": { "alias": "disabled"; "required": false; }; "text": { "alias": "text"; "required": false; }; "key": { "alias": "key"; "required": false; }; "headerTemplate": { "alias": "headerTemplate"; "required": false; }; "active": { "alias": "active"; "required": false; }; }, { "disabledChange": "disabledChange"; "onClick": "onClick"; "onBlur": "onBlur"; "onFocus": "onFocus"; "activeChange": "activeChange"; }, never, ["ax-prefix", "ax-suffix", "ax-content"], true, [{ directive: typeof i1.AXDragDirective; inputs: { "dragCursor": "dragCursor"; "dragStartDelay": "dragStartDelay"; "dragClonedTemplate": "dragClonedTemplate"; }; outputs: {}; }]>;
74
85
  }
75
86
 
76
87
  declare class AXTabStripChangedEvent extends AXEvent {
77
88
  tab: AXTabItemComponent;
78
89
  index: number;
79
90
  }
91
+ /** Event emitted when tab items are reordered via drag and drop. */
92
+ declare class AXTabsReorderedEvent extends AXEvent {
93
+ tab: AXTabItemComponent;
94
+ previousIndex: number;
95
+ currentIndex: number;
96
+ }
80
97
  type AXTabLook = 'default' | 'pills' | 'pills-color' | 'with-line' | 'with-line-color' | 'classic' | 'custom';
81
98
  type AXTabLocation = 'top' | 'bottom' | 'start' | 'end';
82
99
 
@@ -87,6 +104,8 @@ type AXTabLocation = 'top' | 'bottom' | 'start' | 'end';
87
104
  declare class AXTabsComponent extends MXBaseComponent implements AfterViewInit, AfterContentInit, OnDestroy {
88
105
  #private;
89
106
  private readonly renderer;
107
+ private readonly _dropList;
108
+ private readonly _scroll;
90
109
  /**
91
110
  * @ignore
92
111
  */
@@ -101,6 +120,20 @@ declare class AXTabsComponent extends MXBaseComponent implements AfterViewInit,
101
120
  * @defaultValue 'bottom'
102
121
  */
103
122
  location: i0.InputSignal<AXTabLocation>;
123
+ /**
124
+ * Enables drag-and-drop reordering of tab items. Reordering starts only after the user
125
+ * presses and holds a tab for {@link reorderDelay} milliseconds; a quick swipe without
126
+ * holding scrolls the strip instead.
127
+ * @defaultValue false
128
+ */
129
+ reorderable: i0.InputSignalWithTransform<boolean, unknown>;
130
+ /**
131
+ * Press-and-hold duration in milliseconds before a tab can be dragged to reorder.
132
+ * After this delay the cursor changes to indicate reorder mode. Moving before the
133
+ * delay ends cancels reorder and allows swipe or pan scrolling instead.
134
+ * @defaultValue 250
135
+ */
136
+ reorderDelay: i0.InputSignal<number>;
104
137
  /**
105
138
  * @defaultValue 'false'
106
139
  * Specifies whether the component should resize to fit its parent container.
@@ -133,8 +166,15 @@ declare class AXTabsComponent extends MXBaseComponent implements AfterViewInit,
133
166
  * @event
134
167
  */
135
168
  onActiveTabChanged: EventEmitter<AXTabStripChangedEvent>;
169
+ /**
170
+ * Emitted when tab items are reordered via drag and drop after the press-and-hold
171
+ * delay has elapsed and the user drags a tab to a new position.
172
+ * @event
173
+ */
174
+ onTabsReordered: EventEmitter<AXTabsReorderedEvent>;
136
175
  /** @ignore */
137
176
  private get __hostClass();
177
+ constructor();
138
178
  /** @ignore */
139
179
  ngAfterContentInit(): void;
140
180
  /** @ignore */
@@ -142,6 +182,10 @@ declare class AXTabsComponent extends MXBaseComponent implements AfterViewInit,
142
182
  ngOnDestroy(): void;
143
183
  /** @ignore */
144
184
  private _bindOnClickEvent;
185
+ /** @ignore */
186
+ private _syncDragState;
187
+ /** @ignore */
188
+ private _applyReorder;
145
189
  /**
146
190
  * Activates the specified tab and updates the content.
147
191
  *
@@ -150,14 +194,14 @@ declare class AXTabsComponent extends MXBaseComponent implements AfterViewInit,
150
194
  select(tab: number | AXTabItemComponent): void;
151
195
  private setIndicatorPosition;
152
196
  static ɵfac: i0.ɵɵFactoryDeclaration<AXTabsComponent, never>;
153
- static ɵcmp: i0.ɵɵComponentDeclaration<AXTabsComponent, "ax-tabs", never, { "look": { "alias": "look"; "required": false; "isSignal": true; }; "location": { "alias": "location"; "required": false; "isSignal": true; }; "fitParent": { "alias": "fitParent"; "required": false; }; "minWidth": { "alias": "minWidth"; "required": false; }; "content": { "alias": "content"; "required": false; }; }, { "onActiveTabChanged": "onActiveTabChanged"; }, ["_contentTabs"], ["ax-tab-item"], true, never>;
197
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXTabsComponent, "ax-tabs", never, { "look": { "alias": "look"; "required": false; "isSignal": true; }; "location": { "alias": "location"; "required": false; "isSignal": true; }; "reorderable": { "alias": "reorderable"; "required": false; "isSignal": true; }; "reorderDelay": { "alias": "reorderDelay"; "required": false; "isSignal": true; }; "fitParent": { "alias": "fitParent"; "required": false; }; "minWidth": { "alias": "minWidth"; "required": false; }; "content": { "alias": "content"; "required": false; }; }, { "onActiveTabChanged": "onActiveTabChanged"; "onTabsReordered": "onTabsReordered"; }, ["_contentTabs"], ["ax-tab-item"], true, [{ directive: typeof i1.AXDropListDirective; inputs: {}; outputs: {}; }, { directive: typeof i2.AXHorizontalScrollDirective; inputs: {}; outputs: {}; }]>;
154
198
  }
155
199
 
156
200
  declare class AXTabsModule {
157
201
  static ɵfac: i0.ɵɵFactoryDeclaration<AXTabsModule, never>;
158
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXTabsModule, never, [typeof i1.CommonModule, typeof i2.PortalModule, typeof i3.AXDecoratorModule, typeof AXTabsComponent, typeof AXTabItemComponent, typeof AXTabContentDirective], [typeof AXTabsComponent, typeof AXTabItemComponent, typeof AXTabContentDirective]>;
202
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXTabsModule, never, [typeof i1$1.CommonModule, typeof i2$1.PortalModule, typeof i3.AXDecoratorModule, typeof AXTabsComponent, typeof AXTabItemComponent, typeof AXTabContentDirective], [typeof AXTabsComponent, typeof AXTabItemComponent, typeof AXTabContentDirective]>;
159
203
  static ɵinj: i0.ɵɵInjectorDeclaration<AXTabsModule>;
160
204
  }
161
205
 
162
- export { AXTabContentDirective, AXTabItemComponent, AXTabStripChangedEvent, AXTabsComponent, AXTabsModule };
206
+ export { AXTabContentDirective, AXTabItemComponent, AXTabStripChangedEvent, AXTabsComponent, AXTabsModule, AXTabsReorderedEvent };
163
207
  export type { AXTabLocation, AXTabLook };