@fundamental-ngx/cdk 0.42.0-rc.2 → 0.42.0-rc.21

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 (37) hide show
  1. package/data-source/data-source.directive.d.ts +2 -2
  2. package/esm2020/data-source/data-source.directive.mjs +7 -3
  3. package/esm2020/forms/cva/cva.directive.mjs +3 -9
  4. package/esm2020/utils/decorators/apply-css-class.decorator.mjs +16 -15
  5. package/esm2020/utils/decorators/apply-css-style.decorator.mjs +5 -7
  6. package/esm2020/utils/directives/focusable-item/focusable-item.directive.mjs +44 -33
  7. package/esm2020/utils/directives/focusable-list/focusable-list.directive.mjs +43 -21
  8. package/esm2020/utils/directives/selectable-list/selectable-item.directive.mjs +4 -8
  9. package/esm2020/utils/directives/selectable-list/selectable-item.token.mjs +1 -1
  10. package/esm2020/utils/drag-and-drop/dnd-list/dnd-list.directive.mjs +7 -2
  11. package/esm2020/utils/dynamic-component/dynamic-component-container.mjs +3 -3
  12. package/esm2020/utils/helpers/get-native-element.mjs +6 -5
  13. package/esm2020/utils/interfaces/has-element-ref.interface.mjs +1 -1
  14. package/fesm2015/fundamental-ngx-cdk-data-source.mjs +6 -2
  15. package/fesm2015/fundamental-ngx-cdk-data-source.mjs.map +1 -1
  16. package/fesm2015/fundamental-ngx-cdk-forms.mjs +3 -8
  17. package/fesm2015/fundamental-ngx-cdk-forms.mjs.map +1 -1
  18. package/fesm2015/fundamental-ngx-cdk-utils.mjs +117 -80
  19. package/fesm2015/fundamental-ngx-cdk-utils.mjs.map +1 -1
  20. package/fesm2020/fundamental-ngx-cdk-data-source.mjs +6 -2
  21. package/fesm2020/fundamental-ngx-cdk-data-source.mjs.map +1 -1
  22. package/fesm2020/fundamental-ngx-cdk-forms.mjs +3 -8
  23. package/fesm2020/fundamental-ngx-cdk-forms.mjs.map +1 -1
  24. package/fesm2020/fundamental-ngx-cdk-utils.mjs +117 -80
  25. package/fesm2020/fundamental-ngx-cdk-utils.mjs.map +1 -1
  26. package/forms/cva/cva.directive.d.ts +0 -2
  27. package/fundamental-ngx-cdk-v0.42.0-rc.21.tgz +0 -0
  28. package/package.json +3 -3
  29. package/utils/directives/focusable-item/focusable-item.directive.d.ts +20 -15
  30. package/utils/directives/focusable-list/focusable-list.directive.d.ts +28 -12
  31. package/utils/directives/selectable-list/selectable-item.directive.d.ts +2 -4
  32. package/utils/directives/selectable-list/selectable-item.token.d.ts +1 -1
  33. package/utils/drag-and-drop/dnd-list/dnd-list.directive.d.ts +3 -1
  34. package/utils/dynamic-component/dynamic-component-container.d.ts +2 -2
  35. package/utils/helpers/get-native-element.d.ts +3 -3
  36. package/utils/interfaces/has-element-ref.interface.d.ts +1 -1
  37. package/fundamental-ngx-cdk-v0.42.0-rc.2.tgz +0 -0
@@ -35,8 +35,6 @@ export declare class CvaDirective<T = any> implements BaseCVA, FormFieldControl,
35
35
  private _disabled;
36
36
  /** @hidden */
37
37
  private _editable;
38
- /** @hidden */
39
- private _destroyed;
40
38
  /** ID for the Element */
41
39
  id: string;
42
40
  /** Input placeholder */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/cdk",
3
- "version": "0.42.0-rc.2",
3
+ "version": "0.42.0-rc.21",
4
4
  "schematics": "./schematics/collection.json",
5
5
  "description": "Fundamental Library for Angular - CDK",
6
6
  "license": "Apache-2.0",
@@ -23,11 +23,11 @@
23
23
  "rxjs": "^7.8.0"
24
24
  },
