@scania/tegel 1.3.1 → 1.3.3-event-types.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 (81) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/tds-chip.cjs.entry.js +11 -1
  3. package/dist/cjs/tds-dropdown.cjs.entry.js +9 -2
  4. package/dist/cjs/tds-popover-core.cjs.entry.js +5 -0
  5. package/dist/cjs/tegel.cjs.js +1 -1
  6. package/dist/collection/collection-manifest.json +3 -3
  7. package/dist/collection/components/button/test/basic/button.e2e.js +35 -0
  8. package/dist/collection/components/button/test/danger/button.e2e.js +18 -0
  9. package/dist/collection/components/button/test/disabled/button.e2e.js +24 -0
  10. package/dist/collection/components/button/test/ghost/button.e2e.js +18 -0
  11. package/dist/collection/components/button/test/icon/button.e2e.js +38 -0
  12. package/dist/collection/components/button/test/secondary/button.e2e.js +18 -0
  13. package/dist/collection/components/chip/chip.js +12 -2
  14. package/dist/collection/components/dropdown/dropdown.css +3 -0
  15. package/dist/collection/components/dropdown/dropdown.js +28 -3
  16. package/dist/collection/components/dropdown/dropdown.stories.js +17 -1
  17. package/dist/collection/components/dropdown/test/basic/dropdown.e2e.js +41 -0
  18. package/dist/collection/components/dropdown/test/default/dropdown.e2e.js +76 -0
  19. package/dist/collection/components/dropdown/test/error/dropdown.e2e.js +36 -0
  20. package/dist/collection/components/dropdown/test/filter/dropdown.e2e.js +56 -0
  21. package/dist/collection/components/dropdown/test/filter/normalize-text-false/dropdown.e2e.js +43 -0
  22. package/dist/collection/components/dropdown/test/multiselect/dropdown.e2e.js +81 -0
  23. package/dist/collection/components/message/message.stories.js +0 -1
  24. package/dist/collection/components/message/test/error/message.e2e.js +33 -0
  25. package/dist/collection/components/message/test/information/message.e2e.js +33 -0
  26. package/dist/collection/components/message/test/success/message.e2e.js +33 -0
  27. package/dist/collection/components/message/test/warning/message.e2e.js +33 -0
  28. package/dist/collection/components/popover-core/popover-core.js +5 -0
  29. package/dist/collection/components/side-menu/side-menu.js +3 -3
  30. package/dist/collection/components/stepper/stepper.js +1 -1
  31. package/dist/collection/components/table/table/table.js +1 -1
  32. package/dist/collection/components/table/table/test/batch/table.e2e.js +24 -0
  33. package/dist/collection/components/table/table/test/default/table.e2e.js +46 -0
  34. package/dist/collection/components/table/table/test/expandable-row/table.e2e.js +64 -0
  35. package/dist/collection/components/table/table/test/filtering/table.e2e.js +41 -0
  36. package/dist/collection/components/table/table/test/multiselect/table.e2e.js +47 -0
  37. package/dist/collection/components/table/table/test/pagination/table.e2e.js +53 -0
  38. package/dist/collection/components/table/table/test/sorting/table.e2e.js +36 -0
  39. package/dist/collection/components/table/table-component-filtering.stories.js +2 -0
  40. package/dist/collection/components/table/table-component-pagination.stories.js +2 -0
  41. package/dist/collection/components/textarea/test/basic/textarea.e2e.js +26 -0
  42. package/dist/collection/components/textarea/test/default/textarea.e2e.js +34 -0
  43. package/dist/collection/components/textarea/test/read-only/textarea.e2e.js +26 -0
  44. package/dist/collection/index.js +1 -0
  45. package/dist/components/popover-core.js +5 -0
  46. package/dist/components/tds-chip.js +12 -2
  47. package/dist/components/tds-dropdown.js +10 -2
  48. package/dist/esm/loader.js +1 -1
  49. package/dist/esm/tds-chip.entry.js +11 -1
  50. package/dist/esm/tds-dropdown.entry.js +9 -2
  51. package/dist/esm/tds-popover-core.entry.js +5 -0
  52. package/dist/esm/tegel.js +1 -1
  53. package/dist/tegel/p-33dfc79a.entry.js +1 -0
  54. package/dist/tegel/{p-9e1430c5.entry.js → p-49c03547.entry.js} +1 -1
  55. package/dist/tegel/p-c1f3d3a9.entry.js +1 -0
  56. package/dist/tegel/tegel.css +2 -2
  57. package/dist/tegel/tegel.esm.js +1 -1
  58. package/dist/types/component-event-listeners-edited.d.ts +1700 -0
  59. package/dist/types/components/block/block.d.ts +11 -0
  60. package/dist/types/components/dropdown/dropdown-option/dropdown-option.d.ts +1 -0
  61. package/dist/types/components/dropdown/dropdown.d.ts +7 -3
  62. package/dist/types/components/dropdown/dropdown.stories.d.ts +13 -0
  63. package/dist/types/components/header/header-launcher/header-launcher.d.ts +15 -0
  64. package/dist/types/components/popover-canvas/popover-canvas.d.ts +27 -0
  65. package/dist/types/components/popover-core/popover-core.d.ts +47 -0
  66. package/dist/types/components/popover-menu/popover-menu.d.ts +28 -0
  67. package/dist/types/components/side-menu/side-menu-item/side-menu-item.d.ts +24 -0
  68. package/dist/types/components/side-menu/side-menu.d.ts +45 -0
  69. package/dist/types/components/table/table-body/table-body.d.ts +24 -0
  70. package/dist/types/components/table/table-body-cell/table-body-cell.d.ts +27 -0
  71. package/dist/types/components/table/table-body-row/table-body-row.d.ts +28 -0
  72. package/dist/types/components/table/table-body-row-expandable/table-body-row-expandable.d.ts +29 -0
  73. package/dist/types/components/table/table-header/table-header.d.ts +39 -0
  74. package/dist/types/components/table/table-header-cell/table-header-cell.d.ts +56 -0
  75. package/dist/types/components/table/table-toolbar/table-toolbar.d.ts +29 -0
  76. package/dist/types/components/tooltip/tooltip.d.ts +34 -0
  77. package/dist/types/components.d.ts +9 -1
  78. package/dist/types/index.d.ts +1 -0
  79. package/package.json +4 -2
  80. package/dist/tegel/p-e5fd7377.entry.js +0 -1
  81. package/dist/tegel/p-ff006811.entry.js +0 -1
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @slot <default> - <b>Unnamed slot.</b> For the content.
3
+ */
4
+ export declare class TdsBlock {
5
+ host: HTMLElement;
6
+ /** Mode variant of the component, based on current mode. */
7
+ modeVariant: 'primary' | 'secondary';
8
+ children: Array<HTMLTdsBlockElement>;
9
+ setModeVariantOnChildBlocks(): void;
10
+ render(): any;
11
+ }
@@ -1,4 +1,5 @@
1
1
  import { EventEmitter } from '../../../stencil-public-runtime';
