@koobiq/react-components 0.0.1-beta.2 → 0.0.1-beta.21

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 (203) hide show
  1. package/dist/components/Alert/Alert.js +2 -2
  2. package/dist/components/Alert/components/AlertIcon/utils.js +1 -1
  3. package/dist/components/Alert/intl.json.js +2 -6
  4. package/dist/components/Alert/types.d.ts +2 -1
  5. package/dist/components/AnimatedIcon/AnimatedIcon.d.ts +4 -0
  6. package/dist/components/AnimatedIcon/AnimatedIcon.js +50 -0
  7. package/dist/components/AnimatedIcon/AnimatedIcon.module.css.js +11 -0
  8. package/dist/components/AnimatedIcon/index.d.ts +2 -0
  9. package/dist/components/AnimatedIcon/types.d.ts +19 -0
  10. package/dist/components/Button/Button.js +1 -1
  11. package/dist/components/Button/Button.module.css.js +2 -2
  12. package/dist/components/Button/types.d.ts +4 -5
  13. package/dist/components/ButtonToggleGroup/ButtonToggleGroup.d.ts +2 -0
  14. package/dist/components/ButtonToggleGroup/ButtonToggleGroup.js +130 -0
  15. package/dist/components/ButtonToggleGroup/ButtonToggleGroup.module.css.js +17 -0
  16. package/dist/components/ButtonToggleGroup/ButtonToggleGroupContext.d.ts +7 -0
  17. package/dist/components/ButtonToggleGroup/ButtonToggleGroupContext.js +12 -0
  18. package/dist/components/ButtonToggleGroup/components/ButtonToggle/ButtonToggle.d.ts +2 -0
  19. package/dist/components/ButtonToggleGroup/components/ButtonToggle/ButtonToggle.js +90 -0
  20. package/dist/components/ButtonToggleGroup/components/ButtonToggle/ButtonToggle.module.css.js +32 -0
  21. package/dist/components/ButtonToggleGroup/components/ButtonToggle/index.d.ts +2 -0
  22. package/dist/components/ButtonToggleGroup/components/ButtonToggle/types.d.ts +27 -0
  23. package/dist/components/ButtonToggleGroup/components/index.d.ts +1 -0
  24. package/dist/components/ButtonToggleGroup/index.d.ts +3 -0
  25. package/dist/components/ButtonToggleGroup/reducer.d.ts +23 -0
  26. package/dist/components/ButtonToggleGroup/reducer.js +25 -0
  27. package/dist/components/ButtonToggleGroup/types.d.ts +38 -0
  28. package/dist/components/ButtonToggleGroup/utils.d.ts +3 -0
  29. package/dist/components/ButtonToggleGroup/utils.js +19 -0
  30. package/dist/components/Checkbox/Checkbox.js +18 -8
  31. package/dist/components/Collections/Divider.d.ts +19 -0
  32. package/dist/components/Collections/Divider.js +14 -0
  33. package/dist/components/Collections/Header.d.ts +20 -0
  34. package/dist/components/Collections/Header.js +16 -0
  35. package/dist/components/Collections/Item.d.ts +14 -0
  36. package/dist/components/Collections/Item.js +10 -0
  37. package/dist/components/{List/ListSection.d.ts → Collections/Section.d.ts} +6 -6
  38. package/dist/components/Collections/Section.js +10 -0
  39. package/dist/components/Collections/index.d.ts +4 -0
  40. package/dist/components/Container/Container.js +2 -1
  41. package/dist/components/Container/utils.d.ts +1 -1
  42. package/dist/components/Dialog/Dialog.d.ts +9 -1
  43. package/dist/components/Dialog/Dialog.js +31 -17
  44. package/dist/components/Dialog/components/DialogBody.d.ts +13 -0
  45. package/dist/components/Dialog/components/{DialogContent.js → DialogBody.js} +9 -8
  46. package/dist/components/Dialog/components/DialogCloseButton.d.ts +14 -1
  47. package/dist/components/Dialog/components/DialogCloseButton.js +3 -6
  48. package/dist/components/Dialog/components/index.d.ts +1 -1
  49. package/dist/components/Dialog/index.d.ts +0 -1
  50. package/dist/components/Dialog/intl.json.js +2 -6
  51. package/dist/components/Divider/Divider.d.ts +4 -0
  52. package/dist/components/Divider/Divider.js +44 -0
  53. package/dist/components/Divider/Divider.module.css.js +29 -0
  54. package/dist/components/Divider/index.d.ts +2 -0
  55. package/dist/components/Divider/types.d.ts +26 -0
  56. package/dist/components/Divider/types.js +6 -0
  57. package/dist/components/FieldComponents/FieldControl/FieldControl.d.ts +1 -1
  58. package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroup.d.ts +8 -2
  59. package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroup.js +32 -30
  60. package/dist/components/FieldComponents/FieldNumberControl/FieldNumberControl.d.ts +1 -1
  61. package/dist/components/FieldComponents/FieldSelect/FieldSelect.d.ts +12 -0
  62. package/dist/components/FieldComponents/FieldSelect/FieldSelect.js +37 -0
  63. package/dist/components/FieldComponents/FieldSelect/FieldSelect.module.css.js +20 -0
  64. package/dist/components/FieldComponents/FieldSelect/index.d.ts +1 -0
  65. package/dist/components/FieldComponents/index.d.ts +1 -0
  66. package/dist/components/FlexBox/FlexBox.d.ts +4 -0
  67. package/dist/components/FlexBox/FlexBox.js +47 -0
  68. package/dist/components/FlexBox/index.d.ts +2 -0
  69. package/dist/components/FlexBox/types.d.ts +27 -0
  70. package/dist/components/Grid/Grid.d.ts +8 -2
  71. package/dist/components/Grid/Grid.js +5 -2
  72. package/dist/components/IconButton/types.d.ts +5 -4
  73. package/dist/components/Input/Input.d.ts +1 -0
  74. package/dist/components/Input/Input.js +11 -11
  75. package/dist/components/Input/types.d.ts +2 -1
  76. package/dist/components/Link/Link.js +13 -15
  77. package/dist/components/Link/types.d.ts +4 -4
  78. package/dist/components/List/List.d.ts +17 -3
  79. package/dist/components/List/List.js +32 -18
  80. package/dist/components/List/List.module.css.js +0 -3
  81. package/dist/components/List/components/ListItemText/ListItemText.js +26 -0
  82. package/dist/components/List/components/ListItemText/ListItemText.module.css.js +11 -0
  83. package/dist/components/List/components/ListOption/ListOption.d.ts +3 -2
  84. package/dist/components/List/components/ListOption/ListOption.js +11 -16
  85. package/dist/components/List/components/ListSection/ListSection.d.ts +3 -2
  86. package/dist/components/List/components/ListSection/ListSection.js +1 -4
  87. package/dist/components/List/index.d.ts +2 -2
  88. package/dist/components/List/types.d.ts +13 -2
  89. package/dist/components/Menu/Menu.d.ts +15 -0
  90. package/dist/components/Menu/Menu.js +68 -0
  91. package/dist/components/Menu/Menu.module.css.js +8 -0
  92. package/dist/components/Menu/components/MenuHeader/MenuHeader.d.ts +5 -0
  93. package/dist/components/Menu/components/MenuHeader/MenuHeader.js +9 -0
  94. package/dist/components/Menu/components/MenuHeader/index.d.ts +1 -0
  95. package/dist/components/Menu/components/MenuInner/MenuInner.d.ts +3 -0
  96. package/dist/components/Menu/components/MenuInner/MenuInner.js +45 -0
  97. package/dist/components/Menu/components/MenuInner/MenuInner.module.css.js +11 -0
  98. package/dist/components/Menu/components/MenuInner/index.d.ts +1 -0
  99. package/dist/components/Menu/components/MenuItem/MenuItem.d.ts +6 -0
  100. package/dist/components/Menu/components/MenuItem/MenuItem.js +36 -0
  101. package/dist/components/Menu/components/MenuItem/index.d.ts +1 -0
  102. package/dist/components/Menu/components/MenuSection/MenuSection.d.ts +6 -0
  103. package/dist/components/Menu/components/MenuSection/MenuSection.js +30 -0
  104. package/dist/components/Menu/components/MenuSection/MenuSection.module.css.js +11 -0
  105. package/dist/components/Menu/components/MenuSection/index.d.ts +1 -0
  106. package/dist/components/Menu/components/index.d.ts +1 -0
  107. package/dist/components/Menu/index.d.ts +2 -0
  108. package/dist/components/Menu/types.d.ts +62 -0
  109. package/dist/components/Menu/types.js +4 -0
  110. package/dist/components/Modal/Modal.d.ts +9 -1
  111. package/dist/components/Modal/Modal.js +21 -16
  112. package/dist/components/Modal/index.d.ts +15 -2
  113. package/dist/components/Modal/index.js +9 -0
  114. package/dist/components/Modal/types.d.ts +7 -0
  115. package/dist/components/Popover/Popover.d.ts +12 -2
  116. package/dist/components/Popover/Popover.js +143 -128
  117. package/dist/components/Popover/Popover.module.css.js +3 -0
  118. package/dist/components/Popover/index.d.ts +15 -2
  119. package/dist/components/Popover/index.js +9 -0
  120. package/dist/components/Popover/types.d.ts +28 -4
  121. package/dist/components/Popover/types.js +9 -1
  122. package/dist/components/ProgressBar/ProgressBar.module.css.js +1 -2
  123. package/dist/components/ProgressSpinner/ProgressSpinner.module.css.js +1 -2
  124. package/dist/components/Provider/BreakpointsProvider.d.ts +2 -1
  125. package/dist/components/Provider/BreakpointsProvider.js +8 -1
  126. package/dist/components/Provider/Provider.d.ts +1 -1
  127. package/dist/components/Provider/Provider.js +9 -1
  128. package/dist/components/Provider/types.d.ts +5 -0
  129. package/dist/components/Provider/utils/useBreakpoints.d.ts +2 -1
  130. package/dist/components/Provider/utils/useBreakpoints.js +2 -2
  131. package/dist/components/RadioGroup/RadioContext.js +1 -0
  132. package/dist/components/RadioGroup/RadioGroup.js +2 -1
  133. package/dist/components/RadioGroup/components/Radio/Radio.js +3 -2
  134. package/dist/components/RadioGroup/components/Radio/Radio.module.css.js +3 -0
  135. package/dist/components/Select/Select.d.ts +11 -0
  136. package/dist/components/Select/Select.js +179 -0
  137. package/dist/components/Select/Select.module.css.js +20 -0
  138. package/dist/components/Select/index.d.ts +2 -0
  139. package/dist/components/Select/types.d.ts +87 -0
  140. package/dist/components/SidePanel/SidePanel.d.ts +9 -1
  141. package/dist/components/SidePanel/SidePanel.js +24 -19
  142. package/dist/components/SidePanel/index.d.ts +15 -2
  143. package/dist/components/SidePanel/index.js +9 -0
  144. package/dist/components/SidePanel/types.d.ts +7 -0
  145. package/dist/components/SkeletonBlock/SkeletonBlock.module.css.js +0 -1
  146. package/dist/components/SkeletonTypography/utils.js +3 -0
  147. package/dist/components/TagGroup/Tag.d.ts +24 -0
  148. package/dist/components/TagGroup/Tag.js +10 -0
  149. package/dist/components/TagGroup/TagGroup.d.ts +2 -0
  150. package/dist/components/TagGroup/TagGroup.js +22 -0
  151. package/dist/components/TagGroup/TagGroup.module.css.js +8 -0
  152. package/dist/components/TagGroup/components/TagInner/TagInner.d.ts +11 -0
  153. package/dist/components/TagGroup/components/TagInner/TagInner.js +86 -0
  154. package/dist/components/TagGroup/components/TagInner/TagInner.module.css.js +30 -0
  155. package/dist/components/TagGroup/components/TagInner/index.d.ts +1 -0
  156. package/dist/components/TagGroup/components/TagInner/utils.d.ts +3 -0
  157. package/dist/components/TagGroup/components/TagInner/utils.js +9 -0
  158. package/dist/components/TagGroup/components/index.d.ts +1 -0
  159. package/dist/components/TagGroup/index.d.ts +3 -0
  160. package/dist/components/TagGroup/intl.json.js +7 -0
  161. package/dist/components/TagGroup/types.d.ts +37 -0
  162. package/dist/components/TagGroup/types.js +9 -0
  163. package/dist/components/Toggle/Toggle.js +1 -1
  164. package/dist/components/Tooltip/Tooltip.d.ts +2 -1
  165. package/dist/components/Tooltip/Tooltip.js +9 -8
  166. package/dist/components/Tooltip/types.d.ts +9 -4
  167. package/dist/components/Typography/Typography.js +2 -2
  168. package/dist/components/Typography/Typography.module.css.js +2 -1
  169. package/dist/components/Typography/types.d.ts +7 -2
  170. package/dist/components/Typography/types.js +2 -1
  171. package/dist/components/index.d.ts +8 -0
  172. package/dist/components/layout/flex/flex.d.ts +15 -4
  173. package/dist/components/layout/flex/flex.js +6 -1
  174. package/dist/components/layout/flex/flex.module.css.js +78 -39
  175. package/dist/index.js +51 -23
  176. package/dist/style.css +862 -350
  177. package/dist/styles/utility.d.ts +2 -0
  178. package/dist/styles/utility.js +3 -2
  179. package/dist/styles/utility.module.css.js +5 -2
  180. package/dist/types.d.ts +1 -0
  181. package/package.json +11 -6
  182. package/dist/components/Dialog/DialogContext.d.ts +0 -9
  183. package/dist/components/Dialog/DialogContext.js +0 -12
  184. package/dist/components/Dialog/components/DialogContent.d.ts +0 -12
  185. package/dist/components/Input/components/FieldAddon/FieldAddon.d.ts +0 -10
  186. package/dist/components/Input/components/FieldAddon/index.d.ts +0 -1
  187. package/dist/components/Input/components/FieldCaption/FieldCaption.d.ts +0 -6
  188. package/dist/components/Input/components/FieldCaption/index.d.ts +0 -1
  189. package/dist/components/Input/components/FieldControl/FieldControl.d.ts +0 -9
  190. package/dist/components/Input/components/FieldControl/index.d.ts +0 -1
  191. package/dist/components/Input/components/FieldError/FieldError.d.ts +0 -7
  192. package/dist/components/Input/components/FieldError/index.d.ts +0 -1
  193. package/dist/components/Input/components/FieldInput/FieldInput.d.ts +0 -9
  194. package/dist/components/Input/components/FieldInput/index.d.ts +0 -1
  195. package/dist/components/Input/components/FieldInputGroup/FieldInputGroup.d.ts +0 -7
  196. package/dist/components/Input/components/FieldInputGroup/index.d.ts +0 -1
  197. package/dist/components/Input/components/FieldLabel/FieldLabel.d.ts +0 -9
  198. package/dist/components/Input/components/FieldLabel/index.d.ts +0 -1
  199. package/dist/components/Input/components/index.d.ts +0 -7
  200. package/dist/components/List/ListItem.d.ts +0 -11
  201. package/dist/components/List/ListItem.js +0 -11
  202. package/dist/components/List/ListSection.js +0 -11
  203. package/dist/components/List/components/ListOption/ListOption.module.css.js +0 -23