25
25
  "dependencies": {
26
- "@sap-theming/theming-base-content": "^11.3.0",
26
+ "@sap-theming/theming-base-content": "^11.4.0",
27
27
  "focus-trap": "^7.1.0",
28
28
  "fundamental-styles": "0.28.3",
29
29
  "@fundamental-styles/cx": "0.28.3",
30
- "@fundamental-ngx/i18n": "0.42.0-rc.2",
30
+ "@fundamental-ngx/i18n": "0.42.0-rc.21",
31
31
  "fast-deep-equal": "3.1.3",
32
32
  "lodash-es": "^4.17.0",
33
33
  "tslib": "^2.0.0",
@@ -1,10 +1,8 @@
1
- import { ElementRef, EventEmitter } from '@angular/core';
1
+ import { ElementRef, EventEmitter, NgZone } from '@angular/core';
2
2
  import { BooleanInput } from '@angular/cdk/coercion';
3
- import { DestroyedService, TabbableElementService } from '../../services';
3
+ import { DestroyedService } from '../../services';
4
4
  import { HasElementRef } from '../../interfaces';
5
5
  import { DeprecatedSelector } from '../../deprecated-selector.class';
6
- import { LiveAnnouncer } from '@angular/cdk/a11y';
7
- import { FocusableObserver } from './focusable.observer';
8
6
  import { Subject } from 'rxjs';
9
7
  import { Nullable } from '../../models/nullable';
10
8
  import * as i0 from "@angular/core";
@@ -20,11 +18,6 @@ export declare class DeprecatedFocusableItemDirective extends DeprecatedSelector
20
18
  static ɵdir: i0.ɵɵDirectiveDeclaration<DeprecatedFocusableItemDirective, "[fnFocusableItem]", never, {}, {}, never, never, true, never>;
21
19
  }