2
+ import { TdsCheckboxCustomEvent } from '../../../components';
2
3
  /**
3
4
  * @slot <default> - <b>Unnamed slot.</b> For the option label text.
4
5
  */
@@ -28,6 +28,8 @@ export declare class TdsDropdown {
28
28
  multiselect: boolean;
29
29
  /** Enables filtration in the Dropdown. */
30
30
  filter: boolean;
31
+ /** Normalizes input text for fuzzier search */
32
+ normalizeText: boolean;
31
33
  /** Text that is displayed if filter is used and there are no options that matches the search. */
32
34
  noResultText: string;
33
35
  /** Default value selected in the Dropdown. */
@@ -55,8 +57,8 @@ export declare class TdsDropdown {
55
57
  * </code>
56
58
  */
57
59
  setValue(value: string | string[], label?: string): Promise<{
58
- value: any;
59
- label: any;
60
+ value: string;
61
+ label: string;
60
62
  }[]>;
61
63
  /**
62
64
  * @internal
@@ -84,12 +86,14 @@ export declare class TdsDropdown {
84
86
  onKeyDown(event: KeyboardEvent): Promise<void>;
85
87
  handleOpenState(): void;
86
88
  componentWillLoad(): void;
89
+ /** Method to check if we should normalize text */
90
+ private normalizeString;
87
91
  /** Method that resets the dropdown without emitting an event. */
88
92
  private internalReset;
89
93
  private setDefaultOption;
90
94
  private selectChildrenAsSelectedBasedOnSelectionProp;
91
95
  private getChildren;
92
- getOpenDirection: () => "down" | "up";
96
+ getOpenDirection: () => "up" | "down";
93
97
  private getSelectedChildren;
94
98
  private getSelectedChildrenLabels;
95
99
  private getValue;
@@ -50,6 +50,18 @@ declare const _default: {
50
50
  };
51
51
  };
52
52
  };