@@ -0,0 +1,9 @@
1
+ const matchVariantToCloseButton = {
2
+ "theme-fade": "theme",
3
+ "contrast-fade": "fade-contrast",
4
+ "error-fade": "error",
5
+ "warning-fade": "warning"
6
+ };
7
+ export {
8
+ matchVariantToCloseButton
9
+ };
@@ -0,0 +1 @@
1
+ export * from './TagInner';
@@ -0,0 +1,3 @@
1
+ export * from './TagGroup';
2
+ export * from './Tag';
3
+ export * from './types';
@@ -0,0 +1,7 @@
1
+ const intlMessages = {
2
+ "ru-RU": { "close": "Закрыть" },
3
+ "en-US": { "close": "Close" }
4
+ };
5
+ export {
6
+ intlMessages as default
7
+ };
@@ -0,0 +1,37 @@
1
+ import type { ComponentPropsWithRef, ComponentRef, CSSProperties, ReactElement, Ref } from 'react';
2
+ import type { AriaTagGroupProps } from '@koobiq/react-primitives';
3
+ export type TagGroupPropChildren<T extends object> = AriaTagGroupProps<T>['children'];
4
+ export type TagGroupPropItems<T extends object> = AriaTagGroupProps<T>['items'];
5
+ export type TagGroupPropOnRemove<T extends object> = AriaTagGroupProps<T>['onRemove'];
6
+ export type TagGroupPropDisabledKeys<T extends object> = AriaTagGroupProps<T>['disabledKeys'];
7
+ export declare const tagGroupPropVariant: readonly ["theme-fade", "contrast-fade", "error-fade", "warning-fade"];
8
+ export type TagGroupPropVariant = (typeof tagGroupPropVariant)[number];
9
+ export type TagGroupProps<T extends object> = {
10
+ /** The contents of the collection. */
11
+ children?: TagGroupPropChildren<T>;
12
+ /** Item objects in the collection. */
13
+ items?: TagGroupPropItems<T>;
14
+ /** Handler that is called when a user deletes a tag. */
15
+ onRemove?: TagGroupPropOnRemove<T>;
16
+ /**
17
+ * The variant to use.
18
+ * @default theme-fade
19
+ * */
20
+ variant?: TagGroupPropVariant;
21
+ /** The item keys that are disabled. These items cannot be selected, focused, or otherwise interacted with. */
22
+ disabledKeys?: TagGroupPropDisabledKeys<T>;
23
+ /** Ref to the HTML ul-element. */
24
+ ref?: Ref<HTMLElement>;
25
+ /** Additional CSS-classes. */
26
+ className?: string;
27
+ /** Unique identifier for testing purposes. */
28
+ 'data-testid'?: string | number;
29
+ /** Inline styles. */
30
+ style?: CSSProperties;
31
+ /** The props used for each slot inside. */
32
+ slotProps?: {
33
+ root?: ComponentPropsWithRef<'div'>;
34
+ };
35
+ };
36
+ export type TagGroupComponentProp = <T extends object>(props: TagGroupProps<T>) => ReactElement | null;
37
+ export type TagGroupRef = ComponentRef<'div'>;
@@ -0,0 +1,9 @@
1
+ const tagGroupPropVariant = [
2
+ "theme-fade",
3
+ "contrast-fade",
4
+ "error-fade",
5
+ "warning-fade"
6
+ ];
7
+ export {
8
+ tagGroupPropVariant
9
+ };
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsxs, jsx } from "react/jsx-runtime";
3
3
  import { forwardRef } from "react";