22
20
  export declare class FocusableItemDirective implements HasElementRef {
23
- private _elementRef;
24
- private _focusableObserver;
25
- private _destroy$;
26
- private _tabbableElementService;
27
- private _liveAnnouncer;
28
21
  /** Whether the item is focusable. Default is true. */
29
22
  set fdkFocusableItem(val: BooleanInput);
30
23
  get fdkFocusableItem(): boolean;
@@ -46,18 +39,30 @@ export declare class FocusableItemDirective implements HasElementRef {
46
39
  private _timerId;
47
40
  /** @hidden */
48
41
  get _tabindex(): number;
49
- /** @hidden */
50
- constructor(_elementRef: ElementRef<HTMLElement>, _focusableObserver: FocusableObserver, _destroy$: DestroyedService, _tabbableElementService: TabbableElementService, _liveAnnouncer: LiveAnnouncer);
51
42
  /** Element reference. */
52
- elementRef(): ElementRef<HTMLElement>;
43
+ readonly elementRef: ElementRef<HTMLElement>;
44
+ /** @hidden */
45
+ private readonly _focusableObserver;
46
+ /** @hidden */
47
+ protected readonly _destroy$: DestroyedService;
48
+ /** @hidden */
49
+ private readonly _tabbableElementService;
50
+ /** @hidden */
51
+ private readonly _liveAnnouncer;
52
+ /** @hidden */
53
+ protected readonly _zone: NgZone;
54
+ /** @hidden */
55
+ private readonly _document;
56
+ /** @hidden */
57
+ constructor();
53
58
  /** Set tabbable state */
54
59
  setTabbable(state: boolean): void;
55
60
  /** @hidden */
56
- _onFocusin(): Promise<void>;
61
+ private _onFocusin;
57
62
  /** @hidden */
58
- _onFocusout(): void;
63
+ private _onFocusout;
59
64
  /** @hidden */
60
- _onKeydown(event: KeyboardEvent): void;
65
+ private _onKeydown;
61
66
  /** @hidden */
62
67
  private _enableTabbableElements;
63
68
  /** @hidden */
@@ -1,11 +1,10 @@
1
- import { AfterViewInit, ElementRef, EventEmitter, OnChanges, OnDestroy, QueryList, Renderer2, SimpleChanges } from '@angular/core';
1
+ import { AfterViewInit, EventEmitter, OnChanges, OnDestroy, QueryList, SimpleChanges } from '@angular/core';
2
2
  import { FocusableItemDirective, FocusableItemPosition } from '../focusable-item/focusable-item.directive';
3
3
  import { DestroyedService } from '../../services/destroyed.service';
4
4
  import { DeprecatedSelector } from '../../deprecated-selector.class';
5
- import { FocusableObserver } from '../focusable-item';
6
5
  import { Subject } from 'rxjs';
7
6
  import { Nullable } from '../../models/nullable';
8
- import { FocusableOption, LiveAnnouncer } from '@angular/cdk/a11y';
7
+ import { FocusableOption } from '@angular/cdk/a11y';
9
8
  import { HasElementRef } from '../../interfaces';
10
9
  import { BooleanInput } from '@angular/cdk/coercion';
11
10
  import { ScrollPosition } from './scroll';
@@ -33,16 +32,11 @@ export declare class DeprecatedFocusableListDirective extends DeprecatedSelector
33
32
  static ɵdir: i0.ɵɵDirectiveDeclaration<DeprecatedFocusableListDirective, "[fnFocusableList]", never, {}, {}, never, never, true, never>;
34
33
  }
35
34
  export declare class FocusableListDirective implements OnChanges, AfterViewInit, OnDestroy {
36
- private _renderer;
37
- private _destroy$;
38
- private _elementRef;
39
- private _liveAnnouncer;
40
- private _focusableObserver;
41
35
  /** Whether the whole list should be focusable, handy in grids. */
42
36
  set focusable(value: BooleanInput);
43
37
  get focusable(): boolean;
44
38
  /** @hidden */
45
- private _focusable;
39
+ protected _focusable: boolean;
46
40
  /** Direction of navigation. Should be set to 'grid' when list is a part of grid. */
47
41
  navigationDirection: 'horizontal' | 'vertical' | 'grid';
48
42
  /** Direction of the content. */
@@ -56,7 +50,11 @@ export declare class FocusableListDirective implements OnChanges, AfterViewInit,
56
50
  /** Event emitted when list's item focused, contains item's position info. */
57
51
  readonly itemFocused: EventEmitter<FocusableListItemFocusedEvent>;
58
52
  /** @hidden */
59
- readonly _focusableItems: QueryList<FocusableItemDirective>;
53
+ readonly _projectedFocusableItems: QueryList<FocusableItemDirective>;
54
+ /** @hidden */
55
+ get _focusableItems(): QueryList<FocusableItemDirective>;
56
+ /** @hidden */
57
+ _items: QueryList<FocusableItemDirective> | undefined;
60
58
  /** @hidden */
61
59
  readonly _gridItemFocused$: Subject<FocusableItemPosition>;
62
60
  /** @hidden */
@@ -72,15 +70,33 @@ export declare class FocusableListDirective implements OnChanges, AfterViewInit,
72
70
  /** @hidden */
73
71
  private readonly _refreshItems$;
74
72
  /** @hidden */
73
+ private readonly _refresh$;
74
+ /** @hidden */
75
+ private readonly _renderer;
76
+ /** @hidden */
77
+ protected readonly _destroy$: DestroyedService;
78
+ /** @hidden */
79
+ private readonly _elementRef;
80
+ /** @hidden */
81
+ private readonly _liveAnnouncer;
82
+ /** @hidden */
83
+ private readonly _focusableObserver;
84
+ /** @hidden */
85
+ private readonly _document;
86
+ /** @hidden */
75
87
  get _tabindex(): number;
76
88
  /** @hidden */
77
89
  _isVisible: boolean;
78
90
  /** @hidden */
79
- constructor(_renderer: Renderer2, _destroy$: DestroyedService, _elementRef: ElementRef<HTMLElement>, _liveAnnouncer: LiveAnnouncer, _focusableObserver: FocusableObserver);
91
+ constructor();
80
92
  /** @hidden */
81
93
  ngOnChanges(changes: SimpleChanges): void;
82
94
  /** @hidden */
83
95
  ngAfterViewInit(): void;
96
+ /** Set items programmatically. */
97
+ setItems(items: QueryList<FocusableItemDirective>): void;
98
+ /** @hidden */
99
+ private _listenOnItems;
84
100
  /** @hidden */
85
101
  ngOnDestroy(): void;
86
102
  /** @hidden */
@@ -104,5 +120,5 @@ export declare class FocusableListDirective implements OnChanges, AfterViewInit,
104
120
  /** @hidden */
105
121
  private _defaultListFocusedEventAnnouncer;
106
122
  static ɵfac: i0.ɵɵFactoryDeclaration<FocusableListDirective, never>;
107
- static ɵdir: i0.ɵɵDirectiveDeclaration<FocusableListDirective, "[fdkFocusableList]", ["fdkFocusableList"], { "focusable": "focusable"; "navigationDirection": "navigationDirection"; "contentDirection": "contentDirection"; "wrap": "wrap"; "listFocusedEventAnnouncer": "listFocusedEventAnnouncer"; }, { "itemFocused": "itemFocused"; }, ["_focusableItems"], never, true, never>;
123
+ static ɵdir: i0.ɵɵDirectiveDeclaration<FocusableListDirective, "[fdkFocusableList]", ["fdkFocusableList"], { "focusable": "focusable"; "navigationDirection": "navigationDirection"; "contentDirection": "contentDirection"; "wrap": "wrap"; "listFocusedEventAnnouncer": "listFocusedEventAnnouncer"; }, { "itemFocused": "itemFocused"; }, ["_projectedFocusableItems"], never, true, never>;
108
124
  }
@@ -12,7 +12,7 @@ export declare class SelectableItemDirective<ElementType extends Element = HTMLE
12
12
  private disabled$;
13
13
  private readonly$;
14
14
  private selectionService;
15
- private _elementRef;
15
+ readonly elementRef: ElementRef<ElementType>;
16
16
  private _cd;
17
17
  /** @hidden */
18
18
  set value(val: ValueType);
@@ -31,14 +31,12 @@ export declare class SelectableItemDirective<ElementType extends Element = HTMLE
31
31
  /** @hidden */
32
32
  private _selectable;
33
33
  /** @hidden */
34
- constructor(provider: Partial<SelectableItemToken<ElementType, ValueType>>, disabled$: FdkDisabledProvider, readonly$: FdkReadonlyProvider, selectionService: SelectionService<ElementType, ValueType>, _elementRef: ElementRef<ElementType>, _cd: ChangeDetectorRef, _clicked: FdkClickedProvider);
34
+ constructor(provider: Partial<SelectableItemToken<ElementType, ValueType>>, disabled$: FdkDisabledProvider, readonly$: FdkReadonlyProvider, selectionService: SelectionService<ElementType, ValueType>, elementRef: ElementRef<ElementType>, _cd: ChangeDetectorRef, _clicked: FdkClickedProvider);
35
35
  /** @hidden */
36
36
  getSelected(): boolean;
37
37
  /** @hidden */
38
38
  setSelected(isSelected: boolean): void;
39
39
  /** @hidden */
40
- elementRef(): ElementRef<ElementType>;
41
- /** @hidden */
42
40
  private _listenToDisablingEvents;
43
41
  /** @hidden */
44
42
  private _updateSelectionAndSelectableWatcher;
@@ -4,7 +4,7 @@ import { HasElementRef } from '../../interfaces/has-element-ref.interface';
4
4
  export declare abstract class SelectableItemToken<ElementType extends Element = HTMLElement, TValue = ElementType> implements HasElementRef<ElementType> {
5
5
  abstract value: TValue;
6
6
  abstract fdkSelectableItem?: boolean;
7
- abstract elementRef(): ElementRef<ElementType>;
7
+ abstract readonly elementRef: ElementRef<ElementType>;
8
8
  abstract setSelected(isSelected: boolean): void;
9
9
  abstract getSelected(): boolean;
10
10
  abstract clicked: Observable<MouseEvent | KeyboardEvent>;
@@ -56,6 +56,8 @@ export declare class DndListDirective<T> implements AfterContentInit, OnDestroy
56
56
  readonly itemsChange: EventEmitter<T[]>;
57
57
  /** Event that is thrown when the item is dropped */
58
58
  readonly itemDropped: EventEmitter<FdDropEvent<T>>;
59
+ /** Event that is thrown when predicate function returned false. */
60
+ readonly dropCancelled: EventEmitter<void>;
59
61
  /** @hidden */
60
62
  dndItems: QueryList<DndItem<T>>;
61
63
  /** @hidden */
@@ -116,5 +118,5 @@ export declare class DndListDirective<T> implements AfterContentInit, OnDestroy
116
118
  /** @hidden */
117
119
  private _changeDraggableState;
118
120
  static ɵfac: i0.ɵɵFactoryDeclaration<DndListDirective<any>, never>;
119
- static ɵdir: i0.ɵɵDirectiveDeclaration<DndListDirective<any>, "[fdkDndList], [fd-dnd-list]", never, { "gridMode": "gridMode"; "dropMode": "dropMode"; "threshold": "threshold"; "replaceMode": "replaceMode"; "items": "items"; "draggable": "draggable"; "dropPredicate": "dropPredicate"; "dragoverPredicate": "dragoverPredicate"; }, { "dropPredicateCalculating": "dropPredicateCalculating"; "itemsChange": "itemsChange"; "itemDropped": "itemDropped"; }, ["dndItems"], never, false, never>;
121
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DndListDirective<any>, "[fdkDndList], [fd-dnd-list]", never, { "gridMode": "gridMode"; "dropMode": "dropMode"; "threshold": "threshold"; "replaceMode": "replaceMode"; "items": "items"; "draggable": "draggable"; "dropPredicate": "dropPredicate"; "dragoverPredicate": "dragoverPredicate"; }, { "dropPredicateCalculating": "dropPredicateCalculating"; "itemsChange": "itemsChange"; "itemDropped": "itemDropped"; "dropCancelled": "dropCancelled"; }, ["dndItems"], never, false, never>;
120
122
  }
@@ -3,7 +3,7 @@ import { ChangeDetectorRef, ComponentRef, ElementRef, EmbeddedViewRef, Injector,
3
3
  import { BehaviorSubject } from 'rxjs';
4
4
  import { Nullable } from '../models/nullable';
5
5
  export declare abstract class DynamicComponentContainer<T = TemplateRef<any> | Type<any>> {
6
- protected _elementRef: ElementRef;
6
+ elementRef: ElementRef;
7
7
  protected _injector: Injector;
8
8
  protected _cdr: ChangeDetectorRef;
9
9
  /** @hidden */
@@ -15,7 +15,7 @@ export declare abstract class DynamicComponentContainer<T = TemplateRef<any> | T
15
15
  /** @hidden */
16
16
  protected _contentLoaded$: BehaviorSubject<boolean>;
17
17
  /** @hidden */
18
- protected constructor(_elementRef: ElementRef, _injector: Injector, _cdr: ChangeDetectorRef);
18
+ protected constructor(elementRef: ElementRef, _injector: Injector, _cdr: ChangeDetectorRef);
19
19
  /** @hidden Load received content */
20
20
  protected abstract _loadContent(): void;
21
21
  /** @hidden Load received content as component */
@@ -3,11 +3,11 @@ import { ElementRef } from '@angular/core';
3
3
  * Retrieves native element from ElementRef.
4
4
  */
5
5
  export declare function getNativeElement<T extends Element = HTMLElement>(element: {
6
- elementRef(): ElementRef<T>;
6
+ elementRef: ElementRef<T>;
7
7
  } | T | ElementRef<T>): T;
8
8
  /**
9
9
  * Checks whether object has element reference in it.
10
10
  */
11
- export declare function isHasElementRef<T extends Element = HTMLElement>(something: any): something is {
12
- elementRef(): ElementRef<T>;
11
+ export declare function hasElementRef<T extends Element = HTMLElement>(something: any): something is {
12
+ elementRef: ElementRef<T>;
13
13
  };
@@ -1,5 +1,5 @@
1
1
  import { ElementRef } from '@angular/core';
2
2
  export interface HasElementRef<ElementType extends Element = HTMLElement> {
3
- elementRef(): ElementRef<ElementType>;
3
+ readonly elementRef: ElementRef<ElementType>;
4
4
  }
5
5
  export declare const ELEMENT_REF_EXCEPTION = "HasElementRef interface has to be implemented";