@fundamental-ngx/core 0.41.0 → 0.41.1-rc.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 (58) hide show
  1. package/esm2020/multi-combobox/base-multi-combobox.class.mjs +1 -1
  2. package/esm2020/multi-combobox/multi-combobox.component.mjs +3 -9
  3. package/esm2020/radio/radio-button/radio-button.component.mjs +22 -5
  4. package/esm2020/tree/components/tree-item/tree-item.component.mjs +296 -0
  5. package/esm2020/tree/data-source/tree-data-source-parser.mjs +22 -0
  6. package/esm2020/tree/data-source/tree-data-source.mjs +23 -0
  7. package/esm2020/tree/directives/tree-item-button.directive.mjs +16 -0
  8. package/esm2020/tree/directives/tree-item-def.directive.mjs +23 -0
  9. package/esm2020/tree/directives/tree-item-icon.directive.mjs +41 -0
  10. package/esm2020/tree/directives/tree-item.directive.mjs +26 -0
  11. package/esm2020/tree/models/base-tree-item.class.mjs +25 -0
  12. package/esm2020/tree/models/selection-type.mjs +2 -0
  13. package/esm2020/tree/models/tree-item-def-context.mjs +2 -0
  14. package/esm2020/tree/models/tree-item.mjs +2 -0
  15. package/esm2020/tree/public_api.mjs +14 -3
  16. package/esm2020/tree/tokens.mjs +3 -0
  17. package/esm2020/tree/tree.component.mjs +399 -57
  18. package/esm2020/tree/tree.module.mjs +83 -7
  19. package/esm2020/tree/tree.service.mjs +101 -0
  20. package/fesm2015/fundamental-ngx-core-multi-combobox.mjs +2 -8
  21. package/fesm2015/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  22. package/fesm2015/fundamental-ngx-core-radio.mjs +21 -4
  23. package/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
  24. package/fesm2015/fundamental-ngx-core-tree.mjs +997 -106
  25. package/fesm2015/fundamental-ngx-core-tree.mjs.map +1 -1
  26. package/fesm2020/fundamental-ngx-core-multi-combobox.mjs +2 -8
  27. package/fesm2020/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  28. package/fesm2020/fundamental-ngx-core-radio.mjs +21 -4
  29. package/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
  30. package/fesm2020/fundamental-ngx-core-tree.mjs +995 -106
  31. package/fesm2020/fundamental-ngx-core-tree.mjs.map +1 -1
  32. package/fundamental-ngx-core-v0.41.1-rc.0.tgz +0 -0
  33. package/multi-combobox/base-multi-combobox.class.d.ts +2 -2
  34. package/multi-combobox/multi-combobox.component.d.ts +2 -2
  35. package/package.json +3 -3
  36. package/radio/radio-button/radio-button.component.d.ts +9 -3
  37. package/schematics/add-dependencies/index.js +4 -4
  38. package/tree/components/tree-item/tree-item.component.d.ts +145 -0
  39. package/tree/data-source/tree-data-source-parser.d.ts +9 -0
  40. package/tree/data-source/tree-data-source.d.ts +22 -0
  41. package/tree/directives/tree-item-button.directive.d.ts +5 -0
  42. package/tree/directives/tree-item-def.directive.d.ts +18 -0
  43. package/tree/directives/tree-item-icon.directive.d.ts +13 -0
  44. package/tree/directives/tree-item.directive.d.ts +19 -0
  45. package/tree/models/base-tree-item.class.d.ts +91 -0
  46. package/tree/models/selection-type.d.ts +10 -0
  47. package/tree/models/tree-item-def-context.d.ts +3 -0
  48. package/tree/models/tree-item.d.ts +17 -0
  49. package/tree/public_api.d.ts +13 -2
  50. package/tree/tokens.d.ts +2 -0
  51. package/tree/tree.component.d.ts +137 -19
  52. package/tree/tree.module.d.ts +17 -7
  53. package/tree/tree.service.d.ts +62 -0
  54. package/esm2020/tree/tree-child.component.mjs +0 -66
  55. package/esm2020/tree/tree-row-object.model.mjs +0 -2
  56. package/fundamental-ngx-core-v0.41.0.tgz +0 -0
  57. package/tree/tree-child.component.d.ts +0 -27
  58. package/tree/tree-row-object.model.d.ts +0 -5
