ngx-edu-sharing-ui 10.0.25 → 11.0.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 (37) hide show
  1. package/assets/scss/branding.scss +4 -3
  2. package/assets/scss/material-theme.scss +19 -11
  3. package/assets/scss/mixins.scss +8 -5
  4. package/assets/scss/variables.scss +9 -1
  5. package/fesm2022/ngx-edu-sharing-ui.mjs +888 -678
  6. package/fesm2022/ngx-edu-sharing-ui.mjs.map +1 -1
  7. package/lib/common/edu-sharing-ui-common.module.d.ts +27 -24
  8. package/lib/directives/icon.directive.d.ts +3 -1
  9. package/lib/edu-sharing-ui-configuration.d.ts +7 -0
  10. package/lib/edu-sharing-ui.module.d.ts +2 -2
  11. package/lib/index.d.ts +7 -0
  12. package/lib/info-message/info-message.component.d.ts +13 -0
  13. package/lib/list-items/list-text/list-text.component.d.ts +1 -1
  14. package/lib/list-items/list-widget.d.ts +1 -1
  15. package/lib/mds/mds-helper.service.d.ts +20 -3
  16. package/lib/mds-viewer/mds-editor-instance-service.abstract.d.ts +1 -1
  17. package/lib/mds-viewer/widget/mds-widget.component.d.ts +11 -8
  18. package/lib/node-entries/entries-model.d.ts +10 -1
  19. package/lib/node-entries/node-entries-card/node-entries-card.component.d.ts +1 -1
  20. package/lib/node-entries/node-entries-table/node-entries-table.component.d.ts +2 -0
  21. package/lib/node-entries/node-entries-wrapper.component.d.ts +21 -3
  22. package/lib/node-entries/node-entries.component.d.ts +5 -2
  23. package/lib/node-entries/node-entries.module.d.ts +1 -1
  24. package/lib/pipes/node-image.pipe.d.ts +1 -1
  25. package/lib/pipes/node-url.pipe.d.ts +11 -0
  26. package/lib/pipes/toolpermission.pipe.d.ts +10 -0
  27. package/lib/services/node-entries.service.d.ts +5 -1
  28. package/lib/services/node-helper.service.d.ts +11 -5
  29. package/lib/services/options-helper-data.service.d.ts +2 -2
  30. package/lib/services/render-helper.service.d.ts +2 -1
  31. package/lib/services/ui.service.d.ts +1 -0
  32. package/lib/translations/translation-loader.d.ts +3 -3
  33. package/lib/types/accessibillity.d.ts +1 -0
  34. package/lib/types/injection-tokens.d.ts +9 -16
  35. package/lib/types/list-item.d.ts +1 -1
  36. package/lib/types/option-item.d.ts +59 -20
  37. package/package.json +2 -1
@@ -9,31 +9,34 @@ import * as i7 from "../directives/focus-state.directive";
9
9
  import * as i8 from "../pipes/format-date.pipe";
10
10
  import * as i9 from "../pipes/file-size.pipe";
11
11
  import * as i10 from "../directives/icon.directive";