53
+ normalizeText: {
54
+ name: string;
55
+ description: string;
56
+ control: {
57
+ type: string;
58
+ };
59
+ table: {
60
+ defaultValue: {
61
+ summary: string;
62
+ };
63
+ };
64
+ };
53
65
  multiselect: {
54
66
  name: string;
55
67
  description: string;
@@ -161,6 +173,7 @@ declare const _default: {
161
173
  modeVariant: string;
162
174
  error: boolean;
163
175
  filter: boolean;
176
+ normalizeText: boolean;
164
177
  multiselect: boolean;
165
178
  size: string;
166
179
  labelText: string;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @slot <default> - <b>Unnamed slot.</b> For a launcher list (or grid) element.
3
+ */
4
+ export declare class TdsHeaderLauncher {
5
+ host: HTMLElement;
6
+ open: boolean;
7
+ buttonEl?: HTMLTdsHeaderLauncherButtonElement;
8
+ hasListTypeMenu: boolean;
9
+ private uuid;
10
+ private ariaAttributes;
11
+ onAnyClick(event: MouseEvent): void;
12
+ componentDidLoad(): void;
13
+ toggleLauncher(): void;
14
+ render(): any;
15
+ }
@@ -0,0 +1,27 @@
1
+ import type { Placement } from '@popperjs/core';
2
+ import { Attributes } from '../../types/Attributes';
3
+ /**
4
+ * @slot <default> - <b>Unnamed slot.</b> For the contents of the popover.
5
+ */
6
+ export declare class TdsPopoverCanvas {
7
+ host: HTMLTdsPopoverCanvasElement;
8
+ /** The CSS-selector for an element that will trigger the Popover */
9
+ selector: string;
10
+ /** Element that will trigger the Popover (takes priority over selector) */
11
+ referenceEl?: HTMLElement | null;
12
+ /** Controls whether the Popover is shown or not. If this is set hiding and showing
13
+ * will be decided by this prop and will need to be controlled from the outside.
14
+ */
15
+ show: boolean;
16
+ /** Decides the placement of the Popover Canvas. See https://popper.js.org/docs/v2/constructors/#placement */
17
+ placement: Placement;
18
+ /** Sets the offset skidding */
19
+ offsetSkidding: number;
20
+ /** Sets the offset distance */
21
+ offsetDistance: number;
22
+ /** Array of modifier objects to pass to popper.js. See https://popper.js.org/docs/v2/modifiers/ */
23
+ modifiers: Object[];
24
+ inheritedAttributes: Attributes;
25
+ componentWillLoad(): void;
26
+ render(): any;
27
+ }
@@ -0,0 +1,47 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ import type { Placement, Instance } from '@popperjs/core';
3
+ export declare class TdsPopoverCore {
4
+ host: HTMLTdsPopoverCoreElement;
5
+ /** The CSS-selector for an element that will trigger the pop-over */
6
+ selector: string;
7
+ /** Element that will trigger the pop-over (takes priority over selector) */
8
+ referenceEl?: HTMLElement | null;
9
+ /** Decides if the Popover Menu should be visible from the start */
10
+ show: boolean;
11
+ /** Decides the placement of the Popover Menu */
12
+ placement: Placement;
13
+ /** Sets the offset skidding */
14
+ offsetSkidding: number;
15
+ /** Sets the offset distance */
16
+ offsetDistance: number;
17
+ /** Array of modifier objects to pass to popper.js. See https://popper.js.org/docs/v2/modifiers/ */
18
+ modifiers: Object[];
19
+ /** What triggers the popover to show */
20
+ trigger: 'click' | 'hover' | 'hover-popover';
21
+ /** Decides if the popover should hide automatically.
22
+ * Alternatevly it can be hidden externally based on emitted events. */
23
+ autoHide: boolean;
24
+ renderedShowValue: boolean;
25
+ popperInstance: Instance | null;
26
+ target?: HTMLElement | null;
27
+ isShown: boolean;
28
+ /** @internal Show event. */
29
+ tdsShow: EventEmitter<{}>;
30
+ /** @internal Close event. */
31
+ tdsClose: EventEmitter<{}>;
32
+ onAnyClick(event: MouseEvent): void;
33
+ componentWillLoad(): void;
34
+ onShowChange(newValue: boolean): void;
35
+ onReferenceElChanged(newValue: HTMLElement, oldValue: HTMLElement): void;
36
+ onTriggerChanged(newValue: 'click' | 'hover' | 'hover-popover'): void;
37
+ private setIsShown;
38
+ private onClickTarget;
39
+ private handleShow;
40
+ private handleHide;
41
+ private initialize;
42
+ private cleanUp;
43
+ componentDidLoad(): void;
44
+ componentDidRender(): void;
45
+ disconnectedCallback(): void;
46
+ render(): any;
47
+ }
@@ -0,0 +1,28 @@
1
+ import type { Placement } from '@popperjs/core';
2
+ import { Attributes } from '../../types/Attributes';
3
+ /**
4
+ * @slot <default> - <b>Unnamed slot.</b> For the list of menu items.
5
+ */
6
+ export declare class TdsPopoverMenu {
7
+ host: HTMLTdsPopoverMenuElement;
8
+ /** The CSS-selector for an element that will trigger the pop-over */
9
+ selector: string;
10
+ /** Element that will trigger the pop-over (takes priority over selector) */
11
+ referenceEl?: HTMLElement | null;
12
+ /** Controls whether the Popover is shown or not. If this is set hiding and showing
13
+ * will be decided by this prop and will need to be controlled from the outside. This
14
+ * also means that clicking outside of the popover won't close it.
15
+ */
16
+ show: boolean;
17
+ /** Decides the placement of the Popover Menu */
18
+ placement: Placement;
19
+ /** Sets the offset skidding */
20
+ offsetSkidding: number;
21
+ /** Sets the offset distance */
22
+ offsetDistance: number;
23
+ /** If true this unsets the width (160px) of the Popover Menu */
24
+ fluidWidth: boolean;
25
+ inheritedAttributes: Attributes;
26
+ componentWillLoad(): void;
27
+ render(): any;
28
+ }
@@ -0,0 +1,24 @@
1
+ import { CollapseEvent } from '../side-menu';
2
+ /**
3
+ * @slot <default> - <b>Unnamed slot.</b> For injecting a native <code>&lt;button</code> and <code>&lt;a></code> element.
4
+ * */
5
+ export declare class TdsSideMenuItem {
6
+ host: HTMLTdsSideMenuItemElement;
7
+ /** If the item should appear selected. */
8
+ selected: boolean;
9
+ /** If the item should appear active. Can be used when the item is
10
+ * triggering a dropdown, and the dropdown is open, for example. */
11
+ active: boolean;
12
+ collapsed: boolean;
13
+ private sideMenuEl;
14
+ private slotEl;
15
+ updateSlotted(searchPredicate: (element: HTMLElement) => boolean, mutationCallback: (element: HTMLElement) => void): void;
16
+ /**
17
+ * This function is needed because we can't use CSS selectors to style something in the light dom
18
+ */
19
+ updateSlottedElements(): void;
20
+ connectedCallback(): void;
21
+ componentDidLoad(): void;
22
+ collapseSideMenuEventHandler(event: CustomEvent<CollapseEvent>): void;
23
+ render(): any;
24
+ }
@@ -0,0 +1,45 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ export type CollapseEvent = {
3
+ collapsed: boolean;
4
+ };
5
+ type Props = {
6
+ collapsed: boolean;
7
+ };
8
+ export type InternalTdsSideMenuPropChange = {
9
+ changed: Array<keyof Props>;
10
+ } & Partial<Props>;
11
+ /**
12
+ * @slot overlay - Used of injection of tds-side-menu-overlay
13
+ * @slot close-button - Used for injection of tds-side-menu-close-button that is show when in mobile view
14
+ * @slot <default> - <b>Unnamed slot.</b> For primary content of the side menu - like buttons.
15
+ * Used for nesting main content of Side Menu, e.g. <code><tds-side-menu-item></code> and <code><tds-side-menu-dropdown></code> components
16
+ * @slot end - Used for items that are presented at the bottom of the Side Menu, e.g. profile settings
17
+ * @slot sticky-end - Used for tds-side-menu-collapse-button component
18
+ * */
19
+ export declare class TdsSideMenu {
20
+ host: HTMLTdsSideMenuElement;
21
+ /** Applicable only for mobile. If the Side Menu is open or not. */
22
+ open: boolean;
23
+ /** Applicable only for desktop. If the Side Menu should always be shown. */
24
+ persistent: boolean;
25
+ /** If the Side Menu is collapsed. Only a persistent desktop menu can be collapsed.
26
+ * NOTE: Only use this if you have prevented the automatic collapsing with preventDefault on the tds-Collapse event. */
27
+ collapsed: boolean;
28
+ isUpperSlotEmpty: boolean;
29
+ isCollapsed: boolean;
30
+ private matchesLgBreakpointMq;
31
+ handleMatchesLgBreakpointChange: (e: MediaQueryListEvent) => void;
32
+ connectedCallback(): void;
33
+ componentDidLoad(): void;
34
+ disconnectedCallback(): void;
35
+ onCollapsedChange(newVal: boolean): void;
36
+ /** Event that is emitted when the Side Menu is collapsed. */
37
+ tdsCollapse: EventEmitter<CollapseEvent>;
38
+ /** @internal Broadcasts collapsed state to child components. */
39
+ internalTdsCollapse: EventEmitter<CollapseEvent>;
40
+ /** @internal Broadcasts collapsed state to child components. */
41
+ internalTdsSideMenuPropChange: EventEmitter<InternalTdsSideMenuPropChange>;
42
+ collapsedSideMenuEventHandler(event: CustomEvent<CollapseEvent>): void;
43
+ render(): any;
44
+ }
45
+ export {};
@@ -0,0 +1,24 @@
1
+ import { InternalTdsTablePropChange } from '../table/table';
2
+ /**
3
+ * @slot <default> - <b>Unnamed slot.</b> For table rows.
4
+ * @slot no-result - Slot for no result message when using filtering.
5
+ */
6
+ export declare class TdsTableBody {
7
+ host: HTMLElement;
8
+ multiselect: boolean;
9
+ enablePaginationTableBody: boolean;
10
+ expandableRows: boolean;
11
+ multiselectArray: any[];
12
+ multiselectArrayJSON: string;
13
+ mainCheckboxStatus: boolean;
14
+ columnsNumber: number;
15
+ tableId: string;
16
+ tableEl: HTMLTdsTableElement;
17
+ internalTdsPropChangeListener(event: CustomEvent<InternalTdsTablePropChange>): void;
18
+ bodyCheckBoxClicked: () => void;
19
+ bodyCheckboxListener(): void;
20
+ connectedCallback(): void;
21
+ componentWillLoad(): void;
22
+ componentWillRender(): void;
23
+ render(): any;
24
+ }
@@ -0,0 +1,27 @@
1
+ import { InternalTdsTablePropChange } from '../table/table';
2
+ /**
3
+ * @slot <default> - <b>Unnamed slot.</b> For the cell contents.
4
+ */
5
+ export declare class TdsTableBodyCell {
6
+ /** Value that will be presented as text inside a cell */
7
+ cellValue: string | number;
8
+ /** Passing the same cell key for all body cells which is used in head cell enables features of text align and hovering */
9
+ cellKey: any;
10
+ /** Disables internal padding. Useful when passing other components to cell. */
11
+ disablePadding: boolean;
12
+ textAlignState: string;
13
+ activeSorting: boolean;
14
+ verticalDividers: boolean;
15
+ compactDesign: boolean;
16
+ noMinWidth: boolean;
17
+ whiteBackground: boolean;
18
+ tableId: string;
19
+ host: HTMLElement;
20
+ tableEl: HTMLTdsTableElement;
21
+ internalTdsPropChangeListener(event: CustomEvent<InternalTdsTablePropChange>): void;
22
+ internalTdsHoverListener(event: CustomEvent<any>): void;
23
+ internalTdsTextAlignListener(event: CustomEvent<any>): void;
24
+ connectedCallback(): void;
25
+ componentWillLoad(): void;
26
+ render(): any;
27
+ }
@@ -0,0 +1,28 @@
1
+ import { EventEmitter } from '../../../stencil-public-runtime';
2
+ import { InternalTdsTablePropChange } from '../table/table';
3
+ /**
4
+ * @slot <default> - <b>Unnamed slot.</b> For the cells.
5
+ */
6
+ export declare class TdsTableBodyRow {
7
+ /** Marks the row as selected, used for multiselect table. */
8
+ selected: boolean;
9
+ multiselect: boolean;
10
+ mainCheckBoxStatus: boolean;
11
+ verticalDividers: boolean;
12
+ compactDesign: boolean;
13
+ noMinWidth: boolean;
14
+ tableId: string;
15
+ host: HTMLElement;
16
+ tableEl: HTMLTdsTableElement;
17
+ /** Event emitted when a row is selected/deselected. */
18
+ tdsSelect: EventEmitter<{
19
+ tableId: string;
20
+ checked: boolean;
21
+ selectedRows: any[];
22
+ }>;
23
+ handleCheckboxChange(event: any): Promise<void>;
24
+ internalTdsPropChangeListener(event: CustomEvent<InternalTdsTablePropChange>): void;
25
+ connectedCallback(): void;
26
+ componentWillLoad(): void;
27
+ render(): any;
28
+ }
@@ -0,0 +1,29 @@
1
+ import { EventEmitter } from '../../../stencil-public-runtime';
2
+ import { InternalTdsTablePropChange } from '../table/table';
3
+ /**
4
+ * @slot <default> - <b>Unnamed slot.</b> For the cells.
5
+ * @slot expand-row - Slot for the expanded row.
6
+ */
7
+ export declare class TdsTableBodyRowExpandable {
8
+ /** In case that automatic count of columns does not work, user can manually set this one.
9
+ * Take in mind that expandable control is column too */
10
+ colSpan: number;
11
+ isExpanded: boolean;
12
+ tableId: string;
13
+ columnsNumber: number;
14
+ verticalDividers: boolean;
15
+ compactDesign: boolean;
16
+ noMinWidth: boolean;
17
+ modeVariant: 'primary' | 'secondary';
18
+ host: HTMLElement;
19
+ tableEl: HTMLTdsTableElement;
20
+ /** @internal Sends out expanded status which is used by the Table header component */
21
+ internalTdsRowExpanded: EventEmitter<any>;
22
+ internalTdsPropChangeListener(event: CustomEvent<InternalTdsTablePropChange>): void;
23
+ connectedCallback(): void;
24
+ componentWillLoad(): void;
25
+ componentWillRender(): void;
26
+ sendValue(): void;
27
+ onChangeHandler(event: any): void;
28
+ render(): any;
29
+ }
@@ -0,0 +1,39 @@
1
+ import { EventEmitter } from '../../../stencil-public-runtime';
2
+ import { InternalTdsTablePropChange } from '../table/table';
3
+ /**
4
+ * @slot <default> - <b>Unnamed slot.</b> For the header cells.
5
+ */
6
+ export declare class TdsTableHeaderRow {
7
+ /** @deprecated Deprecated, use selected instead.. */
8
+ allSelected: boolean;
9
+ /** Prop for controling the checked/unchecked state of the "All selected"-checkbox. */
10
+ selected: boolean;
11
+ /** Prop for controling the indeterminate state of the "All selected"-checkbox. */
12
+ indeterminate: boolean;
13
+ multiselect: boolean;
14
+ expandableRows: boolean;
15
+ mainCheckboxSelected: boolean;
16
+ mainExpendSelected: boolean;
17
+ verticalDividers: boolean;
18
+ compactDesign: boolean;
19
+ noMinWidth: boolean;
20
+ whiteBackground: boolean;
21
+ enableToolbarDesign: boolean;
22
+ tableId: string;
23
+ host: HTMLElement;
24
+ tableEl: HTMLTdsTableElement;
25
+ /** Event emitted when the status of the select all checkbox changes. */
26
+ tdsSelectAll: EventEmitter<{
27
+ tableId: string;
28
+ checked: boolean;
29
+ selectedRows: any[];
30
+ }>;
31
+ internalTdsPropChangeListener(event: CustomEvent<InternalTdsTablePropChange>): void;
32
+ internalTdsRowExpandedListener(event: CustomEvent<any>): void;
33
+ bodyExpandClicked(): void;
34
+ connectedCallback(): void;
35
+ componentWillLoad(): void;
36
+ componentWillRender(): void;
37
+ handleCheckboxChange(event: any): Promise<void>;
38
+ render(): any;
39
+ }
@@ -0,0 +1,56 @@
1
+ import { EventEmitter } from '../../../stencil-public-runtime';
2
+ import { InternalTdsTablePropChange } from '../table/table';
3
+ export declare class TdsTableHeaderCell {
4
+ /** The value of column key, usually comes from JSON, needed for sorting */
5
+ cellKey: string;
6
+ /** Text that displays in column cell */
7
+ cellValue: string;
8
+ /** In case noMinWidth is set, the user has to specify width value for each column. */
9
+ customWidth: string;
10
+ /** Enables sorting on that column */
11
+ sortable: boolean;
12
+ /** Setting for text align, default is left. Other accepted values are "right" or "end". */
13
+ textAlign: string;
14
+ textAlignState: string;
15
+ sortingDirection: 'asc' | 'desc';
16
+ sortedByMyKey: boolean;
17
+ verticalDividers: boolean;
18
+ compactDesign: boolean;
19
+ noMinWidth: boolean;
20
+ multiselect: boolean;
21
+ enableToolbarDesign: boolean;
22
+ tableId: string;
23
+ expandableRows: boolean;
24
+ host: HTMLElement;
25
+ tableEl: HTMLTdsTableElement;
26
+ /** Sends unique Table identifier, column key and sorting direction to the tds-table-body component, can also be listened to in order to implement custom-sorting logic. */
27
+ tdsSort: EventEmitter<{
28
+ tableId: string;
29
+ columnKey: string;
30
+ sortingDirection: 'asc' | 'desc';
31
+ }>;
32
+ /** @internal Sends unique Table identifier, column key and sorting direction to the tds-table-body component, can also be listened to in order to implement custom-sorting logic. */
33
+ internalSortButtonClicked: EventEmitter<{
34
+ tableId: string;
35
+ key: string;
36
+ }>;
37
+ /** @internal Sends unique Table identifier,column key and text align value so the body cells with a same key take the same text alignment as header cell */
38
+ internalTdsTextAlign: EventEmitter<any>;
39
+ /** @internal Sends unique Table identifier, column key so the body cells with the same key change background when user hovers over header cell */
40
+ internalTdsHover: EventEmitter<{
41
+ tableId: string;
42
+ key: string;
43
+ }>;
44
+ internalTdsPropChangeListener(event: CustomEvent<InternalTdsTablePropChange>): void;
45
+ updateOptionsContent(event: CustomEvent<{
46
+ tableId: string;
47
+ key: string;
48
+ }>): void;
49
+ connectedCallback(): void;
50
+ componentWillLoad(): void;
51
+ componentWillRender(): void;
52
+ sortButtonClick: () => void;
53
+ headerCellContent: () => any;
54
+ onHeadCellHover: (key: any) => void;
55
+ render(): any;
56
+ }
@@ -0,0 +1,29 @@
1
+ import { EventEmitter } from '../../../stencil-public-runtime';
2
+ import { InternalTdsTablePropChange } from '../table/table';
3
+ /**
4
+ * @slot end - Slot for the end (right side) of the Table Toolbar.
5
+ */
6
+ export declare class TdsTableToolbar {
7
+ /** Adds title to the Table */
8
+ tableTitle: string;
9
+ /** Enables preview of searchbar */
10
+ filter: boolean;
11
+ verticalDividers: boolean;
12
+ compactDesign: boolean;
13
+ noMinWidth: boolean;
14
+ whiteBackground: boolean;
15
+ tableId: string;
16
+ host: HTMLElement;
17
+ tableEl: HTMLTdsTableElement;
18
+ /** Used for sending users' input to the main parent tds-table the component,
19
+ * can also be listened to in order to implement custom sorting logic. */
20
+ tdsFilter: EventEmitter<{
21
+ tableId: string;
22
+ query: string;
23
+ }>;
24
+ internalTdsPropChangeListener(event: CustomEvent<InternalTdsTablePropChange>): void;
25
+ connectedCallback(): void;
26
+ componentWillLoad(): void;
27
+ handleSearch(event: any): void;
28
+ render(): any;
29
+ }
@@ -0,0 +1,34 @@
1
+ import type { Placement } from '@popperjs/core';
2
+ import { Attributes } from '../../types/Attributes';
3
+ /**
4
+ * @slot <default> - <b>Unnamed slot.</b> For the tooltip contents.
5
+ */
6
+ export declare class TdsTooltip {
7
+ host: HTMLTdsTooltipElement;
8
+ /** In case Tooltip contains only text, no HTML, a text can be passed by this prop */
9
+ text: string;
10
+ /** The CSS-selector for an element that will trigger the Tooltip */
11
+ selector: string;
12
+ /** Element that will trigger the Tooltip (takes priority over selector) */
13
+ referenceEl?: HTMLElement | null;
14
+ /** Allow mouse over Tooltip. Useful when Tooltip contains clickable elements like link or button. */
15
+ mouseOverTooltip: boolean;
16
+ /** Prop in control of showing and hiding prop */
17
+ show: boolean;
18
+ /** Placement of Tooltip. */
19
+ placement: Placement;
20
+ border: string;
21
+ offsetSkidding: number;
22
+ offsetDistance: number;
23
+ popperjsExtraModifiers: {
24
+ name: string;
25
+ enabled: boolean;
26
+ phase: string;
27
+ fn: ({ state }: {
28
+ state: any;
29
+ }) => void;
30
+ }[];
31
+ inheritedAttributes: Attributes;
32
+ componentWillLoad(): void;
33
+ render(): any;
34
+ }
@@ -368,6 +368,10 @@ export namespace Components {
368
368
  * Text that is displayed if filter is used and there are no options that matches the search.
369
369
  */
370
370
  "noResultText": string;
371
+ /**
372
+ * Normalizes input text for fuzzier search
373
+ */
374
+ "normalizeText": boolean;
371
375
  /**
372
376
  * The direction the Dropdown should open, auto if not specified.
373
377
  */
@@ -387,7 +391,7 @@ export namespace Components {
387
391
  /**
388
392
  * Method for setting the value of the Dropdown. Single selection example: <code> dropdown.setValue('option-1', 'Option 1'); </code> Multiselect example: <code> dropdown.setValue(['option-1', 'option-2']); </code>
389
393
  */
390
- "setValue": (value: string | string[], label?: string) => Promise<{ value: any; label: any; }[]>;
394
+ "setValue": (value: string | string[], label?: string) => Promise<{ value: string; label: string; }[]>;
391
395
  /**
392
396
  * The size of the Dropdown.
393
397
  */
@@ -2812,6 +2816,10 @@ declare namespace LocalJSX {
2812
2816
  * Text that is displayed if filter is used and there are no options that matches the search.
2813
2817
  */
2814
2818
  "noResultText"?: string;
2819
+ /**
2820
+ * Normalizes input text for fuzzier search
2821
+ */
2822
+ "normalizeText"?: boolean;
2815
2823
  /**
2816
2824
  * Blur event for the Dropdown.
2817
2825
  */
@@ -1 +1,2 @@
1
1
  export * from './components';
2
+ export * from './component-event-listeners-edited';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scania/tegel",
3
- "version": "1.3.1",
3
+ "version": "1.3.3-event-types.0",
4
4
  "description": "Tegel Design System",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -33,7 +33,8 @@
33
33
  "access": "public"
34
34
  },
35
35
  "scripts": {
36
- "build": "stencil build --docs",
36
+ "build": "stencil build --docs && stencil build --docs",
37
+ "_comment": "Due to stencil bug with types creation, we need to run build two times!",
37
38
  "start": "stencil build --dev --watch --serve",
38
39
  "test": "node docker-test-runner.js",
39
40
  "update-snapshots": "docker run --rm --network host -v $(pwd):/work/ -w /work/ mcr.microsoft.com/playwright:v1.39.0-jammy /bin/bash -c 'npm install && npx playwright test --update-snapshots && exit'",
@@ -70,6 +71,7 @@
70
71
  "addon-screen-reader": "^1.8.6",
71
72
  "babel-loader": "^8.2.5",
72
73
  "concurrently": "^8.0.1",
74
+ "event-listener-types-output-target": "^1.2.0",
73
75
  "highlight.js": "^11.8.0",
74
76
  "serve": "^14.2.1",
75
77
  "stencil-playwright": "^0.3.0",
@@ -1 +0,0 @@
1
- import{r as t,c as o,h as s,H as e,g as i}from"./p-3e9b9672.js";const l=class{constructor(s){t(this,s),this.tdsChange=o(this,"tdsChange",6),this.tdsFocus=o(this,"tdsFocus",6),this.tdsBlur=o(this,"tdsBlur",6),this.tdsInput=o(this,"tdsInput",6),this.setDefaultOption=()=>{Array.from(this.host.children).filter((t=>"TDS-DROPDOWN-OPTION"===t.tagName)).forEach((t=>(this.multiselect?this.defaultValue.split(",").forEach((o=>{o===t.value&&(t.setSelected(!0),this.value=this.value?[...this.value,t.value]:[t.value])})):this.defaultValue===t.value?(t.setSelected(!0),this.value=[t.value]):t.setSelected(!1),this.setValueAttribute(),t)))},this.getChildren=()=>Array.from(this.host.children).filter((t=>"TDS-DROPDOWN-OPTION"===t.tagName)),this.getOpenDirection=()=>{var t,o,s,e,i;if("auto"===this.openDirection||!this.openDirection){const l=null!==(o=null===(t=this.dropdownList)||void 0===t?void 0:t.offsetHeight)&&void 0!==o?o:0;return(null!==(i=null===(e=(s=this.host).getBoundingClientRect)||void 0===e?void 0:e.call(s).top)&&void 0!==i?i:0)+l+57>window.innerHeight?"up":"down"}return this.openDirection},this.getSelectedChildren=()=>{var t;return null===(t=this.value)||void 0===t?void 0:t.map((t=>this.getChildren().find((o=>o.value===t)))).filter(Boolean)},this.getSelectedChildrenLabels=()=>{var t;return null===(t=this.getSelectedChildren())||void 0===t?void 0:t.map((t=>t.textContent.trim()))},this.getValue=()=>{const t=this.getSelectedChildrenLabels();return t?this.filter?null==t?void 0:t.join(", "):null==t?void 0:t.toString():""},this.setValueAttribute=()=>{var t,o,s;""===(null===(t=this.value)||void 0===t?void 0:t.toString())&&(this.value=null),this.host.setAttribute("value",null!==(s=null===(o=this.value)||void 0===o?void 0:o.map((t=>t)).toString())&&void 0!==s?s:null)},this.handleFilter=t=>{this.tdsInput.emit(t);const o=t.target.value.toLowerCase(),s=this.getChildren();""===o?(s.forEach((t=>(t.removeAttribute("hidden"),t))),this.filterResult=null):this.filterResult=s.filter((t=>(t.textContent.toLowerCase().includes(o.toLowerCase())?t.removeAttribute("hidden"):t.setAttribute("hidden",""),!t.hasAttribute("hidden")))).length},this.handleFocus=t=>{this.tdsFocus.emit(t)},this.handleBlur=t=>{this.tdsBlur.emit(t)},this.handleChange=()=>{var t,o;this.tdsChange.emit({name:this.name,value:null!==(o=null===(t=this.value)||void 0===t?void 0:t.map((t=>t)).toString())&&void 0!==o?o:null})},this.name=void 0,this.disabled=!1,this.helper=void 0,this.label=void 0,this.labelPosition=void 0,this.modeVariant=null,this.openDirection="auto",this.placeholder=void 0,this.size="lg",this.error=!1,this.multiselect=!1,this.filter=!1,this.noResultText="No result",this.defaultValue=void 0,this.open=!1,this.value=void 0,this.filterResult=void 0,this.filterFocus=void 0}async reset(){this.internalReset(),this.handleChange()}async setValue(t,o){let s;s="string"==typeof t?[t]:t,!this.multiselect&&s.length>1&&(console.warn("Tried to select multiple items, but multiselect is not enabled."),s=[s[0]]),this.internalReset();for(let t=0;t<s.length;t++)this.getChildren().some((o=>o.value===s[t]))||s.splice(t,1);return this.value=s,this.setValueAttribute(),this.selectChildrenAsSelectedBasedOnSelectionProp(),this.handleChange(),this.getSelectedChildren().map((t=>({value:t.value,label:t.textContent.trim()})))}async appendValue(t){this.setValue(this.multiselect&&this.value?[...this.value,t]:t)}async removeValue(t){var o,s;let e;return this.multiselect?null===(o=this.getChildren())||void 0===o||o.forEach((o=>{var s;return o.value===t&&(this.value=null===(s=this.value)||void 0===s?void 0:s.filter((t=>t!==o.value)),e=o.textContent.trim(),o.setSelected(!1)),o})):this.reset(),this.handleChange(),this.setValueAttribute(),null===(s=this.value)||void 0===s?void 0:s.map((t=>({value:t,label:e})))}async close(){this.open=!1}onAnyClick(t){this.open&&!t.composedPath().includes(this.host)&&(this.open=!1)}async onKeyDown(t){const{activeElement:o}=document;if(!o)return;const s=this.getChildren();if("ArrowDown"===t.key){const t=o.nextElementSibling?s.findIndex((t=>t===o.nextElementSibling)):0;s[((t,o)=>{if(void 0===t[o])return 0;for(let s=o;s<t.length;s++)if(!t[s].disabled)return s})(s,t)].focus()}else"ArrowUp"===t.key?s[((t,o)=>{if(void 0===t[o])return t.length-1;for(let s=o;s>=0;s--)if(!t[s].disabled)return s})(s,o.nextElementSibling?this.getChildren().findIndex((t=>t===o.previousElementSibling)):0)].focus():"Escape"===t.key&&(this.open=!1)}handleOpenState(){this.filter&&this.multiselect&&(this.open||(this.inputElement.value=this.getValue()))}componentWillLoad(){this.defaultValue&&this.setDefaultOption()}internalReset(){this.getChildren().forEach((t=>(t.setSelected(!1),t))),this.value=null,this.setValueAttribute()}selectChildrenAsSelectedBasedOnSelectionProp(){this.getChildren().forEach((t=>{this.value.forEach((o=>{t.value!==o?this.multiselect||t.setSelected(!1):t.setSelected(!0)}))}))}render(){var t,o,i,l;return((t,o,s,e)=>{let i=t.querySelector("input");t.querySelector("input")||(i=t.ownerDocument.createElement("input"),i.type="hidden",t.appendChild(i)),i.disabled=e,i.name=o,i.value=s||""})(this.host,this.name,null===(t=this.value)||void 0===t?void 0:t.map((t=>t)).toString(),this.disabled),s(e,{role:"select",class:this.modeVariant?`tds-mode-variant-${this.modeVariant}`:""},this.label&&"outside"===this.labelPosition&&s("div",{class:"label-outside "+(this.disabled?"disabled":"")},this.label),s("div",{class:`dropdown-select ${this.size} ${this.disabled?"disabled":""}`},this.filter?s("div",{class:{filter:!0,focus:this.filterFocus,disabled:this.disabled,error:this.error}},s("div",{class:"value-wrapper"},this.label&&"inside"===this.labelPosition&&this.placeholder&&s("div",{class:`label-inside ${this.size}`},this.label),this.label&&"inside"===this.labelPosition&&!this.placeholder&&s("div",{class:`\n label-inside-as-placeholder\n ${this.size}\n ${(null===(o=this.value)||void 0===o?void 0:o.length)?"selected":""}\n `},this.label),s("input",{ref:t=>this.inputElement=t,class:"inside"===this.labelPosition?"placeholder":"",type:"text",placeholder:this.placeholder,value:this.getValue(),disabled:this.disabled,onInput:t=>this.handleFilter(t),onBlur:t=>{this.filterFocus=!1,this.handleBlur(t)},onFocus:t=>{this.open=!0,this.filterFocus=!0,this.handleFocus(t)},onKeyDown:t=>{"Escape"===t.key&&(this.open=!1)}})),s("tds-icon",{onClick:()=>{this.open=!this.open,this.open&&this.inputElement.focus()},class:this.open?"open":"closed",name:"chevron_down",size:"16px"})):s("button",{onClick:()=>{this.open=!this.open},onKeyDown:t=>{"Escape"===t.key&&(this.open=!1)},class:`\n ${this.value?"value":"placeholder"}\n ${this.open?"open":"closed"}\n ${this.error?"error":""}\n `,disabled:this.disabled},s("div",{class:`value-wrapper ${this.size}`},this.label&&"inside"===this.labelPosition&&this.placeholder&&s("div",{class:`label-inside ${this.size}`},this.label),this.label&&"inside"===this.labelPosition&&!this.placeholder&&s("div",{class:`\n label-inside-as-placeholder\n ${this.size}\n ${(null===(i=this.value)||void 0===i?void 0:i.length)?"selected":""}\n `},this.label),s("div",{class:`placeholder ${this.size}`},(null===(l=this.value)||void 0===l?void 0:l.length)?this.getValue():this.placeholder),s("tds-icon",{class:this.open?"open":"closed",name:"chevron_down",size:"16px"})))),s("div",{ref:t=>this.dropdownList=t,class:`dropdown-list\n ${this.size}\n ${this.open?"open":"closed"}\n ${this.getOpenDirection()}\n ${this.label&&"outside"===this.labelPosition?"label-outside":""}`},s("slot",null),0===this.filterResult&&s("div",{class:`no-result ${this.size}`},this.noResultText)),this.helper&&s("div",{class:`helper ${this.error?"error":""} ${this.disabled?"disabled":""}`},this.error&&s("tds-icon",{name:"error",size:"16px"}),this.helper))}get host(){return i(this)}static get watchers(){return{open:["handleOpenState"]}}};l.style=':host button{all:unset;height:100%;width:100%;background-color:var(--tds-dropdown-bg);border-bottom:1px solid var(--tds-dropdown-border-bottom);border-radius:4px 4px 0 0}:host button:hover{border-bottom:1px solid var(--tds-dropdown-border-bottom-hover)}:host button .value-wrapper{padding:0 16px;display:flex;align-items:center;justify-content:space-between}:host button.placeholder{color:var(--tds-dropdown-placeholder-color);line-height:1.3}:host button.value{color:var(--tds-dropdown-value-color);font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls);line-height:1.3}:host button:focus{border-bottom-color:var(--tds-dropdown-border-bottom-open)}:host button:focus::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--tds-dropdown-border-bottom-open)}:host button.error{border-bottom:1px solid var(--tds-negative)}:host button.error:focus{border-bottom-color:transparent}:host button.error:focus::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--tds-negative)}:host button:disabled{color:var(--tds-dropdown-disabled-color);border-bottom:1px solid transparent}:host .filter{display:flex;align-items:center;justify-content:space-between;height:100%;background-color:var(--tds-dropdown-bg);border-bottom:1px solid var(--tds-dropdown-border-bottom);padding-left:16px;border-radius:4px 4px 0 0}:host .filter:hover{border-bottom:1px solid var(--tds-dropdown-border-bottom-hover)}:host .filter.disabled{color:var(--tds-dropdown-disabled-color)}:host .filter .value-wrapper{display:flex;width:100%;height:100%}:host .filter .label-inside-as-placeholder{position:absolute;font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls);color:var(--tds-dropdown-placeholder-color)}:host .filter .label-inside-as-placeholder.lg{top:20px}:host .filter .label-inside-as-placeholder.md{top:16px}:host .filter .label-inside-as-placeholder.sm{display:none}:host .filter .label-inside-as-placeholder.selected{font:var(--tds-detail-07);letter-spacing:var(--tds-detail-07-ls);transition:all 0.2s ease-in-out}:host .filter .label-inside-as-placeholder.selected.lg{top:12px}:host .filter .label-inside-as-placeholder.selected.md{top:8px}:host .filter .label-inside-as-placeholder.selected.sm{display:none}:host .filter .label-inside-as-placeholder.selected+.placeholder:not(.sm){margin-top:8px}:host .filter.focus{border-bottom-color:transparent}:host .filter.focus::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--tds-dropdown-border-bottom-open)}:host .filter.error{border-bottom:1px solid var(--tds-negative)}:host .filter.error.focus{border-bottom-color:transparent}:host .filter.error.focus::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--tds-negative)}:host .filter input{flex:1;all:unset;width:100%}:host .filter input::placeholder{color:var(--tds-dropdown-placeholder-color)}:host .filter input:disabled::placeholder{color:var(--tds-dropdown-disabled-color)}:host .filter tds-icon{margin-right:16px}:host{display:block;position:relative;font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls)}:host .label-outside{font:var(--tds-detail-05);letter-spacing:var(--tds-detail-05-ls);color:var(--tds-dropdown-label-color);margin-bottom:8px}:host .label-outside.disabled{color:var(--tds-dropdown-disabled-color)}:host .dropdown-select{position:relative}:host .dropdown-select.disabled .label-inside,:host .dropdown-select.disabled .placeholder,:host .dropdown-select.disabled .label-inside-as-placeholder,:host .dropdown-select.disabled .value-wrapper{color:var(--tds-dropdown-disabled-color)}:host .dropdown-select .label-inside{position:absolute;font:var(--tds-detail-07);letter-spacing:var(--tds-detail-07-ls);color:var(--tds-dropdown-label-inside-color)}:host .dropdown-select .label-inside.lg{top:12px;left:16px}:host .dropdown-select .label-inside.md{top:8px;left:16px}:host .dropdown-select .label-inside.sm{display:none}:host .dropdown-select .label-inside+.placeholder:not(.sm){margin-top:8px}:host .dropdown-select .placeholder{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .dropdown-select .label-inside-as-placeholder{color:var(--tds-dropdown-placeholder-color)}:host .dropdown-select .label-inside-as-placeholder.selected{position:absolute;font:var(--tds-detail-07);letter-spacing:var(--tds-detail-07-ls);transition:all 0.2s ease-in-out}:host .dropdown-select .label-inside-as-placeholder.selected.lg{top:12px}:host .dropdown-select .label-inside-as-placeholder.selected.md{top:8px}:host .dropdown-select .label-inside-as-placeholder.selected.sm{display:none}:host .dropdown-select .label-inside-as-placeholder.selected+.placeholder:not(.sm){margin-top:8px}:host .dropdown-select.lg{height:55px}:host .dropdown-select.md{height:47px}:host .dropdown-select.sm{height:39px}:host .helper{margin-top:4px;color:var(--tds-dropdown-helper-color);font:var(--tds-detail-05);letter-spacing:var(--tds-detail-05-ls);display:flex;align-items:center;gap:8px}:host .helper.error{color:var(--tds-negative)}:host .helper.disabled{color:var(--tds-dropdown-disabled-color)}:host .dropdown-list{z-index:100;position:absolute;margin-top:1px;width:100%;transform-origin:top;transition:transform 0.2s ease-in-out;box-shadow:rgba(0, 0, 0, 0.1) 0 2px 3px 0;border-radius:0 0 4px 4px;overflow-y:auto}:host .dropdown-list::-webkit-scrollbar{width:4px;background-color:inherit}:host .dropdown-list::-webkit-scrollbar-thumb{background-color:var(--tds-grey-300)}:host .dropdown-list ::-webkit-scrollbar-button{height:0;width:0}:host .dropdown-list.lg{max-height:312px}:host .dropdown-list.md{max-height:312px}:host .dropdown-list.sm{max-height:260px}:host .dropdown-list.up{bottom:100%;margin-top:0;margin-bottom:1px;transform-origin:bottom;display:flex;flex-direction:column-reverse;box-shadow:rgba(0, 0, 0, 0.1) 0 -1px 3px 0;border-radius:4px 4px 0 0}:host .dropdown-list.up.label-outside{bottom:calc(100% - 24px)}:host .dropdown-list.closed{transform:scaleY(0);visibility:hidden}:host .dropdown-list.open{transform:scaleY(1)}:host .dropdown-list .no-result{font:var(--tds-detail-02);letter-spacing:var(--tds-detail-02-ls);display:flex;align-items:center;padding:0 16px;background-color:var(--tds-dropdown-bg)}:host .dropdown-list .no-result.lg{height:56px}:host .dropdown-list .no-result.md{height:48px}:host .dropdown-list .no-result.sm{height:40px}:host tds-icon{transition:transform 0.2s ease-in-out}:host tds-icon.open{transform:rotateZ(180deg)}';export{l as tds_dropdown}