@@ -0,0 +1,91 @@
1
+ import { ElementRef } from '@angular/core';
2
+ import { Nullable, SelectableItemToken } from '@fundamental-ngx/cdk/utils';
3
+ import { FdTreeAcceptableDataSource } from '../data-source/tree-data-source';
4
+ import { TreeItem, TreeItemState } from './tree-item';
5
+ import * as i0 from "@angular/core";
6
+ export declare abstract class BaseTreeItem<T extends TreeItem = TreeItem, P = any> implements Partial<SelectableItemToken<HTMLElement, P>> {
7
+ /**
8
+ * Tree item value.
9
+ */
10
+ abstract value: P;
11
+ /**
12
+ * Tree item ID.
13
+ */
14
+ abstract id: string;
15
+ /**
16
+ * Tree item parent ID.
17
+ */
18
+ abstract parentId: Nullable<string>;
19
+ /**
20
+ * Whether the tree item is navigatable.
21
+ */
22
+ abstract navigatable: boolean;
23
+ /**
24
+ * Tree item state.
25
+ */
26
+ abstract state: Nullable<TreeItemState>;
27
+ /**
28
+ * Tree item child nodes data source.
29
+ */
30
+ abstract childNodes: FdTreeAcceptableDataSource<T>;
31
+ /**
32
+ * Whether to wrap content.
33
+ */
34
+ abstract wrapContent: boolean;
35
+ /**
36
+ * Whether the tree item is expanded.
37
+ */
38
+ abstract expanded: boolean;
39
+ /**
40
+ * Tree item level.
41
+ */
42
+ abstract level: number;
43
+ /**
44
+ * Tree item children.
45
+ */
46
+ abstract children: T[];
47
+ /**
48
+ * Whether the tree item has content projected child nodes.
49
+ */
50
+ abstract hasProjectedChildren: boolean;
51
+ /**
52
+ * Whether the tree item has content projected child nodes or data source for children.
53
+ */
54
+ abstract hasChildren: boolean;
55
+ /**
56
+ * Focusable tree item container.
57
+ */
58
+ abstract itemContainer: Nullable<ElementRef>;
59
+ /**
60
+ * Whether the tree item is keyboard navigatable.
61
+ */
62
+ abstract keyboardAccessible: boolean;
63
+ /**
64
+ * Tree item selectable item.
65
+ */
66
+ abstract selectableListItem: SelectableItemToken;
67
+ /**
68
+ * Whether the tree item has Data Source children.
69
+ */
70
+ abstract hasDsChildren: boolean;
71
+ /**
72
+ * Whether the children nodes being loaded from the Data Source.
73
+ */
74
+ abstract childrenLoaded: boolean;
75
+ /** @hidden */
76
+ private readonly _elementRef;
77
+ /** @hidden */
78
+ private readonly _treeItemDir;
79
+ /** @hidden */
80
+ constructor();
81
+ /** @hidden */
82
+ elementRef(): ElementRef;
83
+ /** Method to focus on the tree item. */
84
+ abstract focus(): void;
85
+ /** Method to set the position of the item in set. */
86
+ abstract setPosition(totalItemsCount: number, currentIndex: number): void;
87
+ /** Method for setting the focusable tabindex. */
88
+ abstract setContainerTabIndex(value: number): void;
89
+ static ɵfac: i0.ɵɵFactoryDeclaration<BaseTreeItem<any, any>, never>;
90
+ static ɵdir: i0.ɵɵDirectiveDeclaration<BaseTreeItem<any, any>, never, never, {}, {}, never, never, false, never>;
91
+ }
@@ -0,0 +1,10 @@
1
+ export type SelectionType = 'none' | 'single' | 'multiple';
2
+ /**
3
+ * Selection control placement.
4
+ * - 'left' will place control at the most left side of the tree item;
5
+ * - 'right' will place control at the most right side of the tree item;
6
+ * - 'none' will not render the control, but selection will still work according to `SelectionType` mode;
7
+ * - 'afterExpand' will place control right after the expansion button (if present) or on the left side of the tree item,
8
+ * if expansion button is not present.
9
+ */
10
+ export type SelectionPlacement = 'left' | 'right' | 'none' | 'afterExpand';
@@ -0,0 +1,3 @@
1
+ export interface TreeItemDefContext<T = any> {
2
+ $implicit: T;
3
+ }
@@ -0,0 +1,17 @@
1
+ import { TemplateRef } from '@angular/core';
2
+ import { FdTreeAcceptableDataSource } from '../data-source/tree-data-source';
3
+ import { TreeItemDefContext } from './tree-item-def-context';
4
+ export type TreeItemState = 'default' | 'error' | 'success' | 'warning';
5
+ export interface TreeItem<T = any> {
6
+ id: string;
7
+ children: FdTreeAcceptableDataSource<Partial<TreeItem<T>>>;
8
+ expanded: boolean;
9
+ navigatable: boolean;
10
+ navigationIndicator: boolean;
11
+ data: T;
12
+ level: number;
13
+ renderer: TemplateRef<TreeItemDefContext<T>>;
14
+ state: TreeItemState;
15
+ parentId: string;
16
+ }
17
+ export type TreeItemGeneric<Type> = Type extends TreeItem<infer X> ? X : never;
@@ -1,4 +1,15 @@
1
1
  export * from './tree.module';
2
2
  export * from './tree.component';