12
- import * as i11 from "../pipes/mds-duration.pipe";
13
- import * as i12 from "../directives/infinite-scroll.directive";
14
- import * as i13 from "../pipes/property-slug.pipe";
15
- import * as i14 from "../pipes/node-icon.pipe";
16
- import * as i15 from "../pipes/node-image.pipe";
17
- import * as i16 from "../pipes/node-image-size.pipe";
18
- import * as i17 from "../pipes/node-license.pipe";
19
- import * as i18 from "../pipes/node-person-name.pipe";
20
- import * as i19 from "../pipes/node-title.pipe";
21
- import * as i20 from "../node-url/node-url.component";
22
- import * as i21 from "../pipes/option-tooltip.pipe";
23
- import * as i22 from "../pipes/replace-chars.pipe";
24
- import * as i23 from "../sort-dropdown/sort-dropdown.component";
25
- import * as i24 from "../pipes/vcard-name.pipe";
26
- import * as i25 from "@angular/common";
27
- import * as i26 from "@angular/material/menu";
28
- import * as i27 from "../spinner/spinner.component";
29
- import * as i28 from "../spinner-small/spinner-small.component";
30
- import * as i29 from "@angular/material/button";
31
- import * as i30 from "@angular/material/tooltip";
32
- import * as i31 from "@angular/material/core";
33
- import * as i32 from "@ngx-translate/core";
34
- import * as i33 from "@angular/router";
12
+ import * as i11 from "../info-message/info-message.component";
13
+ import * as i12 from "../pipes/mds-duration.pipe";
14
+ import * as i13 from "../directives/infinite-scroll.directive";
15
+ import * as i14 from "../pipes/property-slug.pipe";
16
+ import * as i15 from "../pipes/node-icon.pipe";
17
+ import * as i16 from "../pipes/node-url.pipe";
18
+ import * as i17 from "../pipes/node-image.pipe";
19
+ import * as i18 from "../pipes/node-image-size.pipe";
20
+ import * as i19 from "../pipes/node-license.pipe";
21
+ import * as i20 from "../pipes/node-person-name.pipe";
22
+ import * as i21 from "../pipes/node-title.pipe";
23
+ import * as i22 from "../node-url/node-url.component";
24
+ import * as i23 from "../pipes/option-tooltip.pipe";
25
+ import * as i24 from "../pipes/replace-chars.pipe";
26
+ import * as i25 from "../sort-dropdown/sort-dropdown.component";
27
+ import * as i26 from "../pipes/vcard-name.pipe";
28
+ import * as i27 from "@angular/common";
29
+ import * as i28 from "@angular/material/menu";
30
+ import * as i29 from "../spinner/spinner.component";
31
+ import * as i30 from "../spinner-small/spinner-small.component";
32
+ import * as i31 from "../pipes/toolpermission.pipe";
33
+ import * as i32 from "@angular/material/button";
34
+ import * as i33 from "@angular/material/tooltip";
35
+ import * as i34 from "@angular/material/core";
36
+ import * as i35 from "@ngx-translate/core";
37
+ import * as i36 from "@angular/router";
35
38
  export declare class EduSharingUiCommonModule {
36
39
  static ɵfac: i0.ɵɵFactoryDeclaration<EduSharingUiCommonModule, never>;
37
- static ɵmod: i0.ɵɵNgModuleDeclaration<EduSharingUiCommonModule, [typeof i1.MdsViewerComponent, typeof i2.MdsWidgetComponent, typeof i3.ActionbarComponent, typeof i4.BorderBoxObserverDirective, typeof i5.CheckTextOverflowDirective, typeof i6.DropdownComponent, typeof i7.FocusStateDirective, typeof i8.FormatDatePipe, typeof i9.FormatSizePipe, typeof i10.IconDirective, typeof i11.MdsDurationPipe, typeof i12.InfiniteScrollDirective, typeof i13.PropertySlugPipe, typeof i14.NodeIconPipe, typeof i15.NodeImagePipe, typeof i16.NodeImageSizePipe, typeof i17.NodeLicensePipe, typeof i18.NodePersonNamePipe, typeof i19.NodeTitlePipe, typeof i20.NodeUrlComponent, typeof i21.OptionTooltipPipe, typeof i22.ReplaceCharsPipe, typeof i23.SortDropdownComponent, typeof i24.VCardNamePipe], [typeof i25.CommonModule, typeof i26.MatMenuModule, typeof i27.SpinnerComponent, typeof i28.SpinnerSmallComponent, typeof i29.MatButtonModule, typeof i30.MatTooltipModule, typeof i31.MatRippleModule, typeof i32.TranslateModule, typeof i33.RouterModule], [typeof i1.MdsViewerComponent, typeof i2.MdsWidgetComponent, typeof i3.ActionbarComponent, typeof i4.BorderBoxObserverDirective, typeof i5.CheckTextOverflowDirective, typeof i6.DropdownComponent, typeof i7.FocusStateDirective, typeof i8.FormatDatePipe, typeof i9.FormatSizePipe, typeof i11.MdsDurationPipe, typeof i10.IconDirective, typeof i12.InfiniteScrollDirective, typeof i13.PropertySlugPipe, typeof i14.NodeIconPipe, typeof i15.NodeImagePipe, typeof i16.NodeImageSizePipe, typeof i18.NodePersonNamePipe, typeof i19.NodeTitlePipe, typeof i20.NodeUrlComponent, typeof i23.SortDropdownComponent, typeof i27.SpinnerComponent, typeof i28.SpinnerSmallComponent, typeof i24.VCardNamePipe]>;
40
+ static ɵmod: i0.ɵɵNgModuleDeclaration<EduSharingUiCommonModule, [typeof i1.MdsViewerComponent, typeof i2.MdsWidgetComponent, typeof i3.ActionbarComponent, typeof i4.BorderBoxObserverDirective, typeof i5.CheckTextOverflowDirective, typeof i6.DropdownComponent, typeof i7.FocusStateDirective, typeof i8.FormatDatePipe, typeof i9.FormatSizePipe, typeof i10.IconDirective, typeof i11.InfoMessageComponent, typeof i12.MdsDurationPipe, typeof i13.InfiniteScrollDirective, typeof i14.PropertySlugPipe, typeof i15.NodeIconPipe, typeof i16.NodeUrlPipe, typeof i17.NodeImagePipe, typeof i18.NodeImageSizePipe, typeof i19.NodeLicensePipe, typeof i20.NodePersonNamePipe, typeof i21.NodeTitlePipe, typeof i22.NodeUrlComponent, typeof i23.OptionTooltipPipe, typeof i24.ReplaceCharsPipe, typeof i25.SortDropdownComponent, typeof i26.VCardNamePipe], [typeof i27.CommonModule, typeof i28.MatMenuModule, typeof i29.SpinnerComponent, typeof i30.SpinnerSmallComponent, typeof i31.ToolpermissionPipe, typeof i32.MatButtonModule, typeof i33.MatTooltipModule, typeof i34.MatRippleModule, typeof i35.TranslateModule, typeof i36.RouterModule], [typeof i1.MdsViewerComponent, typeof i2.MdsWidgetComponent, typeof i3.ActionbarComponent, typeof i4.BorderBoxObserverDirective, typeof i5.CheckTextOverflowDirective, typeof i6.DropdownComponent, typeof i7.FocusStateDirective, typeof i8.FormatDatePipe, typeof i9.FormatSizePipe, typeof i12.MdsDurationPipe, typeof i10.IconDirective, typeof i13.InfiniteScrollDirective, typeof i11.InfoMessageComponent, typeof i14.PropertySlugPipe, typeof i15.NodeIconPipe, typeof i16.NodeUrlPipe, typeof i17.NodeImagePipe, typeof i18.NodeImageSizePipe, typeof i20.NodePersonNamePipe, typeof i21.NodeTitlePipe, typeof i22.NodeUrlComponent, typeof i31.ToolpermissionPipe, typeof i25.SortDropdownComponent, typeof i29.SpinnerComponent, typeof i30.SpinnerSmallComponent, typeof i26.VCardNamePipe]>;
38
41
  static ɵinj: i0.ɵɵInjectorDeclaration<EduSharingUiCommonModule>;
39
42
  }
