@db-ux/v-core-components 4.14.0 → 5.0.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,41 @@
1
1
  # @db-ux/v-core-components
2
2
 
3
+ ## 5.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - fix: drawer close handling by removing timeout state management - [see commit 45d93f0](https://github.com/db-ux-design-system/core-web/commit/45d93f010bf0caece669f96c6f00d288ebdf5363)
8
+
9
+ - fix(select): icon overlapping the floating label - [see commit 9dff6ed](https://github.com/db-ux-design-system/core-web/commit/9dff6ed85fa5e2f6aebd89b3b2662e3a017b196e)
10
+
11
+ ## 5.0.0
12
+
13
+ We're providing a [migration guide for all 4.x to 5.0.0](https://github.com/db-ux-design-system/core-web/blob/main/docs/migration/v4.x.x-to-v5.0.0.md) changes.
14
+
15
+ ### Major Changes
16
+
17
+ - refactor: DBDrawer with breaking changes - [see commit 9189f6c](https://github.com/db-ux-design-system/core-web/commit/9189f6c24cd3a64f072c2f60f8c8127d1ed68c55):
18
+
19
+ - The `DBDrawer` component now requires a `DBDrawerHeader` component to be passed in the `header` slot.
20
+ - The `spacing` property has been removed from `DBDrawer`.
21
+ - The default `direction` has changed from `right` to `to-left`.
22
+ - The `width` property has been renamed to `containerSize`.
23
+ - The `direction` values have been renamed from `right`/`left` to `to-left`/`to-right`.
24
+
25
+ - refactor: remove default `margin-inline` from `[data-icon]` pseudo-elements in favor of `gap` - [see commit 635f4b7](https://github.com/db-ux-design-system/core-web/commit/635f4b7ff6ce2aa9341932cb0b8a9c8657ed1ade)
26
+
27
+ - refactor: rework DBTabs and DBTabItem - [see commit c50e522](https://github.com/db-ux-design-system/core-web/commit/c50e5221a4c6f3357ff52451291bdc5772267178):
28
+
29
+ - **Breaking:** DBTabItem now renders a native `button` (`role="tab"`) instead of a radio `input`.
30
+ - **Breaking:** Removed `checked`, `noText` and `name` from DBTabItem.
31
+ - **Breaking:** Renamed DBTabs props `onTabSelect` → `onIndexChange`, `alignment` → `tabItemAlignment`, `width` → `tabItemWidth`.
32
+ - **Breaking:** Deep linking derives the tab id from the `id` prop instead of `label`.
33
+ - Added truncation tooltip for overflowing tab labels and fixed vertical layout, trailing icon and tooltip placement.
34
+
35
+ ### Patch Changes
36
+
37
+ - fix: remove dead `z-index` and `position: relative` from table-row interactive children - [see commit 7edb77b](https://github.com/db-ux-design-system/core-web/commit/7edb77bb9f90d4a79f238ebab362074d12f02f0f)
38
+
3
39
  ## 4.14.0
4
40
 
5
41
  ### Minor Changes
package/agent/Drawer.md CHANGED
@@ -1,11 +1,3 @@
1
- ## CSS Properties
2
-
3
- | CSS Variable | Default | CSS Property | Description | Example |
4
- | --- | --- | --- | --- | --- |
5
- | `--db-drawer-max-height` | `calc(100% - #{variables.$db-spacing-fixed-xl})` | max-block-size | Sets the maximum height of the drawer | — |
6
- | `--db-drawer-header-padding-block-end` | `#{map.get($spacing, "block")}` | padding-block-end | Controls the bottom padding inside the drawer header | — |
7
- | `--db-drawer-content-padding-inline` | `#{map.get($spacing, "inline")}` | padding-inline | Controls left/right padding inside the drawer content area | — |
8
- | `--db-drawer-max-width` | `calc(100% - #{variables.$db-spacing-fixed-xl})` | max-inline-size | Sets the maximum width of the drawer and some default values for the drawer | <pre>css - Wide drawer<br>.db-drawer-wide {<br>--db-drawer-max-width: 800px;<br>}<br>&lt;div class="db-drawer db-drawer-wide"&gt;<br>&lt;!-- wide drawer --&gt;<br>&lt;/div&gt;<br></pre> |
9
1
 
10
2
 
11
3
  # Drawer Examples (vue)
package/agent/TabItem.md CHANGED
@@ -19,8 +19,8 @@
19
19
  </DBTabItem>
20
20
  <h2>5. Label Property</h2>
21
21
  <DBTabItem label="Tab Item Label">Tab Item with Label</DBTabItem>
22
- <h2>6. No Text</h2>
23
- <DBTabItem icon="user" :noText="true"></DBTabItem>
22
+ <h2>6. Tab with Icon and Label</h2>
23
+ <DBTabItem label="User Profile" icon="user" :showIcon="true"></DBTabItem>
24
24
  </template>
25
25
 
26
26
  <script setup lang="ts">
package/agent/Tabs.md CHANGED
@@ -8,41 +8,44 @@
8
8
  <h2>1. Default Tabs</h2>
9
9
  <DBTabs
10
10
  ><DBTabList
11
- ><DBTabItem>Tab 1</DBTabItem><DBTabItem>Tab 2</DBTabItem
12
- ><DBTabItem>Tab 3</DBTabItem></DBTabList
13
- ><DBTabPanel>Tab Panel 1</DBTabPanel><DBTabPanel>Tab Panel 2</DBTabPanel
14
- ><DBTabPanel>Tab Panel 3</DBTabPanel></DBTabs
11
+ ><DBTabItem>Def Tab 1</DBTabItem><DBTabItem>Def Tab 2</DBTabItem
12
+ ><DBTabItem>Def Tab 3</DBTabItem></DBTabList
13
+ ><DBTabPanel>Def Panel 1</DBTabPanel><DBTabPanel>Def Panel 2</DBTabPanel
14
+ ><DBTabPanel>Def Panel 3</DBTabPanel></DBTabs
15
15
  >
16
16
  <h2>2. Behavior Variants</h2>
17
17
  <DBTabs behavior="scrollbar"
18
18
  ><DBTabList
19
- ><DBTabItem>Tab 1</DBTabItem><DBTabItem>Tab 2</DBTabItem
20
- ><DBTabItem>Tab 3</DBTabItem></DBTabList
21
- ><DBTabPanel>Tab Panel 1</DBTabPanel><DBTabPanel>Tab Panel 2</DBTabPanel
22
- ><DBTabPanel>Tab Panel 3</DBTabPanel></DBTabs
19
+ ><DBTabItem>Scroll Tab 1</DBTabItem><DBTabItem>Scroll Tab 2</DBTabItem
20
+ ><DBTabItem>Scroll Tab 3</DBTabItem></DBTabList
21
+ ><DBTabPanel>Scroll Panel 1</DBTabPanel
22
+ ><DBTabPanel>Scroll Panel 2</DBTabPanel
23
+ ><DBTabPanel>Scroll Panel 3</DBTabPanel></DBTabs
23
24
  >
24
25
  <DBTabs behavior="arrows"
25
26
  ><DBTabList
26
- ><DBTabItem>Tab 1</DBTabItem><DBTabItem>Tab 2</DBTabItem
27
- ><DBTabItem>Tab 3</DBTabItem></DBTabList
28
- ><DBTabPanel>Tab Panel 1</DBTabPanel><DBTabPanel>Tab Panel 2</DBTabPanel
29
- ><DBTabPanel>Tab Panel 3</DBTabPanel></DBTabs
27
+ ><DBTabItem>Arrow Tab 1</DBTabItem><DBTabItem>Arrow Tab 2</DBTabItem
28
+ ><DBTabItem>Arrow Tab 3</DBTabItem></DBTabList
29
+ ><DBTabPanel>Arrow Panel 1</DBTabPanel><DBTabPanel>Arrow Panel 2</DBTabPanel
30
+ ><DBTabPanel>Arrow Panel 3</DBTabPanel></DBTabs
30
31
  >
31
32
  <h2>3. Initial Selected Index</h2>
32
33
  <DBTabs :initialSelectedIndex="1"
33
34
  ><DBTabList
34
- ><DBTabItem>Tab 1</DBTabItem><DBTabItem>Tab 2</DBTabItem
35
- ><DBTabItem>Tab 3</DBTabItem></DBTabList
36
- ><DBTabPanel>Tab Panel 1</DBTabPanel><DBTabPanel>Tab Panel 2</DBTabPanel
37
- ><DBTabPanel>Tab Panel 3</DBTabPanel></DBTabs
35
+ ><DBTabItem>InitIdx Tab 1</DBTabItem><DBTabItem>InitIdx Tab 2</DBTabItem
36
+ ><DBTabItem>InitIdx Tab 3</DBTabItem></DBTabList
37
+ ><DBTabPanel>InitIdx Panel 1</DBTabPanel
38
+ ><DBTabPanel>InitIdx Panel 2</DBTabPanel
39
+ ><DBTabPanel>InitIdx Panel 3</DBTabPanel></DBTabs
38
40
  >
39
41
  <h2>4. Initial Selected Mode</h2>
40
42
  <DBTabs initialSelectedMode="manually"
41
43
  ><DBTabList
42
- ><DBTabItem>Tab 1</DBTabItem><DBTabItem>Tab 2</DBTabItem
43
- ><DBTabItem>Tab 3</DBTabItem></DBTabList
44
- ><DBTabPanel>Tab Panel 1</DBTabPanel><DBTabPanel>Tab Panel 2</DBTabPanel
45
- ><DBTabPanel>Tab Panel 3</DBTabPanel></DBTabs
44
+ ><DBTabItem>Manually Tab 1</DBTabItem><DBTabItem>Manually Tab 2</DBTabItem
45
+ ><DBTabItem>Manually Tab 3</DBTabItem></DBTabList
46
+ ><DBTabPanel>Manually Panel 1</DBTabPanel
47
+ ><DBTabPanel>Manually Panel 2</DBTabPanel
48
+ ><DBTabPanel>Manually Panel 3</DBTabPanel></DBTabs
46
49
  >
47
50
  </template>
48
51
 
@@ -1,5 +1,4 @@
1
1
  - Use "@db-ux/v-core-components" as import for components:
2
- - use for `DBDrawer` or `Drawer` the file __agent-path__/agent/Drawer.md
3
2
  - use for `DBTooltip` or `Tooltip` the file __agent-path__/agent/Tooltip.md
4
3
  - use for `DBTextarea` or `Textarea` the file __agent-path__/agent/Textarea.md
5
4
  - use for `DBTag` or `Tag` the file __agent-path__/agent/Tag.md
@@ -20,6 +19,7 @@
20
19
  - use for `DBInfotext` or `Infotext` the file __agent-path__/agent/Infotext.md
21
20
  - use for `DBIcon` or `Icon` the file __agent-path__/agent/Icon.md
22
21
  - use for `DBHeader` or `Header` the file __agent-path__/agent/Header.md
22
+ - use for `DBDrawer` or `Drawer` the file __agent-path__/agent/Drawer.md
23
23
  - use for `DBDivider` or `Divider` the file __agent-path__/agent/Divider.md
24
24
  - use for `DBCustomSelect` or `CustomSelect` the file __agent-path__/agent/CustomSelect.md
25
25
  - use for `DBCheckbox` or `Checkbox` the file __agent-path__/agent/Checkbox.md
@@ -1,9 +1,11 @@
1
1
  import { DBDrawerProps } from "./model.js";
2
- declare var __VLS_1: {}, __VLS_9: {};
2
+ declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {};
3
3
  type __VLS_Slots = {} & {
4
- 'drawer-header'?: (props: typeof __VLS_1) => any;
4
+ header?: (props: typeof __VLS_1) => any;
5
5
  } & {
6
- default?: (props: typeof __VLS_9) => any;
6
+ default?: (props: typeof __VLS_3) => any;
7
+ } & {
8
+ footer?: (props: typeof __VLS_5) => any;
7
9
  };
8
10
  declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBDrawerProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<DBDrawerProps> & Readonly<{}>, {
9
11
  id: string;
@@ -12,15 +14,13 @@ declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBDrawerPr
12
14
  propOverrides: import("../../shared/model.js", { with: { "resolution-mode": "import" } }).PropOverridesType;
13
15
  open: boolean | string;
14
16
  variant: import("./model.js", { with: { "resolution-mode": "import" } }).DrawerVariantType;
15
- width: import("../../shared/model.js", { with: { "resolution-mode": "import" } }).WidthType | string;
16
- spacing: import("../../shared/model.js", { with: { "resolution-mode": "import" } }).SpacingType | string;
17
17
  backdrop: import("./model.js", { with: { "resolution-mode": "import" } }).DrawerBackdropType;
18
18
  direction: import("./model.js", { with: { "resolution-mode": "import" } }).DrawerDirectionType;
19
+ showSpacing: boolean | string;
19
20
  rounded: boolean | string;
20
21
  position: import("./model.js", { with: { "resolution-mode": "import" } }).DrawerPositionType;
22
+ containerSize: import("./model.js", { with: { "resolution-mode": "import" } }).DrawerContainerSizeType;
21
23
  onClose: (event?: KeyboardEvent | MouseEvent | undefined) => void;
22
- closeButtonId: string;
23
- closeButtonText: string;
24
24
  }, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
25
25
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
26
26
  declare const _default: typeof __VLS_export;
@@ -1,12 +1,14 @@
1
- import type { ClickEvent, CloseEventProps, CloseEventState, GeneralKeyboardEvent, GlobalProps, GlobalState, InitializedState, InnerCloseButtonProps, SpacingProps, WidthProps } from '../../shared/model.js';
1
+ import type { ClickEvent, CloseEventProps, CloseEventState, GeneralKeyboardEvent, GlobalProps, GlobalState, InitializedState } from '../../shared/model.js';
2
2
  export declare const DrawerBackdropList: readonly ["none", "strong", "weak", "invisible"];
3
3
  export type DrawerBackdropType = (typeof DrawerBackdropList)[number];
4
- export declare const DrawerDirectionList: readonly ["left", "right", "up", "down"];
4
+ export declare const DrawerDirectionList: readonly ["to-left", "to-right", "up", "down"];
5
5
  export type DrawerDirectionType = (typeof DrawerDirectionList)[number];
6
6
  export declare const DrawerVariantList: readonly ["modal", "inside"];
7
7
  export type DrawerVariantType = (typeof DrawerVariantList)[number];
8
8
  export declare const DrawerPositionList: readonly ["fixed", "absolute"];
9
9
  export type DrawerPositionType = (typeof DrawerPositionList)[number];
10
+ export declare const DrawerContainerSizeList: readonly ["small", "medium", "large", "full"];
11
+ export type DrawerContainerSizeType = (typeof DrawerContainerSizeList)[number];
10
12
  export type DBDrawerDefaultProps = {
11
13
  /**
12
14
  * The backdrop attribute changes the opacity of the backdrop.
@@ -15,13 +17,21 @@ export type DBDrawerDefaultProps = {
15
17
  backdrop?: DrawerBackdropType;
16
18
  /**
17
19
  * The direction attribute changes the position & animation of the drawer.
18
- * E.g. "left" slides from left screen border to the right.
20
+ * E.g. "to-left" slides from right screen border to the left.
19
21
  */
20
22
  direction?: DrawerDirectionType;
21
23
  /**
22
24
  * Slot for changing the header of the drawer.
23
25
  */
24
- drawerHeader?: any;
26
+ header?: any;
27
+ /**
28
+ * Slot for changing the footer of the drawer.
29
+ */
30
+ footer?: any;
31
+ /**
32
+ * Shows a spacing between viewport frame and drawer-content to provide enough space for the backdrop
33
+ */
34
+ showSpacing?: boolean | string;
25
35
  /**
26
36
  * The open attribute opens or closes the drawer based on the state.
27
37
  */
@@ -42,12 +52,17 @@ export type DBDrawerDefaultProps = {
42
52
  * - `absolute`: Renders with `show()`, acting as a simple overlay **without** a focus trap.
43
53
  */
44
54
  position?: DrawerPositionType;
55
+ /**
56
+ * Change the size of the drawer container.
57
+ */
58
+ containerSize?: DrawerContainerSizeType;
45
59
  };
46
- export type DBDrawerProps = DBDrawerDefaultProps & GlobalProps & CloseEventProps<ClickEvent<HTMLButtonElement | HTMLDialogElement> | GeneralKeyboardEvent<HTMLDialogElement>> & InnerCloseButtonProps & WidthProps & SpacingProps;
60
+ export type DBDrawerProps = DBDrawerDefaultProps & GlobalProps & CloseEventProps<ClickEvent<HTMLButtonElement | HTMLDialogElement> | GeneralKeyboardEvent<HTMLDialogElement>>;
47
61
  export type DBDrawerDefaultState = {
48
62
  handleDialogOpen: () => void;
49
63
  isNotModal: () => boolean;
50
64
  handleBackdropPointerDown: (event: any) => void;
51
65
  backdropPointerDown: boolean;
66
+ _closeTimeoutId?: number;
52
67
  };
53
68
  export type DBDrawerState = DBDrawerDefaultState & GlobalState & CloseEventState<ClickEvent<HTMLButtonElement | HTMLDialogElement> | GeneralKeyboardEvent<HTMLDialogElement>> & InitializedState;
@@ -0,0 +1,18 @@
1
+ declare var __VLS_1: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_1) => any;
4
+ };
5
+ declare const __VLS_base: import("@vue/runtime-core").DefineComponent<import("../../index.js", { with: { "resolution-mode": "import" } }).GlobalProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<import("../../index.js", { with: { "resolution-mode": "import" } }).GlobalProps> & Readonly<{}>, {
6
+ id: string;
7
+ children: any;
8
+ className: string;
9
+ propOverrides: import("../../index.js", { with: { "resolution-mode": "import" } }).PropOverridesType;
10
+ }, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
11
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
14
+ type __VLS_WithSlots<T, S> = T & {
15
+ new (): {
16
+ $slots: S;
17
+ };
18
+ };
@@ -0,0 +1 @@
1
+ export { default as DBDrawerFooter } from './drawer-footer.vue';
@@ -0,0 +1,5 @@
1
+ import type { GlobalProps, GlobalState } from '../../shared/model.js';
2
+ export type DBDrawerFooterDefaultProps = {};
3
+ export type DBDrawerFooterProps = DBDrawerFooterDefaultProps & GlobalProps;
4
+ export type DBDrawerFooterDefaultState = {};
5
+ export type DBDrawerFooterState = DBDrawerFooterDefaultState & GlobalState;
@@ -0,0 +1,26 @@
1
+ import { DBDrawerHeaderProps } from "./model.js";
2
+ declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {};
3
+ type __VLS_Slots = {} & {
4
+ 'start-slot'?: (props: typeof __VLS_1) => any;
5
+ } & {
6
+ default?: (props: typeof __VLS_3) => any;
7
+ } & {
8
+ 'end-slot'?: (props: typeof __VLS_5) => any;
9
+ };
10
+ declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBDrawerHeaderProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<DBDrawerHeaderProps> & Readonly<{}>, {
11
+ id: string;
12
+ children: any;
13
+ className: string;
14
+ propOverrides: import("../../index.js", { with: { "resolution-mode": "import" } }).PropOverridesType;
15
+ text: string;
16
+ closeButtonId: string;
17
+ closeButtonText: string;
18
+ }, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
19
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
20
+ declare const _default: typeof __VLS_export;
21
+ export default _default;
22
+ type __VLS_WithSlots<T, S> = T & {
23
+ new (): {
24
+ $slots: S;
25
+ };
26
+ };
@@ -0,0 +1 @@
1
+ export { default as DBDrawerHeader } from './drawer-header.vue';
@@ -0,0 +1,9 @@
1
+ import { EndSlotProps, GlobalProps, GlobalState, InnerCloseButtonProps, StartSlotProps, TextProps } from '../../shared/model.js';
2
+ export type DBDrawerHeaderDefaultProps = {};
3
+ export type DBDrawerHeaderProps = DBDrawerHeaderDefaultProps & InnerCloseButtonProps & TextProps & GlobalProps & StartSlotProps & EndSlotProps;
4
+ export type DBDrawerHeaderDefaultState = {
5
+ _headingId: string;
6
+ setAriaLabelledBy: () => void;
7
+ removeAriaLabelledBy: () => void;
8
+ };
9
+ export type DBDrawerHeaderState = DBDrawerHeaderDefaultState & GlobalState;
@@ -1,5 +1,5 @@
1
1
  import { DBHeaderProps } from "./model.js";
2
- declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {}, __VLS_7: {}, __VLS_15: {}, __VLS_23: {}, __VLS_25: {}, __VLS_27: {};
2
+ declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {}, __VLS_7: {}, __VLS_15: {}, __VLS_23: {}, __VLS_25: {}, __VLS_40: {};
3
3
  type __VLS_Slots = {} & {
4
4
  'meta-navigation'?: (props: typeof __VLS_1) => any;
5
5
  } & {
@@ -15,7 +15,7 @@ type __VLS_Slots = {} & {
15
15
  } & {
16
16
  'meta-navigation'?: (props: typeof __VLS_25) => any;
17
17
  } & {
18
- 'secondary-action'?: (props: typeof __VLS_27) => any;
18
+ 'secondary-action'?: (props: typeof __VLS_40) => any;
19
19
  };
20
20
  declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBHeaderProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<DBHeaderProps> & Readonly<{}>, {
21
21
  id: string;
@@ -28,6 +28,7 @@ declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBHeaderPr
28
28
  closeButtonText: string;
29
29
  drawerOpen: boolean | string;
30
30
  forceMobile: boolean | string;
31
+ drawerHeaderText: string;
31
32
  burgerMenuLabel: string;
32
33
  }, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
33
34
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -33,7 +33,11 @@ export type DBHeaderDefaultProps = {
33
33
  */
34
34
  forceMobile?: boolean | string;
35
35
  /**
36
- * This attribute sets the label for the burger menu button for mobile headers.
36
+ * Text to pass in a headline for the drawer header.
37
+ */
38
+ drawerHeaderText?: string;
39
+ /**
40
+ * Sets the accessible label for the burger menu button of the mobile control panel.
37
41
  */
38
42
  burgerMenuLabel?: string;
39
43
  };
@@ -5,7 +5,7 @@ export declare const StackDirectionList: readonly ["row", "column"];
5
5
  export type StackDirectionType = (typeof StackDirectionList)[number];
6
6
  export declare const StackAlignmentList: readonly ["stretch", "start", "end", "center"];
7
7
  export type StackAlignmentType = (typeof StackAlignmentList)[number];
8
- export declare const StackJustifyContentList: readonly ["space-between", "start", "end", "center"];
8
+ export declare const StackJustifyContentList: readonly ["space-between", "start", "center", "end"];
9
9
  export type StackJustifyContentType = (typeof StackJustifyContentList)[number];
10
10
  export type DBStackDefaultProps = {
11
11
  /**
@@ -1,9 +1,10 @@
1
- import type { ActiveProps, ChangeEventProps, ChangeEventState, GlobalProps, GlobalState, IconLeadingProps, IconProps, IconTrailingProps, InitializedState, NameProps, NameState, ShowIconLeadingProps, ShowIconProps, ShowIconTrailingProps } from '../../shared/model.js';
1
+ import { ActiveProps, EndSlotProps, GlobalProps, GlobalState, IconLeadingProps, IconProps, IconTrailingProps, InitializedState, ShowIconLeadingProps, ShowIconProps, ShowIconTrailingProps, WidthProps } from '../../shared/model.js';
2
+ /**
3
+ * DBTabItem is designed to be used exclusively inside a DBTabs container.
4
+ * The parent DBTabs manages selection state (aria-selected, tabindex) via direct
5
+ * DOM attribute manipulation. DBTabItem itself is purely presentational.
6
+ */
2
7
  export type DBTabItemDefaultProps = {
3
- /**
4
- * To control the component
5
- */
6
- checked?: boolean | string;
7
8
  /**
8
9
  * The disabled attribute can be set to keep a user from clicking on the tab-item.
9
10
  */
@@ -13,15 +14,25 @@ export type DBTabItemDefaultProps = {
13
14
  */
14
15
  label?: string;
15
16
  /**
16
- * Define the text next to the icon specified via the icon Property to get hidden.
17
+ * Set the tabIndex manually (internal use for roving tabindex).
18
+ */
19
+ tabIndex?: number | string;
20
+ /**
21
+ * Semantic value of this tab item. When set, onIndexChange will emit this value
22
+ * (via the onValueChange event) instead of only the numeric index.
23
+ * Useful for form binding (e.g. Angular FormControl, React useState).
17
24
  */
18
- noText?: boolean | string;
25
+ value?: string;
19
26
  };
20
- export type DBTabItemProps = GlobalProps & DBTabItemDefaultProps & IconProps & IconTrailingProps & IconLeadingProps & ShowIconLeadingProps & ShowIconTrailingProps & ActiveProps & ChangeEventProps<HTMLInputElement> & ShowIconProps & NameProps;
27
+ export type DBTabItemProps = DBTabItemDefaultProps & Omit<GlobalProps, 'id' | 'propOverrides'> & IconProps & ShowIconProps & IconTrailingProps & IconLeadingProps & ShowIconTrailingProps & ShowIconLeadingProps & ActiveProps & WidthProps & EndSlotProps;
21
28
  export type DBTabItemDefaultState = {
22
- _selected: boolean;
23
- _listenerAdded: boolean;
24
- boundSetSelectedOnChange?: (event: any) => void;
25
- setSelectedOnChange: (event: any) => void;
29
+ _resizeObserver: ResizeObserver | null | undefined;
30
+ _mutationObserver: MutationObserver | null | undefined;
31
+ _setupRafId: number | null;
32
+ _unmounted: boolean;
33
+ isTruncated: boolean;
34
+ _cleanupTooltipAria: () => void;
35
+ checkTruncation: () => void;
36
+ tooltipText: string;
26
37
  };
27
- export type DBTabItemState = DBTabItemDefaultState & GlobalState & ChangeEventState<HTMLInputElement> & InitializedState & NameState;
38
+ export type DBTabItemState = DBTabItemDefaultState & GlobalState & InitializedState;
@@ -1,29 +1,22 @@
1
1
  import type { DBTabItemProps } from "./model.js";
2
- declare var __VLS_1: {};
2
+ declare var __VLS_1: {}, __VLS_3: {};
3
3
  type __VLS_Slots = {} & {
4
4
  default?: (props: typeof __VLS_1) => any;
5
+ } & {
6
+ 'end-slot'?: (props: typeof __VLS_3) => any;
5
7
  };
6
- declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBTabItemProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {
7
- "update:checked": (...args: any[]) => void;
8
- }, string, import("@vue/runtime-core").PublicProps, Readonly<DBTabItemProps> & Readonly<{
9
- "onUpdate:checked"?: ((...args: any[]) => any) | undefined;
10
- }>, {
11
- id: string;
8
+ declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBTabItemProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<DBTabItemProps> & Readonly<{}>, {
12
9
  children: any;
13
10
  className: string;
14
- propOverrides: import("../../index.js", { with: { "resolution-mode": "import" } }).PropOverridesType;
15
- name: string;
16
11
  label: string;
12
+ value: string;
17
13
  disabled: boolean | string;
18
- onChange: (event: import("../../index.js", { with: { "resolution-mode": "import" } }).ChangeEvent<HTMLInputElement>) => void;
19
14
  icon: import("@db-ux/core-foundations", { with: { "resolution-mode": "import" } }).IconTypes;
20
15
  showIcon: boolean | string;
21
16
  showIconLeading: boolean | string;
22
17
  showIconTrailing: boolean | string;
23
18
  iconLeading: import("@db-ux/core-foundations", { with: { "resolution-mode": "import" } }).IconTypes;
24
19
  iconTrailing: import("@db-ux/core-foundations", { with: { "resolution-mode": "import" } }).IconTypes;
25
- noText: boolean | string;
26
- checked: boolean | string;
27
20
  active: boolean | string;
28
21
  }, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
29
22
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1,5 +1,5 @@
1
- import type { GlobalProps } from '../../shared/model.js';
2
- export type DBTabListDefaultProps = {};
3
- export type DBTabListProps = DBTabListDefaultProps & GlobalProps;
4
- export type DBTabListDefaultState = {};
5
- export type DBTabListState = DBTabListDefaultState;
1
+ import type { GlobalProps, GlobalState, OrientationProps } from '../../shared/model.js';
2
+ export type DBTabListProps = GlobalProps & OrientationProps;
3
+ export interface DBTabListState extends GlobalState {
4
+ _id?: string;
5
+ }
@@ -1,12 +1,14 @@
1
+ import { DBTabListProps } from "./model.js";
1
2
  declare var __VLS_1: {};
2
3
  type __VLS_Slots = {} & {
3
4
  default?: (props: typeof __VLS_1) => any;
4
5
  };
5
- declare const __VLS_base: import("@vue/runtime-core").DefineComponent<import("../../index.js", { with: { "resolution-mode": "import" } }).GlobalProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<import("../../index.js", { with: { "resolution-mode": "import" } }).GlobalProps> & Readonly<{}>, {
6
+ declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBTabListProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<DBTabListProps> & Readonly<{}>, {
6
7
  id: string;
7
8
  children: any;
8
9
  className: string;
9
10
  propOverrides: import("../../index.js", { with: { "resolution-mode": "import" } }).PropOverridesType;
11
+ orientation: import("../../index.js", { with: { "resolution-mode": "import" } }).OrientationType;
10
12
  }, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
11
13
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
14
  declare const _default: typeof __VLS_export;
@@ -1,10 +1,12 @@
1
- import type { GlobalProps, GlobalState } from '../../shared/model.js';
1
+ import type { GlobalProps } from '../../shared/model.js';
2
2
  export type DBTabPanelDefaultProps = {
3
3
  /**
4
4
  * The content if you don't want to use children.
5
5
  */
6
6
  content?: string;
7
+ /**
8
+ * If the panel is hidden.
9
+ */
10
+ hidden?: boolean;
7
11
  };
8
- export type DBTabPanelProps = DBTabPanelDefaultProps & GlobalProps;
9
- export type DBTabPanelDefaultState = {};
10
- export type DBTabPanelState = DBTabPanelDefaultState & GlobalState;
12
+ export type DBTabPanelProps = DBTabPanelDefaultProps & Omit<GlobalProps, 'id' | 'propOverrides'>;
@@ -3,13 +3,7 @@ declare var __VLS_1: {};
3
3
  type __VLS_Slots = {} & {
4
4
  default?: (props: typeof __VLS_1) => any;
5
5
  };
6
- declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBTabPanelProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<DBTabPanelProps> & Readonly<{}>, {
7
- id: string;
8
- children: any;
9
- className: string;
10
- propOverrides: import("../../index.js", { with: { "resolution-mode": "import" } }).PropOverridesType;
11
- content: string;
12
- }, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
6
+ declare const __VLS_base: import("@vue/runtime-core").DefineComponent<DBTabPanelProps, {}, {}, {}, {}, import("@vue/runtime-core").ComponentOptionsMixin, import("@vue/runtime-core").ComponentOptionsMixin, {}, string, import("@vue/runtime-core").PublicProps, Readonly<DBTabPanelProps> & Readonly<{}>, {}, {}, {}, {}, string, import("@vue/runtime-core").ComponentProvideOptions, false, {}, any>;
13
7
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
14
8
  declare const _default: typeof __VLS_export;
15
9
  export default _default;