ngx-edu-sharing-ui 10.0.25 → 10.0.27
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/assets/scss/branding.scss +4 -3
- package/assets/scss/material-theme.scss +38 -3
- package/assets/scss/mixins.scss +2 -2
- package/assets/scss/variables-scss.scss +2 -1
- package/assets/scss/variables.scss +8 -1
- package/fesm2022/ngx-edu-sharing-ui.mjs +2071 -1864
- package/fesm2022/ngx-edu-sharing-ui.mjs.map +1 -1
- package/lib/directives/icon.directive.d.ts +3 -1
- package/lib/edu-sharing-ui-configuration.d.ts +7 -0
- package/lib/edu-sharing-ui.module.d.ts +2 -2
- package/lib/index.d.ts +3 -0
- package/lib/list-items/list-text/list-text.component.d.ts +1 -1
- package/lib/list-items/list-widget.d.ts +1 -1
- package/lib/mds/mds-helper.service.d.ts +14 -2
- package/lib/mds-viewer/mds-editor-instance-service.abstract.d.ts +3 -2
- package/lib/mds-viewer/mds-viewer.component.d.ts +1 -0
- package/lib/mds-viewer/mds-viewer.service.d.ts +14 -1
- package/lib/mds-viewer/widget/mds-widget.component.d.ts +15 -13
- package/lib/node-entries/entries-model.d.ts +13 -2
- package/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.d.ts +0 -2
- package/lib/node-entries/node-entries-global.service.d.ts +3 -0
- package/lib/node-entries/node-entries-table/node-entries-table.component.d.ts +11 -3
- package/lib/node-entries/node-entries-templates.service.d.ts +4 -0
- package/lib/node-entries/node-entries-wrapper.component.d.ts +18 -4
- package/lib/node-entries/node-entries.module.d.ts +1 -1
- package/lib/node-entries/node-type-badge/node-type-badge.component.d.ts +13 -4
- package/lib/pipes/node-image.pipe.d.ts +1 -1
- package/lib/services/node-entries.service.d.ts +7 -2
- package/lib/services/node-helper.service.d.ts +6 -4
- package/lib/services/render-helper.service.d.ts +2 -1
- package/lib/services/ui.service.d.ts +4 -0
- package/lib/translations/translation-loader.d.ts +3 -3
- package/lib/types/injection-tokens.d.ts +9 -16
- package/lib/types/option-item.d.ts +10 -4
- package/lib/util/ui-constants.d.ts +1 -0
- package/package.json +2 -2
|
@@ -22,6 +22,7 @@ export declare class IconDirective implements OnInit, OnDestroy {
|
|
|
22
22
|
private renderer;
|
|
23
23
|
private config;
|
|
24
24
|
private originalId$;
|
|
25
|
+
private iconContext$;
|
|
25
26
|
private _id;
|
|
26
27
|
private _aria;
|
|
27
28
|
private altTextSpan;
|
|
@@ -38,6 +39,7 @@ export declare class IconDirective implements OnInit, OnDestroy {
|
|
|
38
39
|
/** If true, an alt text (see above) will be set based on the icon. */
|
|
39
40
|
set aria(aria: boolean);
|
|
40
41
|
set esIcon(id: string);
|
|
42
|
+
set esIconContext(context: string);
|
|
41
43
|
constructor(element: ElementRef<HTMLElement>, http: HttpClient, translate: TranslateService, renderer: Renderer2, config: ConfigService);
|
|
42
44
|
ngOnInit(): Promise<void>;
|
|
43
45
|
ngOnDestroy(): void;
|
|
@@ -46,5 +48,5 @@ export declare class IconDirective implements OnInit, OnDestroy {
|
|
|
46
48
|
private setAltText;
|
|
47
49
|
private insertAltTextSpan;
|
|
48
50
|
static ɵfac: i0.ɵɵFactoryDeclaration<IconDirective, [null, null, null, null, { optional: true; }]>;
|
|
49
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<IconDirective, "i[esIcon], i.material-icons", never, { "altText": { "alias": "altText"; "required": false; }; "aria": { "alias": "aria"; "required": false; }; "esIcon": { "alias": "esIcon"; "required": false; }; }, {}, never, never, false, never>;
|
|
51
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IconDirective, "i[esIcon], i.material-icons", never, { "altText": { "alias": "altText"; "required": false; }; "aria": { "alias": "aria"; "required": false; }; "esIcon": { "alias": "esIcon"; "required": false; }; "esIconContext": { "alias": "esIconContext"; "required": false; }; }, {}, never, never, false, never>;
|
|
50
52
|
}
|
|
@@ -8,6 +8,13 @@ export declare class EduSharingUiConfiguration {
|
|
|
8
8
|
* web page.
|
|
9
9
|
*/
|
|
10
10
|
isEmbedded: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* A custom base path for the assets directory.
|
|
13
|
+
*
|
|
14
|
+
* This is useful when the application cannot be served from the base HREF set in index.html. This
|
|
15
|
+
* is the case when it is embedded as a web component into another website.
|
|
16
|
+
*/
|
|
17
|
+
assetsBasePath?: string;
|
|
11
18
|
static create(params?: EduSharingUiConfigurationParams): EduSharingUiConfiguration;
|
|
12
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<EduSharingUiConfiguration, never>;
|
|
13
20
|
static ɵprov: i0.ɵɵInjectableDeclaration<EduSharingUiConfiguration>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ModuleWithProviders } from '@angular/core';
|
|
1
|
+
import { ModuleWithProviders, Provider } from '@angular/core';
|
|
2
2
|
import { EduSharingUiConfigurationParams } from './edu-sharing-ui-configuration';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "@angular/common";
|
|
@@ -13,7 +13,7 @@ import * as i9 from "./pipes/format-date.pipe";
|
|
|
13
13
|
import * as i10 from "./node-entries/list-item-label.pipe";
|
|
14
14
|
import * as i11 from "./sort-dropdown/sort-dropdown.component";
|
|
15
15
|
export declare class EduSharingUiModule {
|
|
16
|
-
static forRoot(config: EduSharingUiConfigurationParams): ModuleWithProviders<EduSharingUiModule>;
|
|
16
|
+
static forRoot(config: EduSharingUiConfigurationParams, providers?: Provider[]): ModuleWithProviders<EduSharingUiModule>;
|
|
17
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<EduSharingUiModule, never>;
|
|
18
18
|
static ɵmod: i0.ɵɵNgModuleDeclaration<EduSharingUiModule, never, [typeof i1.CommonModule, typeof i2.TranslateModule, typeof i3.EduSharingUiCommonModule, typeof i4.ListItemsModule, typeof i5.NodeEntriesModule], [typeof i1.CommonModule, typeof i6.MdsModule, typeof i7.MatTooltipModule, typeof i2.TranslateModule, typeof i3.EduSharingUiCommonModule, typeof i4.ListItemsModule, typeof i5.NodeEntriesModule, typeof i8.NodeImageSizePipe, typeof i9.FormatDatePipe, typeof i4.ListItemsModule, typeof i10.ListItemLabelPipe, typeof i11.SortDropdownComponent]>;
|
|
19
19
|
static ɵinj: i0.ɵɵInjectorDeclaration<EduSharingUiModule>;
|
package/lib/index.d.ts
CHANGED
|
@@ -29,6 +29,9 @@ export * from './node-entries/entries-model';
|
|
|
29
29
|
export * from './node-entries/items-cap';
|
|
30
30
|
export * from './node-entries/list-item-label.pipe';
|
|
31
31
|
export * from './node-entries/node-cache';
|
|
32
|
+
export * from './node-entries/node-rating/node-rating.component';
|
|
33
|
+
export * from './node-entries/node-type-badge/node-type-badge.component';
|
|
34
|
+
export * from './node-entries/node-stats-badges/node-stats-badges.component';
|
|
32
35
|
export * from './node-entries/node-data-source';
|
|
33
36
|
export * from './node-entries/node-data-source-remote';
|
|
34
37
|
export * from './node-entries/node-entries-global.service';
|
|
@@ -16,7 +16,7 @@ export declare class ListTextComponent extends ListWidget implements OnInit {
|
|
|
16
16
|
displayName$: BehaviorSubject<string>;
|
|
17
17
|
constructor(nodeHelper: NodeHelperService, mds: MdsService, changeDetectorRef: ChangeDetectorRef);
|
|
18
18
|
ngOnInit(): Promise<void>;
|
|
19
|
-
getNode(): Constants.Node | Constants.
|
|
19
|
+
getNode(): Constants.Node | Constants.Person | Constants.Group | Constants.Statistics;
|
|
20
20
|
isUserProfileAttribute(attribute: string): boolean;
|
|
21
21
|
getWorkflowStatus(): import("ngx-edu-sharing-ui").WorkflowDefinition;
|
|
22
22
|
getI18n(item: ListItem): string;
|
|
@@ -7,7 +7,7 @@ import * as i0 from "@angular/core";
|
|
|
7
7
|
export declare class ListWidget {
|
|
8
8
|
get node(): Node | ProposalNode | Group | Person | Statistics;
|
|
9
9
|
set node(value: Node | ProposalNode | Group | Person | Statistics);
|
|
10
|
-
protected readonly nodeSubject: BehaviorSubject<Node |
|
|
10
|
+
protected readonly nodeSubject: BehaviorSubject<Node | ProposalNode | Person | Group | Statistics>;
|
|
11
11
|
get item(): ListItem;
|
|
12
12
|
set item(value: ListItem);
|
|
13
13
|
protected readonly itemSubject: BehaviorSubject<ListItem>;
|
|
@@ -2,10 +2,21 @@ import { TranslateService } from '@ngx-translate/core';
|
|
|
2
2
|
import { AuthenticationService, MdsDefinition, MdsSort, MdsWidget } from 'ngx-edu-sharing-api';
|
|
3
3
|
import { ListItem } from '../types/list-item';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
+
type ColumnTypeInternal<T extends string> = {
|
|
6
|
+
[k in T]?: ListItem[];
|
|
7
|
+
};
|
|
8
|
+
export type ColumnType = ColumnTypeInternal<'Default' | 'Table'>;
|
|
5
9
|
export declare class MdsHelperService {
|
|
6
10
|
private authentication;
|
|
11
|
+
private translate;
|
|
7
12
|
static getSortInfo(mdsSet: MdsDefinition, name: string): MdsSort;
|
|
8
|
-
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
* get columns as an object structure
|
|
16
|
+
* There are always Columns in the result.Default but there can also be further types
|
|
17
|
+
* See @ColumnType
|
|
18
|
+
*/
|
|
19
|
+
getColumns(mdsSet: MdsDefinition, name: string): ColumnType;
|
|
9
20
|
/**
|
|
10
21
|
* Finds the appropriate widget with the id, but will not check any widget conditions
|
|
11
22
|
* @param cid
|
|
@@ -13,7 +24,7 @@ export declare class MdsHelperService {
|
|
|
13
24
|
* @param widgets
|
|
14
25
|
*/
|
|
15
26
|
static getWidget(cid: string, template: string | undefined | null, widgets: MdsWidget[]): MdsWidget;
|
|
16
|
-
constructor(authentication: AuthenticationService);
|
|
27
|
+
constructor(authentication: AuthenticationService, translate: TranslateService);
|
|
17
28
|
/**
|
|
18
29
|
* Same as getWidget, but will also check the widget conditions
|
|
19
30
|
* @param connector
|
|
@@ -35,3 +46,4 @@ export declare class MdsHelperService {
|
|
|
35
46
|
static ɵfac: i0.ɵɵFactoryDeclaration<MdsHelperService, never>;
|
|
36
47
|
static ɵprov: i0.ɵɵInjectableDeclaration<MdsHelperService>;
|
|
37
48
|
}
|
|
49
|
+
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BehaviorSubject } from 'rxjs';
|
|
2
2
|
import { Node } from 'ngx-edu-sharing-api';
|
|
3
3
|
import { Values } from '../services/search-helper.service';
|
|
4
|
-
export type EditorMode = 'nodes' | 'search' | 'form' | 'inline' | 'viewer';
|
|
4
|
+
export type EditorMode = 'nodes' | 'search' | 'form' | 'inline' | 'viewer' | 'searchFacetSuggestion';
|
|
5
5
|
export declare abstract class MdsEditorInstanceServiceAbstract {
|
|
6
6
|
mdsId: string;
|
|
7
7
|
editorMode: EditorMode;
|
|
@@ -9,6 +9,7 @@ export declare abstract class MdsEditorInstanceServiceAbstract {
|
|
|
9
9
|
values$: BehaviorSubject<Values>;
|
|
10
10
|
/** Nodes with updated and complete metadata. */
|
|
11
11
|
nodes$: BehaviorSubject<Node[]>;
|
|
12
|
+
shouldShowExtendedWidgets$: BehaviorSubject<boolean>;
|
|
12
13
|
abstract saveWidgetValue(widget: any): Promise<void>;
|
|
13
|
-
abstract fetchDisplayValues(widget: any): Promise<void>;
|
|
14
|
+
abstract fetchDisplayValues(widget: any, additionalKeys?: string[]): Promise<void>;
|
|
14
15
|
}
|
|
@@ -47,6 +47,7 @@ export declare class MdsViewerComponent implements OnChanges {
|
|
|
47
47
|
*/
|
|
48
48
|
private prepareHTML;
|
|
49
49
|
ngOnChanges(changes: SimpleChanges): Promise<void>;
|
|
50
|
+
private hideEmpty;
|
|
50
51
|
static ɵfac: i0.ɵɵFactoryDeclaration<MdsViewerComponent, never>;
|
|
51
52
|
static ɵcmp: i0.ɵɵComponentDeclaration<MdsViewerComponent, "es-mds-viewer", never, { "mdsEditorInstanceService": { "alias": "mdsEditorInstanceService"; "required": false; }; "groupId": { "alias": "groupId"; "required": false; }; "setId": { "alias": "setId"; "required": false; }; "data": { "alias": "data"; "required": false; }; "mds": { "alias": "mds"; "required": false; }; "showGroupHeadings": { "alias": "showGroupHeadings"; "required": false; }; "headingLevel": { "alias": "headingLevel"; "required": false; }; }, {}, never, never, false, never>;
|
|
52
53
|
}
|
|
@@ -1,12 +1,25 @@
|
|
|
1
1
|
import { ElementRef, QueryList } from '@angular/core';
|
|
2
|
-
import { MdsDefinition } from 'ngx-edu-sharing-api';
|
|
2
|
+
import { MdsDefinition, MdsWidget } from 'ngx-edu-sharing-api';
|
|
3
3
|
import { BehaviorSubject } from 'rxjs';
|
|
4
4
|
import { Values } from '../services/search-helper.service';
|
|
5
|
+
import { TranslateService } from '@ngx-translate/core';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
export declare class MdsViewerService {
|
|
8
|
+
private translate;
|
|
7
9
|
container: QueryList<ElementRef>;
|
|
8
10
|
values$: BehaviorSubject<Values>;
|
|
9
11
|
mds$: BehaviorSubject<MdsDefinition>;
|
|
12
|
+
constructor(translate: TranslateService);
|
|
13
|
+
getFormattedValue(value: string[], definition: MdsWidget, basicType: string): string[];
|
|
14
|
+
private formatVCard;
|
|
15
|
+
private formatDate;
|
|
16
|
+
private formatText;
|
|
17
|
+
private formatNumber;
|
|
18
|
+
/**
|
|
19
|
+
* returns the basic type for a widget definition
|
|
20
|
+
* @param flat (flatten trees?)
|
|
21
|
+
*/
|
|
22
|
+
static getBasicType(definition: MdsWidget, flat?: boolean): string;
|
|
10
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<MdsViewerService, never>;
|
|
11
24
|
static ɵprov: i0.ɵɵInjectableDeclaration<MdsViewerService>;
|
|
12
25
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ElementRef, Injector, OnChanges, OnInit, SimpleChanges } from '@angular/core';
|
|
1
|
+
import { ElementRef, Injector, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
|
|
2
2
|
import { TranslateService } from '@ngx-translate/core';
|
|
3
3
|
import { MatRipple } from '@angular/material/core';
|
|
4
4
|
import { MdsValue, MdsWidget, Suggestion } from 'ngx-edu-sharing-api';
|
|
5
5
|
import { UIService } from '../../services/ui.service';
|
|
6
6
|
import { ViewInstanceService } from '../view-instance.service';
|
|
7
|
-
import { BehaviorSubject } from 'rxjs';
|
|
7
|
+
import { BehaviorSubject, Subject } from 'rxjs';
|
|
8
8
|
import { MdsViewerService } from '../mds-viewer.service';
|
|
9
9
|
import { NodeHelperService } from '../../services/node-helper.service';
|
|
10
10
|
import { MdsEditorInstanceServiceAbstract } from '../mds-editor-instance-service.abstract';
|
|
@@ -23,10 +23,11 @@ export declare enum MdsType {
|
|
|
23
23
|
export interface MdsValueList {
|
|
24
24
|
values: Suggestion[];
|
|
25
25
|
}
|
|
26
|
-
export
|
|
26
|
+
export declare abstract class MdsViewerWidget {
|
|
27
27
|
definition: MdsWidget;
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
focusTrigger: Subject<void>;
|
|
29
|
+
abstract getInitalValuesAsync(): Promise<InitialValues>;
|
|
30
|
+
abstract getInitialDisplayValues(): BehaviorSubject<MdsValueList>;
|
|
30
31
|
}
|
|
31
32
|
export declare enum MdsWidgetType {
|
|
32
33
|
Text = "text",
|
|
@@ -55,7 +56,8 @@ export declare enum MdsWidgetType {
|
|
|
55
56
|
SingleValueSuggestBadges = "singlevalueSuggestBadges",
|
|
56
57
|
MultiValueTree = "multivalueTree",
|
|
57
58
|
DefaultValue = "defaultvalue",
|
|
58
|
-
FacetList = "facetList"
|
|
59
|
+
FacetList = "facetList",
|
|
60
|
+
Toggle = "toggle"
|
|
59
61
|
}
|
|
60
62
|
export interface InitialValues {
|
|
61
63
|
/** Values that are initially present in all nodes. */
|
|
@@ -72,8 +74,8 @@ export declare enum ValueType {
|
|
|
72
74
|
MultiValue = 1,
|
|
73
75
|
Range = 2
|
|
74
76
|
}
|
|
75
|
-
export declare class MdsWidgetComponent implements OnInit, OnChanges {
|
|
76
|
-
|
|
77
|
+
export declare class MdsWidgetComponent implements OnInit, OnDestroy, OnChanges {
|
|
78
|
+
mdsEditorInstance: MdsEditorInstanceServiceAbstract;
|
|
77
79
|
translate: TranslateService;
|
|
78
80
|
private ui;
|
|
79
81
|
private viewInstance;
|
|
@@ -81,6 +83,8 @@ export declare class MdsWidgetComponent implements OnInit, OnChanges {
|
|
|
81
83
|
private injector;
|
|
82
84
|
private nodeHelper;
|
|
83
85
|
readonly ROUTER_PREFIX: string;
|
|
86
|
+
readonly focusTrigger: Subject<void>;
|
|
87
|
+
readonly destroyed$: Subject<void>;
|
|
84
88
|
private static readonly inlineEditing;
|
|
85
89
|
readonly valueType = ValueType.String;
|
|
86
90
|
widget: MdsViewerWidget;
|
|
@@ -107,18 +111,16 @@ export declare class MdsWidgetComponent implements OnInit, OnChanges {
|
|
|
107
111
|
value: import("@angular/core").WritableSignal<string[]>;
|
|
108
112
|
private temporaryValue;
|
|
109
113
|
constructor(mdsEditorInstance: MdsEditorInstanceServiceAbstract, translate: TranslateService, ui: UIService, viewInstance: ViewInstanceService, mdsViewerService: MdsViewerService, injector: Injector, nodeHelper: NodeHelperService);
|
|
114
|
+
ngOnDestroy(): void;
|
|
110
115
|
ngOnChanges(changes: SimpleChanges): Promise<void>;
|
|
111
116
|
ngOnInit(): Promise<void>;
|
|
112
117
|
getDefinition(): MdsWidget;
|
|
113
|
-
getBasicType(): "number" | "text" | "date" | "vcard" | "slider" | "range" | "duration" | "license" | "array" | "tree" | "unknown";
|
|
114
118
|
supportsInlineEditing(): boolean;
|
|
115
119
|
private getNodeValues;
|
|
116
120
|
private getNodeValue;
|
|
117
121
|
getValue(data: string[]): any[];
|
|
118
122
|
click(): void;
|
|
119
|
-
|
|
120
|
-
formatNumber(): string[];
|
|
121
|
-
formatText(): string[];
|
|
123
|
+
formatValue(): string[];
|
|
122
124
|
finishEdit(instance: any, store?: boolean): Promise<void>;
|
|
123
125
|
isEditable(): boolean;
|
|
124
126
|
focus(): Promise<void>;
|
|
@@ -132,7 +134,7 @@ export declare class MdsWidgetComponent implements OnInit, OnChanges {
|
|
|
132
134
|
*/
|
|
133
135
|
private getRawValue;
|
|
134
136
|
getSearchParams(key: MdsValue): any;
|
|
135
|
-
startEdit(event
|
|
137
|
+
startEdit(event?: MouseEvent): void;
|
|
136
138
|
static ɵfac: i0.ɵɵFactoryDeclaration<MdsWidgetComponent, [{ optional: true; }, null, null, null, null, null, null]>;
|
|
137
139
|
static ɵcmp: i0.ɵɵComponentDeclaration<MdsWidgetComponent, "es-mds-widget", never, { "widget": { "alias": "widget"; "required": false; }; "showCaption": { "alias": "showCaption"; "required": false; }; "inlineEditing": { "alias": "inlineEditing"; "required": false; }; "definition": { "alias": "definition"; "required": false; }; "view": { "alias": "view"; "required": false; }; }, {}, never, never, false, never>;
|
|
138
140
|
}
|
|
@@ -3,7 +3,7 @@ import { SelectionModel } from '@angular/cdk/collections';
|
|
|
3
3
|
import { CustomOptions, OptionItem, Target } from '../types/option-item';
|
|
4
4
|
import { ListItem, ListItemSort } from '../types/list-item';
|
|
5
5
|
import { CanDrop, DragData, DropAction } from '../types/drag-drop';
|
|
6
|
-
import {
|
|
6
|
+
import { GenericAuthority, Node } from 'ngx-edu-sharing-api';
|
|
7
7
|
import { ActionbarComponent } from '../actionbar/actionbar.component';
|
|
8
8
|
import { Observable } from 'rxjs';
|
|
9
9
|
export type NodeRoot = 'MY_FILES' | 'COLLECTION_HOME' | 'SHARED_FILES' | 'MY_SHARED_FILES' | 'TO_ME_SHARED_FILES' | 'WORKFLOW_RECEIVE' | 'RECYCLE' | 'ALL_FILES';
|
|
@@ -75,13 +75,24 @@ export type GridConfig = {
|
|
|
75
75
|
*/
|
|
76
76
|
layout?: GridLayout;
|
|
77
77
|
};
|
|
78
|
+
export type TableConfig = {
|
|
79
|
+
dataColumnWidth?: number;
|
|
80
|
+
/**
|
|
81
|
+
* how the columns should be shown (in table mode)
|
|
82
|
+
* limit: limits the max amount based on the avgColumnWidth
|
|
83
|
+
* scroll: horizontal scrolling
|
|
84
|
+
*/
|
|
85
|
+
dataColumnLayout: 'scroll' | 'limit';
|
|
86
|
+
};
|
|
78
87
|
export interface ListEventInterface<T extends NodeEntriesDataType> {
|
|
79
88
|
updateNodes(nodes: void | T[]): void;
|
|
80
89
|
onDisplayTypeChange(): Observable<NodeEntriesDisplayType>;
|
|
81
90
|
getDisplayType(): NodeEntriesDisplayType;
|
|
82
91
|
setDisplayType(displayType: NodeEntriesDisplayType): void;
|
|
83
92
|
showReorderColumnsDialog(): void;
|
|
84
|
-
addVirtualNodes(virtual: T[]
|
|
93
|
+
addVirtualNodes(virtual: T[], options?: {
|
|
94
|
+
select: boolean;
|
|
95
|
+
}): void;
|
|
85
96
|
setOptions(options: ListOptions): void;
|
|
86
97
|
/**
|
|
87
98
|
* activate option (dropdown) generation
|
|
@@ -11,7 +11,6 @@ import { SortSelectPanelComponent } from '../sort-select-panel/sort-select-panel
|
|
|
11
11
|
import { Target } from '../../types/option-item';
|
|
12
12
|
import { NodeEntriesService } from '../../services/node-entries.service';
|
|
13
13
|
import { UIService } from '../../services/ui.service';
|
|
14
|
-
import { ListItemSort } from '../../types/list-item';
|
|
15
14
|
import { DragData } from '../../types/drag-drop';
|
|
16
15
|
import { CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
17
16
|
import { NodeHelperService } from '../../services/node-helper.service';
|
|
@@ -82,7 +81,6 @@ export declare class NodeEntriesCardGridComponent<T extends Node> implements OnI
|
|
|
82
81
|
private focusOnce;
|
|
83
82
|
onGridSizeChanges(): void;
|
|
84
83
|
private getItemsPerRow;
|
|
85
|
-
getSortColumns(): ListItemSort[];
|
|
86
84
|
canDropNodes: (dragData: DragData<T>) => import("../../types/drag-drop").CanDrop;
|
|
87
85
|
onNodesDropped(dragData: DragData<Node>): void;
|
|
88
86
|
getDragEnabled(): rxjs.Observable<boolean>;
|
|
@@ -49,6 +49,9 @@ export declare class NodeEntriesGlobalService {
|
|
|
49
49
|
* Registers a custom (node) attribute you want to render via the given template.
|
|
50
50
|
*
|
|
51
51
|
* You may also override existing attributes if you want to provide a custom view.
|
|
52
|
+
* each template gets two bindings:
|
|
53
|
+
* node: the current node
|
|
54
|
+
* entriesService: the injected service which provides state & config infos of the current view *
|
|
52
55
|
*/
|
|
53
56
|
registerCustomFieldRendering(customFieldInfo: CustomFieldInfo): void;
|
|
54
57
|
static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesGlobalService, never>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { CdkOverlayOrigin } from '@angular/cdk/overlay';
|
|
2
|
-
import { AfterViewInit, ApplicationRef, ChangeDetectorRef, ElementRef, NgZone, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
|
|
2
|
+
import { AfterViewInit, ApplicationRef, ChangeDetectorRef, ElementRef, NgZone, OnChanges, OnDestroy, SimpleChanges, TemplateRef } from '@angular/core';
|
|
3
3
|
import { MatMenuTrigger } from '@angular/material/menu';
|
|
4
4
|
import { MatPaginator } from '@angular/material/paginator';
|
|
5
|
-
import { MatSort } from '@angular/material/sort';
|
|
5
|
+
import { MatSort, Sort } from '@angular/material/sort';
|
|
6
6
|
import * as rxjs from 'rxjs';
|
|
7
7
|
import { Observable } from 'rxjs';
|
|
8
8
|
import { ClickSource, InteractionType, NodeEntriesDataType, NodeEntriesDisplayType } from '../entries-model';
|
|
@@ -17,12 +17,14 @@ import { Toast } from '../../services/abstract/toast.service';
|
|
|
17
17
|
import { DropdownComponent } from '../../dropdown/dropdown.component';
|
|
18
18
|
import { TranslationsService } from '../../translations/translations.service';
|
|
19
19
|
import { NodeHelperService } from '../../services/node-helper.service';
|
|
20
|
+
import { NodeEntriesTemplatesService } from '../node-entries-templates.service';
|
|
20
21
|
import * as i0 from "@angular/core";
|
|
21
22
|
export declare class NodeEntriesTableComponent<T extends NodeEntriesDataType> implements OnChanges, AfterViewInit, OnDestroy {
|
|
22
23
|
entriesService: NodeEntriesService<T>;
|
|
23
24
|
entriesGlobalService: NodeEntriesGlobalService;
|
|
24
25
|
private applicationRef;
|
|
25
26
|
private toast;
|
|
27
|
+
templatesService: NodeEntriesTemplatesService;
|
|
26
28
|
private translations;
|
|
27
29
|
private nodeHelperService;
|
|
28
30
|
private changeDetectorRef;
|
|
@@ -38,6 +40,8 @@ export declare class NodeEntriesTableComponent<T extends NodeEntriesDataType> im
|
|
|
38
40
|
columnChooserTrigger: CdkOverlayOrigin;
|
|
39
41
|
dropdown: DropdownComponent;
|
|
40
42
|
menuTrigger: MatMenuTrigger;
|
|
43
|
+
isScroll: boolean;
|
|
44
|
+
set gridTop(value: TemplateRef<unknown>);
|
|
41
45
|
dropdownLeft: number;
|
|
42
46
|
dropdownTop: number;
|
|
43
47
|
loading: Observable<boolean>;
|
|
@@ -49,10 +53,12 @@ export declare class NodeEntriesTableComponent<T extends NodeEntriesDataType> im
|
|
|
49
53
|
pageSizeOptions: number[];
|
|
50
54
|
isDragging: boolean;
|
|
51
55
|
private readonly maximumColumnsNumber$;
|
|
56
|
+
readonly hasHiddenSortColumns$: rxjs.BehaviorSubject<boolean>;
|
|
52
57
|
readonly visibleDataColumns$: rxjs.Observable<ListItem[]>;
|
|
53
58
|
readonly visibleColumnNames$: rxjs.Observable<string[]>;
|
|
54
59
|
private destroyed;
|
|
55
|
-
|
|
60
|
+
containerWidth$: rxjs.BehaviorSubject<number>;
|
|
61
|
+
constructor(entriesService: NodeEntriesService<T>, entriesGlobalService: NodeEntriesGlobalService, applicationRef: ApplicationRef, toast: Toast, templatesService: NodeEntriesTemplatesService, translations: TranslationsService, nodeHelperService: NodeHelperService, changeDetectorRef: ChangeDetectorRef, ui: UIService, ngZone: NgZone, elementRef: ElementRef<HTMLElement>);
|
|
56
62
|
ngAfterViewInit(): void;
|
|
57
63
|
ngOnChanges(changes: SimpleChanges): void;
|
|
58
64
|
ngOnDestroy(): void;
|
|
@@ -67,6 +73,7 @@ export declare class NodeEntriesTableComponent<T extends NodeEntriesDataType> im
|
|
|
67
73
|
private getVisibleColumnNames;
|
|
68
74
|
isSortable(column: ListItem): boolean;
|
|
69
75
|
toggleAll(checked: boolean): void;
|
|
76
|
+
private registerGridTop;
|
|
70
77
|
private registerSortChanges;
|
|
71
78
|
canDrop: (dragData: DragData<T>) => CanDrop;
|
|
72
79
|
drop(dragData: DragData<Node>): void;
|
|
@@ -76,6 +83,7 @@ export declare class NodeEntriesTableComponent<T extends NodeEntriesDataType> im
|
|
|
76
83
|
loadData(source: 'scroll' | 'button'): void;
|
|
77
84
|
openMenu(node: T): Promise<void>;
|
|
78
85
|
isBlocked(node: Node): boolean;
|
|
86
|
+
selectSortChange(sort: Sort): void;
|
|
79
87
|
static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesTableComponent<any>, never>;
|
|
80
88
|
static ɵcmp: i0.ɵɵComponentDeclaration<NodeEntriesTableComponent<any>, "es-node-entries-table", never, {}, {}, never, never, false, never>;
|
|
81
89
|
}
|
|
@@ -22,6 +22,10 @@ export declare class NodeEntriesTemplatesService {
|
|
|
22
22
|
* custom container for showing an overlay across each element
|
|
23
23
|
*/
|
|
24
24
|
overlay: TemplateRef<any>;
|
|
25
|
+
/**
|
|
26
|
+
* custom container for showing an own card layout
|
|
27
|
+
*/
|
|
28
|
+
customCard: TemplateRef<any>;
|
|
25
29
|
constructor();
|
|
26
30
|
static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesTemplatesService, never>;
|
|
27
31
|
static ɵprov: i0.ɵɵInjectableDeclaration<NodeEntriesTemplatesService>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, SimpleChange, TemplateRef, Type, ViewContainerRef } from '@angular/core';
|
|
2
2
|
import { NodeEntriesTemplatesService } from './node-entries-templates.service';
|
|
3
3
|
import { NodeEntriesComponent } from './node-entries.component';
|
|
4
|
-
import { FetchEvent, GridConfig, InteractionType, ListDragGropConfig, ListEventInterface, ListOptions, ListOptionsConfig, ListSortConfig, NodeClickEvent, NodeEntriesDataType, NodeEntriesDisplayType } from './entries-model';
|
|
4
|
+
import { FetchEvent, GridConfig, InteractionType, ListDragGropConfig, ListEventInterface, ListOptions, ListOptionsConfig, ListSortConfig, NodeClickEvent, NodeEntriesDataType, NodeEntriesDisplayType, TableConfig } from './entries-model';
|
|
5
5
|
import { NodeDataSource } from './node-data-source';
|
|
6
6
|
import { CustomSelectionModel, NodeEntriesService } from '../services/node-entries.service';
|
|
7
7
|
import { OptionItem, Scope } from '../types/option-item';
|
|
@@ -11,6 +11,7 @@ import { TemporaryStorageService } from '../services/temporary-storage.service';
|
|
|
11
11
|
import { Node, NodeService } from 'ngx-edu-sharing-api';
|
|
12
12
|
import { OptionsHelperDataService } from '../services/options-helper-data.service';
|
|
13
13
|
import { UIService } from '../services/ui.service';
|
|
14
|
+
import { ColumnType } from '../mds/mds-helper.service';
|
|
14
15
|
import * as i0 from "@angular/core";
|
|
15
16
|
export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType> implements AfterViewInit, OnInit, OnChanges, OnDestroy, ListEventInterface<T> {
|
|
16
17
|
private viewContainerRef;
|
|
@@ -40,10 +41,14 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
|
|
|
40
41
|
* custom area for an overlay "above" each card (i.e. to show disabled infos), only for NodeEntriesDisplayType.SmallGrid & odeEntriesDisplayType.Grid
|
|
41
42
|
*/
|
|
42
43
|
overlayRef: TemplateRef<any>;
|
|
44
|
+
/**
|
|
45
|
+
* custom card template for each card only for NodeEntriesDisplayType.Grid
|
|
46
|
+
*/
|
|
47
|
+
customCard: TemplateRef<any>;
|
|
43
48
|
nodeEntriesComponentRef: NodeEntriesComponent<T>;
|
|
44
49
|
dataSource: NodeDataSource<T>;
|
|
45
50
|
scope: Scope;
|
|
46
|
-
columns:
|
|
51
|
+
columns: ColumnType;
|
|
47
52
|
configureColumns: boolean;
|
|
48
53
|
checkbox: boolean;
|
|
49
54
|
/**
|
|
@@ -58,6 +63,7 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
|
|
|
58
63
|
sort: ListSortConfig;
|
|
59
64
|
dragDrop: ListDragGropConfig<T>;
|
|
60
65
|
gridConfig: GridConfig;
|
|
66
|
+
tableConfig: TableConfig;
|
|
61
67
|
/**
|
|
62
68
|
* This color defines the base color of gradients visually limiting a grid in scroll direction.
|
|
63
69
|
* Defaults to white.
|
|
@@ -94,6 +100,10 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
|
|
|
94
100
|
* Do not load more data on scroll.
|
|
95
101
|
*/
|
|
96
102
|
disableInfiniteScroll: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* show the icon column (table view only)
|
|
105
|
+
*/
|
|
106
|
+
showIconColumn: boolean;
|
|
97
107
|
fetchData: EventEmitter<FetchEvent>;
|
|
98
108
|
clickItem: EventEmitter<NodeClickEvent<T>>;
|
|
99
109
|
dblClickItem: EventEmitter<NodeClickEvent<T>>;
|
|
@@ -102,7 +112,9 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
|
|
|
102
112
|
displayTypeChanged: EventEmitter<NodeEntriesDisplayType>;
|
|
103
113
|
customNodeListComponent: Type<NodeEntriesComponent<T>>;
|
|
104
114
|
private componentRef;
|
|
115
|
+
lastLoadingCompleted: number;
|
|
105
116
|
private options;
|
|
117
|
+
private dataSourceDestroy$;
|
|
106
118
|
private destroyed;
|
|
107
119
|
constructor(viewContainerRef: ViewContainerRef, temporaryStorageService: TemporaryStorageService, ngZone: NgZone, entriesService: NodeEntriesService<T>, nodeService: NodeService, optionsHelper: OptionsHelperDataService, nodeHelperService: NodeHelperService, uiService: UIService, templatesService: NodeEntriesTemplatesService, changeDetectorRef: ChangeDetectorRef, elementRef: ElementRef);
|
|
108
120
|
ngOnInit(): void;
|
|
@@ -123,7 +135,9 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
|
|
|
123
135
|
setDisplayType(displayType: NodeEntriesDisplayType): void;
|
|
124
136
|
updateNodes(nodes: void | T[]): void;
|
|
125
137
|
showReorderColumnsDialog(): void;
|
|
126
|
-
addVirtualNodes(virtual: T[]
|
|
138
|
+
addVirtualNodes(virtual: T[], options?: {
|
|
139
|
+
select: boolean;
|
|
140
|
+
}): void;
|
|
127
141
|
setOptions(options: ListOptions): void;
|
|
128
142
|
selectAll(): void;
|
|
129
143
|
getSelection(): CustomSelectionModel<T>;
|
|
@@ -137,5 +151,5 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
|
|
|
137
151
|
resetPagination(): void;
|
|
138
152
|
deleteNodes(objects: T[]): void;
|
|
139
153
|
static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesWrapperComponent<any>, never>;
|
|
140
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<NodeEntriesWrapperComponent<any>, "es-node-entries-wrapper", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "scope": { "alias": "scope"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "configureColumns": { "alias": "configureColumns"; "required": false; }; "checkbox": { "alias": "checkbox"; "required": false; }; "globalOptions": { "alias": "globalOptions"; "required": false; }; "displayType": { "alias": "displayType"; "required": false; }; "elementInteractionType": { "alias": "elementInteractionType"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "dragDrop": { "alias": "dragDrop"; "required": false; }; "gridConfig": { "alias": "gridConfig"; "required": false; }; "scrollGradientColor": { "alias": "scrollGradientColor"; "required": false; }; "initConfig": { "alias": "initConfig"; "required": false; }; "primaryInstance": { "alias": "primaryInstance"; "required": false; }; "singleClickHint": { "alias": "singleClickHint"; "required": false; }; "disableInfiniteScroll": { "alias": "disableInfiniteScroll"; "required": false; }; }, { "columnsChange": "columnsChange"; "displayTypeChange": "displayTypeChange"; "fetchData": "fetchData"; "clickItem": "clickItem"; "dblClickItem": "dblClickItem"; "sortChange": "sortChange"; "virtualNodesAdded": "virtualNodesAdded"; "displayTypeChanged": "displayTypeChanged"; }, ["titleRef", "emptyRef", "actionAreaRef", "overlayRef"], never, false, never>;
|
|
154
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NodeEntriesWrapperComponent<any>, "es-node-entries-wrapper", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "scope": { "alias": "scope"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "configureColumns": { "alias": "configureColumns"; "required": false; }; "checkbox": { "alias": "checkbox"; "required": false; }; "globalOptions": { "alias": "globalOptions"; "required": false; }; "displayType": { "alias": "displayType"; "required": false; }; "elementInteractionType": { "alias": "elementInteractionType"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "dragDrop": { "alias": "dragDrop"; "required": false; }; "gridConfig": { "alias": "gridConfig"; "required": false; }; "tableConfig": { "alias": "tableConfig"; "required": false; }; "scrollGradientColor": { "alias": "scrollGradientColor"; "required": false; }; "initConfig": { "alias": "initConfig"; "required": false; }; "primaryInstance": { "alias": "primaryInstance"; "required": false; }; "singleClickHint": { "alias": "singleClickHint"; "required": false; }; "disableInfiniteScroll": { "alias": "disableInfiniteScroll"; "required": false; }; "showIconColumn": { "alias": "showIconColumn"; "required": false; }; }, { "columnsChange": "columnsChange"; "displayTypeChange": "displayTypeChange"; "fetchData": "fetchData"; "clickItem": "clickItem"; "dblClickItem": "dblClickItem"; "sortChange": "sortChange"; "virtualNodesAdded": "virtualNodesAdded"; "displayTypeChanged": "displayTypeChanged"; }, ["titleRef", "emptyRef", "actionAreaRef", "overlayRef", "customCard"], never, false, never>;
|
|
141
155
|
}
|
|
@@ -38,6 +38,6 @@ import * as i36 from "@angular/material/tooltip";
|
|
|
38
38
|
import * as i37 from "@ngx-translate/core";
|
|
39
39
|
export declare class NodeEntriesModule {
|
|
40
40
|
static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesModule, never>;
|
|
41
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<NodeEntriesModule, [typeof i1.ColumnChooserComponent, typeof i2.DragPreviewComponent, typeof i3.ListItemLabelPipe, typeof i4.NodeEntriesCardComponent, typeof i5.NodeEntriesCardGridComponent, typeof i6.NodeEntriesCardSmallComponent, typeof i7.NodeEntriesTableComponent, typeof i8.NodeRatingComponent, typeof i9.PreviewImageComponent, typeof i10.NodeEntriesComponent, typeof i11.NodeEntriesWrapperComponent, typeof i8.NodeRatingComponent, typeof i12.NodeTypeBadgeComponent, typeof i13.OptionButtonComponent, typeof i9.PreviewImageComponent, typeof i14.SortSelectPanelComponent, typeof i15.NodesDragDirective, typeof i16.NodesDragSourceDirective, typeof i17.NodesDropTargetDirective, typeof i18.NodeEntriesGlobalOptionsComponent, typeof i19.NodeStatsBadgesComponent], [typeof i20.CommonModule, typeof i21.FormsModule, typeof i22.A11yModule, typeof i23.OverlayModule, typeof i24.DragDropModule, typeof i25.EduSharingUiCommonModule, typeof i26.ListItemsModule, typeof i27.MatCheckboxModule, typeof i28.MatButtonModule, typeof i29.MatBadgeModule, typeof i30.MatMenuModule, typeof i31.MatTableModule, typeof i27.MatCheckboxModule, typeof i32.MatPaginatorModule, typeof i33.MatRippleModule, typeof i34.MatSlideToggleModule, typeof i35.MatSortModule, typeof i36.MatTooltipModule, typeof i37.TranslateModule], [typeof i11.NodeEntriesWrapperComponent, typeof i15.NodesDragDirective, typeof i16.NodesDragSourceDirective, typeof i17.NodesDropTargetDirective, typeof
|
|
41
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<NodeEntriesModule, [typeof i1.ColumnChooserComponent, typeof i2.DragPreviewComponent, typeof i3.ListItemLabelPipe, typeof i4.NodeEntriesCardComponent, typeof i5.NodeEntriesCardGridComponent, typeof i6.NodeEntriesCardSmallComponent, typeof i7.NodeEntriesTableComponent, typeof i8.NodeRatingComponent, typeof i9.PreviewImageComponent, typeof i10.NodeEntriesComponent, typeof i11.NodeEntriesWrapperComponent, typeof i8.NodeRatingComponent, typeof i12.NodeTypeBadgeComponent, typeof i13.OptionButtonComponent, typeof i9.PreviewImageComponent, typeof i14.SortSelectPanelComponent, typeof i15.NodesDragDirective, typeof i16.NodesDragSourceDirective, typeof i17.NodesDropTargetDirective, typeof i18.NodeEntriesGlobalOptionsComponent, typeof i19.NodeStatsBadgesComponent], [typeof i20.CommonModule, typeof i21.FormsModule, typeof i22.A11yModule, typeof i23.OverlayModule, typeof i24.DragDropModule, typeof i25.EduSharingUiCommonModule, typeof i26.ListItemsModule, typeof i27.MatCheckboxModule, typeof i28.MatButtonModule, typeof i29.MatBadgeModule, typeof i30.MatMenuModule, typeof i31.MatTableModule, typeof i27.MatCheckboxModule, typeof i32.MatPaginatorModule, typeof i33.MatRippleModule, typeof i34.MatSlideToggleModule, typeof i35.MatSortModule, typeof i36.MatTooltipModule, typeof i37.TranslateModule], [typeof i3.ListItemLabelPipe, typeof i11.NodeEntriesWrapperComponent, typeof i8.NodeRatingComponent, typeof i15.NodesDragDirective, typeof i16.NodesDragSourceDirective, typeof i17.NodesDropTargetDirective, typeof i19.NodeStatsBadgesComponent, typeof i12.NodeTypeBadgeComponent]>;
|
|
42
42
|
static ɵinj: i0.ɵɵInjectorDeclaration<NodeEntriesModule>;
|
|
43
43
|
}
|
|
@@ -2,6 +2,8 @@ import { OnChanges } from '@angular/core';
|
|
|
2
2
|
import { Node } from 'ngx-edu-sharing-api';
|
|
3
3
|
import { NodeEntriesGlobalService } from '../node-entries-global.service';
|
|
4
4
|
import { NodeHelperService } from '../../services/node-helper.service';
|
|
5
|
+
import { NodeEntriesService } from '../../services/node-entries.service';
|
|
6
|
+
import { NodeEntriesDataType } from '../entries-model';
|
|
5
7
|
import * as i0 from "@angular/core";
|
|
6
8
|
/**
|
|
7
9
|
* A small circular badge that depicts the node's type.
|
|
@@ -11,11 +13,18 @@ import * as i0 from "@angular/core";
|
|
|
11
13
|
export declare class NodeTypeBadgeComponent implements OnChanges {
|
|
12
14
|
nodeHelper: NodeHelperService;
|
|
13
15
|
private nodeEntriesGlobalService;
|
|
14
|
-
|
|
16
|
+
nodeEntriesService: NodeEntriesService<Node>;
|
|
17
|
+
node: NodeEntriesDataType;
|
|
18
|
+
/**
|
|
19
|
+
* when true, collection icons will resolve based on their type (editorial, private...)
|
|
20
|
+
* When false, the generic svg image is used
|
|
21
|
+
*/
|
|
22
|
+
collectionIcons: boolean;
|
|
15
23
|
isCollection: boolean;
|
|
16
|
-
constructor(nodeHelper: NodeHelperService, nodeEntriesGlobalService: NodeEntriesGlobalService);
|
|
24
|
+
constructor(nodeHelper: NodeHelperService, nodeEntriesGlobalService: NodeEntriesGlobalService, nodeEntriesService: NodeEntriesService<Node>);
|
|
17
25
|
ngOnChanges(): void;
|
|
18
26
|
getCustomTemplate(): import("@angular/core").TemplateRef<unknown>;
|
|
19
|
-
|
|
20
|
-
static
|
|
27
|
+
materialIcon(): "group" | "person";
|
|
28
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NodeTypeBadgeComponent, [null, null, { optional: true; }]>;
|
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NodeTypeBadgeComponent, "es-node-type-badge", never, { "node": { "alias": "node"; "required": false; }; "collectionIcons": { "alias": "collectionIcons"; "required": false; }; }, {}, never, never, false, never>;
|
|
21
30
|
}
|
|
@@ -18,7 +18,7 @@ export declare class NodeImagePipe implements PipeTransform {
|
|
|
18
18
|
private repoUrlService;
|
|
19
19
|
private networkApi;
|
|
20
20
|
constructor(nodeHelper: NodeHelperService, sanitizer: DomSanitizer, repoUrlService: RepoUrlService, networkApi: NetworkService);
|
|
21
|
-
transform(node: Node, preferences
|
|
21
|
+
transform(node: Node, preferences?: NodeImagePreferences): Observable<SafeResourceUrl>;
|
|
22
22
|
private getPreviewUrl;
|
|
23
23
|
private isEduSharingNode;
|
|
24
24
|
static ɵfac: i0.ɵɵFactoryDeclaration<NodeImagePipe, never>;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { SelectionModel } from '@angular/cdk/collections';
|
|
2
2
|
import { EventEmitter, WritableSignal } from '@angular/core';
|
|
3
3
|
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
import { ClickSource, FetchEvent, GridConfig, InteractionType, ListDragGropConfig, ListEventInterface, ListOptions, ListSortConfig, NodeClickEvent, NodeEntriesDataType, NodeEntriesDisplayType } from '../node-entries/entries-model';
|
|
4
|
+
import { ClickSource, FetchEvent, GridConfig, InteractionType, ListDragGropConfig, ListEventInterface, ListOptions, ListSortConfig, NodeClickEvent, NodeEntriesDataType, NodeEntriesDisplayType, TableConfig } from '../node-entries/entries-model';
|
|
5
5
|
import { NodeDataSource } from '../node-entries/node-data-source';
|
|
6
6
|
import { NodeEntriesGlobalService, PaginationStrategy } from '../node-entries/node-entries-global.service';
|
|
7
7
|
import { OptionItem, Scope } from '../types/option-item';
|
|
8
|
-
import { ListItem } from '../types/list-item';
|
|
8
|
+
import { ListItem, ListItemSort } from '../types/list-item';
|
|
9
9
|
import { UIService } from './ui.service';
|
|
10
10
|
import { DropdownComponent } from '../dropdown/dropdown.component';
|
|
11
11
|
import { Toast } from './abstract/toast.service';
|
|
@@ -79,11 +79,15 @@ export declare class NodeEntriesService<T extends NodeEntriesDataType> {
|
|
|
79
79
|
dblClickItem: EventEmitter<NodeClickEvent<T>>;
|
|
80
80
|
fetchData: EventEmitter<FetchEvent>;
|
|
81
81
|
readonly gridConfig$: BehaviorSubject<GridConfig>;
|
|
82
|
+
readonly tableConfig$: BehaviorSubject<TableConfig>;
|
|
82
83
|
get gridConfig(): GridConfig;
|
|
83
84
|
set gridConfig(value: GridConfig);
|
|
85
|
+
get tableConfig(): TableConfig;
|
|
86
|
+
set tableConfig(value: TableConfig);
|
|
84
87
|
primaryInstance: boolean;
|
|
85
88
|
singleClickHint: 'dynamic' | 'static';
|
|
86
89
|
disableInfiniteScroll: boolean;
|
|
90
|
+
showIconColumn: BehaviorSubject<boolean>;
|
|
87
91
|
scrollGradientColor: WritableSignal<string>;
|
|
88
92
|
constructor(uiService: UIService, toast: Toast, entriesGlobal: NodeEntriesGlobalService);
|
|
89
93
|
onClicked({ event, ...data }: NodeClickEvent<T> & {
|
|
@@ -96,6 +100,7 @@ export declare class NodeEntriesService<T extends NodeEntriesDataType> {
|
|
|
96
100
|
private isAllSelected;
|
|
97
101
|
private expandSelectionTo;
|
|
98
102
|
openDropdown(dropdown: DropdownComponent, node: T, onDone?: () => void): void;
|
|
103
|
+
getSortColumns(): ListItemSort[];
|
|
99
104
|
static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesService<any>, never>;
|
|
100
105
|
static ɵprov: i0.ɵɵInjectableDeclaration<NodeEntriesService<any>>;
|
|
101
106
|
}
|