3
- export * from './tree-child.component';
4
- export * from './tree-row-object.model';
3
+ export * from './models/tree-item';
4
+ export * from './data-source/tree-data-source';
5
+ export * from './data-source/tree-data-source-parser';
6
+ export * from './components/tree-item/tree-item.component';
7
+ export * from './directives/tree-item-def.directive';
8
+ export * from './directives/tree-item.directive';
9
+ export * from './directives/tree-item-icon.directive';
10
+ export * from './directives/tree-item-button.directive';
11
+ export * from './tokens';
12
+ export * from './models/tree-item';
13
+ export * from './models/selection-type';
14
+ export * from './models/tree-item-def-context';
15
+ export * from './models/base-tree-item.class';
@@ -0,0 +1,2 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export declare const FD_TREE_ITEM: InjectionToken<unknown>;
@@ -1,36 +1,154 @@
1
- import { AfterContentInit, EventEmitter, OnInit, QueryList } from '@angular/core';
2
- import { TreeRowObject } from './tree-row-object.model';
3
- import { TreeChildComponent } from './tree-child.component';
1
+ import { BooleanInput } from '@angular/cdk/coercion';
2
+ import { AfterViewInit, ElementRef, EventEmitter, OnChanges, OnDestroy, OnInit, QueryList, SimpleChanges } from '@angular/core';
3
+ import { CssClassBuilder, Nullable, SelectableListValueType, SelectComponentRootToken } from '@fundamental-ngx/cdk/utils';
4
+ import { FdTreeAcceptableDataSource, FdTreeItemType } from './data-source/tree-data-source';
5
+ import { TreeItemDefDirective } from './directives/tree-item-def.directive';
6
+ import { TreeItemDirective } from './directives/tree-item.directive';
7
+ import { BaseTreeItem } from './models/base-tree-item.class';
8
+ import { SelectionPlacement, SelectionType } from './models/selection-type';
9
+ import { TreeItem, TreeItemGeneric } from './models/tree-item';
4
10
  import * as i0 from "@angular/core";
