duck-dev-lib 0.0.48 → 0.0.50

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.48",
3
+ "version": "0.0.50",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.0.0",
6
6
  "@angular/core": "^21.0.0"
@@ -127,6 +127,42 @@ declare class ButtonNeobrutalTag {
127
127
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ButtonNeobrutalTag, "duck-dev-button-neobrutal-tag", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "tag": { "alias": "tag"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "colorButton": { "alias": "colorButton"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
128
128
  }
129
129
 
130
+ declare class ButtonNeobrutalSticker {
131
+ readonly text: _angular_core.InputSignal<string>;
132
+ readonly subtext: _angular_core.InputSignal<string>;
133
+ readonly isDisabled: _angular_core.InputSignal<boolean>;
134
+ readonly colorButton: _angular_core.InputSignal<AccentEnumColor>;
135
+ protected readonly buttonStyle: _angular_core.Signal<{
136
+ [key: string]: string;
137
+ }>;
138
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ButtonNeobrutalSticker, never>;
139
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ButtonNeobrutalSticker, "duck-dev-button-neobrutal-sticker", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "subtext": { "alias": "subtext"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "colorButton": { "alias": "colorButton"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
140
+ }
141
+
142
+ declare class ButtonNeobrutalZigzag {
143
+ readonly text: _angular_core.InputSignal<string>;
144
+ readonly label: _angular_core.InputSignal<string>;
145
+ readonly isDisabled: _angular_core.InputSignal<boolean>;
146
+ readonly colorButton: _angular_core.InputSignal<AccentEnumColor>;
147
+ protected readonly buttonStyle: _angular_core.Signal<{
148
+ [key: string]: string;
149
+ }>;
150
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ButtonNeobrutalZigzag, never>;
151
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ButtonNeobrutalZigzag, "duck-dev-button-neobrutal-zigzag", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "colorButton": { "alias": "colorButton"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
152
+ }
153
+
154
+ declare class ButtonNeobrutalTape {
155
+ readonly text: _angular_core.InputSignal<string>;
156
+ readonly icon: _angular_core.InputSignal<string>;
157
+ readonly isDisabled: _angular_core.InputSignal<boolean>;
158
+ readonly colorButton: _angular_core.InputSignal<AccentEnumColor>;
159
+ protected readonly buttonStyle: _angular_core.Signal<{
160
+ [key: string]: string;
161
+ }>;
162
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ButtonNeobrutalTape, never>;
163
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ButtonNeobrutalTape, "duck-dev-button-neobrutal-tape", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "colorButton": { "alias": "colorButton"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
164
+ }
165
+
130
166
  declare class LoaderLoadingBubble {
131
167
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<LoaderLoadingBubble, never>;
132
168
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<LoaderLoadingBubble, "duck-dev-loader-loading-bubble", never, {}, {}, never, never, true, never>;
@@ -220,7 +256,7 @@ declare class DuckDevInput {
220
256
  label: _angular_core.InputSignal<string>;
221
257
  placeholder: _angular_core.InputSignal<string>;
222
258
  type: _angular_core.InputSignal<string>;
223
- formInputType: _angular_core.InputSignal<"input" | "textarea" | "checkbox" | "select">;
259
+ formInputType: _angular_core.InputSignal<"input" | "select" | "textarea" | "checkbox">;
224
260
  options: _angular_core.InputSignal<DuckDevInputOption[]>;
225
261
  errorMessage: _angular_core.InputSignal<string>;
226
262
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DuckDevInput, never>;
@@ -233,7 +269,7 @@ declare class DuckDevInputNeobrutalPoster {
233
269
  label: _angular_core.InputSignal<string>;
234
270
  placeholder: _angular_core.InputSignal<string>;
235
271
  type: _angular_core.InputSignal<string>;
236
- formInputType: _angular_core.InputSignal<"input" | "textarea" | "checkbox" | "select">;
272
+ formInputType: _angular_core.InputSignal<"input" | "select" | "textarea" | "checkbox">;
237
273
  options: _angular_core.InputSignal<DuckDevInputOption[]>;
238
274
  errorMessage: _angular_core.InputSignal<string>;
239
275
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DuckDevInputNeobrutalPoster, never>;
@@ -257,7 +293,7 @@ declare class DuckDevInputNeobrutalSlab {
257
293
  label: _angular_core.InputSignal<string>;
258
294
  placeholder: _angular_core.InputSignal<string>;
259
295
  type: _angular_core.InputSignal<string>;
260
- formInputType: _angular_core.InputSignal<"input" | "textarea" | "checkbox" | "select">;
296
+ formInputType: _angular_core.InputSignal<"input" | "select" | "textarea" | "checkbox">;
261
297
  options: _angular_core.InputSignal<DuckDevInputOption[]>;
262
298
  errorMessage: _angular_core.InputSignal<string>;
263
299
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DuckDevInputNeobrutalSlab, never>;
@@ -270,7 +306,7 @@ declare class DuckDevInputNeobrutalStrip {
270
306
  label: _angular_core.InputSignal<string>;
271
307
  placeholder: _angular_core.InputSignal<string>;
272
308
  type: _angular_core.InputSignal<string>;
273
- formInputType: _angular_core.InputSignal<"input" | "textarea" | "checkbox" | "select">;
309
+ formInputType: _angular_core.InputSignal<"input" | "select" | "textarea" | "checkbox">;
274
310
  options: _angular_core.InputSignal<DuckDevInputOption[]>;
275
311
  errorMessage: _angular_core.InputSignal<string>;
276
312
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DuckDevInputNeobrutalStrip, never>;
@@ -411,12 +447,13 @@ declare class DuckDevAccordionComponent {
411
447
  declare class DuckDevAccordionNeobrutalComponent {
412
448
  readonly content: _angular_core.InputSignal<TemplateRef<unknown>>;
413
449
  readonly title: _angular_core.InputSignal<string>;
450
+ readonly stampLabel: _angular_core.InputSignal<string>;
414
451
  readonly color: _angular_core.InputSignal<AccentEnumColor>;
415
452
  protected readonly isOpen: _angular_core.WritableSignal<boolean>;
416
453
  protected readonly stateLabel: _angular_core.Signal<"OPEN" | "CLOSED">;
417
454
  protected toggle(): void;
418
455
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DuckDevAccordionNeobrutalComponent, never>;
419
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevAccordionNeobrutalComponent, "duck-dev-accordion-neobrutal", never, { "content": { "alias": "content"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": true; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
456
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevAccordionNeobrutalComponent, "duck-dev-accordion-neobrutal", never, { "content": { "alias": "content"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": true; "isSignal": true; }; "stampLabel": { "alias": "stampLabel"; "required": true; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
420
457
  }
421
458
 
422
459
  interface DuckDevAccordionItem {
@@ -487,7 +524,7 @@ declare class DuckDevCardNeobrutalPoster {
487
524
  protected readonly rotationDeg: _angular_core.Signal<number>;
488
525
  protected readonly transformStyle: _angular_core.Signal<string>;
489
526
  protected readonly cursorStyle: _angular_core.Signal<"default" | "grabbing" | "grab">;
490
- protected readonly touchActionStyle: _angular_core.Signal<"pan-y" | "auto">;
527
+ protected readonly touchActionStyle: _angular_core.Signal<"auto" | "pan-y">;
491
528
  constructor();
492
529
  protected onPointerDown(event: PointerEvent): void;
493
530
  protected onPointerMove(event: PointerEvent): void;
@@ -524,7 +561,7 @@ declare class DuckDevCardNeobrutalSlab {
524
561
  protected readonly rotationDeg: _angular_core.Signal<number>;
525
562
  protected readonly transformStyle: _angular_core.Signal<string>;
526
563
  protected readonly cursorStyle: _angular_core.Signal<"default" | "grabbing" | "grab">;
527
- protected readonly touchActionStyle: _angular_core.Signal<"pan-y" | "auto">;
564
+ protected readonly touchActionStyle: _angular_core.Signal<"auto" | "pan-y">;
528
565
  constructor();
529
566
  protected onPointerDown(event: PointerEvent): void;
530
567
  protected onPointerMove(event: PointerEvent): void;
@@ -755,6 +792,7 @@ declare class DuckDevSegmentNeobrutal implements AfterContentInit {
755
792
 
756
793
  type DuckDevSpeakerBubbleTailSide = 'left' | 'right';
757
794
  type DuckDevSpeakerBubbleTail = DuckDevSpeakerBubbleTailSide | 'auto';
795
+ type DuckDevSpeakerBubbleTailPosition = 'bottom' | 'top';
758
796
  declare function getClassicSpeakerBubbleStyle(color: AccentEnumColor): {
759
797
  [key: string]: string;
760
798
  };
@@ -764,7 +802,7 @@ declare function getNeobrutalSpeakerBubbleStyle(color: AccentEnumColor): {
764
802
 
765
803
  type DuckDevSpeakerBubbleTarget = Element | string | null | undefined;
766
804
  type SpeakerBubbleTailVariant = 'classic' | 'soft' | 'outline' | 'neobrutal-slab' | 'neobrutal-ticket';
767
- declare function useSpeakerBubbleTail(variant: SpeakerBubbleTailVariant, tail: Signal<DuckDevSpeakerBubbleTail>, target: Signal<DuckDevSpeakerBubbleTarget>): {
805
+ declare function useSpeakerBubbleTail(variant: SpeakerBubbleTailVariant, tail: Signal<DuckDevSpeakerBubbleTail>, target: Signal<DuckDevSpeakerBubbleTarget>, tailPosition?: Signal<DuckDevSpeakerBubbleTailPosition>): {
768
806
  readonly resolvedTail: Signal<DuckDevSpeakerBubbleTailSide>;
769
807
  readonly tailStyle: Signal<Record<string, string>>;
770
808
  readonly tailViewBox: Signal<string>;
@@ -805,23 +843,38 @@ declare class DuckDevSpeakerBubbleClassic {
805
843
  declare class DuckDevSpeakerBubbleSoft {
806
844
  readonly color: _angular_core.InputSignal<AccentEnumColor>;
807
845
  readonly tail: _angular_core.InputSignal<DuckDevSpeakerBubbleTail>;
846
+ readonly tailPosition: _angular_core.InputSignal<DuckDevSpeakerBubbleTailPosition>;
808
847
  readonly target: _angular_core.InputSignal<DuckDevSpeakerBubbleTarget>;
809
- private readonly tailController;
848
+ private readonly hostRef;
849
+ private readonly documentRef;
850
+ private readonly destroyRef;
851
+ private readonly platformId;
852
+ private readonly isBrowser;
853
+ private readonly bubbleGeometry;
854
+ private animationFrameId;
855
+ private resizeObserver;
856
+ private observedTarget;
857
+ private observersInitialized;
810
858
  protected readonly bubbleStyle: _angular_core.Signal<{
811
859
  [key: string]: string;
812
860
  }>;
813
- protected readonly resolvedTail: _angular_core.Signal<duck_dev_lib.DuckDevSpeakerBubbleTailSide>;
814
- protected readonly tailStyle: _angular_core.Signal<Record<string, string>>;
815
- protected readonly tailViewBox: _angular_core.Signal<string>;
816
- protected readonly tailPath: _angular_core.Signal<string>;
817
- protected readonly tailSecondaryPath: _angular_core.Signal<string | null>;
861
+ protected readonly resolvedTail: _angular_core.Signal<DuckDevSpeakerBubbleTailSide>;
862
+ protected readonly shapeStyle: _angular_core.Signal<Record<string, string>>;
863
+ protected readonly shapeViewBox: _angular_core.Signal<string>;
864
+ protected readonly shapePath: _angular_core.Signal<string>;
865
+ constructor();
866
+ private readonly scheduleRefresh;
867
+ private setupObservers;
868
+ private refreshShape;
869
+ private resolveTailSide;
818
870
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DuckDevSpeakerBubbleSoft, never>;
819
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevSpeakerBubbleSoft, "dd-speaker-bubble-soft", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "tail": { "alias": "tail"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
871
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevSpeakerBubbleSoft, "dd-speaker-bubble-soft", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "tail": { "alias": "tail"; "required": false; "isSignal": true; }; "tailPosition": { "alias": "tailPosition"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
820
872
  }
821
873
 
822
874
  declare class DuckDevSpeakerBubbleOutline {
823
875
  readonly color: _angular_core.InputSignal<AccentEnumColor>;
824
876
  readonly tail: _angular_core.InputSignal<DuckDevSpeakerBubbleTail>;
877
+ readonly tailPosition: _angular_core.InputSignal<DuckDevSpeakerBubbleTailPosition>;
825
878
  readonly target: _angular_core.InputSignal<DuckDevSpeakerBubbleTarget>;
826
879
  private readonly tailController;
827
880
  protected readonly bubbleStyle: _angular_core.Signal<{
@@ -832,7 +885,7 @@ declare class DuckDevSpeakerBubbleOutline {
832
885
  protected readonly tailViewBox: _angular_core.Signal<string>;
833
886
  protected readonly tailPath: _angular_core.Signal<string>;
834
887
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DuckDevSpeakerBubbleOutline, never>;
835
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevSpeakerBubbleOutline, "dd-speaker-bubble-outline", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "tail": { "alias": "tail"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
888
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevSpeakerBubbleOutline, "dd-speaker-bubble-outline", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "tail": { "alias": "tail"; "required": false; "isSignal": true; }; "tailPosition": { "alias": "tailPosition"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
836
889
  }
837
890
 
838
891
  declare class DuckDevSpeakerBubbleNeobrutalSlab {
@@ -895,5 +948,5 @@ declare class DuckDevSpeakerBubbleNeobrutalTicket {
895
948
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DuckDevSpeakerBubbleNeobrutalTicket, "dd-speaker-bubble-neobrutal-ticket", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "tail": { "alias": "tail"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
896
949
  }
897
950
 
898
- export { AccentEnumColor, Badge, BadgeNeobrutalSlab, BadgeNeobrutalStamp, BadgeNeobrutalTicket, ButtonBlurLift, ButtonCasper, ButtonFlip, ButtonGlideOver, ButtonNeobrutalBurst, ButtonNeobrutalSlab, ButtonNeobrutalTag, DdFlexDirectionDirective, DuckDevAccordionComponent as DuckDevAccordion, DuckDevAccordionNeobrutalComponent as DuckDevAccordionNeobrutal, DuckDevCardAccent, DuckDevCardMinimal, DuckDevCardNeobrutalPoster, DuckDevCardNeobrutalSlab, DuckDevCardNeobrutalStamp, DuckDevCardNeobrutalTicket, DuckDevCardOutline, DuckDevCardSection, DuckDevCardSignal, DuckDevIcon, DuckDevInput, DuckDevInputNeobrutalPoster, DuckDevInputNeobrutalRadio, DuckDevInputNeobrutalSlab, DuckDevInputNeobrutalStrip, DuckDevInputNeobrutalToggle, DuckDevLibTranslations, DuckDevModalClassic, DuckDevNotification, DuckDevNotificationContainer, DuckDevNotificationService, DuckDevProgressLine, DuckDevProgressMeter, DuckDevProgressNeobrutalSlab, DuckDevProgressNeobrutalStamp, DuckDevProgressNeobrutalTicket, DuckDevProgressStack, DuckDevSegmentButton, DuckDevSegmentClassic, DuckDevSegmentNeobrutal, DuckDevSpeakerBubbleClassic, DuckDevSpeakerBubbleNeobrutalSlab, DuckDevSpeakerBubbleNeobrutalTicket, DuckDevSpeakerBubbleOutline, DuckDevSpeakerBubbleSoft, DuckDevTab, DuckDevTabVertical, DuckDevTooltip, DuckDevTooltipNeobrutalComponent, LoaderClassic, LoaderLoadingBubble, LoaderNeobrutalBars, LoaderNeobrutalMarquee, LoaderNeobrutalStamp, LoaderThreeDots, MainDocumentationPage, SliderClassic, getClassicSpeakerBubbleStyle, getNeobrutalSpeakerBubbleStyle, useSpeakerBubbleTail };
899
- export type { DuckDevAccordionItem, DuckDevInputOption, DuckDevSpeakerBubbleTail, DuckDevSpeakerBubbleTailSide, DuckDevSpeakerBubbleTarget, DuckDevTabItem, DuckDevTabVerticalItem, NotificationItem, NotificationPosition, NotificationType, TooltipPlacement };
951
+ export { AccentEnumColor, Badge, BadgeNeobrutalSlab, BadgeNeobrutalStamp, BadgeNeobrutalTicket, ButtonBlurLift, ButtonCasper, ButtonFlip, ButtonGlideOver, ButtonNeobrutalBurst, ButtonNeobrutalSlab, ButtonNeobrutalSticker, ButtonNeobrutalTag, ButtonNeobrutalTape, ButtonNeobrutalZigzag, DdFlexDirectionDirective, DuckDevAccordionComponent as DuckDevAccordion, DuckDevAccordionNeobrutalComponent as DuckDevAccordionNeobrutal, DuckDevCardAccent, DuckDevCardMinimal, DuckDevCardNeobrutalPoster, DuckDevCardNeobrutalSlab, DuckDevCardNeobrutalStamp, DuckDevCardNeobrutalTicket, DuckDevCardOutline, DuckDevCardSection, DuckDevCardSignal, DuckDevIcon, DuckDevInput, DuckDevInputNeobrutalPoster, DuckDevInputNeobrutalRadio, DuckDevInputNeobrutalSlab, DuckDevInputNeobrutalStrip, DuckDevInputNeobrutalToggle, DuckDevLibTranslations, DuckDevModalClassic, DuckDevNotification, DuckDevNotificationContainer, DuckDevNotificationService, DuckDevProgressLine, DuckDevProgressMeter, DuckDevProgressNeobrutalSlab, DuckDevProgressNeobrutalStamp, DuckDevProgressNeobrutalTicket, DuckDevProgressStack, DuckDevSegmentButton, DuckDevSegmentClassic, DuckDevSegmentNeobrutal, DuckDevSpeakerBubbleClassic, DuckDevSpeakerBubbleNeobrutalSlab, DuckDevSpeakerBubbleNeobrutalTicket, DuckDevSpeakerBubbleOutline, DuckDevSpeakerBubbleSoft, DuckDevTab, DuckDevTabVertical, DuckDevTooltip, DuckDevTooltipNeobrutalComponent, LoaderClassic, LoaderLoadingBubble, LoaderNeobrutalBars, LoaderNeobrutalMarquee, LoaderNeobrutalStamp, LoaderThreeDots, MainDocumentationPage, SliderClassic, getClassicSpeakerBubbleStyle, getNeobrutalSpeakerBubbleStyle, useSpeakerBubbleTail };
952
+ export type { DuckDevAccordionItem, DuckDevInputOption, DuckDevSpeakerBubbleTail, DuckDevSpeakerBubbleTailPosition, DuckDevSpeakerBubbleTailSide, DuckDevSpeakerBubbleTarget, DuckDevTabItem, DuckDevTabVerticalItem, NotificationItem, NotificationPosition, NotificationType, TooltipPlacement };