@agorapulse/ui-components 22.1.4 → 22.1.5

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 (25) hide show
  1. package/agorapulse-ui-components-22.1.5.tgz +0 -0
  2. package/fesm2022/agorapulse-ui-components-action-dropdown.mjs +6 -5
  3. package/fesm2022/agorapulse-ui-components-action-dropdown.mjs.map +1 -1
  4. package/fesm2022/agorapulse-ui-components-date-range-picker.mjs +15 -6
  5. package/fesm2022/agorapulse-ui-components-date-range-picker.mjs.map +1 -1
  6. package/fesm2022/agorapulse-ui-components-datepicker.mjs +12 -10
  7. package/fesm2022/agorapulse-ui-components-datepicker.mjs.map +1 -1
  8. package/fesm2022/agorapulse-ui-components-dropdown-base.mjs +12 -137
  9. package/fesm2022/agorapulse-ui-components-dropdown-base.mjs.map +1 -1
  10. package/fesm2022/agorapulse-ui-components-filter-dropdown.mjs +13 -11
  11. package/fesm2022/agorapulse-ui-components-filter-dropdown.mjs.map +1 -1
  12. package/fesm2022/agorapulse-ui-components-floating.mjs +7 -6
  13. package/fesm2022/agorapulse-ui-components-floating.mjs.map +1 -1
  14. package/fesm2022/agorapulse-ui-components-nav-selector.mjs +2 -2
  15. package/fesm2022/agorapulse-ui-components-nav-selector.mjs.map +1 -1
  16. package/fesm2022/agorapulse-ui-components-selection-dropdown.mjs +6 -5
  17. package/fesm2022/agorapulse-ui-components-selection-dropdown.mjs.map +1 -1
  18. package/package.json +1 -1
  19. package/types/agorapulse-ui-components-action-dropdown.d.ts +4 -2
  20. package/types/agorapulse-ui-components-date-range-picker.d.ts +4 -2
  21. package/types/agorapulse-ui-components-datepicker.d.ts +7 -4
  22. package/types/agorapulse-ui-components-dropdown-base.d.ts +17 -8
  23. package/types/agorapulse-ui-components-filter-dropdown.d.ts +7 -4
  24. package/types/agorapulse-ui-components-selection-dropdown.d.ts +4 -2
  25. package/agorapulse-ui-components-22.1.4.tgz +0 -0
@@ -1,6 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { TemplateRef } from '@angular/core';
3
- import { OverlayRef } from '@angular/cdk/overlay';
3
+ import * as _angular_cdk_overlay from '@angular/cdk/overlay';
4
+ import { FloatingPlacement, FloatingAnchorMode } from '@agorapulse/ui-components/floating';
4
5
 