@@ -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
@@ -17,6 +17,7 @@ export * from './directives/infinite-scroll.directive';
17
17
  export * from './dropdown/dropdown.component';
18
18
  export * from './edu-sharing-ui-configuration';
19
19
  export * from './edu-sharing-ui.module';
20
+ export * from './info-message/info-message.component';
20
21
  export * from './list-items/format-duration.pipe';
21
22
  export * from './list-items/list-base/list-base.component';
22
23
  export * from './list-items/list-counts/list-counts.component';
@@ -29,18 +30,24 @@ export * from './node-entries/entries-model';
29
30
  export * from './node-entries/items-cap';
30
31
  export * from './node-entries/list-item-label.pipe';
31
32
  export * from './node-entries/node-cache';
33
+ export * from './node-entries/node-rating/node-rating.component';
34
+ export * from './node-entries/node-type-badge/node-type-badge.component';
35
+ export * from './node-entries/node-stats-badges/node-stats-badges.component';
32
36
  export * from './node-entries/node-data-source';
33
37
  export * from './node-entries/node-data-source-remote';
34
38
  export * from './node-entries/node-entries-global.service';
39
+ export * from './node-entries/node-entries-card/node-entries-card.component';
35
40
  export * from './node-entries/node-entries-wrapper.component';
36
41
  export * from './node-entries/node-entries.module';
37
42
  export * from './mds-viewer/mds-viewer.component';
