@ethlete/core 4.5.2 → 4.7.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.
Files changed (45) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/esm2022/index.mjs +2 -1
  3. package/esm2022/lib/components/structured-data/structured-data.component.mjs +3 -3
  4. package/esm2022/lib/directives/animatable/animatable.directive.mjs +3 -3
  5. package/esm2022/lib/directives/animated-if/animated-if.directive.mjs +3 -3
  6. package/esm2022/lib/directives/animated-lifecycle/animated-lifecycle.directive.mjs +8 -6
  7. package/esm2022/lib/directives/animated-overlay/animated-overlay.directive.mjs +3 -3
  8. package/esm2022/lib/directives/click-outside/click-outside.directive.mjs +3 -3
  9. package/esm2022/lib/directives/cursor-drag-scroll/cursor-drag-scroll.directive.mjs +3 -3
  10. package/esm2022/lib/directives/debug/debug.directive.mjs +3 -3
  11. package/esm2022/lib/directives/delayable/delayable.directive.mjs +3 -3
  12. package/esm2022/lib/directives/is-active-element/is-active-element.directive.mjs +3 -3
  13. package/esm2022/lib/directives/is-element/is-element.directive.mjs +3 -3
  14. package/esm2022/lib/directives/let/let.directive.mjs +3 -3
  15. package/esm2022/lib/directives/observe-content/observe-content.directive.mjs +3 -3
  16. package/esm2022/lib/directives/observe-resize/observe-resize.directive.mjs +3 -3
  17. package/esm2022/lib/directives/observe-scroll-state/observe-scroll-state.directive.mjs +3 -3
  18. package/esm2022/lib/directives/observe-visibility/observe-visibility.directive.mjs +3 -3
  19. package/esm2022/lib/directives/repeat/repeat.directive.mjs +3 -3
  20. package/esm2022/lib/directives/root-boundary/root-boundary.directive.mjs +3 -3
  21. package/esm2022/lib/directives/scroll-observer-first-element/scroll-observer-first-element.directive.mjs +3 -3
  22. package/esm2022/lib/directives/scroll-observer-ignore-target/scroll-observer-ignore-target.directive.mjs +3 -3
  23. package/esm2022/lib/directives/scroll-observer-last-element/scroll-observer-last-element.directive.mjs +3 -3
  24. package/esm2022/lib/directives/seo/seo.directive.mjs +3 -3
  25. package/esm2022/lib/pipes/infer-mime-type/infer-mime-type.pipe.mjs +3 -3
  26. package/esm2022/lib/pipes/normalize-game-result-type/normalize-game-result-type.pipe.mjs +3 -3
  27. package/esm2022/lib/pipes/normalize-match-participants/normalize-match-participants.pipe.mjs +3 -3
  28. package/esm2022/lib/pipes/normalize-match-score/normalize-match-score.pipe.mjs +3 -3
  29. package/esm2022/lib/pipes/normalize-match-state/normalize-match-state.pipe.mjs +3 -3
  30. package/esm2022/lib/pipes/normalize-match-type/normalize-match-type.pipe.mjs +3 -3
  31. package/esm2022/lib/pipes/to-array/to-array.pipe.mjs +3 -3
  32. package/esm2022/lib/props/props.directive.mjs +3 -3
  33. package/esm2022/lib/services/click-observer.service.mjs +6 -6
  34. package/esm2022/lib/services/content-observer.service.mjs +6 -6
  35. package/esm2022/lib/services/focus-visible.service.mjs +3 -3
  36. package/esm2022/lib/services/intersection-observer.service.mjs +6 -6
  37. package/esm2022/lib/services/resize-observer.service.mjs +6 -6
  38. package/esm2022/lib/services/router-state.service.mjs +3 -3
  39. package/esm2022/lib/services/viewport.service.mjs +3 -3
  40. package/esm2022/lib/utils/signal.utils.mjs +18 -2
  41. package/fesm2022/ethlete-core.mjs +147 -127
  42. package/fesm2022/ethlete-core.mjs.map +1 -1
  43. package/lib/directives/animated-lifecycle/animated-lifecycle.directive.d.ts +2 -1
  44. package/lib/utils/signal.utils.d.ts +13 -3
  45. package/package.json +7 -7
@@ -19,6 +19,7 @@ export declare class AnimatedLifecycleDirective implements AfterViewInit {
19
19
  push: (tokenString: string, signal: import("@angular/core").Signal<unknown>) => void;
20
20
  pushMany: (map: Record<string, import("@angular/core").Signal<unknown>>) => void;
21
21
  };