5
- export declare class TreeComponent implements OnInit, AfterContentInit {
11
+ import * as i1 from "@fundamental-ngx/cdk/data-source";
12
+ import * as i2 from "@fundamental-ngx/cdk/forms";
13
+ export declare class TreeComponent<P extends FdTreeAcceptableDataSource, T extends TreeItem = FdTreeItemType<P>> implements CssClassBuilder, OnInit, OnChanges, AfterViewInit, SelectComponentRootToken, OnDestroy {
6
14
  /** @hidden */
7
- headers: string[];
15
+ class: string;
16
+ /**
17
+ * Whether the tree should be borderless.
18
+ */
19
+ noBorder: boolean;
20
+ /** Type of tree items selection. */
21
+ selection: SelectionType;
22
+ /** Placement of the selection control. */
23
+ selectionPlacement: SelectionPlacement;
24
+ /**
25
+ * Whether the sections should be dependent for selection mode.
26
+ * If true, selection control will shift, according to the level.
27
+ * If false, selection control will stay on the same place ignoring the item level.
28
+ */
29
+ independentSections: boolean;
30
+ /**
31
+ * Whether the Tree component has navigation indicators.
32
+ */
33
+ set navigationIndicator(value: boolean);
34
+ get navigationIndicator(): boolean;
8
35
  /** @hidden */
9
- treeData: TreeRowObject[];
36
+ private _navigationIndicator;
37
+ /** Event emitted when data loading is started. */
38
+ dataRequested: EventEmitter<boolean>;
39
+ /** Event emitted when data loading is finished. */
40
+ dataReceived: EventEmitter<boolean>;
41
+ /** Event emitted when selected state changed. */
42
+ selectedChange: EventEmitter<any>;
10
43
  /** @hidden */
11
- hideAll: boolean;
44
+ _items: TreeItem<TreeItemGeneric<T>>[];
45
+ /** Tree item template definition. */
46
+ set treeItemDef(value: Nullable<TreeItemDefDirective>);
47
+ get treeItemDef(): Nullable<TreeItemDefDirective>;
12
48
  /** @hidden */
13
- displayTreeActions: boolean;
49
+ get multiple(): BooleanInput;
14
50
  /** @hidden */
15
- editRowClicked: EventEmitter<any>;
51
+ get toggle(): BooleanInput;
52
+ /**
53
+ * @hidden
54
+ * Used for skeleton to appear before first meaningful data being loaded.
55
+ */
56
+ _initialDataLoaded: boolean;
16
57
  /** @hidden */
17
- deleteRowClicked: EventEmitter<any>;
58
+ _treeItemDirectives: QueryList<TreeItemDirective<TreeItem, any>>;
18
59
  /** @hidden */
19
- treeChildren: QueryList<TreeChildComponent>;
60
+ readonly _projectedTreeItems: QueryList<BaseTreeItem>;
61
+ /** @hidden */
62
+ private _treeItemDef;
63
+ /** @hidden */
64
+ private readonly _contentDensityObserver;
65
+ /** @hidden */
66
+ private readonly _dataSourceDirective;
67
+ /** @hidden */
68
+ private readonly _destroy$;
69
+ /** @hidden */
70
+ private readonly _elementRef;
71
+ /** @hidden */
72
+ private readonly _treeService;
73
+ /** @hidden */
74
+ private readonly _selectionService;
75
+ /** @hidden */
76
+ private readonly _rtl;
77
+ /** @hidden */
78
+ private readonly _cvaDirective;
79
+ /** @hidden */
80
+ private readonly _cdr;
81
+ /** @hidden */
82
+ private _dsSubscription;
83
+ /** @hidden */
84
+ private _expandedLevel;
85
+ /** @hidden */
86
+ private _focusKeyManager;
87
+ /**
88
+ * @hidden
89
+ * Sorted tree item components.
90
+ */
91
+ private _sortedTreeItems;
92
+ /**
93
+ * @hidden
94
+ * All tree item components.
95
+ */
96
+ private _allItems;
97
+ /** @hidden */
98
+ private _eventSub;
99
+ /** @hidden */
100
+ private _selectionSub;
101
+ /** @hidden */
102
+ constructor();
20
103
  /** @hidden */
21
104
  ngOnInit(): void;
22
105
  /** @hidden */
23
- ngAfterContentInit(): void;
106
+ ngOnChanges(changes: SimpleChanges): void;
107
+ /** @hidden */
108
+ ngAfterViewInit(): void;
109
+ /** @hidden */
110
+ ngOnDestroy(): void;
111
+ /** @hidden */
112
+ private _setSelectionListener;
113
+ /** @hidden */
114
+ private _listenToTreeItemDirectiveChanges;
115
+ /** @hidden */
116
+ private _listenToTreeItemsChanges;
117
+ /** @hidden */
118
+ private _setFlattenedItems;
119
+ /** @hidden */
120
+ _onItemFocused(treeItem: BaseTreeItem): void;
121
+ /** @hidden */
122
+ private _setupEventListeners;
123
+ /** @hidden */
124
+ private _sortTreeItems;
125
+ /** @hidden */
126
+ elementRef(): ElementRef<HTMLElement>;
127
+ /** @hidden */
128
+ buildComponentCssClass(): string[];
129
+ /**
130
+ * @hidden
131
+ * Keyboard navigation
132
+ * @param event Keyboard event.
133
+ */
134
+ private _onKeyUp;
24
135
  /** @hidden */
25
- toggleDisplayAll(): void;
136
+ _onItemKeyDown(event: KeyboardEvent, treeItem: Nullable<BaseTreeItem>): void;
26
137
  /** @hidden */
27
- getChildDepth(row: any, depth: any): void;
138
+ _trackFn(index: number, item: TreeItem<TreeItemGeneric<T>>): string;
28
139
  /** @hidden */
29
- handleEmptyTrailingCells(row: any): void;
140
+ private _expandTreeSection;
30
141
  /** @hidden */
31
- editClicked(row: any): void;
142
+ private _collapseTreeSection;
32
143
  /** @hidden */
33
- deleteClicked(row: any): void;
34
- static ɵfac: i0.ɵɵFactoryDeclaration<TreeComponent, never>;
35
- static ɵcmp: i0.ɵɵComponentDeclaration<TreeComponent, "fd-tree", never, { "headers": "headers"; "treeData": "treeData"; "hideAll": "hideAll"; "displayTreeActions": "displayTreeActions"; }, { "editRowClicked": "editRowClicked"; "deleteRowClicked": "deleteRowClicked"; }, never, never, false, never>;
144
+ private _openDataStream;
145
+ /**
146
+ * @hidden
147
+ * Select list interface method implementation.
148
+ * Sets value for control value accessor and emits it.
149
+ * @param value value of the selection.
150
+ */
151
+ onChange(value: SelectableListValueType<any>): void;
152
+ static ɵfac: i0.ɵɵFactoryDeclaration<TreeComponent<any, any>, never>;
153
+ static ɵcmp: i0.ɵɵComponentDeclaration<TreeComponent<any, any>, "fd-tree", never, { "class": "class"; "noBorder": "noBorder"; "selection": "selection"; "selectionPlacement": "selectionPlacement"; "independentSections": "independentSections"; "navigationIndicator": "navigationIndicator"; }, { "dataRequested": "dataRequested"; "dataReceived": "dataReceived"; "selectedChange": "selectedChange"; }, ["treeItemDef", "_projectedTreeItems"], ["fd-tree-item"], false, [{ directive: typeof i1.DataSourceDirective; inputs: { "dataSource": "dataSource"; }; outputs: { "dataChanged": "dataChanged"; }; }, { directive: typeof i2.CvaDirective; inputs: { "name": "name"; "id": "id"; "state": "state"; "stateMessage": "stateMessage"; "disabled": "disabled"; "readonly": "readonly"; }; outputs: {}; }]>;
36
154
  }
@@ -1,13 +1,23 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./tree.component";
3
- import * as i2 from "./tree-child.component";
4
- import * as i3 from "@angular/common";
5
- import * as i4 from "@fundamental-ngx/core/button";
6
- import * as i5 from "@fundamental-ngx/core/icon";
7
- import * as i6 from "@fundamental-ngx/core/popover";
8
- import * as i7 from "@fundamental-ngx/core/menu";
3
+ import * as i2 from "./components/tree-item/tree-item.component";
4
+ import * as i3 from "./directives/tree-item-def.directive";
5
+ import * as i4 from "./directives/tree-item.directive";
6
+ import * as i5 from "./directives/tree-item-icon.directive";
7
+ import * as i6 from "./directives/tree-item-button.directive";
8
+ import * as i7 from "@angular/common";
9
+ import * as i8 from "@fundamental-ngx/core/button";
10
+ import * as i9 from "@fundamental-ngx/core/icon";
11
+ import * as i10 from "@fundamental-ngx/core/popover";
12
+ import * as i11 from "@fundamental-ngx/core/menu";
13
+ import * as i12 from "@fundamental-ngx/core/checkbox";
14
+ import * as i13 from "@fundamental-ngx/cdk/utils";
15
+ import * as i14 from "@angular/forms";
16
+ import * as i15 from "@fundamental-ngx/core/radio";
17
+ import * as i16 from "@fundamental-ngx/core/skeleton";
18
+ import * as i17 from "@fundamental-ngx/i18n";
9
19
  export declare class TreeModule {
10
20
  static ɵfac: i0.ɵɵFactoryDeclaration<TreeModule, never>;
11
- static ɵmod: i0.ɵɵNgModuleDeclaration<TreeModule, [typeof i1.TreeComponent, typeof i2.TreeChildComponent], [typeof i3.CommonModule, typeof i4.ButtonModule, typeof i5.IconModule, typeof i6.PopoverModule, typeof i7.MenuModule], [typeof i1.TreeComponent, typeof i2.TreeChildComponent]>;
21
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TreeModule, [typeof i1.TreeComponent, typeof i2.TreeItemComponent, typeof i3.TreeItemDefDirective, typeof i4.TreeItemDirective, typeof i5.TreeItemIconDirective, typeof i5.TreeItemTextDirective, typeof i6.TreeItemButtonDirective], [typeof i7.CommonModule, typeof i8.ButtonModule, typeof i9.IconModule, typeof i10.PopoverModule, typeof i11.MenuModule, typeof i12.CheckboxModule, typeof i13.ClickedBehaviorModule, typeof i14.FormsModule, typeof i13.SelectableItemDirective, typeof i15.RadioModule, typeof i16.SkeletonModule, typeof i13.RepeatDirective, typeof i14.ReactiveFormsModule, typeof i17.I18nModule], [typeof i1.TreeComponent, typeof i2.TreeItemComponent, typeof i3.TreeItemDefDirective, typeof i4.TreeItemDirective, typeof i5.TreeItemIconDirective, typeof i5.TreeItemTextDirective, typeof i6.TreeItemButtonDirective]>;
12
22
  static ɵinj: i0.ɵɵInjectorDeclaration<TreeModule>;
13
23
  }
@@ -0,0 +1,62 @@
1
+ import { TemplateRef } from '@angular/core';
2
+ import { Nullable } from '@fundamental-ngx/cdk/utils';
3
+ import { Observable, Subject } from 'rxjs';
4
+ import { BaseTreeItem } from './models/base-tree-item.class';
5
+ import { SelectionPlacement, SelectionType } from './models/selection-type';
6
+ import { TreeItem, TreeItemGeneric } from './models/tree-item';
7
+ import { TreeItemDefContext } from './models/tree-item-def-context';
8
+ import * as i0 from "@angular/core";
9
+ export interface SelectionModeModel {
10
+ mode: SelectionType;
11
+ placement: SelectionPlacement;
12
+ }
13
+ export declare class TreeService {
14
+ /** Tree item template ref. */
15
+ treeItemTemplateRef: Nullable<TemplateRef<TreeItemDefContext>>;
16
+ /** Currently focused tree item. */
17
+ focusedTreeItem: Nullable<BaseTreeItem>;
18
+ /** Current expanded level. */
19
+ get expandedLevel(): Observable<number | undefined>;
20
+ /** Tree selection mode. */
21
+ get selectionMode(): Observable<SelectionModeModel>;
22
+ /** Whether to show navigation indicator. */
23
+ get navigationIndicator(): Observable<boolean>;
24
+ /** @hidden */
25
+ private readonly _expandableItems;
26
+ /** @hidden */
27
+ private readonly _selectionMode$;
28
+ /** @hidden */
29
+ private readonly _expandedLevel;
30
+ /** @hidden */
31
+ private readonly _navigationIndicator$;
32
+ /**
33
+ * @hidden
34
+ */
35
+ readonly detectChanges: Subject<void>;
36
+ /** Sets whether the navigation indicator should be visible. */
37
+ setNavigationIndicator(value: boolean): void;
38
+ /** @hidden */
39
+ normalizeTreeItems<T extends TreeItem = TreeItem>(items: Nullable<T[]>, parentId?: string | null, level?: number): TreeItem<TreeItemGeneric<T>>[];
40
+ /**
41
+ * Adds expandable item to the object of expandable items.
42
+ * @param id
43
+ * @param level
44
+ */
45
+ addExpandableItem(id: string, level: number, expanded: boolean): void;
46
+ /**
47
+ * Removes expandable item from the object of expandable items.
48
+ * @param id
49
+ * @param level
50
+ */
51
+ removeExpandableItem(id: string, level: number): void;
52
+ /**
53
+ * Sets selection mode and it's placement.
54
+ * @param mode Selection mode.
55
+ * @param placement Selection control placement.
56
+ */
57
+ setSelectionMode(mode: SelectionType, placement: SelectionPlacement): void;
58
+ /** @hidden */
59
+ private _emitNewExpandedLevel;
60
+ static ɵfac: i0.ɵɵFactoryDeclaration<TreeService, never>;
61
+ static ɵprov: i0.ɵɵInjectableDeclaration<TreeService>;
62
+ }
@@ -1,66 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "@fundamental-ngx/core/button";
5
- import * as i3 from "@fundamental-ngx/core/menu";
6
- export class TreeChildComponent {
7
- constructor() {
8
- /** @hidden */
9
- this.editClicked = new EventEmitter();
10
- /** @hidden */
11
- this.deleteClicked = new EventEmitter();
12
- }
13
- /** @hidden */
14
- ngOnInit() {
15
- this.hideChildren = false;
16
- }
17
- /** @hidden */
18
- toggleDisplayChildren(hideAll) {
19
- if (hideAll !== undefined) {
20
- this.hideChildren = hideAll;
21
- }
22
- else {
23
- this.hideChildren = !this.hideChildren;
24
- }
25
- }
26
- /** @hidden */
27
- typeOf(variable) {
28
- let retVal;
29
- if (typeof variable === 'string') {
30
- retVal = 'string';
31
- }
32
- else if (typeof variable === 'object') {
33
- retVal = 'object';
34
- }
35
- return retVal;
36
- }
37
- /** @hidden */
38
- editTreeItem(row) {
39
- if (row) {
40
- this.editClicked.emit(row);
41
- }
42
- }
43
- /** @hidden */
44
- deleteTreeItem(row) {
45
- if (row) {
46
- this.deleteClicked.emit(row);
47
- }
48
- }
49
- }
50
- TreeChildComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TreeChildComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
- TreeChildComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: TreeChildComponent, selector: "fd-tree-child", inputs: { row: "row", hideChildren: "hideChildren", displayTreeActions: "displayTreeActions" }, outputs: { editClicked: "editClicked", deleteClicked: "deleteClicked" }, ngImport: i0, template: "<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i3.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "tabbableScrollbar", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i3.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i3.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i3.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i3.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: TreeChildComponent, selector: "fd-tree-child", inputs: ["row", "hideChildren", "displayTreeActions"], outputs: ["editClicked", "deleteClicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: TreeChildComponent, decorators: [{
53
- type: Component,
54
- args: [{ selector: 'fd-tree-child', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<li #treeChild class=\"fd-tree__item\" role=\"treeitem\">\n <div class=\"fd-tree__row\">\n <div\n *ngFor=\"let cell of row.rowData; let i = index\"\n [attr.data-index]=\"i\"\n class=\"fd-tree__col\"\n [class.fd-tree__col--control]=\"i === 0\"\n >\n <button\n (click)=\"toggleDisplayChildren()\"\n *ngIf=\"row.children && i === 0\"\n class=\"fd-tree__control\"\n aria-label=\"Expand\"\n [class.is-pressed]=\"!hideChildren\"\n [attr.aria-pressed]=\"!hideChildren\"\n ></button>\n <ng-container *ngIf=\"typeOf(cell) === 'string'\">\n {{ cell }}\n </ng-container>\n <ng-container *ngIf=\"typeOf(cell) === 'object'\">\n <ng-container *ngIf=\"cell.linkUrl\">\n <ng-container *ngIf=\"cell.displayText\">\n <!-- link with display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.displayText }}</a>\n </ng-container>\n <ng-container *ngIf=\"!cell.displayText\">\n <!-- link without display text -->\n <a [attr.href]=\"cell.linkUrl\" class=\"fd-has-font-weight-semi\">{{ cell.linkUrl }}</a>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!cell.linkUrl\">\n {{ cell.displayText }}\n </ng-container>\n </ng-container>\n </div>\n <div class=\"fd-tree__col fd-tree__col--actions\">\n <ng-container *ngIf=\"displayTreeActions\">\n <button fd-button fdType=\"transparent\" glyph=\"vertical-grip\" [fdMenuTrigger]=\"menu\"></button>\n\n <fd-menu #menu>\n <li fd-menu-item (click)=\"editTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Edit</span>\n </div>\n </li>\n <li fd-menu-item (click)=\"deleteTreeItem(row)\">\n <div fd-menu-interactive>\n <span fd-menu-title>Delete</span>\n </div>\n </li>\n </fd-menu>\n </ng-container>\n </div>\n </div>\n <ul\n *ngIf=\"row.children && row.children.length > 0\"\n [class.is-hidden]=\"hideChildren\"\n class=\"fd-tree__group\"\n role=\"group\"\n >\n <fd-tree-child\n *ngFor=\"let child of row.children\"\n [displayTreeActions]=\"displayTreeActions\"\n [row]=\"child\"\n [class]=\"child.sublevelClass\"\n >\n </fd-tree-child>\n </ul>\n</li>\n" }]
55
- }], propDecorators: { row: [{
56
- type: Input
57
- }], hideChildren: [{
58
- type: Input
59
- }], displayTreeActions: [{
60
- type: Input
61
- }], editClicked: [{
62
- type: Output
63
- }], deleteClicked: [{
64
- type: Output
65
- }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1jaGlsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi90cmVlL3RyZWUtY2hpbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvdHJlZS90cmVlLWNoaWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTdkIsTUFBTSxPQUFPLGtCQUFrQjtJQU4vQjtRQWdCSSxjQUFjO1FBQ0osZ0JBQVcsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVuRSxjQUFjO1FBQ0osa0JBQWEsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztLQXlDeEU7SUF2Q0csY0FBYztJQUNkLFFBQVE7UUFDSixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBRUQsY0FBYztJQUNkLHFCQUFxQixDQUFDLE9BQVE7UUFDMUIsSUFBSSxPQUFPLEtBQUssU0FBUyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxZQUFZLEdBQUcsT0FBTyxDQUFDO1NBQy9CO2FBQU07WUFDSCxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztTQUMxQztJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsTUFBTSxDQUFDLFFBQVM7UUFDWixJQUFJLE1BQU0sQ0FBQztRQUNYLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxFQUFFO1lBQzlCLE1BQU0sR0FBRyxRQUFRLENBQUM7U0FDckI7YUFBTSxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsRUFBRTtZQUNyQyxNQUFNLEdBQUcsUUFBUSxDQUFDO1NBQ3JCO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQztJQUVELGNBQWM7SUFDZCxZQUFZLENBQUMsR0FBSTtRQUNiLElBQUksR0FBRyxFQUFFO1lBQ0wsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUI7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLGNBQWMsQ0FBQyxHQUFJO1FBQ2YsSUFBSSxHQUFHLEVBQUU7WUFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNoQztJQUNMLENBQUM7OytHQXREUSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw4TkNqQi9CLGczRkFxRUEsaW5DRHBEYSxrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDSSxlQUFlLGlCQUVWLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU07OEJBSXRDLEdBQUc7c0JBQVgsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFHSSxXQUFXO3NCQUFwQixNQUFNO2dCQUdHLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRyZWVSb3dPYmplY3QgfSBmcm9tICcuL3RyZWUtcm93LW9iamVjdC5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtdHJlZS1jaGlsZCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RyZWUtY2hpbGQuY29tcG9uZW50Lmh0bWwnLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVHJlZUNoaWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBJbnB1dCgpIHJvdzogVHJlZVJvd09iamVjdDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQElucHV0KCkgaGlkZUNoaWxkcmVuOiBib29sZWFuO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASW5wdXQoKSBkaXNwbGF5VHJlZUFjdGlvbnM6IGJvb2xlYW47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBPdXRwdXQoKSBlZGl0Q2xpY2tlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQE91dHB1dCgpIGRlbGV0ZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGVDaGlsZHJlbiA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgdG9nZ2xlRGlzcGxheUNoaWxkcmVuKGhpZGVBbGw/KTogdm9pZCB7XG4gICAgICAgIGlmIChoaWRlQWxsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuaGlkZUNoaWxkcmVuID0gaGlkZUFsbDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaGlkZUNoaWxkcmVuID0gIXRoaXMuaGlkZUNoaWxkcmVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB0eXBlT2YodmFyaWFibGU/KTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHJldFZhbDtcbiAgICAgICAgaWYgKHR5cGVvZiB2YXJpYWJsZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldFZhbCA9ICdzdHJpbmcnO1xuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YXJpYWJsZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIHJldFZhbCA9ICdvYmplY3QnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJldFZhbDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGVkaXRUcmVlSXRlbShyb3c/KTogdm9pZCB7XG4gICAgICAgIGlmIChyb3cpIHtcbiAgICAgICAgICAgIHRoaXMuZWRpdENsaWNrZWQuZW1pdChyb3cpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBkZWxldGVUcmVlSXRlbShyb3c/KTogdm9pZCB7XG4gICAgICAgIGlmIChyb3cpIHtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlQ2xpY2tlZC5lbWl0KHJvdyk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8bGkgI3RyZWVDaGlsZCBjbGFzcz1cImZkLXRyZWVfX2l0ZW1cIiByb2xlPVwidHJlZWl0ZW1cIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmQtdHJlZV9fcm93XCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjZWxsIG9mIHJvdy5yb3dEYXRhOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgIFthdHRyLmRhdGEtaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBjbGFzcz1cImZkLXRyZWVfX2NvbFwiXG4gICAgICAgICAgICBbY2xhc3MuZmQtdHJlZV9fY29sLS1jb250cm9sXT1cImkgPT09IDBcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZURpc3BsYXlDaGlsZHJlbigpXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInJvdy5jaGlsZHJlbiAmJiBpID09PSAwXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkLXRyZWVfX2NvbnRyb2xcIlxuICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJFeHBhbmRcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5pcy1wcmVzc2VkXT1cIiFoaWRlQ2hpbGRyZW5cIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtcHJlc3NlZF09XCIhaGlkZUNoaWxkcmVuXCJcbiAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0eXBlT2YoY2VsbCkgPT09ICdzdHJpbmcnXCI+XG4gICAgICAgICAgICAgICAge3sgY2VsbCB9fVxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidHlwZU9mKGNlbGwpID09PSAnb2JqZWN0J1wiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjZWxsLmxpbmtVcmxcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNlbGwuZGlzcGxheVRleHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gbGluayB3aXRoIGRpc3BsYXkgdGV4dCAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIFthdHRyLmhyZWZdPVwiY2VsbC5saW5rVXJsXCIgY2xhc3M9XCJmZC1oYXMtZm9udC13ZWlnaHQtc2VtaVwiPnt7IGNlbGwuZGlzcGxheVRleHQgfX08L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNlbGwuZGlzcGxheVRleHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gbGluayB3aXRob3V0IGRpc3BsYXkgdGV4dCAtLT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIFthdHRyLmhyZWZdPVwiY2VsbC5saW5rVXJsXCIgY2xhc3M9XCJmZC1oYXMtZm9udC13ZWlnaHQtc2VtaVwiPnt7IGNlbGwubGlua1VybCB9fTwvYT5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFjZWxsLmxpbmtVcmxcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgY2VsbC5kaXNwbGF5VGV4dCB9fVxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtdHJlZV9fY29sIGZkLXRyZWVfX2NvbC0tYWN0aW9uc1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRpc3BsYXlUcmVlQWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gZmQtYnV0dG9uIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgZ2x5cGg9XCJ2ZXJ0aWNhbC1ncmlwXCIgW2ZkTWVudVRyaWdnZXJdPVwibWVudVwiPjwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgPGZkLW1lbnUgI21lbnU+XG4gICAgICAgICAgICAgICAgICAgIDxsaSBmZC1tZW51LWl0ZW0gKGNsaWNrKT1cImVkaXRUcmVlSXRlbShyb3cpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLW1lbnUtaW50ZXJhY3RpdmU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT5FZGl0PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgIDxsaSBmZC1tZW51LWl0ZW0gKGNsaWNrKT1cImRlbGV0ZVRyZWVJdGVtKHJvdylcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZmQtbWVudS1pbnRlcmFjdGl2ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1tZW51LXRpdGxlPkRlbGV0ZTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDwvZmQtbWVudT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8dWxcbiAgICAgICAgKm5nSWY9XCJyb3cuY2hpbGRyZW4gJiYgcm93LmNoaWxkcmVuLmxlbmd0aCA+IDBcIlxuICAgICAgICBbY2xhc3MuaXMtaGlkZGVuXT1cImhpZGVDaGlsZHJlblwiXG4gICAgICAgIGNsYXNzPVwiZmQtdHJlZV9fZ3JvdXBcIlxuICAgICAgICByb2xlPVwiZ3JvdXBcIlxuICAgID5cbiAgICAgICAgPGZkLXRyZWUtY2hpbGRcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjaGlsZCBvZiByb3cuY2hpbGRyZW5cIlxuICAgICAgICAgICAgW2Rpc3BsYXlUcmVlQWN0aW9uc109XCJkaXNwbGF5VHJlZUFjdGlvbnNcIlxuICAgICAgICAgICAgW3Jvd109XCJjaGlsZFwiXG4gICAgICAgICAgICBbY2xhc3NdPVwiY2hpbGQuc3VibGV2ZWxDbGFzc1wiXG4gICAgICAgID5cbiAgICAgICAgPC9mZC10cmVlLWNoaWxkPlxuICAgIDwvdWw+XG48L2xpPlxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1yb3ctb2JqZWN0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvdHJlZS90cmVlLXJvdy1vYmplY3QubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVHJlZVJvd09iamVjdCB7XG4gICAgcm93RGF0YTogYW55W107XG4gICAgY2hpbGRyZW4/OiBUcmVlUm93T2JqZWN0W107XG4gICAgc3VibGV2ZWxDbGFzcz86IHN0cmluZztcbn1cbiJdfQ==
Binary file
@@ -1,27 +0,0 @@
1
- import { EventEmitter, OnInit } from '@angular/core';
2
- import { TreeRowObject } from './tree-row-object.model';
3
- import * as i0 from "@angular/core";
4
- export declare class TreeChildComponent implements OnInit {
5
- /** @hidden */
6
- row: TreeRowObject;
7
- /** @hidden */
8
- hideChildren: boolean;
9
- /** @hidden */
10
- displayTreeActions: boolean;
11
- /** @hidden */
12
- editClicked: EventEmitter<any>;
13
- /** @hidden */
14
- deleteClicked: EventEmitter<any>;
15
- /** @hidden */
16
- ngOnInit(): void;
17
- /** @hidden */
18
- toggleDisplayChildren(hideAll?: any): void;
19
- /** @hidden */
20
- typeOf(variable?: any): string;
21
- /** @hidden */
22
- editTreeItem(row?: any): void;
23
- /** @hidden */
24
- deleteTreeItem(row?: any): void;
25
- static ɵfac: i0.ɵɵFactoryDeclaration<TreeChildComponent, never>;
26
- static ɵcmp: i0.ɵɵComponentDeclaration<TreeChildComponent, "fd-tree-child", never, { "row": "row"; "hideChildren": "hideChildren"; "displayTreeActions": "displayTreeActions"; }, { "editClicked": "editClicked"; "deleteClicked": "deleteClicked"; }, never, never, false, never>;
27
- }
@@ -1,5 +0,0 @@
1
- export interface TreeRowObject {
2
- rowData: any[];
3
- children?: TreeRowObject[];
4
- sublevelClass?: string;
5
- }