5
6
  interface DropdownOverlay {
6
7
  open(triggerElement?: HTMLElement): void;
@@ -27,23 +28,31 @@ declare class DropdownTriggerDirective {
27
28
  }
28
29
 
29
30
  interface DropdownOverlayConfig {
31
+ /** Defaults to `true` — the dropdown keeps its click catcher, unlike the primitive. */
30
32
  showBackdrop?: boolean;
31
- defaultPosition?: 'right' | 'left';
33
+ /** Panel placement. Unset means derived from `anchor`, i.e. `bottom-start`. */
34
+ placement?: FloatingPlacement;
35
+ /** What the panel connects to. Defaults to `'trigger'`. */
36
+ anchor?: FloatingAnchorMode;
37
+ /** Opt-in, and not offered by any existing panel's public API. */
38
+ arrow?: boolean;
39
+ /** What the tip points at. Defaults to `'anchor'`. */
40
+ arrowTarget?: 'anchor' | 'pointer';
32
41
  /** Extra class(es) set on the overlay pane, so a consumer can scope global styles to its own dropdown. */
33
42
  panelClass?: string | string[];
34
- /** Called when the overlay is closed via backdrop click or Escape key. Typically routes to the component's own close() method. */
43
+ /** Called when the overlay is closed via outside click or Escape key. Typically routes to the component's own close() method. */
35
44
  onClose?: () => void;
36
45
  }
37
46
  /**
38
- * Creates a composable dropdown overlay helper that manages CDK overlay creation,
39
- * positioning, and disposal. Must be called within an Angular injection context
40
- * (e.g., in a component constructor or field initializer).
47
+ * Thin adapter over `createFloatingOverlay()`. Keeps the dropdown's name, lifecycle and default
48
+ * backdrop; delegates all positioning to the shared floating primitive. Must be called within an
49
+ * Angular injection context (e.g., in a component constructor or field initializer).
41
50
  */
42
51
  declare function createDropdownOverlay(): {
43
- readonly overlayRef: OverlayRef | null;
52
+ readonly overlayRef: _angular_cdk_overlay.OverlayRef | null;
44
53
  isOpen: i0.Signal<boolean>;
45
- open: (template: TemplateRef<unknown>, triggerElement?: HTMLElement, config?: DropdownOverlayConfig) => void;
46
54
  close: () => void;
55
+ open(template: TemplateRef<unknown>, triggerElement?: HTMLElement, config?: DropdownOverlayConfig, event?: MouseEvent): void;
47
56
  };
48
57
  type DropdownOverlayInstance = ReturnType<typeof createDropdownOverlay>;
49
58
 
@@ -4,6 +4,7 @@ import { InfoboxType } from '@agorapulse/ui-components/infobox';
4
4
  import dayjs from 'dayjs';
5
5
  import { SelectLabelSingleDisplayType } from '@agorapulse/ui-components/select';
6
6
  import { TagColor } from '@agorapulse/ui-components/tag';
7
+ import * as _floating_ui_utils from '@floating-ui/utils';
7
8
  import * as _angular_core from '@angular/core';
8
9
  import { TemplateRef } from '@angular/core';
9
10
  import { ActionDropdownItem } from '@agorapulse/ui-components/action-dropdown';
@@ -312,7 +313,8 @@ declare class FilterDropdownComponent implements DropdownOverlay {
312
313
  /** Whether to show a backdrop that closes the dropdown when clicked */
313
314
  showBackdrop: _angular_core.InputSignal<boolean>;
314
315
  /** Default position for the dropdown relative to the trigger element */
315
- defaultPosition: _angular_core.InputSignal<"left" | "right">;
316
+ /** Panel placement. Unset means derived from the anchor mode, i.e. `bottom-start`. */
317
+ readonly placement: _angular_core.InputSignal<_floating_ui_utils.Placement | undefined>;
316
318
  /** Extra class(es) set on the body-appended overlay pane, so a consumer can scope global styles to this dropdown. */
317
319
  panelClass: _angular_core.InputSignal<string | string[]>;
318
320
  saveNewPresetsText: _angular_core.InputSignal<string>;
@@ -376,7 +378,7 @@ declare class FilterDropdownComponent implements DropdownOverlay {
376
378
  onUpdatePresets(): void;
377
379
  protected onActionDropdownItemClick(item: ActionDropdownItem): void;
378
380
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<FilterDropdownComponent, never>;
379
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterDropdownComponent, "ap-filter-dropdown", never, { "infobox": { "alias": "infobox"; "required": false; "isSignal": true; }; "groups": { "alias": "groups"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "savedValue": { "alias": "savedValue"; "required": false; "isSignal": true; }; "needApplyButton": { "alias": "needApplyButton"; "required": false; "isSignal": true; }; "needClearButton": { "alias": "needClearButton"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "expandOnOpen": { "alias": "expandOnOpen"; "required": false; "isSignal": true; }; "presetsFeatureLocked": { "alias": "presetsFeatureLocked"; "required": false; "isSignal": true; }; "savePresetsMode": { "alias": "savePresetsMode"; "required": false; "isSignal": true; }; "editingPresetsMode": { "alias": "editingPresetsMode"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "defaultPosition": { "alias": "defaultPosition"; "required": false; "isSignal": true; }; "panelClass": { "alias": "panelClass"; "required": false; "isSignal": true; }; "saveNewPresetsText": { "alias": "saveNewPresetsText"; "required": false; "isSignal": true; }; "saveAsNewPresetText": { "alias": "saveAsNewPresetText"; "required": false; "isSignal": true; }; "savePresetText": { "alias": "savePresetText"; "required": false; "isSignal": true; }; "updateExistingPresetText": { "alias": "updateExistingPresetText"; "required": false; "isSignal": true; }; "resetFilterText": { "alias": "resetFilterText"; "required": false; "isSignal": true; }; "applyFiltersText": { "alias": "applyFiltersText"; "required": false; "isSignal": true; }; "clearFilterText": { "alias": "clearFilterText"; "required": false; "isSignal": true; }; }, { "infoboxLinkClick": "infoboxLinkClick"; "opened": "opened"; "closed": "closed"; "presetsLockedClicked": "presetsLockedClicked"; "saveNewPresets": "saveNewPresets"; "updatePresets": "updatePresets"; "applyFilters": "applyFilters"; "clearFilters": "clearFilters"; "resetFilters": "resetFilters"; "lockedFeatureClicked": "lockedFeatureClicked"; "filterDropdownGroupLockedClicked": "filterDropdownGroupLockedClicked"; }, never, never, true, never>;
381
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterDropdownComponent, "ap-filter-dropdown", never, { "infobox": { "alias": "infobox"; "required": false; "isSignal": true; }; "groups": { "alias": "groups"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "savedValue": { "alias": "savedValue"; "required": false; "isSignal": true; }; "needApplyButton": { "alias": "needApplyButton"; "required": false; "isSignal": true; }; "needClearButton": { "alias": "needClearButton"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "expandOnOpen": { "alias": "expandOnOpen"; "required": false; "isSignal": true; }; "presetsFeatureLocked": { "alias": "presetsFeatureLocked"; "required": false; "isSignal": true; }; "savePresetsMode": { "alias": "savePresetsMode"; "required": false; "isSignal": true; }; "editingPresetsMode": { "alias": "editingPresetsMode"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "panelClass": { "alias": "panelClass"; "required": false; "isSignal": true; }; "saveNewPresetsText": { "alias": "saveNewPresetsText"; "required": false; "isSignal": true; }; "saveAsNewPresetText": { "alias": "saveAsNewPresetText"; "required": false; "isSignal": true; }; "savePresetText": { "alias": "savePresetText"; "required": false; "isSignal": true; }; "updateExistingPresetText": { "alias": "updateExistingPresetText"; "required": false; "isSignal": true; }; "resetFilterText": { "alias": "resetFilterText"; "required": false; "isSignal": true; }; "applyFiltersText": { "alias": "applyFiltersText"; "required": false; "isSignal": true; }; "clearFilterText": { "alias": "clearFilterText"; "required": false; "isSignal": true; }; }, { "infoboxLinkClick": "infoboxLinkClick"; "opened": "opened"; "closed": "closed"; "presetsLockedClicked": "presetsLockedClicked"; "saveNewPresets": "saveNewPresets"; "updatePresets": "updatePresets"; "applyFilters": "applyFilters"; "clearFilters": "clearFilters"; "resetFilters": "resetFilters"; "lockedFeatureClicked": "lockedFeatureClicked"; "filterDropdownGroupLockedClicked": "filterDropdownGroupLockedClicked"; }, never, never, true, never>;
380
382
  }
381
383
 
382
384
  declare class FilterDropdownButtonComponent {
@@ -418,7 +420,8 @@ declare class FilterDropdownButtonComponent {
418
420
  /** Whether the dropdown is disabled and cannot be opened */
419
421
  disabled: _angular_core.InputSignal<boolean>;
420
422
  /** Default position for the dropdown relative to the trigger element */
421
- defaultPosition: _angular_core.InputSignal<"left" | "right">;
423
+ /** Panel placement. Unset means derived from the anchor mode, i.e. `bottom-start`. */
424
+ readonly placement: _angular_core.InputSignal<_floating_ui_utils.Placement | undefined>;
422
425
  /** Extra class(es) set on the body-appended overlay pane, so a consumer can scope global styles to this dropdown. */
423
426
  panelClass: _angular_core.InputSignal<string | string[]>;
424
427
  saveNewPresetsText: _angular_core.InputSignal<string>;
@@ -451,7 +454,7 @@ declare class FilterDropdownButtonComponent {
451
454
  /** Event emitted when a group with locked feature is clicked */
452
455
  filterDropdownGroupLockedClicked: _angular_core.OutputEmitterRef<FilterDropdownGroup>;
453
456
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<FilterDropdownButtonComponent, never>;
454
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterDropdownButtonComponent, "ap-filter-dropdown-button", never, { "buttonFilterText": { "alias": "buttonFilterText"; "required": false; "isSignal": true; }; "iconOnly": { "alias": "iconOnly"; "required": false; "isSignal": true; }; "infobox": { "alias": "infobox"; "required": false; "isSignal": true; }; "groups": { "alias": "groups"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "savedValue": { "alias": "savedValue"; "required": false; "isSignal": true; }; "needApplyButton": { "alias": "needApplyButton"; "required": false; "isSignal": true; }; "needClearButton": { "alias": "needClearButton"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "expandOnOpen": { "alias": "expandOnOpen"; "required": false; "isSignal": true; }; "presetsFeatureLocked": { "alias": "presetsFeatureLocked"; "required": false; "isSignal": true; }; "savePresetsMode": { "alias": "savePresetsMode"; "required": false; "isSignal": true; }; "editingPresetsMode": { "alias": "editingPresetsMode"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "defaultPosition": { "alias": "defaultPosition"; "required": false; "isSignal": true; }; "panelClass": { "alias": "panelClass"; "required": false; "isSignal": true; }; "saveNewPresetsText": { "alias": "saveNewPresetsText"; "required": false; "isSignal": true; }; "saveAsNewPresetText": { "alias": "saveAsNewPresetText"; "required": false; "isSignal": true; }; "savePresetText": { "alias": "savePresetText"; "required": false; "isSignal": true; }; "updateExistingPresetText": { "alias": "updateExistingPresetText"; "required": false; "isSignal": true; }; "resetFilterText": { "alias": "resetFilterText"; "required": false; "isSignal": true; }; "applyFiltersText": { "alias": "applyFiltersText"; "required": false; "isSignal": true; }; "clearFilterText": { "alias": "clearFilterText"; "required": false; "isSignal": true; }; }, { "infoboxLinkClick": "infoboxLinkClick"; "opened": "opened"; "closed": "closed"; "presetsLockedClicked": "presetsLockedClicked"; "saveNewPresets": "saveNewPresets"; "updatePresets": "updatePresets"; "applyFilters": "applyFilters"; "clearFilters": "clearFilters"; "resetFilters": "resetFilters"; "lockedFeatureClicked": "lockedFeatureClicked"; "filterDropdownGroupLockedClicked": "filterDropdownGroupLockedClicked"; }, never, never, true, never>;
457
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterDropdownButtonComponent, "ap-filter-dropdown-button", never, { "buttonFilterText": { "alias": "buttonFilterText"; "required": false; "isSignal": true; }; "iconOnly": { "alias": "iconOnly"; "required": false; "isSignal": true; }; "infobox": { "alias": "infobox"; "required": false; "isSignal": true; }; "groups": { "alias": "groups"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "savedValue": { "alias": "savedValue"; "required": false; "isSignal": true; }; "needApplyButton": { "alias": "needApplyButton"; "required": false; "isSignal": true; }; "needClearButton": { "alias": "needClearButton"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "expandOnOpen": { "alias": "expandOnOpen"; "required": false; "isSignal": true; }; "presetsFeatureLocked": { "alias": "presetsFeatureLocked"; "required": false; "isSignal": true; }; "savePresetsMode": { "alias": "savePresetsMode"; "required": false; "isSignal": true; }; "editingPresetsMode": { "alias": "editingPresetsMode"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "panelClass": { "alias": "panelClass"; "required": false; "isSignal": true; }; "saveNewPresetsText": { "alias": "saveNewPresetsText"; "required": false; "isSignal": true; }; "saveAsNewPresetText": { "alias": "saveAsNewPresetText"; "required": false; "isSignal": true; }; "savePresetText": { "alias": "savePresetText"; "required": false; "isSignal": true; }; "updateExistingPresetText": { "alias": "updateExistingPresetText"; "required": false; "isSignal": true; }; "resetFilterText": { "alias": "resetFilterText"; "required": false; "isSignal": true; }; "applyFiltersText": { "alias": "applyFiltersText"; "required": false; "isSignal": true; }; "clearFilterText": { "alias": "clearFilterText"; "required": false; "isSignal": true; }; }, { "infoboxLinkClick": "infoboxLinkClick"; "opened": "opened"; "closed": "closed"; "presetsLockedClicked": "presetsLockedClicked"; "saveNewPresets": "saveNewPresets"; "updatePresets": "updatePresets"; "applyFilters": "applyFilters"; "clearFilters": "clearFilters"; "resetFilters": "resetFilters"; "lockedFeatureClicked": "lockedFeatureClicked"; "filterDropdownGroupLockedClicked": "filterDropdownGroupLockedClicked"; }, never, never, true, never>;
455
458
  }
456
459
 
457
460
  export { FilterDropdownButtonComponent, FilterDropdownComponent };
@@ -1,5 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { OnDestroy, TemplateRef } from '@angular/core';
3
+ import * as _floating_ui_utils from '@floating-ui/utils';
3
4
  import { DropdownOverlay } from '@agorapulse/ui-components/dropdown-base';
4
5
  import { InputSearchComponent } from '@agorapulse/ui-components/input-search';
5
6
 
@@ -84,7 +85,8 @@ declare class SelectionDropdownComponent implements DropdownOverlay, OnDestroy {
84
85
  /** Whether the dropdown is disabled and cannot be opened */
85
86
  disabled: _angular_core.InputSignal<boolean>;
86
87
  /** Default position for the dropdown relative to the trigger element */
87
- defaultPosition: _angular_core.InputSignal<"left" | "right">;
88
+ /** Panel placement. Unset means derived from the anchor mode, i.e. `bottom-start`. */
89
+ readonly placement: _angular_core.InputSignal<_floating_ui_utils.Placement | undefined>;
88
90
  /** Emits when the dropdown menu is opened */
89
91
  opened: _angular_core.OutputEmitterRef<void>;
90
92
  /** Emits when the dropdown menu is closed */
@@ -157,7 +159,7 @@ declare class SelectionDropdownComponent implements DropdownOverlay, OnDestroy {
157
159
  /** Updates the filtered items based on search term */
158
160
  private updateFilteredItems;
159
161
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SelectionDropdownComponent, never>;
160
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SelectionDropdownComponent, "ap-selection-dropdown", never, { "headerButtonId": { "alias": "headerButtonId"; "required": false; "isSignal": true; }; "footerButtonId": { "alias": "footerButtonId"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "searchEnabled": { "alias": "searchEnabled"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "footerButtonText": { "alias": "footerButtonText"; "required": false; "isSignal": true; }; "footerButtonSymbolId": { "alias": "footerButtonSymbolId"; "required": false; "isSignal": true; }; "headerButtonText": { "alias": "headerButtonText"; "required": false; "isSignal": true; }; "headerButtonSymbolId": { "alias": "headerButtonSymbolId"; "required": false; "isSignal": true; }; "searchPlaceholderText": { "alias": "searchPlaceholderText"; "required": false; "isSignal": true; }; "noSearchResultsText": { "alias": "noSearchResultsText"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "defaultPosition": { "alias": "defaultPosition"; "required": false; "isSignal": true; }; "searchTerm": { "alias": "searchTerm"; "required": false; "isSignal": true; }; }, { "opened": "opened"; "closed": "closed"; "selectionChange": "selectionChange"; "footerButtonClick": "footerButtonClick"; "headerButtonClick": "headerButtonClick"; "searchInputChange": "searchInputChange"; "searchTerm": "searchTermChange"; }, ["trigger"], never, true, never>;
162
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SelectionDropdownComponent, "ap-selection-dropdown", never, { "headerButtonId": { "alias": "headerButtonId"; "required": false; "isSignal": true; }; "footerButtonId": { "alias": "footerButtonId"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "searchEnabled": { "alias": "searchEnabled"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "footerButtonText": { "alias": "footerButtonText"; "required": false; "isSignal": true; }; "footerButtonSymbolId": { "alias": "footerButtonSymbolId"; "required": false; "isSignal": true; }; "headerButtonText": { "alias": "headerButtonText"; "required": false; "isSignal": true; }; "headerButtonSymbolId": { "alias": "headerButtonSymbolId"; "required": false; "isSignal": true; }; "searchPlaceholderText": { "alias": "searchPlaceholderText"; "required": false; "isSignal": true; }; "noSearchResultsText": { "alias": "noSearchResultsText"; "required": false; "isSignal": true; }; "showBackdrop": { "alias": "showBackdrop"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "searchTerm": { "alias": "searchTerm"; "required": false; "isSignal": true; }; }, { "opened": "opened"; "closed": "closed"; "selectionChange": "selectionChange"; "footerButtonClick": "footerButtonClick"; "headerButtonClick": "headerButtonClick"; "searchInputChange": "searchInputChange"; "searchTerm": "searchTermChange"; }, ["trigger"], never, true, never>;
161
163
  }
162
164
 
163
165
  /**
Binary file