22
+ skipNextEnter: import("@angular/core").ModelSignal<boolean>;
22
23
  ngAfterViewInit(): void;
23
24
  enter(config?: {
24
25
  onlyTransition?: boolean;
@@ -28,6 +29,6 @@ export declare class AnimatedLifecycleDirective implements AfterViewInit {
28
29
  }): void;
29
30
  _forceState(state: AnimatedLifecycleState): void;
30
31
  static ɵfac: i0.ɵɵFactoryDeclaration<AnimatedLifecycleDirective, never>;
31
- static ɵdir: i0.ɵɵDirectiveDeclaration<AnimatedLifecycleDirective, "[etAnimatedLifecycle]", ["etAnimatedLifecycle"], {}, {}, never, never, true, [{ directive: typeof i1.AnimatableDirective; inputs: {}; outputs: {}; }]>;
32
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AnimatedLifecycleDirective, "[etAnimatedLifecycle]", ["etAnimatedLifecycle"], { "skipNextEnter": { "alias": "skipNextEnter"; "required": false; "isSignal": true; }; }, { "skipNextEnter": "skipNextEnterChange"; }, never, never, true, [{ directive: typeof i1.AnimatableDirective; inputs: {}; outputs: {}; }]>;
32
33
  }
33
34
  export {};
@@ -1,4 +1,5 @@
1
- import { ElementRef, QueryList, Signal } from '@angular/core';
1
+ import { ElementRef, QueryList, Signal, WritableSignal } from '@angular/core';
2
+ import { FormControl } from '@angular/forms';
2
3
  import { Observable, map } from 'rxjs';
3
4
  type SignalElementBindingComplexType = HTMLElement | ElementRef<HTMLElement> | QueryList<ElementRef<HTMLElement> | HTMLElement> | Array<ElementRef<HTMLElement> | HTMLElement> | null | undefined;
4
5
  type SignalElementBindingType = HTMLElement | ElementRef<HTMLElement> | Observable<SignalElementBindingComplexType> | Signal<SignalElementBindingComplexType> | QueryList<ElementRef<HTMLElement> | HTMLElement> | ElementSignal;
@@ -102,7 +103,16 @@ export type SignalElementIntersectionOptions = Omit<IntersectionObserverInit, 'r
102
103
  root?: SignalElementBindingType;
103
104
  enabled?: Signal<unknown>;
104
105
  };
105
- export declare const signalElementIntersection: (el: SignalElementBindingType, options?: SignalElementIntersectionOptions) => import("@angular/core").WritableSignal<IntersectionObserverEntry[]>;
106
- export declare const signalHostElementIntersection: (options?: SignalElementIntersectionOptions) => import("@angular/core").WritableSignal<IntersectionObserverEntry[]>;
106
+ export declare const signalElementIntersection: (el: SignalElementBindingType, options?: SignalElementIntersectionOptions) => WritableSignal<IntersectionObserverEntry[]>;
107
+ export declare const signalHostElementIntersection: (options?: SignalElementIntersectionOptions) => WritableSignal<IntersectionObserverEntry[]>;
107
108
  export declare const signalElementChildren: (el: SignalElementBindingType) => Signal<HTMLElement[]>;
109
+ export declare const previousSignalValue: <T>(signal: Signal<T>) => Signal<T | undefined>;
110
+ export declare const syncSignal: <T>(from: Signal<T>, to: WritableSignal<T>) => void;
111
+ export interface DebouncedControlValueSignalOptions {
112
+ /**
113
+ * @default 300
114
+ */
115
+ debounceTime?: number;
116
+ }
117
+ export declare const debouncedControlValueSignal: <T extends FormControl<any>>(control: T, options?: DebouncedControlValueSignalOptions) => Signal<T["value"] | null>;
108
118
  export {};
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@ethlete/core",
3
- "version": "4.5.2",
3
+ "version": "4.7.0",
4
4
  "peerDependencies": {
5
- "@angular/cdk": "17.2.2",
6
- "@angular/common": "17.3.0",
7
- "@angular/core": "17.3.0",
8
- "@angular/forms": "17.3.0",
9
- "@angular/platform-browser": "17.3.0",
10
- "@angular/router": "17.3.0",
5
+ "@angular/cdk": "17.3.1",
6
+ "@angular/common": "17.3.1",
7
+ "@angular/core": "17.3.1",
8
+ "@angular/forms": "17.3.1",
9
+ "@angular/platform-browser": "17.3.1",
10
+ "@angular/router": "17.3.1",
11
11
  "@ethlete/theming": "^2.3.1",
12
12
  "@ethlete/types": "^1.6.2",
13
13
  "@floating-ui/dom": "^1.5.3",