@eclipse-scout/core
Version:
Eclipse Scout runtime
212 lines (175 loc) • 6.57 kB
text/typescript
/*
* Copyright (c) 2010, 2026 BSI Business Systems Integration AG
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*/
import {BaseDoEntity, PageParamDo, typeName} from './index';
export interface IBookmarkDo extends BaseDoEntity {
definition: IBookmarkDefinitionDo;
}
export class BookmarkDo extends BaseDoEntity implements IBookmarkDo {
definition: IBookmarkDefinitionDo;
id: string;
title: string;
description: string;
}
// --------------------------------------------------
export interface IBookmarkDefinitionDo extends BaseDoEntity {
bookmarkedPage: IBookmarkPageDo;
}
export class OutlineBookmarkDefinitionDo extends BaseDoEntity implements IBookmarkDefinitionDo {
bookmarkedPage: IBookmarkPageDo;
outlineId: string;
/** Path from the outline's root to the {@link bookmarkedPage} */
pagePath: IBookmarkPageDo[];
}
export class PageBookmarkDefinitionDo extends BaseDoEntity implements IBookmarkDefinitionDo {
bookmarkedPage: IBookmarkPageDo;
}
// --------------------------------------------------
export interface IBookmarkPageDo extends BaseDoEntity {
pageParam?: PageParamDo;
displayText?: string;
}
export class NodeBookmarkPageDo extends BaseDoEntity implements IBookmarkPageDo {
pageParam: PageParamDo;
displayText: string;
}
export class TableBookmarkPageDo extends BaseDoEntity implements IBookmarkPageDo {
pageParam: PageParamDo;
displayText: string;
expandedChildRow: BookmarkTableRowIdentifierDo;
selectedChildRows: BookmarkTableRowIdentifierDo[];
searchFilterComplete: boolean;
searchData: ISearchDo;
tablePreferences: TableClientUiPreferencesDo;
chartTableControlConfig: IChartTableControlConfigDo;
}
export interface IChartTableControlConfigDo extends BaseDoEntity {
}
export interface ISearchDo extends BaseDoEntity {
}
export class BookmarkTableRowIdentifierDo extends BaseDoEntity {
keyComponents: IBookmarkTableRowIdentifierComponentDo[];
}
export interface IBookmarkTableRowIdentifierComponentDo extends BaseDoEntity {
}
/**
* Never serialize this!
*/
export class BookmarkTableRowIdentifierObjectComponentDo extends BaseDoEntity implements IBookmarkTableRowIdentifierComponentDo {
key: any;
}
export class BookmarkTableRowIdentifierDateComponentDo extends BaseDoEntity implements IBookmarkTableRowIdentifierComponentDo {
key: Date;
}
export class BookmarkTableRowIdentifierBooleanComponentDo extends BaseDoEntity implements IBookmarkTableRowIdentifierComponentDo {
key: boolean;
}
export class BookmarkTableRowIdentifierIntegerComponentDo extends BaseDoEntity implements IBookmarkTableRowIdentifierComponentDo {
key: number;
}
export class BookmarkTableRowIdentifierStringComponentDo extends BaseDoEntity implements IBookmarkTableRowIdentifierComponentDo {
key: string;
}
export class BookmarkTableRowIdentifierLongComponentDo extends BaseDoEntity implements IBookmarkTableRowIdentifierComponentDo {
key: number;
}
// --------------------------------------------------
export class TableClientUiPreferencesDo extends BaseDoEntity {
tableId: string;
userPreferenceContext: string;
tileMode: boolean;
tileGlobalKey: string;
tablePreferenceProfiles: Map<string, TableClientUiPreferenceProfileDo>;
}
export class TableClientUiPreferenceProfileDo extends BaseDoEntity {
columns: TableColumnClientUiPreferenceDo[];
userFilters: IUserFilterStateDo[];
tableCustomizerData: ITableCustomizerDo;
}
export class TableColumnClientUiPreferenceDo extends BaseDoEntity {
columnId: string;
viewIndex: number;
visible: boolean;
width: number;
sortOrder: number;
sortAscending: boolean;
groupingActive: boolean;
aggregationFunctionId: string;
backgroundEffectId: string;
}
export interface IUserFilterStateDo extends BaseDoEntity {
}
export class BooleanColumnUserFilterStateDo extends BaseDoEntity implements IUserFilterStateDo {
columnId: string;
selectedValues: Set<boolean>;
}
export class ColumnUserFilterStateDo extends BaseDoEntity implements IUserFilterStateDo {
columnId: string;
selectedValues: Set<string>;
}
export class DateColumnUserFilterStateDo extends BaseDoEntity implements IUserFilterStateDo {
columnId: string;
selectedValues: Set<number>;
dateFrom: Date;
dateTo: Date;
}
export class NumberColumnUserFilterStateDo extends BaseDoEntity implements IUserFilterStateDo {
columnId: string;
selectedValues: Set<number>;
numberFrom: number;
numberTo: number;
}
export class TableTextUserFilterStateDo extends BaseDoEntity implements IUserFilterStateDo {
text: string;
}
export class TextColumnUserFilterStateDo extends BaseDoEntity implements IUserFilterStateDo {
columnId: string;
selectedValues: Set<string>;
textFilter: string;
}
/**
* Marker interface for the "customizer data" of a {@link TableCustomizer}.
*/
export interface ITableCustomizerDo extends BaseDoEntity {
}
/**
* Marker interface for a data object describing a "column configuration". Used when working with a {@link TableCustomizer}.
*/
export interface IColumnConfigDo extends BaseDoEntity {
}
// --------------------------------------------------
export class UiPreferencesDo extends BaseDoEntity {
tablePreferences: TableClientUiPreferencesDo[];
}
export class UiPreferencesUpdateDo extends BaseDoEntity {
preferences: UiPreferencesDo;
}