@db-ux/react-core-components 3.0.2-copilot2-e7bf98b → 3.0.2-shell2-badc28f

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 (147) hide show
  1. package/README.md +0 -11
  2. package/dist/components/button/button.d.ts +1 -1
  3. package/dist/components/checkbox/checkbox.d.ts +4 -1
  4. package/dist/components/checkbox/checkbox.js +2 -2
  5. package/dist/components/control-panel-brand/control-panel-brand.d.ts +3 -0
  6. package/dist/components/control-panel-brand/control-panel-brand.js +15 -0
  7. package/dist/components/control-panel-brand/index.d.ts +1 -0
  8. package/dist/components/control-panel-brand/index.js +1 -0
  9. package/dist/components/control-panel-brand/model.d.ts +5 -0
  10. package/dist/components/control-panel-desktop/control-panel-desktop.d.ts +3 -0
  11. package/dist/components/control-panel-desktop/control-panel-desktop.js +62 -0
  12. package/dist/components/control-panel-desktop/index.d.ts +1 -0
  13. package/dist/components/control-panel-desktop/index.js +1 -0
  14. package/dist/components/control-panel-desktop/model.d.ts +7 -0
  15. package/dist/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.d.ts +3 -0
  16. package/dist/components/control-panel-flat-icon-navigation/control-panel-flat-icon-navigation.js +26 -0
  17. package/dist/components/control-panel-flat-icon-navigation/index.d.ts +1 -0
  18. package/dist/components/control-panel-flat-icon-navigation/index.js +1 -0
  19. package/dist/components/control-panel-flat-icon-navigation/model.d.ts +7 -0
  20. package/dist/components/control-panel-flat-icon-navigation/model.js +1 -0
  21. package/dist/components/control-panel-meta-navigation/control-panel-meta-navigation.d.ts +3 -0
  22. package/dist/components/control-panel-meta-navigation/control-panel-meta-navigation.js +11 -0
  23. package/dist/components/control-panel-meta-navigation/index.d.ts +1 -0
  24. package/dist/components/control-panel-meta-navigation/index.js +1 -0
  25. package/dist/components/control-panel-meta-navigation/model.d.ts +5 -0
  26. package/dist/components/control-panel-meta-navigation/model.js +1 -0
  27. package/dist/components/control-panel-mobile/control-panel-mobile.d.ts +3 -0
  28. package/dist/components/control-panel-mobile/control-panel-mobile.js +41 -0
  29. package/dist/components/control-panel-mobile/index.d.ts +1 -0
  30. package/dist/components/control-panel-mobile/index.js +1 -0
  31. package/dist/components/control-panel-mobile/model.d.ts +30 -0
  32. package/dist/components/control-panel-mobile/model.js +1 -0
  33. package/dist/components/control-panel-primary-actions/control-panel-primary-actions.d.ts +3 -0
  34. package/dist/components/control-panel-primary-actions/control-panel-primary-actions.js +11 -0
  35. package/dist/components/control-panel-primary-actions/index.d.ts +1 -0
  36. package/dist/components/control-panel-primary-actions/index.js +1 -0
  37. package/dist/components/control-panel-primary-actions/model.d.ts +5 -0
  38. package/dist/components/control-panel-primary-actions/model.js +1 -0
  39. package/dist/components/control-panel-secondary-actions/control-panel-secondary-actions.d.ts +3 -0
  40. package/dist/components/control-panel-secondary-actions/control-panel-secondary-actions.js +11 -0
  41. package/dist/components/control-panel-secondary-actions/index.d.ts +1 -0
  42. package/dist/components/control-panel-secondary-actions/index.js +1 -0
  43. package/dist/components/control-panel-secondary-actions/model.d.ts +5 -0
  44. package/dist/components/control-panel-secondary-actions/model.js +1 -0
  45. package/dist/components/custom-select/custom-select.d.ts +4 -1
  46. package/dist/components/custom-select/custom-select.js +7 -7
  47. package/dist/components/custom-select/model.d.ts +4 -1
  48. package/dist/components/custom-select-list-item/custom-select-list-item.d.ts +4 -1
  49. package/dist/components/drawer/drawer.js +4 -4
  50. package/dist/components/drawer/model.d.ts +5 -1
  51. package/dist/components/drawer/model.js +1 -1
  52. package/dist/components/input/input.d.ts +4 -1
  53. package/dist/components/input/input.js +2 -2
  54. package/dist/components/navigation/model.d.ts +14 -5
  55. package/dist/components/navigation/navigation.d.ts +1 -1
  56. package/dist/components/navigation/navigation.js +96 -6
  57. package/dist/components/navigation-item/model.d.ts +9 -24
  58. package/dist/components/navigation-item/navigation-item.d.ts +1 -1
  59. package/dist/components/navigation-item/navigation-item.js +8 -67
  60. package/dist/components/navigation-item-group/index.d.ts +1 -0
  61. package/dist/components/navigation-item-group/index.js +1 -0
  62. package/dist/components/navigation-item-group/model.d.ts +26 -0
  63. package/dist/components/navigation-item-group/model.js +1 -0
  64. package/dist/components/navigation-item-group/navigation-item-group.d.ts +3 -0
  65. package/dist/components/navigation-item-group/navigation-item-group.js +100 -0
  66. package/dist/components/popover/popover.js +1 -2
  67. package/dist/components/radio/radio.d.ts +4 -1
  68. package/dist/components/select/select.d.ts +4 -1
  69. package/dist/components/select/select.js +2 -2
  70. package/dist/components/shell/index.d.ts +1 -0
  71. package/dist/components/shell/index.js +1 -0
  72. package/dist/components/shell/model.d.ts +50 -0
  73. package/dist/components/shell/model.js +1 -0
  74. package/dist/components/shell/shell.d.ts +3 -0
  75. package/dist/components/{page/page.js → shell/shell.js} +9 -28
  76. package/dist/components/shell-sub-navigation/index.d.ts +1 -0
  77. package/dist/components/shell-sub-navigation/index.js +1 -0
  78. package/dist/components/shell-sub-navigation/model.d.ts +5 -0
  79. package/dist/components/shell-sub-navigation/model.js +1 -0
  80. package/dist/components/shell-sub-navigation/shell-sub-navigation.d.ts +3 -0
  81. package/dist/components/shell-sub-navigation/shell-sub-navigation.js +45 -0
  82. package/dist/components/switch/switch.d.ts +4 -1
  83. package/dist/components/tabs/model.d.ts +3 -11
  84. package/dist/components/tabs/tabs.d.ts +1 -1
  85. package/dist/components/tabs/tabs.js +3 -3
  86. package/dist/components/textarea/textarea.d.ts +4 -1
  87. package/dist/components/textarea/textarea.js +2 -2
  88. package/dist/components/tooltip/tooltip.js +2 -3
  89. package/dist/index.d.ts +19 -6
  90. package/dist/index.js +19 -6
  91. package/dist/shared/constants.d.ts +3 -0
  92. package/dist/shared/constants.js +3 -0
  93. package/dist/shared/model.d.ts +82 -3
  94. package/dist/shared/model.js +3 -0
  95. package/dist/utils/floating-components.d.ts +17 -1
  96. package/dist/utils/floating-components.js +76 -48
  97. package/dist/utils/navigation.d.ts +2 -6
  98. package/dist/utils/navigation.js +34 -22
  99. package/package.json +4 -6
  100. package/agent/Accordion.md +0 -47
  101. package/agent/AccordionItem.md +0 -36
  102. package/agent/Badge.md +0 -43
  103. package/agent/Brand.md +0 -24
  104. package/agent/Button.md +0 -60
  105. package/agent/Card.md +0 -34
  106. package/agent/Checkbox.md +0 -41
  107. package/agent/CustomSelect.md +0 -81
  108. package/agent/Divider.md +0 -32
  109. package/agent/Drawer.md +0 -87
  110. package/agent/Header.md +0 -45
  111. package/agent/Icon.md +0 -31
  112. package/agent/Infotext.md +0 -36
  113. package/agent/Input.md +0 -50
  114. package/agent/Link.md +0 -63
  115. package/agent/Navigation.md +0 -31
  116. package/agent/NavigationItem.md +0 -34
  117. package/agent/Notification.md +0 -45
  118. package/agent/Page.md +0 -36
  119. package/agent/Popover.md +0 -55
  120. package/agent/Radio.md +0 -34
  121. package/agent/Section.md +0 -32
  122. package/agent/Select.md +0 -90
  123. package/agent/Stack.md +0 -46
  124. package/agent/Switch.md +0 -41
  125. package/agent/TabItem.md +0 -34
  126. package/agent/Tabs.md +0 -75
  127. package/agent/Tag.md +0 -56
  128. package/agent/Textarea.md +0 -45
  129. package/agent/Tooltip.md +0 -47
  130. package/agent/_instructions.md +0 -31
  131. package/dist/components/brand/brand.d.ts +0 -3
  132. package/dist/components/brand/brand.js +0 -13
  133. package/dist/components/brand/index.d.ts +0 -1
  134. package/dist/components/brand/index.js +0 -1
  135. package/dist/components/brand/model.d.ts +0 -10
  136. package/dist/components/header/header.d.ts +0 -3
  137. package/dist/components/header/header.js +0 -67
  138. package/dist/components/header/index.d.ts +0 -1
  139. package/dist/components/header/index.js +0 -1
  140. package/dist/components/header/model.d.ts +0 -44
  141. package/dist/components/page/index.d.ts +0 -1
  142. package/dist/components/page/index.js +0 -1
  143. package/dist/components/page/model.d.ts +0 -36
  144. package/dist/components/page/model.js +0 -2
  145. package/dist/components/page/page.d.ts +0 -3
  146. /package/dist/components/{brand → control-panel-brand}/model.js +0 -0
  147. /package/dist/components/{header → control-panel-desktop}/model.js +0 -0