4
- import { clsx, mergeProps, isNotNil } from "@koobiq/react-core";
4
+ import { mergeProps, isNotNil, clsx } from "@koobiq/react-core";
5
5
  import { Toggle as Toggle$1 } from "@koobiq/react-primitives";
6
6
  import s from "./Toggle.module.css.js";
7
7
  const Toggle = forwardRef(
@@ -7,7 +7,7 @@ export declare const Tooltip: import("react").ForwardRefExoticComponent<{
7
7
  children?: import("react").ReactNode;
8
8
  control?: import("./types").TooltipPropControl;
9
9
  placement?: import("./types").TooltipPropPlacement;
10
- anchorRef?: import("react").RefObject<HTMLElement>;
10
+ anchorRef?: import("react").RefObject<HTMLElement | null>;
11
11
  arrowBoundaryOffset?: number;
12
12
  offset?: number;
13
13
  crossOffset?: number;
@@ -17,4 +17,5 @@ export declare const Tooltip: import("react").ForwardRefExoticComponent<{
17
17
  trigger?: "focus";
18
18
  id?: string;
19
19
  className?: string;
20
+ portalContainer?: Element;
20
21
  } & import("@koobiq/react-core").DataAttributeProps & import("react").RefAttributes<HTMLDivElement>>;
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
3
3
  import { forwardRef, useRef } from "react";
4
- import { useDOMRef, useBoolean, FocusableProvider, mergeProps, clsx } from "@koobiq/react-core";
4
+ import { useDOMRef, useMultiRef, useBoolean, FocusableProvider, clsx, mergeProps } from "@koobiq/react-core";
5
5
  import { useTooltipTriggerState, useTooltipTrigger, useOverlayPosition, useTooltip, Overlay } from "@koobiq/react-primitives";
6
6
  import { Transition } from "react-transition-group";
7
7
  import { utilClasses } from "../../styles/utility.js";
@@ -10,17 +10,18 @@ const Tooltip = forwardRef((props, ref) => {
10
10
  const {
11
11
  delay = 120,
12
12
  disabled = false,
13
- defaultOpen,
14
13
  closeDelay = 120,
15
14
  hideArrow = false,
16
15
  variant = "contrast",
17
- onOpenChange,
18
16
  placement: placementProp = "top",
19
17
  control,
20
18
  children,
21
19
  anchorRef,
22
20
  crossOffset,
21
+ defaultOpen,
22
+ onOpenChange,
23
23
  open: openProp,
24
+ portalContainer,
24
25
  offset: offsetProp,
25
26
  arrowBoundaryOffset,
26
27
  ...other
@@ -38,6 +39,7 @@ const Tooltip = forwardRef((props, ref) => {
38
39
  });
39
40
  const domRef = useDOMRef(ref);
40
41
  const controlRef = useRef(null);
42
+ const controlRefCallback = useMultiRef([controlRef]);
41
43
  const { triggerProps, tooltipProps } = useTooltipTrigger(
42
44
  {
43
45
  delay,
@@ -67,20 +69,20 @@ const Tooltip = forwardRef((props, ref) => {
67
69
  const { tooltipProps: localTooltipProps } = useTooltip(overlayProps, state);
68
70
  return /* @__PURE__ */ jsxs(Fragment, { children: [
69
71
  /* @__PURE__ */ jsx(FocusableProvider, { ...triggerProps, ref: controlRef, children: control?.({
70
- ref: controlRef,
72
+ ref: controlRefCallback,
71
73
  ...triggerProps
72
74
  }) }),
73
75
  /* @__PURE__ */ jsx(
74
76
  Transition,
75
77
  {
76
78
  onEnter: on,
77
- timeout: 300,
79
+ timeout: 120,
78
80
  onExited: off,
79
81
  in: openState,
80
82
  nodeRef: domRef,
81
83
  unmountOnExit: true,
82
84
  appear: true,
83
- children: (transition) => /* @__PURE__ */ jsx(Overlay, { children: /* @__PURE__ */ jsxs(
85
+ children: (transition) => /* @__PURE__ */ jsx(Overlay, { portalContainer, children: /* @__PURE__ */ jsxs(
84
86
  "div",
85
87
  {
86
88
  ...mergeProps(localTooltipProps, tooltipProps),
@@ -108,8 +110,7 @@ const Tooltip = forwardRef((props, ref) => {
108
110
  ]
109
111
  }
110
112
  ) })
111
- },
112
- placement
113
+ }
113
114
  )
114
115
  ] });
115
116
  });
@@ -1,7 +1,7 @@
1
- import type { ReactNode, ComponentRef, Ref, ReactElement, HTMLAttributes, RefObject } from 'react';
1
+ import type { ReactNode, RefObject, ComponentRef, ReactElement, DOMAttributes } from 'react';
2
2
  import type { DataAttributeProps } from '@koobiq/react-core';
3
- export type TooltipPropControl = (props: HTMLAttributes<HTMLButtonElement> & {
4
- ref?: Ref<HTMLButtonElement>;
3
+ export type TooltipPropControl = (props: DOMAttributes<HTMLElement> & {
4
+ ref: ((node: HTMLElement | null) => void) | null;
5
5
  }) => ReactElement;
6
6
  export declare const tooltipPropPlacement: readonly ["bottom", "bottom start", "bottom end", "top", "top start", "top end", "start", "start top", "start bottom", "end", "end top", "end bottom"];
7
7
  export declare const tooltipPropVariant: readonly ["contrast", "contrast-fade", "error", "warning", "theme"];
@@ -34,7 +34,7 @@ export type TooltipProps = {
34
34
  * */
35
35
  placement?: TooltipPropPlacement;
36
36
  /** The ref for the element which the popover positions itself with respect to. */
37
- anchorRef?: RefObject<HTMLElement>;
37
+ anchorRef?: RefObject<HTMLElement | null>;
38
38
  /**
39
39
  * The minimum distance the arrow's edge should be from the edge of the overlay element.
40
40
  * @default 0
@@ -77,5 +77,10 @@ export type TooltipProps = {
77
77
  id?: string;
78
78
  /** Additional CSS-classes. */
79
79
  className?: string;
80
+ /**
81
+ * The container element in which the component portal will be placed.
82
+ * @default document.body
83
+ */
84
+ portalContainer?: Element;
80
85
  } & DataAttributeProps;
81
86
  export type TooltipRef = ComponentRef<'div'>;
@@ -27,11 +27,11 @@ const Typography = polymorphicForwardRef(
27
27
  "data-ellipsis": ellipsis,
28
28
  className: clsx(
29
29
  s.base,
30
+ textVariant[variant],
30
31
  display && s[display],
31
32
  ellipsis && s.ellipsis,
32
33
  align && s[`align-${align}`],
33
- textVariant[variant],
34
- foregroundColor[color],
34
+ color === "inherit" ? s["color-inherit"] : foregroundColor[color],
35
35
  className
36
36
  ),
37
37
  ...other,
@@ -12,7 +12,8 @@ const s = {
12
12
  "align-center": "kbq-typography-align-center-2d47fd",
13
13
  "align-initial": "kbq-typography-align-initial-faf6dd",
14
14
  "align-inherit": "kbq-typography-align-inherit-00f946",
15
- ellipsis
15
+ ellipsis,
16
+ "color-inherit": "kbq-typography-color-inherit-35de13"
16
17
  };
17
18
  export {
18
19
  base,
@@ -2,10 +2,15 @@ import type { ReactNode } from 'react';
2
2
  export declare const typographyPropVariant: readonly ["display-big", "display-normal", "display-compact", "display-big-strong", "display-normal-strong", "display-compact-strong", "headline", "title", "subheading", "text-big", "text-big-strong", "text-big-medium", "text-normal", "text-normal-strong", "text-normal-medium", "text-compact", "text-compact-strong", "text-compact-medium", "caps-big", "caps-big-strong", "caps-normal", "caps-normal-strong", "caps-compact", "caps-compact-strong", "mono-big", "mono-big-strong", "mono-normal", "mono-normal-strong", "mono-compact", "mono-compact-strong", "mono-codeblock", "tabular-big", "tabular-big-strong", "tabular-normal", "tabular-normal-strong", "tabular-compact", "tabular-compact-strong", "italic-big", "italic-big-strong", "italic-normal", "italic-normal-strong", "italic-compact", "italic-compact-strong", "inherit"];
3
3
  export type TypographyPropVariant = (typeof typographyPropVariant)[number];
4
4
  export declare const typographyPropDisplay: readonly ["block", "inline", "inline-block"];
5
+ /**
6
+ * @deprecated
7
+ * This type has been deprecated, please use `TypographyPropDisplay` instead.
8
+ */
5
9
  export type TypographyDisplayVariant = (typeof typographyPropDisplay)[number];
10
+ export type TypographyPropDisplay = (typeof typographyPropDisplay)[number];
6
11
  export declare const typographyPropAlign: readonly ["start", "center", "end", "initial", "inherit"];
7
12
  export type TypographyPropAlign = (typeof typographyPropAlign)[number];
8
- export declare const typographyPropColor: readonly ["white", "white-secondary", "theme", "theme-secondary", "contrast", "on-contrast", "contrast-secondary", "contrast-tertiary", "error", "error-secondary", "error-tertiary", "error-less", "success", "success-less", "success-secondary", "warning", "warning-secondary", "visited"];
13
+ export declare const typographyPropColor: readonly ["white", "white-secondary", "theme", "theme-secondary", "contrast", "on-contrast", "contrast-secondary", "contrast-tertiary", "error", "error-secondary", "error-tertiary", "error-less", "success", "success-less", "success-secondary", "warning", "warning-secondary", "visited", "inherit"];
9
14
  export type TypographyPropColor = (typeof typographyPropColor)[number];
10
15
  export type TypographyBaseProps = {
11
16
  /**
@@ -14,7 +19,7 @@ export type TypographyBaseProps = {
14
19
  * */
15
20
  variant?: TypographyPropVariant;
16
21
  /** Set the display for the component. */
17
- display?: TypographyDisplayVariant;
22
+ display?: TypographyPropDisplay;
18
23
  /** Set the text-align on the component. */
19
24
  align?: TypographyPropAlign;
20
25
  /** Hidden overflow content will be replaced by an ellipsis. */
@@ -74,7 +74,8 @@ const typographyPropColor = [
74
74
  "success-secondary",
75
75
  "warning",
76
76
  "warning-secondary",
77
- "visited"
77
+ "visited",
78
+ "inherit"
78
79
  ];
79
80
  export {
80
81
  typographyPropAlign,
@@ -1,4 +1,5 @@
1
1
  export * from './Provider';
2
+ export * from './FlexBox';
2
3
  export * from './Container';
3
4
  export * from './Alert';
4
5
  export * from './Button';
@@ -22,4 +23,11 @@ export * from './SidePanel';
22
23
  export * from './Popover';
23
24
  export * from './Tooltip';
24
25
  export * from './List';
26
+ export * from './AnimatedIcon';
27
+ export * from './Select';
28
+ export * from './Divider';
29
+ export * from './Menu';
30
+ export * from './ButtonToggleGroup';
31
+ export * from './TagGroup';
25
32
  export * from './layout';
33
+ export { useListData } from '@koobiq/react-primitives';
@@ -13,13 +13,24 @@ export type FlexPropDirection = (typeof flexPropDirection)[number];
13
13
  export declare const flexPropOrder: readonly [-1, 0, 1];
14
14
  export type FlexPropOrder = (typeof flexPropOrder)[number];
15
15
  export type FlexProps = {
16
- alignItems?: FlexPropAlignItems;
17
- justifyContent?: FlexPropJustifyContent;
16
+ /** Defines the `gap` property. */
17
+ gap?: FlexPropGap;
18
+ /** Defines the `column-gap` property. */
19
+ colGap?: FlexPropGap;
20
+ /** Defines the `row-gap` property. */
21
+ rowGap?: FlexPropGap;
22
+ /** Defines the `display` property with `flex` or `inline-flex` value. */
18
23
  flex?: FlexPropFlex;
24
+ /** Defines the `flex-wrap` property. */
19
25
  wrap?: FlexPropWrap;
20
- direction?: FlexPropDirection;
21
- gap?: FlexPropGap;
26
+ /** Defines the `order` property. */
22
27
  order?: FlexPropOrder;
28
+ /** Defines the `flex-direction` property. */
29
+ direction?: FlexPropDirection;
30
+ /** Defines the `align-items` property. */
31
+ alignItems?: FlexPropAlignItems;
32
+ /** Defines the `justify-content` property. */
33
+ justifyContent?: FlexPropJustifyContent;
23
34
  };
24
35
  export type FlexParams = (props: FlexProps, className?: string) => string;
25
36
  export declare const flex: FlexParams;
@@ -47,15 +47,20 @@ const flex = (props, className) => {
47
47
  wrap,
48
48
  direction,
49
49
  gap,
50
+ rowGap: rowGapProp,
51
+ colGap: colGapProp,
50
52
  order: orderProp
51
53
  } = props;
52
54
  const order = String(orderProp);
55
+ const colGap = colGapProp ?? gap;
56
+ const rowGap = rowGapProp ?? gap;
53
57
  return clsx(
54
58
  s.base,
55
- gap && s[`gap_${gap}`],
56
59
  flex2 && s[`flex_${flex2}`],
57
60
  wrap && s[`wrap_${wrap}`],
58
61
  order && s[`order_${order}`],
62
+ rowGap && s[`gap_row_${rowGap}`],
63
+ colGap && s[`gap_column_${colGap}`],
59
64
  direction && s[`direction_${direction}`],
60
65
  alignItems && s[`alignItems_${alignItems}`],
61
66
  justifyContent && s[`justifyContent_${justifyContent}`],
@@ -10,19 +10,32 @@ const direction_row = "kbq-flex-direction_row-8fff0d";
10
10
  const direction_column = "kbq-flex-direction_column-29b97b";
11
11
  const order_0 = "kbq-flex-order_0-4a6164";
12
12
  const order_1 = "kbq-flex-order_1-b5e24c";
13
- const gap_3xs = "kbq-flex-gap_3xs-5c9d4e";
14
- const gap_xxs = "kbq-flex-gap_xxs-035614";
15
- const gap_xs = "kbq-flex-gap_xs-970b31";
16
- const gap_s = "kbq-flex-gap_s-e9d292";
17
- const gap_m = "kbq-flex-gap_m-21a099";
18
- const gap_l = "kbq-flex-gap_l-47c05c";
19
- const gap_xl = "kbq-flex-gap_xl-d76274";
20
- const gap_xxl = "kbq-flex-gap_xxl-0e68cb";
21
- const gap_3xl = "kbq-flex-gap_3xl-497012";
22
- const gap_4xl = "kbq-flex-gap_4xl-0b7c71";
23
- const gap_5xl = "kbq-flex-gap_5xl-ed56fe";
24
- const gap_6xl = "kbq-flex-gap_6xl-0749d1";
25
- const gap_7xl = "kbq-flex-gap_7xl-0a1536";
13
+ const gap_column_3xs = "kbq-flex-gap_column_3xs-2aea22";
14
+ const gap_column_xxs = "kbq-flex-gap_column_xxs-7586e8";
15
+ const gap_column_xs = "kbq-flex-gap_column_xs-911f68";
16
+ const gap_column_s = "kbq-flex-gap_column_s-a389c1";
17
+ const gap_column_m = "kbq-flex-gap_column_m-21736b";
18
+ const gap_column_l = "kbq-flex-gap_column_l-390cf2";
19
+ const gap_column_xl = "kbq-flex-gap_column_xl-47b33c";
20
+ const gap_column_xxl = "kbq-flex-gap_column_xxl-2f762a";
21
+ const gap_column_3xl = "kbq-flex-gap_column_3xl-e81ba4";
22
+ const gap_column_4xl = "kbq-flex-gap_column_4xl-502e67";
23
+ const gap_column_5xl = "kbq-flex-gap_column_5xl-028451";
24
+ const gap_column_6xl = "kbq-flex-gap_column_6xl-2f1bfa";
25
+ const gap_column_7xl = "kbq-flex-gap_column_7xl-057b8a";
26
+ const gap_row_3xs = "kbq-flex-gap_row_3xs-ea5984";
27
+ const gap_row_xxs = "kbq-flex-gap_row_xxs-a520f4";
28
+ const gap_row_xs = "kbq-flex-gap_row_xs-e62321";
29
+ const gap_row_s = "kbq-flex-gap_row_s-2dab73";
30
+ const gap_row_m = "kbq-flex-gap_row_m-6423db";
31
+ const gap_row_l = "kbq-flex-gap_row_l-f312fe";
32
+ const gap_row_xl = "kbq-flex-gap_row_xl-e85171";
33
+ const gap_row_xxl = "kbq-flex-gap_row_xxl-c2548b";
34
+ const gap_row_3xl = "kbq-flex-gap_row_3xl-34ef28";
35
+ const gap_row_4xl = "kbq-flex-gap_row_4xl-29ec96";
36
+ const gap_row_5xl = "kbq-flex-gap_row_5xl-c7e969";
37
+ const gap_row_6xl = "kbq-flex-gap_row_6xl-afc87a";
38
+ const gap_row_7xl = "kbq-flex-gap_row_7xl-d67bcc";
26
39
  const s = {
27
40
  base,
28
41
  "alignItems_flex-start": "kbq-flex-alignItems_flex-start-56df74",
@@ -48,19 +61,32 @@ const s = {
48
61
  "order_-1": "kbq-flex-order_-1-4f5108",
49
62
  order_0,
50
63
  order_1,
51
- gap_3xs,
52
- gap_xxs,
53
- gap_xs,
54
- gap_s,
55
- gap_m,
56
- gap_l,
57
- gap_xl,
58
- gap_xxl,
59
- gap_3xl,
60
- gap_4xl,
61
- gap_5xl,
62
- gap_6xl,
63
- gap_7xl
64
+ gap_column_3xs,
65
+ gap_column_xxs,
66
+ gap_column_xs,
67
+ gap_column_s,
68
+ gap_column_m,
69
+ gap_column_l,
70
+ gap_column_xl,
71
+ gap_column_xxl,
72
+ gap_column_3xl,
73
+ gap_column_4xl,
74
+ gap_column_5xl,
75
+ gap_column_6xl,
76
+ gap_column_7xl,
77
+ gap_row_3xs,
78
+ gap_row_xxs,
79
+ gap_row_xs,
80
+ gap_row_s,
81
+ gap_row_m,
82
+ gap_row_l,
83
+ gap_row_xl,
84
+ gap_row_xxl,
85
+ gap_row_3xl,
86
+ gap_row_4xl,
87
+ gap_row_5xl,
88
+ gap_row_6xl,
89
+ gap_row_7xl
64
90
  };
65
91
  export {
66
92
  alignItems_baseline,
@@ -71,19 +97,32 @@ export {
71
97
  direction_column,
72
98
  direction_row,
73
99
  flex_flex,
74
- gap_3xl,
75
- gap_3xs,
76
- gap_4xl,
77
- gap_5xl,
78
- gap_6xl,
79
- gap_7xl,
80
- gap_l,
81
- gap_m,
82
- gap_s,
83
- gap_xl,
84
- gap_xs,
85
- gap_xxl,
86
- gap_xxs,
100
+ gap_column_3xl,
101
+ gap_column_3xs,
102
+ gap_column_4xl,
103
+ gap_column_5xl,
104
+ gap_column_6xl,
105
+ gap_column_7xl,
106
+ gap_column_l,
107
+ gap_column_m,
108
+ gap_column_s,
109
+ gap_column_xl,
110
+ gap_column_xs,
111
+ gap_column_xxl,
112
+ gap_column_xxs,
113
+ gap_row_3xl,
114
+ gap_row_3xs,
115
+ gap_row_4xl,
116
+ gap_row_5xl,
117
+ gap_row_6xl,
118
+ gap_row_7xl,
119
+ gap_row_l,
120
+ gap_row_m,
121
+ gap_row_s,
122
+ gap_row_xl,
123
+ gap_row_xs,
124
+ gap_row_xxl,
125
+ gap_row_xxs,
87
126
  justifyContent_center,
88
127
  order_0,
89
128
  order_1,
package/dist/index.js CHANGED
@@ -1,8 +1,10 @@
1
1
  /* empty css */
2
+ import { useListData } from "@koobiq/react-primitives";
2
3
  import { Provider, defaultBreakpoints } from "./components/Provider/Provider.js";
3
4
  import { BreakpointsProvider } from "./components/Provider/BreakpointsProvider.js";
4
5
  import { ProviderContext, useProvider } from "./components/Provider/ProviderContext.js";
5
6
  import { BreakpointsContext, useBreakpoints, useMatchedBreakpoints } from "./components/Provider/BreakpointsContext.js";
7
+ import { FlexBox } from "./components/FlexBox/FlexBox.js";
6
8
  import { Container } from "./components/Container/Container.js";
7
9
  import { containerMarginsProp, containerPositionProp } from "./components/Container/types.js";
8
10
  import { Alert } from "./components/Alert/Alert.js";
@@ -42,34 +44,48 @@ import { Grid } from "./components/Grid/Grid.js";
42
44
  import { GridItem } from "./components/Grid/components/GridItem/GridItem.js";
43
45
  import { SkeletonBlock } from "./components/SkeletonBlock/SkeletonBlock.js";
44
46
  import { SkeletonTypography } from "./components/SkeletonTypography/SkeletonTypography.js";
45
- import { DialogHeader, DialogHeader as DialogHeader2, DialogHeader as DialogHeader3, DialogHeader as DialogHeader4 } from "./components/Dialog/components/DialoglHeader.js";
46
- import { DialogFooter, DialogFooter as DialogFooter2, DialogFooter as DialogFooter3, DialogFooter as DialogFooter4 } from "./components/Dialog/components/DialogFooter.js";
47
- import { DialogContent, DialogContent as DialogContent2, DialogContent as DialogContent3, DialogContent as DialogContent4 } from "./components/Dialog/components/DialogContent.js";
48
47
  import { Modal } from "./components/Modal/Modal.js";
49
48
  import { modalPropSize } from "./components/Modal/types.js";
49
+ import { ModalContent, ModalFooter, ModalHeader } from "./components/Modal/index.js";
50
50
  import { SidePanel } from "./components/SidePanel/SidePanel.js";
51
51
  import { sidePanelPropPosition, sidePanelPropSize } from "./components/SidePanel/types.js";
52
- import { Popover } from "./components/Popover/Popover.js";
53
- import { popoverPropPlacement, popoverPropSize } from "./components/Popover/types.js";
52
+ import { SidePanelContent, SidePanelFooter, SidePanelHeader } from "./components/SidePanel/index.js";
53
+ import { Popover, PopoverInner } from "./components/Popover/Popover.js";
54
+ import { popoverPropPlacement, popoverPropSize, popoverPropType } from "./components/Popover/types.js";
55
+ import { PopoverContent, PopoverFooter, PopoverHeader } from "./components/Popover/index.js";
54
56
  import { Tooltip } from "./components/Tooltip/Tooltip.js";
55
57
  import { tooltipPropPlacement, tooltipPropVariant } from "./components/Tooltip/types.js";
56
- import { List, ListRender } from "./components/List/List.js";
58
+ import { Item } from "./components/Collections/Item.js";
59
+ import { Section } from "./components/Collections/Section.js";
60
+ import { List, ListInner } from "./components/List/List.js";
61
+ import { ListItemText } from "./components/List/components/ListItemText/ListItemText.js";
57
62
  import { listPropSelectionMode } from "./components/List/types.js";
58
- import { ListItem } from "./components/List/ListItem.js";
59
- import { ListSection } from "./components/List/ListSection.js";
63
+ import { AnimatedIcon } from "./components/AnimatedIcon/AnimatedIcon.js";
64
+ import { Select } from "./components/Select/Select.js";
65
+ import { Divider } from "./components/Divider/Divider.js";
66
+ import { dividerPropDisplay, dividerPropOrientation } from "./components/Divider/types.js";
67
+ import { Menu } from "./components/Menu/Menu.js";
68
+ import { menuPropSelectionMode } from "./components/Menu/types.js";
69
+ import { ButtonToggleGroup } from "./components/ButtonToggleGroup/ButtonToggleGroup.js";
70
+ import { ButtonToggle } from "./components/ButtonToggleGroup/components/ButtonToggle/ButtonToggle.js";
71
+ import { TagGroup } from "./components/TagGroup/TagGroup.js";
72
+ import { Tag } from "./components/TagGroup/Tag.js";
73
+ import { tagGroupPropVariant } from "./components/TagGroup/types.js";
60
74
  import { flex, flexPropAlignItems, flexPropDirection, flexPropFlex, flexPropGap, flexPropJustifyContent, flexPropOrder, flexPropWrap } from "./components/layout/flex/flex.js";
61
75
  import { spacing, spacingGap } from "./components/layout/spacing/spacing.js";
62
76
  export {
63
77
  Alert,
78
+ AnimatedIcon,
64
79
  Badge,
65
80
  BreakpointsContext,
66
81
  BreakpointsProvider,
67
82
  Button,
83
+ ButtonToggle,
84
+ ButtonToggleGroup,
68
85
  Checkbox,
69
86
  Container,
70
- DialogContent,
71
- DialogFooter,
72
- DialogHeader,
87
+ Divider,
88
+ FlexBox,
73
89
  Grid,
74
90
  GridItem,
75
91
  IconButton,
@@ -77,17 +93,20 @@ export {
77
93
  InputNumber,
78
94
  Link,
79
95
  List,
80
- ListItem,
81
- ListRender,
82
- ListSection,
96
+ ListInner,
97
+ Item as ListItem,
98
+ ListItemText,
99
+ Section as ListSection,
100
+ Menu,
83
101
  Modal,
84
- DialogContent2 as ModalContent,
85
- DialogFooter2 as ModalFooter,
86
- DialogHeader2 as ModalHeader,
102
+ ModalContent,
103
+ ModalFooter,
104
+ ModalHeader,
87
105
  Popover,
88
- DialogContent3 as PopoverContent,
89
- DialogFooter3 as PopoverFooter,
90
- DialogHeader3 as PopoverHeader,
106
+ PopoverContent,
107
+ PopoverFooter,
108
+ PopoverHeader,
109
+ PopoverInner,
91
110
  ProgressBar,
92
111
  ProgressSpinner,
93
112
  Provider,
@@ -97,12 +116,15 @@ export {
97
116
  RadioGroupContext,
98
117
  RadioGroupDescription,
99
118
  RadioGroupLabel,
119
+ Select,
100
120
  SidePanel,
101
- DialogContent4 as SidePanelContent,
102
- DialogFooter4 as SidePanelFooter,
103
- DialogHeader4 as SidePanelHeader,
121
+ SidePanelContent,
122
+ SidePanelFooter,
123
+ SidePanelHeader,
104
124
  SkeletonBlock,
105
125
  SkeletonTypography,
126
+ Tag,
127
+ TagGroup,
106
128
  Textarea,
107
129
  Toggle,
108
130
  Tooltip,
@@ -116,6 +138,8 @@ export {
116
138
  containerMarginsProp,
117
139
  containerPositionProp,
118
140
  defaultBreakpoints,
141
+ dividerPropDisplay,
142
+ dividerPropOrientation,
119
143
  flex,
120
144
  flexPropAlignItems,
121
145
  flexPropDirection,
@@ -130,9 +154,11 @@ export {
130
154
  inputNumberPropVariant,
131
155
  inputPropVariant,
132
156
  listPropSelectionMode,
157
+ menuPropSelectionMode,
133
158
  modalPropSize,
134
159
  popoverPropPlacement,
135
160
  popoverPropSize,
161
+ popoverPropType,
136
162
  progressBarPropVariant,
137
163
  progressSpinnerPropSize,
138
164
  progressSpinnerPropVariant,
@@ -144,6 +170,7 @@ export {
144
170
  sidePanelPropSize,
145
171
  spacing,
146
172
  spacingGap,
173
+ tagGroupPropVariant,
147
174
  textareaPropExpand,
148
175
  textareaPropVariant,
149
176
  togglePropLabelPlacement,
@@ -155,6 +182,7 @@ export {
155
182
  typographyPropDisplay,
156
183
  typographyPropVariant,
157
184
  useBreakpoints,
185
+ useListData,
158
186
  useMatchedBreakpoints,
159
187
  useProvider,
160
188
  useRadioGroupState