@leanix/components 0.4.818 → 0.4.819
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/fesm2022/leanix-components.mjs +1742 -123
- package/fesm2022/leanix-components.mjs.map +1 -1
- package/lib/core-ui/components/avatar/avatar.component.d.ts +27 -0
- package/lib/core-ui/components/avatar-group/avatar-group.component.d.ts +45 -0
- package/lib/core-ui/components/badge/badge.component.d.ts +10 -0
- package/lib/core-ui/components/banner/banner.component.d.ts +18 -0
- package/lib/core-ui/components/button/button.component.d.ts +22 -0
- package/lib/core-ui/components/button-group/button-group.component.d.ts +26 -0
- package/lib/core-ui/components/card/card.component.d.ts +16 -3
- package/lib/core-ui/components/collapsible/collapsible.component.d.ts +39 -0
- package/lib/core-ui/components/counter/counter.component.d.ts +20 -3
- package/lib/core-ui/components/ellipsis/ellipsis.component.d.ts +13 -0
- package/lib/core-ui/components/empty-state/empty-state.component.d.ts +38 -15
- package/lib/core-ui/components/page-header/page-header.component.d.ts +2 -1
- package/lib/core-ui/components/skeleton/skeleton.component.d.ts +16 -4
- package/lib/core-ui/components/spinner/spinner.component.d.ts +15 -0
- package/lib/core-ui/components/stepper/stepper.component.d.ts +23 -0
- package/lib/core-ui/components/table/table-header/table-header.component.d.ts +26 -5
- package/lib/core-ui/components/table/table.component.d.ts +25 -2
- package/lib/core-ui/components/tokenizer/token/token.component.d.ts +16 -0
- package/lib/core-ui/components/tokenizer/tokenizer-overflow-popover/tokenizer-overflow-popover.component.d.ts +38 -0
- package/lib/core-ui/components/tokenizer/tokenizer.component.d.ts +22 -5
- package/lib/core-ui/icon/fa-to-sap-icon.pipe.d.ts +2 -1
- package/lib/core-ui/tooltip/tooltip.component.d.ts +30 -0
- package/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.d.ts +79 -0
- package/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.d.ts +36 -0
- package/lib/forms-ui/components/breadcrumb/breadcrumb.component.d.ts +20 -2
- package/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.d.ts +34 -0
- package/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.d.ts +21 -0
- package/lib/forms-ui/components/currency/currency-input.component.d.ts +53 -0
- package/lib/forms-ui/components/currency/currency-symbol.component.d.ts +16 -0
- package/lib/forms-ui/components/date-input/date-input.component.d.ts +135 -33
- package/lib/forms-ui/components/date-picker-ui/datepicker-inner.component.d.ts +35 -0
- package/lib/forms-ui/components/date-picker-ui/daypicker.component.d.ts +6 -0
- package/lib/forms-ui/components/date-picker-ui/monthpicker.component.d.ts +6 -0
- package/lib/forms-ui/components/date-picker-ui/yearpicker.component.d.ts +6 -0
- package/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.d.ts +27 -2
- package/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.d.ts +37 -6
- package/lib/forms-ui/components/error-message/error-message.component.d.ts +15 -0
- package/lib/forms-ui/components/form-error/form-error.component.d.ts +18 -0
- package/lib/forms-ui/components/input/input.component.d.ts +27 -0
- package/lib/forms-ui/components/multi-select/multi-select-selection/multi-select-selection.component.d.ts +30 -0
- package/lib/forms-ui/components/multi-select/multi-select.component.d.ts +80 -0
- package/lib/forms-ui/components/option/option.component.d.ts +41 -0
- package/lib/forms-ui/components/option-group/option-group.component.d.ts +24 -2
- package/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.d.ts +51 -4
- package/lib/forms-ui/components/options-dropdown/options-dropdown.component.d.ts +73 -0
- package/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.d.ts +22 -0
- package/lib/forms-ui/components/picker/picker.component.d.ts +25 -17
- package/lib/forms-ui/components/picker-option/picker-option.component.d.ts +34 -5
- package/lib/forms-ui/components/pill-item/pill-item.component.d.ts +25 -0
- package/lib/forms-ui/components/pill-list/pill-list.component.d.ts +58 -2
- package/lib/forms-ui/components/responsive-input/responsive-input.component.d.ts +20 -0
- package/lib/forms-ui/components/rich-text-editor/components/rich-text-editor-toolbar/rich-text-editor-toolbar.component.d.ts +26 -0
- package/lib/forms-ui/components/rich-text-editor/extensions/link/components/link-modal/link-modal.component.d.ts +15 -0
- package/lib/forms-ui/components/rich-text-editor/extensions/table/table-bubble-menu/table-bubble-menu.component.d.ts +17 -0
- package/lib/forms-ui/components/rich-text-editor/ngx-tiptap/node-view.component.d.ts +14 -0
- package/lib/forms-ui/components/single-select/single-select.component.d.ts +39 -0
- package/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.d.ts +24 -0
- package/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.d.ts +20 -0
- package/lib/forms-ui/components/switch/switch.component.d.ts +37 -8
- package/lib/modal-ui/components/modal-footer/modal-footer.component.d.ts +19 -0
- package/lib/modal-ui/components/modal-header/modal-header.component.d.ts +22 -0
- package/lib/popover-ui/components/popover/popover.component.d.ts +15 -24
- package/lib/tab-ui/components/tab/tab.component.d.ts +66 -5
- package/lib/tab-ui/components/tab-group/tab-group.component.d.ts +29 -1
- package/package.json +1 -1
|
@@ -4,6 +4,26 @@ import * as i0 from "@angular/core";
|
|
|
4
4
|
* The `lx-table` directive can be applied to `<table>` elements to provide a common styling.
|
|
5
5
|
* Furthermore it supports column sorting in combination with `<lx-th>` for table headers.
|
|
6
6
|
*
|
|
7
|
+
* ### Example
|
|
8
|
+
* @example
|
|
9
|
+
* ```html
|
|
10
|
+
* <table lx-table [isSortable]="true" [(sort)]="sort">
|
|
11
|
+
* <thead>
|
|
12
|
+
* <tr>
|
|
13
|
+
* <lx-th column="name">Name</lx-th>
|
|
14
|
+
* <lx-th column="status" [disableSortClear]="true">Status</lx-th>
|
|
15
|
+
* <lx-th column="actions" [disableSort]="true">Actions</lx-th>
|
|
16
|
+
* </tr>
|
|
17
|
+
* </thead>
|
|
18
|
+
* <tbody>
|
|
19
|
+
* <tr>
|
|
20
|
+
* <td>Item 1</td>
|
|
21
|
+
* <td>Active</td>
|
|
22
|
+
* <td><button>Edit</button></td>
|
|
23
|
+
* </tr>
|
|
24
|
+
* </tbody>
|
|
25
|
+
* </table>
|
|
26
|
+
* ```
|
|
7
27
|
*
|
|
8
28
|
* ## Usage
|
|
9
29
|
*
|
|
@@ -44,11 +64,14 @@ import * as i0 from "@angular/core";
|
|
|
44
64
|
*/
|
|
45
65
|
export declare class TableComponent {
|
|
46
66
|
/**
|
|
47
|
-
*
|
|
67
|
+
* Enables or disables the sortability of the table. When enabled, `<lx-th>` elements with a `column` attribute become sortable.
|
|
68
|
+
* @default false
|
|
48
69
|
*/
|
|
49
70
|
readonly isSortable: import("@angular/core").InputSignal<boolean>;
|
|
50
71
|
/**
|
|
51
|
-
* The sort state of the table
|
|
72
|
+
* The sort state of the table containing the column key and sort order (ASC, DESC, or undefined).
|
|
73
|
+
* Can be used with two-way binding to control and react to sort changes.
|
|
74
|
+
* @default {}
|
|
52
75
|
*/
|
|
53
76
|
readonly sort: import("@angular/core").ModelSignal<SortingOptions>;
|
|
54
77
|
/**
|
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
import { ElementRef } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* A token wrapper component used within `lx-tokenizer` to represent individual items.
|
|
5
|
+
* The tokenizer manages visibility of tokens based on available space.
|
|
6
|
+
*
|
|
7
|
+
* ### Projection slots
|
|
8
|
+
* - Default slot: The content to display inside the token (text, icons, badges, etc.)
|
|
9
|
+
*
|
|
10
|
+
* ### Example
|
|
11
|
+
* @example
|
|
12
|
+
* ```html
|
|
13
|
+
* <lx-tokenizer>
|
|
14
|
+
* <lx-token>Token One</lx-token>
|
|
15
|
+
* <lx-token>Token Two</lx-token>
|
|
16
|
+
* </lx-tokenizer>
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
3
19
|
export declare class TokenComponent {
|
|
4
20
|
private elementRef;
|
|
5
21
|
constructor(elementRef: ElementRef<HTMLElement>);
|
|
@@ -2,6 +2,33 @@ import { TemplateRef } from '@angular/core';
|
|
|
2
2
|
import { SatPopoverComponent, SatPopoverHorizontalAlign, SatPopoverVerticalAlign } from '@ncstate/sat-popover';
|
|
3
3
|
import { TokenizerComponent } from '../tokenizer.component';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* A companion component for `lx-tokenizer` that displays overflowing tokens in a popover.
|
|
7
|
+
* Automatically listens to the tokenizer's overflow events and shows a popover anchored to the counter button.
|
|
8
|
+
*
|
|
9
|
+
* ### Projection slots
|
|
10
|
+
* - `popoverTemplate`: Template to render inside the popover. Receives the `startIndex` of overflowing tokens as context.
|
|
11
|
+
*
|
|
12
|
+
* ### Example
|
|
13
|
+
* @example
|
|
14
|
+
* ```html
|
|
15
|
+
* <lx-tokenizer #tokenizer [active]="true">
|
|
16
|
+
* <lx-token>Item 1</lx-token>
|
|
17
|
+
* <lx-token>Item 2</lx-token>
|
|
18
|
+
* <lx-token>Item 3</lx-token>
|
|
19
|
+
* </lx-tokenizer>
|
|
20
|
+
*
|
|
21
|
+
* <lx-tokenizer-overflow-popover [tokenizer]="tokenizer">
|
|
22
|
+
* <ng-template #popoverTemplate let-startIndex>
|
|
23
|
+
* <div class="overflow-items">
|
|
24
|
+
* @for (item of getOverflowItems(startIndex); track item) {
|
|
25
|
+
* <div>{{ item }}</div>
|
|
26
|
+
* }
|
|
27
|
+
* </div>
|
|
28
|
+
* </ng-template>
|
|
29
|
+
* </lx-tokenizer-overflow-popover>
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
5
32
|
export declare class TokenizerOverflowPopoverComponent {
|
|
6
33
|
private destroyRef;
|
|
7
34
|
private overflowClickSubscription?;
|
|
@@ -9,8 +36,19 @@ export declare class TokenizerOverflowPopoverComponent {
|
|
|
9
36
|
private changeDetectorRef;
|
|
10
37
|
protected readonly popoverTemplate?: TemplateRef<unknown>;
|
|
11
38
|
protected readonly popover: SatPopoverComponent;
|
|
39
|
+
/**
|
|
40
|
+
* Reference to the tokenizer component to listen for overflow events.
|
|
41
|
+
*/
|
|
12
42
|
tokenizer: import("@angular/core").InputSignal<TokenizerComponent>;
|
|
43
|
+
/**
|
|
44
|
+
* Horizontal alignment of the popover relative to the counter button.
|
|
45
|
+
* @default 'after'
|
|
46
|
+
*/
|
|
13
47
|
horizontalAlign: import("@angular/core").InputSignal<SatPopoverHorizontalAlign>;
|
|
48
|
+
/**
|
|
49
|
+
* Vertical alignment of the popover relative to the counter button.
|
|
50
|
+
* @default 'start'
|
|
51
|
+
*/
|
|
14
52
|
verticalAlign: import("@angular/core").InputSignal<SatPopoverVerticalAlign>;
|
|
15
53
|
constructor();
|
|
16
54
|
protected closePopover(): void;
|
|
@@ -3,7 +3,22 @@ import { ResizeObserverService } from '../../services/resize-observer.service';
|
|
|
3
3
|
import { TokenComponent } from './token/token.component';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Renders a list of items (`lx-token`) into a container and hides overflowing items behind a counter (e.g., "+4").
|
|
7
|
+
* Automatically calculates how many tokens fit based on available width and responds to container resize events.
|
|
8
|
+
*
|
|
9
|
+
* ### Projection slots
|
|
10
|
+
* - `lx-token`: Individual token items to be managed by the tokenizer
|
|
11
|
+
*
|
|
12
|
+
* ### Example
|
|
13
|
+
* @example
|
|
14
|
+
* ```html
|
|
15
|
+
* <lx-tokenizer [active]="true" (overflowPlaceholderClick)="onOverflowClick($event)">
|
|
16
|
+
* <lx-token>Item 1</lx-token>
|
|
17
|
+
* <lx-token>Item 2</lx-token>
|
|
18
|
+
* <lx-token>Item 3</lx-token>
|
|
19
|
+
* <lx-token>Item 4</lx-token>
|
|
20
|
+
* </lx-tokenizer>
|
|
21
|
+
* ```
|
|
7
22
|
*
|
|
8
23
|
* ## Usage
|
|
9
24
|
*
|
|
@@ -50,14 +65,16 @@ export declare class TokenizerComponent implements AfterContentInit {
|
|
|
50
65
|
protected overflowItems: import("@angular/core").WritableSignal<TokenComponent[]>;
|
|
51
66
|
protected overflowItemCount: import("@angular/core").Signal<number>;
|
|
52
67
|
protected showCounter: import("@angular/core").Signal<boolean>;
|
|
53
|
-
/**
|
|
68
|
+
/**
|
|
69
|
+
* Enables or disables tokenization. When false, all tokens are shown regardless of available space.
|
|
70
|
+
* @default true
|
|
71
|
+
*/
|
|
54
72
|
active: import("@angular/core").InputSignal<boolean>;
|
|
55
73
|
private active$;
|
|
56
74
|
private overflowStartIndex;
|
|
57
75
|
/**
|
|
58
|
-
* Emitted when the counter button is clicked
|
|
59
|
-
*
|
|
60
|
-
* @param counterElement The counter button element
|
|
76
|
+
* Emitted when the overflow counter button (e.g., "+4") is clicked.
|
|
77
|
+
* Provides the index of the first hidden token and the counter button element for positioning popovers.
|
|
61
78
|
*/
|
|
62
79
|
overflowPlaceholderClick: EventEmitter<{
|
|
63
80
|
startIndex: number;
|
|
@@ -5,7 +5,8 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
* Useful for scenarios in which icon names need to be mapped at runtime,
|
|
6
6
|
* e.g. because they are stored in the backend.
|
|
7
7
|
*
|
|
8
|
-
* @example
|
|
8
|
+
* @example
|
|
9
|
+
* ```html
|
|
9
10
|
* <ui5-icon [name]="fontAwesomeIcon() | lxFaToSapIcon" />
|
|
10
11
|
* ```
|
|
11
12
|
*/
|
|
@@ -1,8 +1,38 @@
|
|
|
1
1
|
import { TooltipPosition } from './tooltip-position.interface';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Tooltip component for displaying contextual information on hover.
|
|
5
|
+
*
|
|
6
|
+
* Supports plain text or HTML content with configurable positioning.
|
|
7
|
+
* Typically used via the `lxTooltip` directive rather than directly.
|
|
8
|
+
*
|
|
9
|
+
* ### Example
|
|
10
|
+
* @example
|
|
11
|
+
* ```html
|
|
12
|
+
* <button [lxTooltip]="'Save changes'">Save</button>
|
|
13
|
+
*
|
|
14
|
+
* <button [lxTooltip]="'<strong>Warning:</strong> Cannot be undone'" [lxTooltipHtml]="true">Delete</button>
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
3
17
|
export declare class TooltipComponent {
|
|
18
|
+
/**
|
|
19
|
+
* The tooltip content to display as plain text or HTML.
|
|
20
|
+
*
|
|
21
|
+
* @default ''
|
|
22
|
+
*/
|
|
4
23
|
content: string;
|
|
24
|
+
/**
|
|
25
|
+
* Whether the content should be rendered as HTML.
|
|
26
|
+
* When false, content is displayed as plain text.
|
|
27
|
+
*
|
|
28
|
+
* @default false
|
|
29
|
+
*/
|
|
5
30
|
isHtmlContent: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* The position of the tooltip relative to the target element.
|
|
33
|
+
*
|
|
34
|
+
* @default { x: 'center', y: 'top' }
|
|
35
|
+
*/
|
|
6
36
|
position: TooltipPosition;
|
|
7
37
|
static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, never>;
|
|
8
38
|
static ɵcmp: i0.ɵɵComponentDeclaration<TooltipComponent, "lx-tooltip", never, { "content": { "alias": "content"; "required": false; }; "isHtmlContent": { "alias": "isHtmlContent"; "required": false; }; "position": { "alias": "position"; "required": false; }; }, {}, never, never, true, never>;
|
|
@@ -3,27 +3,106 @@ import { AfterViewInit, EventEmitter, TemplateRef } from '@angular/core';
|
|
|
3
3
|
import { SingleSelectPadding } from '../../models/single-select-padding.interface';
|
|
4
4
|
import { KeyboardSelectDirective } from '../keyboard-select.directive';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* A simple dropdown component for selecting a single value from a flat list of options.
|
|
8
|
+
* Supports keyboard navigation, custom templates, infinite scrolling, and the ability to create new options.
|
|
9
|
+
* Uses Angular CDK overlay for positioning and supports both top and bottom dropdown placement.
|
|
10
|
+
*
|
|
11
|
+
* ### Projection slots
|
|
12
|
+
* - `optionTemplate`: Custom template for rendering each option
|
|
13
|
+
* - `createNewOptionTemplate`: Custom template for the "create new option" button
|
|
14
|
+
* - `descriptionTemplateRef`: Custom template for additional description content
|
|
15
|
+
*
|
|
16
|
+
* ### Example
|
|
17
|
+
* @example
|
|
18
|
+
* ```html
|
|
19
|
+
* <lx-basic-dropdown
|
|
20
|
+
* [options]="items"
|
|
21
|
+
* [labelKey]="'name'"
|
|
22
|
+
* [itemKey]="'id'"
|
|
23
|
+
* [placeholder]="'Select an item'"
|
|
24
|
+
* (onItemSelected)="handleSelection($event)">
|
|
25
|
+
* </lx-basic-dropdown>
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
6
28
|
export declare class BasicDropdownComponent extends KeyboardSelectDirective implements AfterViewInit {
|
|
7
29
|
static isNewItem(items: any[], term: string, key?: string): boolean;
|
|
8
30
|
readonly NAME = "BasicDropdownComponent";
|
|
31
|
+
/**
|
|
32
|
+
* Array of options to display in the dropdown.
|
|
33
|
+
*/
|
|
9
34
|
options: any[];
|
|
35
|
+
/**
|
|
36
|
+
* Index of the option to be selected initially.
|
|
37
|
+
* @default -1
|
|
38
|
+
*/
|
|
10
39
|
initiallySelectedIndex: number;
|
|
40
|
+
/**
|
|
41
|
+
* Property name to use as the display label for each option.
|
|
42
|
+
*/
|
|
11
43
|
labelKey?: string;
|
|
44
|
+
/**
|
|
45
|
+
* Property name to use as the unique identifier for each option.
|
|
46
|
+
*/
|
|
12
47
|
itemKey?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Placeholder text to display when no option is selected.
|
|
50
|
+
*/
|
|
13
51
|
placeholder?: string;
|
|
52
|
+
/**
|
|
53
|
+
* Whether the dropdown is in a loading state.
|
|
54
|
+
* @default false
|
|
55
|
+
*/
|
|
14
56
|
loading: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Label for the "create new option" functionality.
|
|
59
|
+
*/
|
|
15
60
|
newOptionLabel: string;
|
|
61
|
+
/**
|
|
62
|
+
* Padding variant for the dropdown items.
|
|
63
|
+
* @default 'default'
|
|
64
|
+
*/
|
|
16
65
|
padding?: SingleSelectPadding;
|
|
66
|
+
/**
|
|
67
|
+
* Whether to show the "create new option" button.
|
|
68
|
+
* @default false
|
|
69
|
+
*/
|
|
17
70
|
showCreateNewOption: boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Map of disabled options, keyed by the item's unique identifier.
|
|
73
|
+
*/
|
|
18
74
|
disabledOptions: {
|
|
19
75
|
[itemKey: string]: any;
|
|
20
76
|
};
|
|
77
|
+
/**
|
|
78
|
+
* Whether to use CDK overlay positioning.
|
|
79
|
+
* @default false
|
|
80
|
+
*/
|
|
21
81
|
overlayPositioning: boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Whether to truncate long option text.
|
|
84
|
+
* @default false
|
|
85
|
+
*/
|
|
22
86
|
truncateOptions: boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Custom text to display when no results are found.
|
|
89
|
+
*/
|
|
23
90
|
noResultsText?: string;
|
|
91
|
+
/**
|
|
92
|
+
* Event emitted when an option is selected.
|
|
93
|
+
*/
|
|
24
94
|
onItemSelected: EventEmitter<any>;
|
|
95
|
+
/**
|
|
96
|
+
* Event emitted when the user scrolls to the bottom, triggering a request for more entries (infinite scroll).
|
|
97
|
+
*/
|
|
25
98
|
triggerRequestForMoreEntries: EventEmitter<void>;
|
|
99
|
+
/**
|
|
100
|
+
* Event emitted when a new option label is selected (for creating new items).
|
|
101
|
+
*/
|
|
26
102
|
newOptionLabelSelected: EventEmitter<string>;
|
|
103
|
+
/**
|
|
104
|
+
* Event emitted when the "create new option" button is clicked.
|
|
105
|
+
*/
|
|
27
106
|
createNewOptionSelected: EventEmitter<void>;
|
|
28
107
|
optionTemplateRef: TemplateRef<any>;
|
|
29
108
|
createNewOptionTemplateRef: TemplateRef<any>;
|
|
@@ -1,11 +1,47 @@
|
|
|
1
1
|
import { TemplateRef } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Renders a dropdown item with label and optional description.
|
|
5
|
+
* Supports text highlighting and custom styling options.
|
|
6
|
+
*
|
|
7
|
+
* ### Projection slots
|
|
8
|
+
* - `optionLabelSuffix`: Template to append to the label (e.g., badges, icons)
|
|
9
|
+
*
|
|
10
|
+
* ### Example
|
|
11
|
+
* @example
|
|
12
|
+
* ```html
|
|
13
|
+
* <lx-basic-dropdown-item
|
|
14
|
+
* label="Option Name"
|
|
15
|
+
* description="Additional details"
|
|
16
|
+
* highlightTerm="search">
|
|
17
|
+
* <ng-template #optionLabelSuffix>
|
|
18
|
+
* <span class="badge">New</span>
|
|
19
|
+
* </ng-template>
|
|
20
|
+
* </lx-basic-dropdown-item>
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
3
23
|
export declare class BasicDropdownItemComponent {
|
|
24
|
+
/** The main text displayed for the dropdown item. */
|
|
4
25
|
label: string;
|
|
26
|
+
/** Optional secondary text displayed below the label. */
|
|
5
27
|
description?: string;
|
|
28
|
+
/** Term to highlight in the label and optionally in the description. */
|
|
6
29
|
highlightTerm?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Font weight for the label text.
|
|
32
|
+
* @default 'bold'
|
|
33
|
+
*/
|
|
7
34
|
labelFontWeight: 'bold' | 'normal';
|
|
35
|
+
/**
|
|
36
|
+
* Font style for the description text.
|
|
37
|
+
* @default 'normal'
|
|
38
|
+
*/
|
|
8
39
|
descriptionFontStyle: 'italic' | 'normal';
|
|
40
|
+
/**
|
|
41
|
+
* Styling options for the description text.
|
|
42
|
+
* - `maxLines`: Maximum number of lines before truncation.
|
|
43
|
+
* - `shouldHighlightTerm`: Whether to highlight the search term in the description.
|
|
44
|
+
*/
|
|
9
45
|
descriptionStyleOptions?: {
|
|
10
46
|
maxLines?: number;
|
|
11
47
|
shouldHighlightTerm?: boolean;
|
|
@@ -12,11 +12,29 @@ type ViewBreadcrumb = Breadcrumb | EllipsedBreadcrumb;
|
|
|
12
12
|
/**
|
|
13
13
|
* @deprecated Use the `ui5-breadcrumbs` instead.
|
|
14
14
|
*
|
|
15
|
-
* Breadcrumb component
|
|
15
|
+
* Breadcrumb component displays a list of labels showing the navigation path.
|
|
16
|
+
* Supports ellipsing consecutive items into a dropdown for space efficiency.
|
|
17
|
+
*
|
|
18
|
+
* ### Example
|
|
19
|
+
* @example
|
|
20
|
+
* ```html
|
|
21
|
+
* <lx-breadcrumb [breadcrumbs]="breadcrumbs"></lx-breadcrumb>
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* ```ts
|
|
25
|
+
* breadcrumbs: Breadcrumb[] = [
|
|
26
|
+
* { label: 'Home', onClick: (b) => this.navigate(b) },
|
|
27
|
+
* { label: 'Products', onClick: (b) => this.navigate(b) },
|
|
28
|
+
* { label: 'Category', ellipsed: true },
|
|
29
|
+
* { label: 'Subcategory', ellipsed: true },
|
|
30
|
+
* { label: 'Item Details' }
|
|
31
|
+
* ];
|
|
32
|
+
* ```
|
|
16
33
|
*/
|
|
17
34
|
export declare class BreadcrumbComponent implements OnChanges {
|
|
18
35
|
/**
|
|
19
|
-
*
|
|
36
|
+
* Array of breadcrumb items to display. Consecutive items with `ellipsed: true` are grouped into a dropdown.
|
|
37
|
+
* @default []
|
|
20
38
|
*/
|
|
21
39
|
breadcrumbs: Breadcrumb[];
|
|
22
40
|
/** @internal */
|
|
@@ -4,12 +4,46 @@ import { TooltipDirective } from '../../../core-ui/tooltip/tooltip.directive';
|
|
|
4
4
|
import { KeyboardActionSourceDirective } from '../../directives/keyboard-action-source.directive';
|
|
5
5
|
import { OptionComponent } from '../option/option.component';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
|
+
/**
|
|
8
|
+
* A dropdown component using CDK Overlay with keyboard navigation support.
|
|
9
|
+
* Manages option selection, highlighting, and sub-dropdown interactions.
|
|
10
|
+
*
|
|
11
|
+
* ### Projection slots
|
|
12
|
+
* - `[lxKeyboardActionSource]`: The trigger element (e.g., button) that opens the dropdown.
|
|
13
|
+
* - Default slot: Dropdown options (`lx-option` components).
|
|
14
|
+
*
|
|
15
|
+
* ### Example
|
|
16
|
+
* @example
|
|
17
|
+
* ```html
|
|
18
|
+
* <lx-cdk-options-dropdown [open]="isOpen" align="left" maxHeight="300px">
|
|
19
|
+
* <button lxKeyboardActionSource>Select Option</button>
|
|
20
|
+
* <lx-option [value]="1">Option 1</lx-option>
|
|
21
|
+
* <lx-option [value]="2">Option 2</lx-option>
|
|
22
|
+
* </lx-cdk-options-dropdown>
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
7
25
|
export declare class CdkOptionsDropdownComponent implements AfterViewInit, OnDestroy {
|
|
8
26
|
private changeDetection;
|
|
9
27
|
dropdownContainer?: ElementRef<HTMLElement>;
|
|
28
|
+
/**
|
|
29
|
+
* Horizontal alignment of the dropdown relative to its trigger.
|
|
30
|
+
* @default 'right'
|
|
31
|
+
*/
|
|
10
32
|
align: 'right' | 'left';
|
|
33
|
+
/**
|
|
34
|
+
* Whether to close the dropdown when the window is scrolled.
|
|
35
|
+
* @default false
|
|
36
|
+
*/
|
|
11
37
|
closeOnScroll: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Whether the dropdown trigger is disabled.
|
|
40
|
+
* @default false
|
|
41
|
+
*/
|
|
12
42
|
disabled: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Maximum height of the dropdown container. Use 'none' for no limit.
|
|
45
|
+
* @default 'none'
|
|
46
|
+
*/
|
|
13
47
|
maxHeight: string;
|
|
14
48
|
set open(value: boolean);
|
|
15
49
|
get open(): boolean;
|
package/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.d.ts
CHANGED
|
@@ -3,9 +3,30 @@ import { AfterViewInit, ChangeDetectorRef, ElementRef, OnDestroy, QueryList } fr
|
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
4
|
import { OptionComponent } from '../option/option.component';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* A nested sub-dropdown that appears next to a parent option.
|
|
8
|
+
* Opens on hover or keyboard navigation and supports both mouse and keyboard interactions.
|
|
9
|
+
*
|
|
10
|
+
* ### Projection slots
|
|
11
|
+
* - Default slot: Nested dropdown options (`lx-option` components).
|
|
12
|
+
*
|
|
13
|
+
* ### Example
|
|
14
|
+
* @example
|
|
15
|
+
* ```html
|
|
16
|
+
* <lx-cdk-options-sub-dropdown [trigger]="parentOption" align="right">
|
|
17
|
+
* <lx-option [value]="1">Sub-option 1</lx-option>
|
|
18
|
+
* <lx-option [value]="2">Sub-option 2</lx-option>
|
|
19
|
+
* </lx-cdk-options-sub-dropdown>
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
6
22
|
export declare class CdkOptionsSubDropdownComponent implements AfterViewInit, OnDestroy {
|
|
7
23
|
private changeDetection;
|
|
24
|
+
/** The parent option component that triggers this sub-dropdown. */
|
|
8
25
|
trigger: OptionComponent;
|
|
26
|
+
/**
|
|
27
|
+
* Horizontal alignment of the sub-dropdown relative to the trigger option.
|
|
28
|
+
* @default 'right'
|
|
29
|
+
*/
|
|
9
30
|
align: 'right' | 'left';
|
|
10
31
|
options: QueryList<OptionComponent>;
|
|
11
32
|
overlay: CdkConnectedOverlay;
|
|
@@ -5,22 +5,75 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
export type CurrencyInputMode = 'view' | 'edit';
|
|
6
6
|
export type CurrencyIconPosition = 'first' | 'end' | 'none';
|
|
7
7
|
export type DecimalSeparator = ',' | '.';
|
|
8
|
+
/**
|
|
9
|
+
* Currency input field with locale-aware formatting and validation.
|
|
10
|
+
*
|
|
11
|
+
* Supports both view and edit modes with configurable currency symbols, decimal separators, and number types.
|
|
12
|
+
*
|
|
13
|
+
* ### Example
|
|
14
|
+
* @example
|
|
15
|
+
* ```html
|
|
16
|
+
* <lx-currency-input
|
|
17
|
+
* [code]="'USD'"
|
|
18
|
+
* [data]="1234.56"
|
|
19
|
+
* [mode]="'edit'"
|
|
20
|
+
* [fieldDefinitionType]="'DOUBLE'"
|
|
21
|
+
* [decimalSeparator]="'.'"
|
|
22
|
+
* [iconPosition]="'first'"
|
|
23
|
+
* (onChange)="handleValueChange($event)"
|
|
24
|
+
* ></lx-currency-input>
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
8
27
|
export declare class CurrencyInputComponent implements AfterViewInit, OnDestroy, ControlValueAccessor, OnInit {
|
|
9
28
|
private changeDetector;
|
|
29
|
+
/** ISO currency code to display as a symbol (e.g., 'USD', 'EUR'). */
|
|
10
30
|
code: string | null;
|
|
31
|
+
/**
|
|
32
|
+
* Character used as decimal separator in input.
|
|
33
|
+
* @default '.'
|
|
34
|
+
*/
|
|
11
35
|
decimalSeparator: DecimalSeparator;
|
|
36
|
+
/** Placeholder text shown when the input is empty. */
|
|
12
37
|
placeholder: string;
|
|
38
|
+
/**
|
|
39
|
+
* The numeric value of the input.
|
|
40
|
+
* @default 0
|
|
41
|
+
*/
|
|
13
42
|
data: number;
|
|
43
|
+
/** Optional ID attribute for the input element. */
|
|
14
44
|
inputId?: string;
|
|
15
45
|
/** @internal */
|
|
16
46
|
data$: Observable<number>;
|
|
47
|
+
/**
|
|
48
|
+
* Whether the input is disabled.
|
|
49
|
+
* @default false
|
|
50
|
+
*/
|
|
17
51
|
disabled: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Display mode of the component.
|
|
54
|
+
* @default 'edit'
|
|
55
|
+
*/
|
|
18
56
|
mode: CurrencyInputMode;
|
|
57
|
+
/** Numeric type allowed - DOUBLE for decimals, INTEGER for whole numbers. */
|
|
19
58
|
fieldDefinitionType: 'DOUBLE' | 'INTEGER';
|
|
59
|
+
/**
|
|
60
|
+
* Position of the currency symbol relative to the value.
|
|
61
|
+
* @default 'first'
|
|
62
|
+
*/
|
|
20
63
|
iconPosition: CurrencyIconPosition;
|
|
64
|
+
/**
|
|
65
|
+
* Angular decimal pipe format string.
|
|
66
|
+
* @default '1.2-2'
|
|
67
|
+
*/
|
|
21
68
|
format: string;
|
|
69
|
+
/**
|
|
70
|
+
* Whether to visually mark the input as invalid.
|
|
71
|
+
* @default false
|
|
72
|
+
*/
|
|
22
73
|
markInvalid: boolean;
|
|
74
|
+
/** Emitted when the input loses focus. */
|
|
23
75
|
onFocusLost: EventEmitter<boolean>;
|
|
76
|
+
/** Emitted when the numeric value changes. */
|
|
24
77
|
onChange: EventEmitter<number>;
|
|
25
78
|
/** @internal */
|
|
26
79
|
private currencyInput;
|
|
@@ -1,7 +1,23 @@
|
|
|
1
1
|
import { OnInit } from '@angular/core';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Displays a currency symbol based on an ISO currency code.
|
|
6
|
+
*
|
|
7
|
+
* Converts currency codes (e.g., 'USD', 'EUR') to their symbolic representations ($, €).
|
|
8
|
+
*
|
|
9
|
+
* ### Example
|
|
10
|
+
* @example
|
|
11
|
+
* ```html
|
|
12
|
+
* <lx-currency-symbol [code]="'USD'"></lx-currency-symbol>
|
|
13
|
+
* <lx-currency-symbol [code]="'EUR'"></lx-currency-symbol>
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
4
16
|
export declare class CurrencySymbolComponent implements OnInit {
|
|
17
|
+
/**
|
|
18
|
+
* ISO currency code (e.g., 'USD', 'EUR', 'GBP').
|
|
19
|
+
* Falls back to displaying the code itself if no symbol is mapped.
|
|
20
|
+
*/
|
|
5
21
|
code: string | null;
|
|
6
22
|
code$: Observable<string>;
|
|
7
23
|
currency$: Observable<string>;
|