duck-dev-lib 0.0.86 → 0.0.88

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "duck-dev-lib",
3
- "version": "0.0.86",
3
+ "version": "0.0.88",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.0.0",
6
6
  "@angular/core": "^21.0.0"
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { ElementRef, TemplateRef, OnDestroy, OnInit, AfterContentInit, Signal } from '@angular/core';
2
+ import { ElementRef, TemplateRef, OnDestroy, OnInit, AfterContentInit, Signal, AfterViewInit } from '@angular/core';
3
3
  import { FormGroup } from '@angular/forms';
4
4
  import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
5
5
  import * as duck_dev_lib from 'duck-dev-lib';
@@ -1032,30 +1032,70 @@ declare class DuckDevBreadcrumbClassic {
1032
1032
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevBreadcrumbClassic, "dd-breadcrumb-classic", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; }, { "navigate": "navigate"; }, never, never, true, never>;
1033
1033
  }
1034
1034
 
1035
- declare class DuckDevBreadcrumbNeobrutal {
1035
+ interface BreadcrumbTooltipState {
1036
+ index: number;
1037
+ label: string;
1038
+ left: number;
1039
+ top: number;
1040
+ }
1041
+ declare class DuckDevBreadcrumbNeobrutal implements AfterViewInit {
1036
1042
  readonly items: _angular_core.InputSignal<BreadcrumbItem[]>;
1037
1043
  readonly color: _angular_core.InputSignal<AccentEnumColor>;
1038
1044
  readonly isMobile: _angular_core.InputSignalWithTransform<boolean, unknown>;
1039
1045
  readonly navigate: _angular_core.OutputEmitterRef<BreadcrumbItem>;
1046
+ protected readonly navRef: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
1040
1047
  protected readonly listRef: _angular_core.Signal<ElementRef<HTMLOListElement> | undefined>;
1048
+ protected readonly labelRefs: _angular_core.Signal<readonly ElementRef<HTMLElement>[]>;
1041
1049
  protected readonly visibleItems: _angular_core.Signal<BreadcrumbItem[]>;
1042
1050
  protected readonly breadcrumbStyle: _angular_core.Signal<{
1043
1051
  [key: string]: string;
1044
1052
  }>;
1045
- protected readonly activePopoverIndex: _angular_core.WritableSignal<number | null>;
1053
+ protected readonly tooltipState: _angular_core.WritableSignal<BreadcrumbTooltipState | null>;
1054
+ protected readonly tooltipLabel: _angular_core.Signal<string>;
1055
+ protected readonly tooltipVisible: _angular_core.Signal<boolean>;
1056
+ protected readonly tooltipStyle: _angular_core.Signal<{
1057
+ left?: undefined;
1058
+ top?: undefined;
1059
+ } | {
1060
+ left: string;
1061
+ top: string;
1062
+ }>;
1046
1063
  protected readonly isDragging: _angular_core.WritableSignal<boolean>;
1064
+ protected readonly leftFadeOpacity: _angular_core.WritableSignal<number>;
1065
+ protected readonly rightFadeOpacity: _angular_core.WritableSignal<number>;
1047
1066
  private dragStartX;
1048
1067
  private scrollStartX;
1049
1068
  private hasDragged;
1050
1069
  private readonly destroyRef;
1070
+ private resizeObserver;
1071
+ private scrollFadeFrameId;
1072
+ private longPressTimerId;
1073
+ private longPressPointerId;
1074
+ private longPressIndex;
1075
+ private longPressStartX;
1076
+ private longPressStartY;
1077
+ private longPressActivatedIndex;
1051
1078
  private onMouseMove;
1052
1079
  private onMouseUp;
1053
1080
  protected onListMouseDown(e: MouseEvent): void;
1054
1081
  constructor();
1055
- protected onNavigate(item: BreadcrumbItem, index: number): void;
1056
- protected onCurrentClick(index: number): void;
1057
- protected isPopoverOpen(index: number): boolean;
1058
- protected closePopover(): void;
1082
+ ngAfterViewInit(): void;
1083
+ protected onListScroll(): void;
1084
+ protected onNavigate(item: BreadcrumbItem, index: number, event: MouseEvent): void;
1085
+ protected onCurrentClick(index: number, event: Event): void;
1086
+ protected closeTooltip(): void;
1087
+ protected onCrumbPointerDown(index: number, event: PointerEvent): void;
1088
+ protected onCrumbPointerMove(event: PointerEvent): void;
1089
+ protected onCrumbPointerEnd(event: PointerEvent): void;
1090
+ private observeScrollContainer;
1091
+ private queueScrollFadeUpdate;
1092
+ private updateScrollFades;
1093
+ private getScrollFadeOpacity;
1094
+ private clearLongPressTimer;
1095
+ private isLabelOverflowing;
1096
+ private getTooltipState;
1097
+ private hideTooltip;
1098
+ private clamp;
1059
1099
  private getPalette;
1060
1100
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DuckDevBreadcrumbNeobrutal, never>;
1061
1101
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevBreadcrumbNeobrutal, "dd-breadcrumb-neobrutal", never, { "items": { "alias": "items"; "required": true; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "isMobile": { "alias": "isMobile"; "required": false; "isSignal": true; }; }, { "navigate": "navigate"; }, never, never, true, never>;