38
43
  export * from './mds-viewer/replace-element-with-div';
39
44
  export * from './node-url/node-url.component';
45
+ export * from './pipes/toolpermission.pipe';
40
46
  export * from './pipes/property-slug.pipe';
41
47
  export * from './pipes/file-size.pipe';
42
48
  export * from './pipes/format-date.pipe';
43
49
  export * from './pipes/mds-duration.pipe';
50
+ export * from './pipes/node-url.pipe';
44
51
  export * from './pipes/node-icon.pipe';
45
52
  export * from './pipes/node-image-size.pipe';
46
53
  export * from './pipes/node-image.pipe';
@@ -0,0 +1,13 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class InfoMessageComponent {
3
+ /**
4
+ * the message to display
5
+ */
6
+ message: string;
7
+ mode: 'info' | 'warning' | 'error';
8
+ ICONS: any;
9
+ constructor();
10
+ getIcon(): any;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<InfoMessageComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<InfoMessageComponent, "es-info-message", never, { "message": { "alias": "message"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; }, {}, never, ["*"], false, never>;
13
+ }
@@ -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.Group | Constants.Person | Constants.Statistics;
19
+ getNode(): Constants.Node | Constants.Person | Constants.Group | Constants.Statistics | Constants.UserEvent | Constants.InviteEvent;
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 | Group | Person | ProposalNode | Statistics>;
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>;
@@ -1,11 +1,23 @@
1
1
  import { TranslateService } from '@ngx-translate/core';
2
- import { AuthenticationService, MdsDefinition, MdsSort, MdsWidget } from 'ngx-edu-sharing-api';
2
+ import { AuthenticationService, MdsDefinition, MdsIdentifier, MdsService, 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 mdsService;
12
+ private translate;
7
13
  static getSortInfo(mdsSet: MdsDefinition, name: string): MdsSort;
8
- static getColumns(translate: TranslateService, mdsSet: any, name: string): ListItem[];
14
+ /**
15
+ *
16
+ * get columns as an object structure
17
+ * There are always Columns in the result.Default but there can also be further types
18
+ * See @ColumnType
19
+ */
20
+ getColumns(mdsSet: MdsDefinition, name: string): ColumnType;
9
21
  /**
10
22
  * Finds the appropriate widget with the id, but will not check any widget conditions
11
23
  * @param cid
@@ -13,7 +25,7 @@ export declare class MdsHelperService {
13
25
  * @param widgets
14
26
  */
15
27
  static getWidget(cid: string, template: string | undefined | null, widgets: MdsWidget[]): MdsWidget;
16
- constructor(authentication: AuthenticationService);
28
+ constructor(authentication: AuthenticationService, mdsService: MdsService, translate: TranslateService);
17
29
  /**
18
30
  * Same as getWidget, but will also check the widget conditions
19
31
  * @param connector
@@ -32,6 +44,11 @@ export declare class MdsHelperService {
32
44
  * Returns all widgets used by the given template
33
45
  */
34
46
  static getUsedWidgets(mds: MdsDefinition, template?: string): any[];
47
+ /**
48
+ * Same as getColumns, but you don't need to fetch the mds yourself
49
+ */
50
+ getColumnsByMdsId(name: string, mds: Partial<MdsIdentifier>): Promise<ColumnType>;
35
51
  static ɵfac: i0.ɵɵFactoryDeclaration<MdsHelperService, never>;
36
52
  static ɵprov: i0.ɵɵInjectableDeclaration<MdsHelperService>;
37
53
  }
54
+ export {};
@@ -10,5 +10,5 @@ export declare abstract class MdsEditorInstanceServiceAbstract {
10
10
  /** Nodes with updated and complete metadata. */
11
11
  nodes$: BehaviorSubject<Node[]>;
12
12
  abstract saveWidgetValue(widget: any): Promise<void>;
13
- abstract fetchDisplayValues(widget: any): Promise<void>;
13
+ abstract fetchDisplayValues(widget: any, additionalKeys?: string[]): Promise<void>;
14
14
  }
@@ -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';
@@ -25,8 +25,11 @@ export interface MdsValueList {
25
25
  }
26
26
  export interface MdsViewerWidget {
27
27
  definition: MdsWidget;
28
+ focusTrigger: Subject<void>;
28
29
  getInitalValuesAsync(): Promise<InitialValues>;
29
30
  getInitialDisplayValues(): BehaviorSubject<MdsValueList>;
31
+ getBasicType(flat?: boolean): string;
32
+ getFormattedValue(value: string[], basicType: string, translate: TranslateService): string[];
30
33
  }
31
34
  export declare enum MdsWidgetType {
32
35
  Text = "text",
@@ -72,7 +75,7 @@ export declare enum ValueType {
72
75
  MultiValue = 1,
73
76
  Range = 2
74
77
  }
75
- export declare class MdsWidgetComponent implements OnInit, OnChanges {
78
+ export declare class MdsWidgetComponent implements OnInit, OnDestroy, OnChanges {
76
79
  private mdsEditorInstance;
77
80
  translate: TranslateService;
78
81
  private ui;
@@ -81,6 +84,8 @@ export declare class MdsWidgetComponent implements OnInit, OnChanges {
81
84
  private injector;
82
85
  private nodeHelper;
83
86
  readonly ROUTER_PREFIX: string;
87
+ readonly focusTrigger: Subject<void>;
88
+ readonly destroyed$: Subject<void>;
84
89
  private static readonly inlineEditing;
85
90
  readonly valueType = ValueType.String;
86
91
  widget: MdsViewerWidget;
@@ -107,18 +112,16 @@ export declare class MdsWidgetComponent implements OnInit, OnChanges {
107
112
  value: import("@angular/core").WritableSignal<string[]>;
108
113
  private temporaryValue;
109
114
  constructor(mdsEditorInstance: MdsEditorInstanceServiceAbstract, translate: TranslateService, ui: UIService, viewInstance: ViewInstanceService, mdsViewerService: MdsViewerService, injector: Injector, nodeHelper: NodeHelperService);
115
+ ngOnDestroy(): void;
110
116
  ngOnChanges(changes: SimpleChanges): Promise<void>;
111
117
  ngOnInit(): Promise<void>;
112
118
  getDefinition(): MdsWidget;
113
- getBasicType(): "number" | "text" | "date" | "vcard" | "slider" | "range" | "duration" | "license" | "array" | "tree" | "unknown";
114
119
  supportsInlineEditing(): boolean;
115
120
  private getNodeValues;
116
121
  private getNodeValue;
117
122
  getValue(data: string[]): any[];
118
123
  click(): void;
119
- formatDate(): string[];
120
- formatNumber(): string[];
121
- formatText(): string[];
124
+ formatValue(): string[];
122
125
  finishEdit(instance: any, store?: boolean): Promise<void>;
123
126
  isEditable(): boolean;
124
127
  focus(): Promise<void>;
@@ -132,7 +135,7 @@ export declare class MdsWidgetComponent implements OnInit, OnChanges {
132
135
  */
133
136
  private getRawValue;
134
137
  getSearchParams(key: MdsValue): any;
135
- startEdit(event: MouseEvent): void;
138
+ startEdit(event?: MouseEvent): void;
136
139
  static ɵfac: i0.ɵɵFactoryDeclaration<MdsWidgetComponent, [{ optional: true; }, null, null, null, null, null, null]>;
137
140
  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
141
  }
@@ -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 { Node, GenericAuthority } from 'ngx-edu-sharing-api';
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,6 +75,15 @@ 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>;
@@ -40,6 +40,6 @@ export declare class NodeEntriesCardComponent<T extends Node> implements OnChang
40
40
  openMenu(node: T): Promise<void>;
41
41
  ngOnInit(): Promise<void>;
42
42
  getTemplate(name: CustomFieldSpecialType): import("@angular/core").TemplateRef<unknown>;
43
- static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesCardComponent<any>, [null, null, null, null, null, null, null, { optional: true; }]>;
43
+ static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesCardComponent<any>, [null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }]>;
44
44
  static ɵcmp: i0.ɵɵComponentDeclaration<NodeEntriesCardComponent<any>, "es-node-entries-card", never, { "dropdown": { "alias": "dropdown"; "required": false; }; "node": { "alias": "node"; "required": false; }; }, {}, never, never, false, never>;
45
45
  }
@@ -38,6 +38,7 @@ export declare class NodeEntriesTableComponent<T extends NodeEntriesDataType> im
38
38
  columnChooserTrigger: CdkOverlayOrigin;
39
39
  dropdown: DropdownComponent;
40
40
  menuTrigger: MatMenuTrigger;
41
+ isScroll: boolean;
41
42
  dropdownLeft: number;
42
43
  dropdownTop: number;
43
44
  loading: Observable<boolean>;
@@ -52,6 +53,7 @@ export declare class NodeEntriesTableComponent<T extends NodeEntriesDataType> im
52
53
  readonly visibleDataColumns$: rxjs.Observable<ListItem[]>;
53
54
  readonly visibleColumnNames$: rxjs.Observable<string[]>;
54
55
  private destroyed;
56
+ containerWidth$: rxjs.BehaviorSubject<number>;
55
57
  constructor(entriesService: NodeEntriesService<T>, entriesGlobalService: NodeEntriesGlobalService, applicationRef: ApplicationRef, toast: Toast, translations: TranslationsService, nodeHelperService: NodeHelperService, changeDetectorRef: ChangeDetectorRef, ui: UIService, ngZone: NgZone, elementRef: ElementRef<HTMLElement>);
56
58
  ngAfterViewInit(): void;
57
59
  ngOnChanges(changes: SimpleChanges): void;
@@ -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,8 @@ 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 { SelectionChange } from '@angular/cdk/collections';
15
+ import { ColumnType } from '../mds/mds-helper.service';
14
16
  import * as i0 from "@angular/core";
15
17
  export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType> implements AfterViewInit, OnInit, OnChanges, OnDestroy, ListEventInterface<T> {
16
18
  private viewContainerRef;
@@ -43,7 +45,7 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
43
45
  nodeEntriesComponentRef: NodeEntriesComponent<T>;
44
46
  dataSource: NodeDataSource<T>;
45
47
  scope: Scope;
46
- columns: ListItem[];
48
+ columns: ColumnType;
47
49
  configureColumns: boolean;
48
50
  checkbox: boolean;
49
51
  /**
@@ -54,10 +56,12 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
54
56
  globalOptions: OptionItem[];
55
57
  displayType: NodeEntriesDisplayType;
56
58
  displayTypeChange: EventEmitter<NodeEntriesDisplayType>;
59
+ selectionChange: EventEmitter<SelectionChange<T>>;
57
60
  elementInteractionType: InteractionType;
58
61
  sort: ListSortConfig;
59
62
  dragDrop: ListDragGropConfig<T>;
60
63
  gridConfig: GridConfig;
64
+ tableConfig: TableConfig;
61
65
  /**
62
66
  * This color defines the base color of gradients visually limiting a grid in scroll direction.
63
67
  * Defaults to white.
@@ -94,6 +98,10 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
94
98
  * Do not load more data on scroll.
95
99
  */
96
100
  disableInfiniteScroll: boolean;
101
+ /**
102
+ * show the icon column (table view only)
103
+ */
104
+ showIconColumn: boolean;
97
105
  fetchData: EventEmitter<FetchEvent>;
98
106
  clickItem: EventEmitter<NodeClickEvent<T>>;
99
107
  dblClickItem: EventEmitter<NodeClickEvent<T>>;
@@ -102,7 +110,9 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
102
110
  displayTypeChanged: EventEmitter<NodeEntriesDisplayType>;
103
111
  customNodeListComponent: Type<NodeEntriesComponent<T>>;
104
112
  private componentRef;
113
+ lastLoadingCompleted: number;
105
114
  private options;
115
+ private dataSourceDestroy$;
106
116
  private destroyed;
107
117
  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
118
  ngOnInit(): void;
@@ -135,7 +145,15 @@ export declare class NodeEntriesWrapperComponent<T extends NodeEntriesDataType>
135
145
  * hint: this will do nothing in case the paginationStrategy !== Pagination
136
146
  */
137
147
  resetPagination(): void;
148
+ /**
149
+ * inform the paginator about the current config set
150
+ * @param config
151
+ */
152
+ setPaginator(config: {
153
+ skipCount: number;
154
+ maxItems: number;
155
+ }): void;
138
156
  deleteNodes(objects: T[]): void;
139
157
  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>;
158
+ 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"; "selectionChange": "selectionChange"; "fetchData": "fetchData"; "clickItem": "clickItem"; "dblClickItem": "dblClickItem"; "sortChange": "sortChange"; "virtualNodesAdded": "virtualNodesAdded"; "displayTypeChanged": "displayTypeChanged"; }, ["titleRef", "emptyRef", "actionAreaRef", "overlayRef"], never, false, never>;
141
159
  }
@@ -7,6 +7,7 @@ import { NodeEntriesGlobalService } from './node-entries-global.service';
7
7
  import { NodeEntriesTemplatesService } from './node-entries-templates.service';
8
8
  import { NodeEntriesService } from '../services/node-entries.service';
9
9
  import { KeyboardShortcutsService } from '../services/abstract/keyboard-shortcuts.service';
10
+ import { TranslationsService } from '../translations/translations.service';
10
11
  import * as i0 from "@angular/core";
11
12
  export declare class NodeEntriesComponent<T extends NodeEntriesDataType> implements OnInit, AfterViewInit, OnDestroy {
12
13
  changeDetectorRef: ChangeDetectorRef;
@@ -15,12 +16,14 @@ export declare class NodeEntriesComponent<T extends NodeEntriesDataType> impleme
15
16
  templatesService: NodeEntriesTemplatesService;
16
17
  private globalKeyboardShortcuts;
17
18
  private route;
19
+ private translationsService;
18
20
  private translate;
19
21
  readonly NodeEntriesDisplayType: typeof NodeEntriesDisplayType;
20
22
  paginator: MatPaginator;
23
+ get isEmpty(): boolean;
21
24
  private readonly destroyed;
22
25
  private readonly updateKeyboardShortcuts;
23
- constructor(changeDetectorRef: ChangeDetectorRef, entriesGlobalService: NodeEntriesGlobalService, entriesService: NodeEntriesService<T>, templatesService: NodeEntriesTemplatesService, globalKeyboardShortcuts: KeyboardShortcutsService, route: ActivatedRoute, translate: TranslateService);
26
+ constructor(changeDetectorRef: ChangeDetectorRef, entriesGlobalService: NodeEntriesGlobalService, entriesService: NodeEntriesService<T>, templatesService: NodeEntriesTemplatesService, globalKeyboardShortcuts: KeyboardShortcutsService, route: ActivatedRoute, translationsService: TranslationsService, translate: TranslateService);
24
27
  ngOnInit(): void;
25
28
  ngAfterViewInit(): void;
26
29
  ngOnDestroy(): void;
@@ -28,6 +31,6 @@ export declare class NodeEntriesComponent<T extends NodeEntriesDataType> impleme
28
31
  private initRemoteDataSource;
29
32
  private initPaginator;
30
33
  openPage(page: PageEvent): void;
31
- static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesComponent<any>, [null, null, null, null, { optional: true; }, null, null]>;
34
+ static ɵfac: i0.ɵɵFactoryDeclaration<NodeEntriesComponent<any>, [null, null, null, null, { optional: true; }, { optional: true; }, null, null]>;
32
35
  static ɵcmp: i0.ɵɵComponentDeclaration<NodeEntriesComponent<any>, "es-node-entries", never, {}, {}, never, never, false, never>;
33
36
  }
@@ -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 i3.ListItemLabelPipe]>;
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 i4.NodeEntriesCardComponent, 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
  }
@@ -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: NodeImagePreferences): Observable<SafeResourceUrl>;
21
+ transform(node: Node, preferences?: NodeImagePreferences): Observable<SafeResourceUrl>;
22
22
  private getPreviewUrl;
23
23
  private isEduSharingNode;
24
24
  static ɵfac: i0.ɵɵFactoryDeclaration<NodeImagePipe, never>;
@@ -0,0 +1,11 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { Node } from 'ngx-edu-sharing-api';
3
+ import { NodeHelperService } from '../services/node-helper.service';
4
+ import * as i0 from "@angular/core";
5
+ export declare class NodeUrlPipe implements PipeTransform {
6
+ private nodeHelperService;
7
+ constructor(nodeHelperService: NodeHelperService);
8
+ transform(node: Node, mode?: 'routerLink' | 'queryParams' | 'plain'): string | import("@angular/router").Params;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<NodeUrlPipe, never>;
10
+ static ɵpipe: i0.ɵɵPipeDeclaration<NodeUrlPipe, "esNodeUrl", false>;
11
+ }
@@ -0,0 +1,10 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { AuthenticationService } from 'ngx-edu-sharing-api';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ToolpermissionPipe implements PipeTransform {
5
+ private authenticationService;
6
+ constructor(authenticationService: AuthenticationService);
7
+ transform(toolpermission: string): Promise<boolean>;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToolpermissionPipe, never>;
9
+ static ɵpipe: i0.ɵɵPipeDeclaration<ToolpermissionPipe, "esToolpermission", true>;
10
+ }
@@ -1,7 +1,7 @@
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';
@@ -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> & {
@@ -2,20 +2,24 @@ import { ApiHelpersService, ConfigService, NetworkService, Node, User } from 'ng
2
2
  import { TranslateService } from '@ngx-translate/core';
3
3
  import * as Workflow from '../types/workflow';
4
4
  import { RepoUrlService } from './repo-url.service';
5
- import { Params } from '@angular/router';
5
+ import { Params, Router } from '@angular/router';
6
6
  import { NodesRightMode } from '../types/option-item';
7
+ import { PlatformLocation } from '@angular/common';
8
+ import { EduSharingUiConfiguration } from '../edu-sharing-ui-configuration';
7
9
  import * as i0 from "@angular/core";
8
10
  export declare class NodeHelperService {
9
11
  protected translate: TranslateService;
10
12
  protected apiHelpersService: ApiHelpersService;
11
13
  protected networkService: NetworkService;
12
14
  protected configService: ConfigService;
15
+ protected configuration: EduSharingUiConfiguration;
13
16
  protected repoUrlService: RepoUrlService;
14
- private assetsBasePath;
17
+ protected platformLocation: PlatformLocation;
18
+ protected router: Router;
15
19
  readonly LICENSE_URLS: {
16
20
  [key: string]: string;
17
21
  };
18
- constructor(translate: TranslateService, apiHelpersService: ApiHelpersService, networkService: NetworkService, configService: ConfigService, repoUrlService: RepoUrlService, assetsBasePath: string);
22
+ constructor(translate: TranslateService, apiHelpersService: ApiHelpersService, networkService: NetworkService, configService: ConfigService, configuration: EduSharingUiConfiguration, repoUrlService: RepoUrlService, platformLocation: PlatformLocation, router: Router);
19
23
  getCollectionScopeInfo(node: Node): {
20
24
  icon: string;
21
25
  scopeName: string;
@@ -53,10 +57,11 @@ export declare class NodeHelperService {
53
57
  getWorkflowStatus(node: Node, useFromConfig?: boolean): Workflow.WorkflowDefinitionStatus;
54
58
  getDefaultWorkflowStatus(useFromConfig?: boolean): Workflow.WorkflowDefinitionStatus;
55
59
  getWorkflows(): Workflow.WorkflowDefinition[];
60
+ getFilenameWithoutExtension(filename: string): string;
56
61
  copyDataToNode<T extends Node | User>(target: T, source: T): void;
57
62
  isNodeCollection(node: Node): boolean;
58
63
  getSourceIconPath(src: string): string;
59
- getNodeLink(mode: 'routerLink' | 'queryParams', node: Node): string | Params;
64
+ getNodeLink(mode: 'routerLink' | 'queryParams' | 'plain', node: Node): string | Params;
60
65
  /**
61
66
  * Returns true if this node is a copy of another node, just used as a publish target.
62
67
  */
@@ -73,6 +78,7 @@ export declare class NodeHelperService {
73
78
  * Effective: check only rights of the original node this refers to (collection ref). If it is not a collection ref, fallback to local
74
79
  */
75
80
  getNodesRight(nodes: Node[], right: string, mode?: NodesRightMode): boolean;
76
- static ɵfac: i0.ɵɵFactoryDeclaration<NodeHelperService, [null, null, null, null, null, { optional: true; }]>;
81
+ isOerLicense(value: string): boolean;
82
+ static ɵfac: i0.ɵɵFactoryDeclaration<NodeHelperService, [null, null, null, null, null, null, null, { optional: true; }]>;
77
83
  static ɵprov: i0.ɵɵInjectableDeclaration<NodeHelperService>;
78
84
  }