@onecx/angular-accelerator 6.25.0 → 6.26.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.
@@ -177,10 +177,15 @@ export declare class DataListGridComponent extends DataSortBase implements OnIni
177
177
  getTemplate(column: DataTableColumn): Observable<TemplateRef<any> | null>;
178
178
  private mapGridMenuItems;
179
179
  private getGridActionsTranslations;
180
+ private createOverflowListMenuItems;
181
+ private toOverflowListMenuItem;
180
182
  private shouldDisplayAction;
181
183
  private filterActionsBasedOnPermissions;
184
+ onAdditionalActionClick(action: DataAction, item: any): Promise<void>;
185
+ private handleAction;
186
+ private handleActionSync;
187
+ private resolveRouterLink;
182
188
  private getPermissions;
183
- private mapActions;
184
189
  static ɵfac: i0.ɵɵFactoryDeclaration<DataListGridComponent, never>;
185
190
  static ɵcmp: i0.ɵɵComponentDeclaration<DataListGridComponent, "ocx-data-list-grid", never, { "titleLineId": { "alias": "titleLineId"; "required": false; }; "subtitleLineIds": { "alias": "subtitleLineIds"; "required": false; }; "clientSideSorting": { "alias": "clientSideSorting"; "required": false; }; "clientSideFiltering": { "alias": "clientSideFiltering"; "required": false; }; "sortStates": { "alias": "sortStates"; "required": false; }; "pageSizes": { "alias": "pageSizes"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "emptyResultsMessage": { "alias": "emptyResultsMessage"; "required": false; }; "fallbackImage": { "alias": "fallbackImage"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "viewPermission": { "alias": "viewPermission"; "required": false; }; "editPermission": { "alias": "editPermission"; "required": false; }; "deletePermission": { "alias": "deletePermission"; "required": false; }; "deleteActionVisibleField": { "alias": "deleteActionVisibleField"; "required": false; }; "deleteActionEnabledField": { "alias": "deleteActionEnabledField"; "required": false; }; "viewActionVisibleField": { "alias": "viewActionVisibleField"; "required": false; }; "viewActionEnabledField": { "alias": "viewActionEnabledField"; "required": false; }; "editActionVisibleField": { "alias": "editActionVisibleField"; "required": false; }; "editActionEnabledField": { "alias": "editActionEnabledField"; "required": false; }; "viewMenuItemKey": { "alias": "viewMenuItemKey"; "required": false; }; "editMenuItemKey": { "alias": "editMenuItemKey"; "required": false; }; "deleteMenuItemKey": { "alias": "deleteMenuItemKey"; "required": false; }; "paginator": { "alias": "paginator"; "required": false; }; "page": { "alias": "page"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "name": { "alias": "name"; "required": false; }; "totalRecordsOnServer": { "alias": "totalRecordsOnServer"; "required": false; "isSignal": true; }; "currentPageShowingKey": { "alias": "currentPageShowingKey"; "required": false; }; "currentPageShowingWithTotalOnServerKey": { "alias": "currentPageShowingWithTotalOnServerKey"; "required": false; }; "data": { "alias": "data"; "required": false; }; "filters": { "alias": "filters"; "required": false; }; "sortDirection": { "alias": "sortDirection"; "required": false; }; "sortField": { "alias": "sortField"; "required": false; }; "gridItemSubtitleLinesTemplate": { "alias": "gridItemSubtitleLinesTemplate"; "required": false; }; "listItemSubtitleLinesTemplate": { "alias": "listItemSubtitleLinesTemplate"; "required": false; }; "listItemTemplate": { "alias": "listItemTemplate"; "required": false; }; "gridItemTemplate": { "alias": "gridItemTemplate"; "required": false; }; "listValueTemplate": { "alias": "listValueTemplate"; "required": false; }; "translationKeyListValueTemplate": { "alias": "translationKeyListValueTemplate"; "required": false; }; "numberListValueTemplate": { "alias": "numberListValueTemplate"; "required": false; }; "relativeDateListValueTemplate": { "alias": "relativeDateListValueTemplate"; "required": false; }; "stringListValueTemplate": { "alias": "stringListValueTemplate"; "required": false; }; "dateListValueTemplate": { "alias": "dateListValueTemplate"; "required": false; }; "additionalActions": { "alias": "additionalActions"; "required": false; }; "parentTemplates": { "alias": "parentTemplates"; "required": false; }; }, { "viewItem": "viewItem"; "editItem": "editItem"; "deleteItem": "deleteItem"; "pageChanged": "pageChanged"; "pageSizeChanged": "pageSizeChanged"; "componentStateChanged": "componentStateChanged"; }, ["gridItemSubtitleLinesChildTemplate", "listItemSubtitleLinesChildTemplate", "listItemChildTemplate", "gridItemChildTemplate", "listValueChildTemplate", "translationKeyListValueChildTemplate", "numberListValueChildTemplate", "relativeDateListValueChildTemplate", "stringListValueChildTemplate", "dateListValueChildTemplate", "templates"], never, false, never>;
186
191
  }
@@ -245,8 +245,9 @@ export declare class DataTableComponent extends DataSortBase implements OnInit,
245
245
  resolveFieldData(object: any, key: any): any;
246
246
  getRowObjectFromMultiselectItem(value: MultiSelectItem, column: DataTableColumn): Record<string, string | undefined>;
247
247
  rowTrackByFunction: (index: number, item: any) => any;
248
+ private createOverflowMenuItems;
249
+ private toOverflowMenuItem;
248
250
  private filterActionsBasedOnPermissions;
249
- private mapActions;
250
251
  static ɵfac: i0.ɵɵFactoryDeclaration<DataTableComponent, never>;
251
252
  static ɵcmp: i0.ɵɵComponentDeclaration<DataTableComponent, "ocx-data-table", never, { "rows": { "alias": "rows"; "required": false; }; "selectedRows": { "alias": "selectedRows"; "required": false; }; "filters": { "alias": "filters"; "required": false; }; "sortDirection": { "alias": "sortDirection"; "required": false; }; "sortColumn": { "alias": "sortColumn"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "clientSideFiltering": { "alias": "clientSideFiltering"; "required": false; }; "clientSideSorting": { "alias": "clientSideSorting"; "required": false; }; "sortStates": { "alias": "sortStates"; "required": false; }; "pageSizes": { "alias": "pageSizes"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "emptyResultsMessage": { "alias": "emptyResultsMessage"; "required": false; }; "name": { "alias": "name"; "required": false; }; "deletePermission": { "alias": "deletePermission"; "required": false; }; "viewPermission": { "alias": "viewPermission"; "required": false; }; "editPermission": { "alias": "editPermission"; "required": false; }; "deleteActionVisibleField": { "alias": "deleteActionVisibleField"; "required": false; }; "deleteActionEnabledField": { "alias": "deleteActionEnabledField"; "required": false; }; "viewActionVisibleField": { "alias": "viewActionVisibleField"; "required": false; }; "viewActionEnabledField": { "alias": "viewActionEnabledField"; "required": false; }; "editActionVisibleField": { "alias": "editActionVisibleField"; "required": false; }; "editActionEnabledField": { "alias": "editActionEnabledField"; "required": false; }; "selectionEnabledField": { "alias": "selectionEnabledField"; "required": false; }; "allowSelectAll": { "alias": "allowSelectAll"; "required": false; }; "paginator": { "alias": "paginator"; "required": false; }; "page": { "alias": "page"; "required": false; }; "tableStyle": { "alias": "tableStyle"; "required": false; }; "totalRecordsOnServer": { "alias": "totalRecordsOnServer"; "required": false; "isSignal": true; }; "currentPageShowingKey": { "alias": "currentPageShowingKey"; "required": false; }; "currentPageShowingWithTotalOnServerKey": { "alias": "currentPageShowingWithTotalOnServerKey"; "required": false; }; "stringCellTemplate": { "alias": "stringCellTemplate"; "required": false; }; "numberCellTemplate": { "alias": "numberCellTemplate"; "required": false; }; "dateCellTemplate": { "alias": "dateCellTemplate"; "required": false; }; "relativeDateCellTemplate": { "alias": "relativeDateCellTemplate"; "required": false; }; "cellTemplate": { "alias": "cellTemplate"; "required": false; }; "translationKeyCellTemplate": { "alias": "translationKeyCellTemplate"; "required": false; }; "stringFilterCellTemplate": { "alias": "stringFilterCellTemplate"; "required": false; }; "numberFilterCellTemplate": { "alias": "numberFilterCellTemplate"; "required": false; }; "dateFilterCellTemplate": { "alias": "dateFilterCellTemplate"; "required": false; }; "relativeDateFilterCellTemplate": { "alias": "relativeDateFilterCellTemplate"; "required": false; }; "filterCellTemplate": { "alias": "filterCellTemplate"; "required": false; }; "translationKeyFilterCellTemplate": { "alias": "translationKeyFilterCellTemplate"; "required": false; }; "columnHeaderTemplate": { "alias": "columnHeaderTemplate"; "required": false; }; "additionalActions": { "alias": "additionalActions"; "required": false; }; "frozenActionColumn": { "alias": "frozenActionColumn"; "required": false; }; "actionColumnPosition": { "alias": "actionColumnPosition"; "required": false; }; "expandedRows": { "alias": "expandedRows"; "required": false; }; "expandable": { "alias": "expandable"; "required": false; }; "frozenExpandColumn": { "alias": "frozenExpandColumn"; "required": false; }; "parentTemplates": { "alias": "parentTemplates"; "required": false; }; }, { "filtered": "filtered"; "sorted": "sorted"; "viewTableRow": "viewTableRow"; "editTableRow": "editTableRow"; "deleteTableRow": "deleteTableRow"; "selectionChanged": "selectionChanged"; "pageChanged": "pageChanged"; "pageSizeChanged": "pageSizeChanged"; "componentStateChanged": "componentStateChanged"; "rowExpanded": "rowExpanded"; "rowCollapsed": "rowCollapsed"; }, ["stringCellChildTemplate", "numberCellChildTemplate", "dateCellChildTemplate", "relativeDateCellChildTemplate", "cellChildTemplate", "translationKeyCellChildTemplate", "stringFilterCellChildTemplate", "numberFilterCellChildTemplate", "dateFilterCellChildTemplate", "relativeDateFilterCellChildTemplate", "filterCellChildTemplate", "translationKeyFilterCellChildTemplate", "columnHeaderChildTemplate", "templates"], never, false, never>;
252
253
  }
@@ -14,6 +14,7 @@ export interface Action {
14
14
  labelKey?: string;
15
15
  icon?: string;
16
16
  iconPos?: 'left' | 'right' | 'top' | 'bottom';
17
+ routerLink?: string;
17
18
  /**
18
19
  * Permission for this action. If the current user does not have this permission, the action will not be shown.
19
20
  */
@@ -23,7 +24,7 @@ export interface Action {
23
24
  ariaLabel?: string;
24
25
  ariaLabelKey?: string;
25
26
  btnClass?: string;
26
- actionCallback(): void;
27
+ actionCallback?(): void;
27
28
  disabled?: boolean;
28
29
  disabledTooltip?: string;
29
30
  disabledTooltipKey?: string;
@@ -1,5 +1,5 @@
1
1
  import { Type } from '@angular/core';
2
- import { DialogButton } from '../services/portal-dialog.service';
2
+ import { DialogButton, DialogInitiator } from '../services/portal-dialog.service';
3
3
  import { PrimeIcon } from '../utils/primeicon.utils';
4
4
  /**
5
5
  * Object describing details for button rendering containing key for translation, optional icon and optional parameters for translation
@@ -39,6 +39,8 @@ export interface ButtonDialogConfig {
39
39
  customButtons?: ButtonDialogCustomButtonDetails[];
40
40
  autoFocusButton?: DialogButton;
41
41
  autoFocusButtonCustomId?: string;
42
+ initiatorRef?: HTMLElement;
43
+ onCloseFocus?: DialogInitiator;
42
44
  }
43
45
  export interface ButtonDialogData {
44
46
  config: ButtonDialogConfig;
@@ -1,3 +1,4 @@
1
+ export type RouterLink = string | (() => string) | (() => Promise<string>) | Promise<string>;
1
2
  export interface DataAction {
2
3
  id?: string;
3
4
  labelKey?: string;
@@ -8,5 +9,6 @@ export interface DataAction {
8
9
  actionVisibleField?: string;
9
10
  actionEnabledField?: string;
10
11
  showAsOverflow?: boolean;
11
- callback: (data: any) => void;
12
+ callback?: (data: any) => void;
13
+ routerLink?: RouterLink;
12
14
  }
@@ -182,6 +182,7 @@ type Component<T extends unknown> = unknown extends T ? {
182
182
  };
183
183
  export type DialogButton = 'primary' | 'secondary' | 'custom';
184
184
  export type DialogStateButtonClicked = 'primary' | 'secondary' | 'custom';
185
+ export type DialogInitiator = 'initiator' | 'default';
185
186
  /**
186
187
  * Object containing information about clicked button ('primary' or 'secondary') and displayed component state captured on button click (only if component implements {@link DialogResult} interface)
187
188
  */
@@ -216,6 +217,9 @@ export type PortalDialogConfig = {
216
217
  minimizeIcon?: string;
217
218
  position?: string;
218
219
  closeAriaLabel?: string;
220
+ closable?: boolean;
221
+ initiatorRef?: HTMLElement;
222
+ onCloseFocus?: DialogInitiator;
219
223
  };
220
224
  export interface PortalDialogServiceData {
221
225
  primaryButtonEnabled$: EventEmitter<boolean>;
@@ -381,6 +385,7 @@ export declare class PortalDialogService implements OnDestroy {
381
385
  * ```
382
386
  */
383
387
  openDialog<T>(title: TranslationKey | null, componentOrMessage: Type<any> | Type<DialogResult<T>> | Component<T> | TranslationKey | DialogMessage, primaryButtonTranslationKeyOrDetails: TranslationKey | ButtonDialogButtonDetails, secondaryButtonTranslationKeyOrDetails?: TranslationKey | ButtonDialogButtonDetails, extras?: PortalDialogConfig): Observable<DialogState<T>>;
388
+ private setFocusOnInitiator;
384
389
  private cleanupAndCloseDialog;
385
390
  private removeDialogFromHtml;
386
391
  private setScopeIdentifier;
@@ -393,6 +398,7 @@ export declare class PortalDialogService implements OnDestroy {
393
398
  private isString;
394
399
  private isDialogMessage;
395
400
  private isType;
401
+ private getShowXStatus;
396
402
  static ɵfac: i0.ɵɵFactoryDeclaration<PortalDialogService, never>;
397
403
  static ɵprov: i0.ɵɵInjectableDeclaration<PortalDialogService>;
398
404
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onecx/angular-accelerator",
3
- "version": "6.25.0",
3
+ "version": "6.26.0",
4
4
  "license": "Apache-2.0",
5
5
  "repository": {
6
6
  "type": "git",
@@ -16,12 +16,12 @@
16
16
  "@ngx-translate/core": "^16.0.0",
17
17
  "@ngx-translate/http-loader": "^8.0.0",
18
18
  "@ngneat/until-destroy": "^10.0.0",
19
- "@onecx/integration-interface": "^6.25.0",
20
- "@onecx/accelerator": "^6.25.0",
21
- "@onecx/angular-integration-interface": "^6.25.0",
22
- "@onecx/angular-remote-components": "^6.25.0",
23
- "@onecx/angular-testing": "^6.25.0",
24
- "@onecx/angular-utils": "^6.25.0",
19
+ "@onecx/integration-interface": "^6.26.0",
20
+ "@onecx/accelerator": "^6.26.0",
21
+ "@onecx/angular-integration-interface": "^6.26.0",
22
+ "@onecx/angular-remote-components": "^6.26.0",
23
+ "@onecx/angular-testing": "^6.26.0",
24
+ "@onecx/angular-utils": "^6.26.0",
25
25
  "chart.js": "^4.4.3",
26
26
  "d3-scale-chromatic": "^3.1.0",
27
27
  "fast-deep-equal": "^3.1.3",
@@ -29,7 +29,7 @@
29
29
  "primeng": "^19.0.0",
30
30
  "@storybook/angular": "^8.3.2",
31
31
  "@nx/devkit": "^20.3.0",
32
- "@onecx/nx-migration-utils": "^6.25.0",
32
+ "@onecx/nx-migration-utils": "^6.26.0",
33
33
  "@primeng/themes": "^19.0.0"
34
34
  },
35
35
  "peerDependenciesMeta": {
@@ -1,18 +1,18 @@
1
- import { BaseHarnessFilters, ComponentHarness, ContentContainerComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
1
+ import { BaseHarnessFilters, ComponentHarness, ContentContainerComponentHarness, HarnessPredicate, TestElement } from '@angular/cdk/testing';
2
2
  import { ListItemHarness, MenuItemHarness, PBreadcrumbHarness, PButtonHarness, PMenuHarness } from '@onecx/angular-testing';
3
3
  export declare class PageHeaderHarness extends ComponentHarness {
4
4
  static hostSelector: string;
5
- getPageHeaderWrapperHarness: () => Promise<import("@onecx/angular-testing").TestElement[]>;
5
+ getPageHeaderWrapperHarness: () => Promise<TestElement[]>;
6
6
  getBreadcrumb: () => Promise<PBreadcrumbHarness | null>;
7
7
  getMenu: () => Promise<PMenuHarness | null>;
8
- getElementByTitle(title: string): Promise<import("@onecx/angular-testing").TestElement | null>;
9
- getElementByAriaLabel(ariaLabel: string): Promise<import("@onecx/angular-testing").TestElement | null>;
8
+ getElementByTitle(title: string): Promise<TestElement | null>;
9
+ getElementByAriaLabel(ariaLabel: string): Promise<TestElement | null>;
10
10
  getObjectInfos(): Promise<ObjectDetailItemHarness[]>;
11
11
  getObjectInfoByLabel(objectInfolabel: string): Promise<ObjectDetailItemHarness | null>;
12
- getInlineActionButtons(): Promise<PButtonHarness[]>;
12
+ getInlineActionButtons(): Promise<(PButtonHarness | TestElement)[]>;
13
13
  getInlineActionButtonByLabel(buttonLabel: string): Promise<PButtonHarness | null>;
14
14
  getInlineActionButtonByIcon(buttonIcon: string): Promise<PButtonHarness | null>;
15
- getOverflowActionMenuButton(): Promise<import("@onecx/angular-testing").TestElement | null>;
15
+ getOverflowActionMenuButton(): Promise<TestElement | null>;
16
16
  getOverFlowMenuItems(): Promise<MenuItemHarness[]>;
17
17
  getOverFlowMenuItem(itemText: string): Promise<MenuItemHarness | undefined | null>;
18
18
  getBreadcrumbItem(itemText: string): Promise<ListItemHarness | undefined | null>;
@@ -24,9 +24,9 @@ interface ObjectDetailItemHarnessFilters extends BaseHarnessFilters {
24
24
  }
25
25
  declare class ObjectDetailItemHarness extends ContentContainerComponentHarness {
26
26
  static hostSelector: string;
27
- getLabelElement: () => Promise<import("@onecx/angular-testing").TestElement>;
28
- getValueElement: () => Promise<import("@onecx/angular-testing").TestElement | null>;
29
- getIconElement: () => Promise<import("@onecx/angular-testing").TestElement | null>;
27
+ getLabelElement: () => Promise<TestElement>;
28
+ getValueElement: () => Promise<TestElement | null>;
29
+ getIconElement: () => Promise<TestElement | null>;
30
30
  static with(options: ObjectDetailItemHarnessFilters): HarnessPredicate<ObjectDetailItemHarness>;
31
31
  getLabel(): Promise<string>;
32
32
  getValue(): Promise<string | undefined>;