@@ -3,21 +3,10 @@ import * as React from "react";
3
3
  import { filterPassingProps, getRootProps } from "../../utils/react";
4
4
  import { useState, useRef, useEffect, forwardRef } from "react";
5
5
  import { cls, getBooleanAsString } from "../../utils";
6
- function DBPageFn(props, component) {
6
+ function DBShellFn(props, component) {
7
+ var _a, _b, _c, _d;
7
8
  const _ref = component || useRef(component);
8
9
  const [fontsLoaded, setFontsLoaded] = useState(() => false);
9
- const hasInitialized = useRef(false);
10
- if (!hasInitialized.current) {
11
- if (typeof window !== "undefined" &&
12
- document &&
13
- (props.documentOverflow === "hidden" ||
14
- (props.variant === "fixed" && props.documentOverflow !== "auto"))) {
15
- // We need to set this to `html` element that the flex-box solution works
16
- // See https://stackoverflow.com/a/43710216 - Approach 1 - flexbox
17
- document.documentElement.classList.add("db-page-document");
18
- }
19
- hasInitialized.current = true;
20
- }
21
10
  useEffect(() => {
22
11
  setFontsLoaded(!props.fadeIn);
23
12
  if (document && props.fadeIn) {
@@ -29,19 +18,11 @@ function DBPageFn(props, component) {
29
18
  setFontsLoaded(true);
30
19
  }
31
20
  }, []);
32
- useEffect(() => {
33
- return () => {
34
- if (typeof window !== "undefined" &&
35
- document.documentElement.classList.contains("db-page-document")) {
36
- // remove document styles set by this
37
- document.documentElement.classList.remove("db-page-document");
38
- }
39
- };
40
- }, []);
41
- return (React.createElement("div", Object.assign({ ref: _ref }, filterPassingProps(props, ["data-icon-variant", "data-icon-variant-before", "data-icon-variant-after", "data-icon-weight", "data-icon-weight-before", "data-icon-weight-after", "data-interactive", "data-force-mobile", "data-color", "data-container-color", "data-bg-color", "data-on-bg-color", "data-color-scheme", "data-font-size", "data-headline-size", "data-divider", "data-focus", "data-font"]), { id: props.id }, getRootProps(props, ["data-icon-variant", "data-icon-variant-before", "data-icon-variant-after", "data-icon-weight", "data-icon-weight-before", "data-icon-weight-after", "data-interactive", "data-force-mobile", "data-color", "data-container-color", "data-bg-color", "data-on-bg-color", "data-color-scheme", "data-font-size", "data-headline-size", "data-divider", "data-focus", "data-font"]), { className: cls("db-page", props.className), "data-variant": props.variant, "data-fade-in": getBooleanAsString(props.fadeIn), "data-fonts-loaded": getBooleanAsString(fontsLoaded) }),
42
- React.createElement(React.Fragment, null, props.header),
43
- React.createElement("main", { className: cls("db-main", props.mainClass) }, props.children),
44
- React.createElement(React.Fragment, null, props.footer)));
21
+ return (React.createElement("div", Object.assign({ ref: _ref }, filterPassingProps(props, ["data-icon-variant", "data-icon-variant-before", "data-icon-variant-after", "data-icon-weight", "data-icon-weight-before", "data-icon-weight-after", "data-interactive", "data-force-mobile", "data-color", "data-container-color", "data-bg-color", "data-on-bg-color", "data-color-scheme", "data-font-size", "data-headline-size", "data-divider", "data-focus", "data-font"]), { id: props.id }, getRootProps(props, ["data-icon-variant", "data-icon-variant-before", "data-icon-variant-after", "data-icon-weight", "data-icon-weight-before", "data-icon-weight-after", "data-interactive", "data-force-mobile", "data-color", "data-container-color", "data-bg-color", "data-on-bg-color", "data-color-scheme", "data-font-size", "data-headline-size", "data-divider", "data-focus", "data-font"]), { className: cls("db-shell", props.className), "data-control-panel-desktop-position": (_a = props.controlPanelDesktopPosition) !== null && _a !== void 0 ? _a : "top", "data-control-panel-mobile-position": (_b = props.controlPanelMobilePosition) !== null && _b !== void 0 ? _b : "top", "data-sub-navigation-desktop-position": (_c = props.subNavigationDesktopPosition) !== null && _c !== void 0 ? _c : "top", "data-sub-navigation-mobile-position": (_d = props.subNavigationMobilePosition) !== null && _d !== void 0 ? _d : "top", "data-show-sub-navigation": getBooleanAsString(props.showSubNavigation), "data-fade-in": getBooleanAsString(props.fadeIn), "data-fonts-loaded": getBooleanAsString(fontsLoaded) }),
22
+ React.createElement(React.Fragment, null, props.controlPanelDesktop),
23
+ React.createElement(React.Fragment, null, props.controlPanelMobile),
24
+ React.createElement(React.Fragment, null, props.subNavigation),
25
+ React.createElement("main", { className: cls("db-main", props.mainClass) }, props.children)));
45
26
  }
46
- const DBPage = forwardRef(DBPageFn);
47
- export default DBPage;
27
+ const DBShell = forwardRef(DBShellFn);
28
+ export default DBShell;
@@ -0,0 +1 @@
1
+ export { default as DBShellSubNavigation } from './shell-sub-navigation';
@@ -0,0 +1 @@
1
+ export { default as DBShellSubNavigation } from './shell-sub-navigation';
@@ -0,0 +1,5 @@
1
+ import { GlobalProps, GlobalState, SidebarProps, SidebarState, ToggleEventState } from '../../shared/model';
2
+ export type DBShellSubNavigationDefaultProps = {};
3
+ export type DBShellSubNavigationProps = DBShellSubNavigationDefaultProps & GlobalProps & SidebarProps;
4
+ export type DBShellSubNavigationDefaultState = {};
5
+ export type DBShellSubNavigationState = DBShellSubNavigationDefaultState & GlobalState & ToggleEventState<HTMLButtonElement> & SidebarState;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ import * as React from "react";
2
+ declare const DBShellSubNavigation: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<any>, keyof import("../..").GlobalProps | keyof import("../..").SidebarProps> & import("../..").GlobalProps & import("../..").SidebarProps & React.RefAttributes<any>>;
3
+ export default DBShellSubNavigation;
@@ -0,0 +1,45 @@
1
+ "use client";
2
+ import * as React from "react";
3
+ import { filterPassingProps, getRootProps } from "../../utils/react";
4
+ import { useState, useRef, forwardRef } from "react";
5
+ import { DEFAULT_COLLAPSE, DEFAULT_EXPAND } from "../../shared/constants";
6
+ import { cls, getBoolean, getBooleanAsString, uuid } from "../../utils";
7
+ import DBButton from "../button/button";
8
+ import DBTooltip from "../tooltip/tooltip";
9
+ function DBShellSubNavigationFn(props, component) {
10
+ var _a, _b, _c;
11
+ const _ref = component || useRef(undefined);
12
+ const [_id, set_id] = useState(() => `db-shell-sub-navigation-${uuid()}`);
13
+ const [_open, set_open] = useState(() => true);
14
+ function handleToggle(event) {
15
+ event.stopPropagation();
16
+ set_open(!_open);
17
+ }
18
+ function getToggleButtonText() {
19
+ var _a;
20
+ if (props.expandButtonTooltip) {
21
+ return props.expandButtonTooltip;
22
+ }
23
+ const fnOutput = () => {
24
+ if (props.onExpandButtonTooltipFn) {
25
+ const open = _open;
26
+ return props.onExpandButtonTooltipFn(open);
27
+ }
28
+ };
29
+ return (_a = fnOutput()) !== null && _a !== void 0 ? _a : (_open ? DEFAULT_COLLAPSE : DEFAULT_EXPAND);
30
+ }
31
+ const hasInitialized = useRef(false);
32
+ if (!hasInitialized.current) {
33
+ if (props.expanded !== undefined) {
34
+ set_open((_a = getBoolean(props.expanded, "expanded")) !== null && _a !== void 0 ? _a : true);
35
+ }
36
+ hasInitialized.current = true;
37
+ }
38
+ return (React.createElement("div", Object.assign({ ref: _ref }, filterPassingProps(props, ["data-icon-variant", "data-icon-variant-before", "data-icon-variant-after", "data-icon-weight", "data-icon-weight-before", "data-icon-weight-after", "data-interactive", "data-force-mobile", "data-color", "data-container-color", "data-bg-color", "data-on-bg-color", "data-color-scheme", "data-font-size", "data-headline-size", "data-divider", "data-focus", "data-font"]), { id: (_b = props.id) !== null && _b !== void 0 ? _b : _id, "data-open": getBooleanAsString(_open) }, getRootProps(props, ["data-icon-variant", "data-icon-variant-before", "data-icon-variant-after", "data-icon-weight", "data-icon-weight-before", "data-icon-weight-after", "data-interactive", "data-force-mobile", "data-color", "data-container-color", "data-bg-color", "data-on-bg-color", "data-color-scheme", "data-font-size", "data-headline-size", "data-divider", "data-focus", "data-font"]), { className: cls("db-shell-sub-navigation", props.className) }),
39
+ props.children,
40
+ React.createElement("div", { className: "db-shell-sub-navigation-button" },
41
+ React.createElement(DBButton, { variant: "ghost", icon: "double_chevron_left", onClick: (event) => handleToggle(event), "aria-controls": (_c = props.id) !== null && _c !== void 0 ? _c : _id, "aria-expanded": getBooleanAsString(_open), noText: true },
42
+ React.createElement(DBTooltip, { variant: "label", placement: "right" }, getToggleButtonText())))));
43
+ }
44
+ const DBShellSubNavigation = forwardRef(DBShellSubNavigationFn);
45
+ export default DBShellSubNavigation;
@@ -1,3 +1,6 @@
1
1
  import * as React from "react";
2
- declare const DBSwitch: React.ForwardRefExoticComponent<Omit<React.InputHTMLAttributes<any>, "value" | "size" | "icon" | "checked" | keyof import("../../shared/model").GlobalProps | "emphasis" | "iconLeading" | "iconTrailing" | keyof import("../../shared/model").ChangeEventProps<HTMLInputElement> | keyof import("../../shared/model").FocusEventProps<HTMLInputElement> | keyof import("../../shared/model").CustomFormProps | keyof import("../../shared/model").BaseFormProps | keyof import("../../shared/model").RequiredProps | "showLabel" | "visualAid"> & import("./model").DBSwitchDefaultProps & import("../../shared/model").GlobalProps & import("../../shared/model").ChangeEventProps<HTMLInputElement> & import("../../shared/model").FocusEventProps<HTMLInputElement> & import("../../shared/model").CustomFormProps & import("../../shared/model").BaseFormProps & import("../../shared/model").RequiredProps & import("../../shared/model").ShowLabelProps & import("../../shared/model").ValueProps & import("../../shared/model").FormCheckProps & import("../../shared/model").EmphasisProps & import("../../shared/model").SizeProps & import("../../shared/model").IconProps & import("../../shared/model").IconTrailingProps & import("../../shared/model").IconLeadingProps & React.RefAttributes<any>>;
2
+ declare const DBSwitch: React.ForwardRefExoticComponent<Omit<React.InputHTMLAttributes<any>, "name" | "value" | "label" | "disabled" | "size" | "icon" | "checked" | keyof import("../../shared/model").GlobalProps | "emphasis" | "iconLeading" | "iconTrailing" | keyof import("../../shared/model").ChangeEventProps<HTMLInputElement> | keyof import("../../shared/model").FocusEventProps<HTMLInputElement> | keyof import("../../shared/model").CustomFormProps | keyof import("../../shared/model").RequiredProps | "showLabel" | "visualAid"> & import("./model").DBSwitchDefaultProps & import("../../shared/model").GlobalProps & import("../../shared/model").ChangeEventProps<HTMLInputElement> & import("../../shared/model").FocusEventProps<HTMLInputElement> & import("../../shared/model").CustomFormProps & {
3
+ label?: string;
4
+ name?: string;
5
+ } & import("../../shared/model").DisabledProps & import("../../shared/model").RequiredProps & import("../../shared/model").ShowLabelProps & import("../../shared/model").ValueProps & import("../../shared/model").FormCheckProps & import("../../shared/model").EmphasisProps & import("../../shared/model").SizeProps & import("../../shared/model").IconProps & import("../../shared/model").IconTrailingProps & import("../../shared/model").IconLeadingProps & React.RefAttributes<any>>;
3
6
  export default DBSwitch;
@@ -1,4 +1,4 @@
1
- import { AlignmentProps, GlobalProps, GlobalState, InitializedState, InputEvent, OrientationProps, WidthProps } from '../../shared/model';
1
+ import { AlignmentProps, GlobalProps, GlobalState, InitializedState, InputEvent, OrientationProps, OverflowScrollButtonProps, OverflowScrollButtonState, WidthProps } from '../../shared/model';
2
2
  import { DBTabItemProps } from '../tab-item/model';
3
3
  import { DBTabPanelProps } from '../tab-panel/model';
4
4
  export declare const TabsBehaviorList: readonly ["scrollbar", "arrows"];
@@ -7,10 +7,6 @@ export declare const TabsInitialSelectedModeList: readonly ["auto", "manually"];
7
7
  export type TabsInitialSelectedModeType = (typeof TabsInitialSelectedModeList)[number];
8
8
  export type DBSimpleTabProps = DBTabItemProps & DBTabPanelProps;
9
9
  export type DBTabsDefaultProps = {
10
- /**
11
- * Change amount of distance if you click on an arrow, only available with behavior="arrows"
12
- */
13
- arrowScrollDistance?: number | string;
14
10
  /**
15
11
  * Show a scrollbar or buttons with arrows to navigate for horizontal tabs with overflow visible
16
12
  */
@@ -50,17 +46,13 @@ export type DBTabsEventProps = {
50
46
  */
51
47
  tabSelect?: (event?: InputEvent<HTMLElement>) => void;
52
48
  };
53
- export type DBTabsProps = DBTabsDefaultProps & GlobalProps & OrientationProps & WidthProps & AlignmentProps & DBTabsEventProps;
49
+ export type DBTabsProps = DBTabsDefaultProps & GlobalProps & OrientationProps & WidthProps & AlignmentProps & OverflowScrollButtonProps & AlignmentProps & DBTabsEventProps;
54
50
  export type DBTabsDefaultState = {
55
51
  _name: string;
56
52
  scrollContainer?: Element | null;
57
- scroll: (left?: boolean) => void;
58
- showScrollLeft?: boolean;
59
- showScrollRight?: boolean;
60
- evaluateScrollButtons: (tabList: Element) => void;
61
53
  convertTabs: () => DBSimpleTabProps[];
62
54
  initTabList: () => void;
63
55
  initTabs: (init?: boolean) => void;
64
56
  handleChange: (event: InputEvent<HTMLElement>) => void;
65
57
  };
66
- export type DBTabsState = DBTabsDefaultState & GlobalState & InitializedState;
58
+ export type DBTabsState = DBTabsDefaultState & GlobalState & InitializedState & OverflowScrollButtonState;
@@ -1,3 +1,3 @@
1
1
  import * as React from "react";
2
- declare const DBTabs: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<any>, "width" | "orientation" | keyof import("../../shared/model").GlobalProps | "alignment" | keyof import("./model").DBTabsDefaultProps | keyof import("./model").DBTabsEventProps> & import("./model").DBTabsDefaultProps & import("../../shared/model").GlobalProps & import("../../shared/model").OrientationProps & import("../../shared/model").WidthProps & import("../../shared/model").AlignmentProps & import("./model").DBTabsEventProps & React.RefAttributes<any>>;
2
+ declare const DBTabs: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<any>, "width" | "orientation" | keyof import("../../shared/model").GlobalProps | "arrowScrollDistance" | "alignment" | keyof import("./model").DBTabsDefaultProps | keyof import("./model").DBTabsEventProps> & import("./model").DBTabsDefaultProps & import("../../shared/model").GlobalProps & import("../../shared/model").OrientationProps & import("../../shared/model").WidthProps & import("../../shared/model").AlignmentProps & import("../../shared/model").OverflowScrollButtonProps & import("./model").DBTabsEventProps & React.RefAttributes<any>>;
3
3
  export default DBTabs;
@@ -64,7 +64,7 @@ function DBTabsFn(props, component) {
64
64
  }
65
65
  function initTabs(init) {
66
66
  if (_ref.current) {
67
- const tabItems = Array.from(_ref.current.getElementsByClassName("db-tab-item"));
67
+ const tabItems = Array.from(_ref.current.querySelectorAll(":is(:scope > db-tab-list .db-tab-item, :scope > .db-tab-list .db-tab-item)"));
68
68
  const tabPanels = Array.from(_ref.current.querySelectorAll(":is(:scope > .db-tab-panel, :scope > db-tab-panel > .db-tab-panel)"));
69
69
  for (const tabItem of tabItems) {
70
70
  const index = tabItems.indexOf(tabItem);
@@ -154,11 +154,11 @@ function DBTabsFn(props, component) {
154
154
  }
155
155
  }, [_ref.current, initialized]);
156
156
  return (React.createElement("div", Object.assign({ ref: _ref }, filterPassingProps(props, ["data-icon-variant", "data-icon-variant-before", "data-icon-variant-after", "data-icon-weight", "data-icon-weight-before", "data-icon-weight-after", "data-interactive", "data-force-mobile", "data-color", "data-container-color", "data-bg-color", "data-on-bg-color", "data-color-scheme", "data-font-size", "data-headline-size", "data-divider", "data-focus", "data-font", "onTabSelect", "onIndexChange"]), { id: _id }, getRootProps(props, ["data-icon-variant", "data-icon-variant-before", "data-icon-variant-after", "data-icon-weight", "data-icon-weight-before", "data-icon-weight-after", "data-interactive", "data-force-mobile", "data-color", "data-container-color", "data-bg-color", "data-on-bg-color", "data-color-scheme", "data-font-size", "data-headline-size", "data-divider", "data-focus", "data-font"]), { className: cls("db-tabs", props.className), "data-orientation": props.orientation, "data-scroll-behavior": props.behavior, "data-alignment": (_a = props.alignment) !== null && _a !== void 0 ? _a : "start", "data-width": (_b = props.width) !== null && _b !== void 0 ? _b : "auto", onInput: (event) => handleChange(event), onChange: (event) => handleChange(event) }),
157
- showScrollLeft ? (React.createElement(DBButton, { className: "tabs-scroll-left", variant: "ghost", icon: "chevron_left", type: "button", noText: true, onClick: (event) => scroll(true) }, "Scroll left")) : null,
157
+ showScrollLeft ? (React.createElement(DBButton, { className: "overflow-scroll-left-button", variant: "ghost", icon: "chevron_left", type: "button", noText: true, onClick: (event) => scroll(true) }, "Scroll left")) : null,
158
158
  props.tabs ? (React.createElement(React.Fragment, null,
159
159
  React.createElement(DBTabList, null, (_c = convertTabs()) === null || _c === void 0 ? void 0 : _c.map((tab, index) => (React.createElement(DBTabItem, { key: props.name + "tab-item" + index, active: tab.active, label: tab.label, iconTrailing: tab.iconTrailing, icon: tab.icon, noText: tab.noText })))), (_d = convertTabs()) === null || _d === void 0 ? void 0 :
160
160
  _d.map((tab, index) => (React.createElement(DBTabPanel, { key: props.name + "tab-panel" + index, content: tab.content }, tab.children))))) : null,
161
- showScrollRight ? (React.createElement(DBButton, { className: "tabs-scroll-right", variant: "ghost", icon: "chevron_right", type: "button", noText: true, onClick: (event) => scroll() }, "Scroll right")) : null,
161
+ showScrollRight ? (React.createElement(DBButton, { className: "overflow-scroll-right-button", variant: "ghost", icon: "chevron_right", type: "button", noText: true, onClick: (event) => scroll() }, "Scroll right")) : null,
162
162
  props.children));
163
163
  }
164
164
  const DBTabs = forwardRef(DBTabsFn);
@@ -1,3 +1,6 @@
1
1
  import * as React from "react";
2
- declare const DBTextarea: React.ForwardRefExoticComponent<Omit<React.TextareaHTMLAttributes<any>, "value" | keyof import("../../shared/model").GlobalProps | keyof import("../../shared/model").CustomFormProps | keyof import("../../shared/model").BaseFormProps | keyof import("../../shared/model").RequiredProps | "showLabel" | keyof import("../../shared/model").FormMessageProps | keyof import("../../shared/model").FormTextProps | keyof import("./model").DBTextareaDefaultProps | keyof import("../../shared/model").ChangeEventProps<HTMLTextAreaElement> | keyof import("../../shared/model").InputEventProps<HTMLTextAreaElement> | keyof import("../../shared/model").FocusEventProps<HTMLTextAreaElement>> & import("./model").DBTextareaDefaultProps & import("../../shared/model").ChangeEventProps<HTMLTextAreaElement> & import("../../shared/model").InputEventProps<HTMLTextAreaElement> & import("../../shared/model").FocusEventProps<HTMLTextAreaElement> & import("../../shared/model").CustomFormProps & import("../../shared/model").BaseFormProps & import("../../shared/model").RequiredProps & import("../../shared/model").ShowLabelProps & import("../../shared/model").ValueProps & import("../../shared/model").GlobalProps & import("../../shared/model").FormTextProps & import("../../shared/model").FormMessageProps & React.RefAttributes<any>>;
2
+ declare const DBTextarea: React.ForwardRefExoticComponent<Omit<React.TextareaHTMLAttributes<any>, "name" | "value" | "label" | "disabled" | keyof import("../../shared/model").GlobalProps | keyof import("../../shared/model").CustomFormProps | keyof import("../../shared/model").RequiredProps | "showLabel" | keyof import("../../shared/model").FormMessageProps | keyof import("../../shared/model").FormTextProps | keyof import("./model").DBTextareaDefaultProps | keyof import("../../shared/model").ChangeEventProps<HTMLTextAreaElement> | keyof import("../../shared/model").InputEventProps<HTMLTextAreaElement> | keyof import("../../shared/model").FocusEventProps<HTMLTextAreaElement>> & import("./model").DBTextareaDefaultProps & import("../../shared/model").ChangeEventProps<HTMLTextAreaElement> & import("../../shared/model").InputEventProps<HTMLTextAreaElement> & import("../../shared/model").FocusEventProps<HTMLTextAreaElement> & import("../../shared/model").CustomFormProps & {
3
+ label?: string;
4
+ name?: string;
5
+ } & import("../../shared/model").DisabledProps & import("../../shared/model").RequiredProps & import("../../shared/model").ShowLabelProps & import("../../shared/model").ValueProps & import("../../shared/model").GlobalProps & import("../../shared/model").FormTextProps & import("../../shared/model").FormMessageProps & React.RefAttributes<any>>;
3
6
  export default DBTextarea;
@@ -30,7 +30,7 @@ function DBTextareaFn(props, component) {
30
30
  DEFAULT_INVALID_MESSAGE);
31
31
  if (hasVoiceOver()) {
32
32
  set_voiceOverFallback(_invalidMessage);
33
- delay(() => set_voiceOverFallback(""), 1000);
33
+ void delay(() => set_voiceOverFallback(""), 1000);
34
34
  }
35
35
  }
36
36
  else if (hasValidState() &&
@@ -39,7 +39,7 @@ function DBTextareaFn(props, component) {
39
39
  set_descByIds(_validMessageId);
40
40
  if (hasVoiceOver()) {
41
41
  set_voiceOverFallback((_d = props.validMessage) !== null && _d !== void 0 ? _d : DEFAULT_VALID_MESSAGE);
42
- delay(() => set_voiceOverFallback(""), 1000);
42
+ void delay(() => set_voiceOverFallback(""), 1000);
43
43
  }
44
44
  }
45
45
  else if (stringPropVisible(props.message, props.showMessage)) {
@@ -36,9 +36,8 @@ function DBTooltipFn(props, component) {
36
36
  return;
37
37
  if (_ref.current) {
38
38
  // This is a workaround for angular
39
- utilsDelay(() => {
40
- var _a;
41
- handleFixedPopover(_ref.current, parent, (_a = props.placement) !== null && _a !== void 0 ? _a : "bottom");
39
+ void utilsDelay(() => {
40
+ handleFixedPopover(_ref.current, parent);
42
41
  }, 1);
43
42
  }
44
43
  }
package/dist/index.d.ts CHANGED
@@ -4,14 +4,24 @@ export * from './components/accordion-item/model';
4
4
  export * from './components/accordion/model';
5
5
  export * from './components/badge';
6
6
  export * from './components/badge/model';
7
- export * from './components/brand';
8
- export * from './components/brand/model';
9
7
  export * from './components/button';
10
8
  export * from './components/button/model';
11
9
  export * from './components/card';
12
10
  export * from './components/card/model';
13
11
  export * from './components/checkbox';
14
12
  export * from './components/checkbox/model';
13
+ export * from './components/control-panel-brand';
14
+ export * from './components/control-panel-brand/model';
15
+ export * from './components/control-panel-desktop';
16
+ export * from './components/control-panel-desktop/model';
17
+ export * from './components/control-panel-meta-navigation';
18
+ export * from './components/control-panel-meta-navigation/model';
19
+ export * from './components/control-panel-mobile';
20
+ export * from './components/control-panel-mobile/model';
21
+ export * from './components/control-panel-primary-actions';
22
+ export * from './components/control-panel-primary-actions/model';
23
+ export * from './components/control-panel-secondary-actions';
24
+ export * from './components/control-panel-secondary-actions/model';
15
25
  export * from './components/custom-select';
16
26
  export * from './components/custom-select-dropdown';
17
27
  export * from './components/custom-select-dropdown/model';
@@ -26,8 +36,6 @@ export * from './components/divider';
26
36
  export * from './components/divider/model';
27
37
  export * from './components/drawer';
28
38
  export * from './components/drawer/model';
29
- export * from './components/header';
30
- export * from './components/header/model';
31
39
  export * from './components/icon';
32
40
  export * from './components/icon/model';
33
41
  export * from './components/infotext';
@@ -38,12 +46,12 @@ export * from './components/link';
38
46
  export * from './components/link/model';
39
47
  export * from './components/navigation';
40
48
  export * from './components/navigation-item';
49
+ export * from './components/navigation-item-group';
50
+ export * from './components/navigation-item-group/model';
41
51
  export * from './components/navigation-item/model';
42
52
  export * from './components/navigation/model';
43
53
  export * from './components/notification';
44
54
  export * from './components/notification/model';
45
- export * from './components/page';
46
- export * from './components/page/model';
47
55
  export * from './components/popover';
48
56
  export * from './components/popover/model';
49
57
  export * from './components/radio';
@@ -52,6 +60,8 @@ export * from './components/section';
52
60
  export * from './components/section/model';
53
61
  export * from './components/select';
54
62
  export * from './components/select/model';
63
+ export * from './components/shell';
64
+ export * from './components/shell/model';
55
65
  export * from './components/stack';
56
66
  export * from './components/stack/model';
57
67
  export * from './components/switch';
@@ -77,3 +87,6 @@ export * from './utils/document-scroll-listener';
77
87
  export * from './utils/floating-components';
78
88
  export * from './utils/index';
79
89
  export * from './utils/navigation';
90
+ export * from './components/shell-sub-navigation';
91
+ export * from "./components/control-panel-flat-icon-navigation";
92
+ export * from "./components/control-panel-flat-icon-navigation/model";
package/dist/index.js CHANGED
@@ -4,14 +4,24 @@ export * from './components/accordion-item/model';
4
4
  export * from './components/accordion/model';
5
5
  export * from './components/badge';
6
6
  export * from './components/badge/model';
7
- export * from './components/brand';
8
- export * from './components/brand/model';
9
7
  export * from './components/button';
10
8
  export * from './components/button/model';
11
9
  export * from './components/card';
12
10
  export * from './components/card/model';
13
11
  export * from './components/checkbox';
14
12
  export * from './components/checkbox/model';
13
+ export * from './components/control-panel-brand';
14
+ export * from './components/control-panel-brand/model';
15
+ export * from './components/control-panel-desktop';
16
+ export * from './components/control-panel-desktop/model';
17
+ export * from './components/control-panel-meta-navigation';
18
+ export * from './components/control-panel-meta-navigation/model';
19
+ export * from './components/control-panel-mobile';
20
+ export * from './components/control-panel-mobile/model';
21
+ export * from './components/control-panel-primary-actions';
22
+ export * from './components/control-panel-primary-actions/model';
23
+ export * from './components/control-panel-secondary-actions';
24
+ export * from './components/control-panel-secondary-actions/model';
15
25
  export * from './components/custom-select';
16
26
  export * from './components/custom-select-dropdown';
17
27
  export * from './components/custom-select-dropdown/model';
@@ -26,8 +36,6 @@ export * from './components/divider';
26
36
  export * from './components/divider/model';
27
37
  export * from './components/drawer';
28
38
  export * from './components/drawer/model';
29
- export * from './components/header';
30
- export * from './components/header/model';
31
39
  export * from './components/icon';
32
40
  export * from './components/icon/model';
33
41
  export * from './components/infotext';
@@ -38,12 +46,12 @@ export * from './components/link';
38
46
  export * from './components/link/model';
39
47
  export * from './components/navigation';
40
48
  export * from './components/navigation-item';
49
+ export * from './components/navigation-item-group';
50
+ export * from './components/navigation-item-group/model';
41
51
  export * from './components/navigation-item/model';
42
52
  export * from './components/navigation/model';
43
53
  export * from './components/notification';
44
54
  export * from './components/notification/model';
45
- export * from './components/page';
46
- export * from './components/page/model';
47
55
  export * from './components/popover';
48
56
  export * from './components/popover/model';
49
57
  export * from './components/radio';
@@ -52,6 +60,8 @@ export * from './components/section';
52
60
  export * from './components/section/model';
53
61
  export * from './components/select';
54
62
  export * from './components/select/model';
63
+ export * from './components/shell';
64
+ export * from './components/shell/model';
55
65
  export * from './components/stack';
56
66
  export * from './components/stack/model';
57
67
  export * from './components/switch';
@@ -77,3 +87,6 @@ export * from './utils/document-scroll-listener';
77
87
  export * from './utils/floating-components';
78
88
  export * from './utils/index';
79
89
  export * from './utils/navigation';
90
+ export * from './components/shell-sub-navigation';
91
+ export * from "./components/control-panel-flat-icon-navigation";
92
+ export * from "./components/control-panel-flat-icon-navigation/model";
@@ -14,6 +14,8 @@ export declare const DEFAULT_INVALID_MESSAGE: string;
14
14
  export declare const DEFAULT_REMOVE: string;
15
15
  export declare const DEFAULT_BACK: string;
16
16
  export declare const DEFAULT_SELECTED: string;
17
+ export declare const DEFAULT_EXPAND: string;
18
+ export declare const DEFAULT_COLLAPSE: string;
17
19
  export declare const DEFAULT_BURGER_MENU: string;
18
20
  export declare const DEFAULT_ICON: string;
19
21
  export declare const DEFAULT_ROWS: number;
@@ -64,6 +66,7 @@ export declare enum COLOR {
64
66
  export declare const COLORS: COLOR[];
65
67
  export declare const COLORS_SIMPLE: COLOR_SIMPLE[];
66
68
  export declare enum SEMANTIC {
69
+ 'NEUTRAL' = "neutral",
67
70
  'CRITICAL' = "critical",
68
71
  'INFORMATIONAL' = "informational",
69
72
  'WARNING' = "warning",
@@ -14,6 +14,8 @@ export const DEFAULT_INVALID_MESSAGE = 'TODO: Add an invalidMessage';
14
14
  export const DEFAULT_REMOVE = 'Remove';
15
15
  export const DEFAULT_BACK = 'Back';
16
16
  export const DEFAULT_SELECTED = 'Selected';
17
+ export const DEFAULT_EXPAND = 'Expand';
18
+ export const DEFAULT_COLLAPSE = 'Collapse';
17
19
  export const DEFAULT_BURGER_MENU = 'BurgerMenu';
18
20
  export const DEFAULT_ICON = 'brand';
19
21
  export const DEFAULT_ROWS = 4;
@@ -68,6 +70,7 @@ export const COLORS = Object.entries(COLOR).map(([, value]) => value);
68
70
  export const COLORS_SIMPLE = Object.entries(COLOR_SIMPLE).map(([, value]) => value);
69
71
  export var SEMANTIC;
70
72
  (function (SEMANTIC) {
73
+ SEMANTIC["NEUTRAL"] = "neutral";
71
74
  SEMANTIC["CRITICAL"] = "critical";
72
75
  SEMANTIC["INFORMATIONAL"] = "informational";
73
76
  SEMANTIC["WARNING"] = "warning";
@@ -88,6 +88,10 @@ export type MarginProps = {
88
88
  */
89
89
  margin?: MarginType;
90
90
  };
91
+ export declare const ShellControlPanelDesktopPosition: readonly ["top", "left"];
92
+ export type ShellControlPanelDesktopPositionType = (typeof ShellControlPanelDesktopPosition)[number];
93
+ export declare const ShellControlPanelMobilePosition: readonly ["top", "bottom"];
94
+ export type ShellControlPanelMobilePositionType = (typeof ShellControlPanelMobilePosition)[number];
91
95
  export declare const PlacementHorizontalList: readonly ["left", "right", "left-start", "left-end", "right-start", "right-end"];
92
96
  export type PlacementHorizontalType = (typeof PlacementHorizontalList)[number];
93
97
  export declare const PlacementVerticalList: readonly ["top", "bottom", "top-start", "top-end", "bottom-start", "bottom-end"];
@@ -233,11 +237,13 @@ export type ValueProps = {
233
237
  */
234
238
  value?: any;
235
239
  };
236
- export type BaseFormProps = {
240
+ export type DisabledProps = {
237
241
  /**
238
- * The disabled attribute can be set to keep a user from clicking on the form element.
242
+ * The disabled attribute can be set to keep a user from clicking on the item.
239
243
  */
240
244
  disabled?: boolean | string;
245
+ };
246
+ export type BaseFormProps = {
241
247
  /**
242
248
  * The label attribute specifies the caption of the form element.
243
249
  */
@@ -246,7 +252,7 @@ export type BaseFormProps = {
246
252
  * The name attribute gives the name of the form control, as used in form submission and in the form element's elements object.
247
253
  */
248
254
  name?: string;
249
- };
255
+ } & DisabledProps;
250
256
  export type CustomFormProps = {
251
257
  /**
252
258
  * Overwrites auto handling for aria-describedby.
@@ -506,10 +512,83 @@ export type AriaControlsProps = {
506
512
  */
507
513
  controls?: string;
508
514
  };
515
+ export type ControlPanelProps = {
516
+ /**
517
+ * Slot to pass in the DBControlPanelBrand component
518
+ */
519
+ brand?: any;
520
+ /**
521
+ * Slot to pass in a meta navigation.
522
+ * Desktop: Above the regular control-panel-desktop
523
+ * Mobile: Inside the drawer
524
+ */
525
+ metaNavigation?: any;
526
+ /**
527
+ * Slot to pass one or more elements like DBButton (e.g. search) as primary action.
528
+ * Desktop: Shown next to the main-navigation
529
+ * Mobile: Shown next to the control-panel-brand
530
+ */
531
+ primaryActions?: any;
532
+ /**
533
+ * Slot to pass one or more elements like DBButton (e.g. profile, language, etc.) as secondary action.
534
+ * Desktop: Shown seperated by divider at the end of the control-panel-desktop
535
+ * Mobile: Shown inside the drawer at the bottom.
536
+ */
537
+ secondaryActions?: any;
538
+ /**
539
+ * Adds ``aria-labelledby`` to the <nav> element.
540
+ */
541
+ navigationLabeledBy?: string;
542
+ };
509
543
  export type ValueLabelType = {
510
544
  value: string;
511
545
  label?: string;
512
546
  };
547
+ export type OverflowScrollButtonProps = {
548
+ /**
549
+ * Change amount of distance if you click on an arrow, only available with behavior="arrows"
550
+ */
551
+ arrowScrollDistance?: number | string;
552
+ };
553
+ export type OverflowScrollButtonState = {
554
+ scroll: (left?: boolean) => void;
555
+ showScrollLeft?: boolean;
556
+ showScrollRight?: boolean;
557
+ evaluateScrollButtons: (tabList: Element) => void;
558
+ };
559
+ export type SidebarProps = {
560
+ /**
561
+ * Set the expanded/collapsed state initially for the left sidebar
562
+ */
563
+ expanded?: boolean | string;
564
+ /**
565
+ * Set the tooltip for the expand/collapse button
566
+ */
567
+ expandButtonTooltip?: string;
568
+ /**
569
+ * Set the tooltip for the expand/collapse button based on the state. (only react|vue)
570
+ */
571
+ expandButtonTooltipFn?: (open: boolean) => string;
572
+ /**
573
+ * Set the tooltip for the expand/collapse button based on the state. (only react|vue)
574
+ */
575
+ onExpandButtonTooltipFn?: (open: boolean) => string;
576
+ };
577
+ export type SidebarState = {
578
+ _open: boolean;
579
+ getToggleButtonText: () => string;
580
+ };
581
+ export declare const NavigationItemGroupVariantList: readonly ["popover", "tree"];
582
+ export type NavigationItemGroupVariantType = (typeof NavigationItemGroupVariantList)[number];
583
+ export type NavigationItemGroupVariant = {
584
+ variant?: NavigationItemGroupVariantType;
585
+ };
586
+ export type AdditionalInformationSlotProps = {
587
+ /**
588
+ * Slot to add additional information most likely a DBBadge
589
+ */
590
+ additionalInformation?: any;
591
+ };
513
592
  export type DocumentScrollState = {
514
593
  _documentScrollListenerCallbackId?: string;
515
594
  handleDocumentScroll: (event: any, parent?: HTMLElement) => void;
@@ -1,6 +1,8 @@
1
1
  export const SemanticList = ['adaptive', 'neutral', 'critical', 'informational', 'warning', 'successful'];
2
2
  export const SpacingList = ['medium', 'small', 'large', 'none'];
3
3
  export const MarginList = ['medium', 'small', 'large', 'none'];
4
+ export const ShellControlPanelDesktopPosition = ['top', 'left'];
5
+ export const ShellControlPanelMobilePosition = ['top', 'bottom'];
4
6
  export const PlacementHorizontalList = ['left', 'right', 'left-start', 'left-end', 'right-start', 'right-end'];
5
7
  export const PlacementVerticalList = ['top', 'bottom', 'top-start', 'top-end', 'bottom-start', 'bottom-end'];
6
8
  export const PlacementList = [...PlacementHorizontalList, ...PlacementVerticalList];
@@ -19,3 +21,4 @@ export const AutoCompleteList = ['off', 'on', 'name', 'honorific-prefix', 'given
19
21
  export const LinkTargetList = ['_self', '_blank', '_parent', '_top'];
20
22
  export const LinkReferrerPolicyList = ['no-referrer', 'no-referrer-when-downgrade', 'origin', 'origin-when-cross-origin', 'same-origin', 'strict-origin', 'strict-origin-when-cross-origin', 'unsafe-url'];
21
23
  export const AlignmentList = ['start', 'center'];
24
+ export const NavigationItemGroupVariantList = ['popover', 'tree'];
@@ -16,5 +16,21 @@ export declare const getFloatingProps: (element: HTMLElement, parent: HTMLElemen
16
16
  correctedPlacement: string;
17
17
  innerWidth: number;
18
18
  innerHeight: number;
19
+ outsideYBoth?: undefined;
20
+ outsideXBoth?: undefined;
21
+ } | {
22
+ top: number;
23
+ bottom: number;
24
+ right: number;
25
+ height: number;
26
+ width: number;
27
+ left: number;
28
+ childHeight: number;
29
+ childWidth: number;
30
+ correctedPlacement: string;
31
+ innerWidth: number;
32
+ innerHeight: number;
33
+ outsideYBoth: boolean;
34
+ outsideXBoth: boolean;
19
35
  };
20
- export declare const handleFixedPopover: (element: HTMLElement, parent: HTMLElement, placement: string) => void;
36
+ export declare const handleFixedPopover: (element: HTMLElement, parent: HTMLElement, placement?: string) => void;