@mantine/core 7.16.3 → 8.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/cjs/components/Affix/Affix.cjs +5 -5
  2. package/cjs/components/Affix/Affix.cjs.map +1 -1
  3. package/cjs/components/Anchor/Anchor.cjs.map +1 -1
  4. package/cjs/components/Checkbox/Checkbox.cjs.map +1 -1
  5. package/cjs/components/Checkbox/CheckboxGroup/CheckboxGroup.cjs.map +1 -1
  6. package/cjs/components/Chip/Chip.cjs.map +1 -1
  7. package/cjs/components/Input/Input.cjs.map +1 -1
  8. package/cjs/components/InputBase/InputBase.cjs.map +1 -1
  9. package/cjs/components/Kbd/Kbd.cjs +1 -4
  10. package/cjs/components/Kbd/Kbd.cjs.map +1 -1
  11. package/cjs/components/Menu/Menu.cjs +2 -7
  12. package/cjs/components/Menu/Menu.cjs.map +1 -1
  13. package/cjs/components/Menu/Menu.context.cjs.map +1 -1
  14. package/cjs/components/Menu/Menu.module.css.cjs +1 -1
  15. package/cjs/components/Menu/MenuItem/MenuItem.cjs +10 -15
  16. package/cjs/components/Menu/MenuItem/MenuItem.cjs.map +1 -1
  17. package/cjs/components/Menu/MenuSub/MenuSub.cjs +71 -0
  18. package/cjs/components/Menu/MenuSub/MenuSub.cjs.map +1 -0
  19. package/cjs/components/Menu/MenuSub/MenuSub.context.cjs +21 -0
  20. package/cjs/components/Menu/MenuSub/MenuSub.context.cjs.map +1 -0
  21. package/cjs/components/Menu/MenuSubDropdown/MenuSubDropdown.cjs +70 -0
  22. package/cjs/components/Menu/MenuSubDropdown/MenuSubDropdown.cjs.map +1 -0
  23. package/cjs/components/Menu/MenuSubItem/MenuSubItem.cjs +115 -0
  24. package/cjs/components/Menu/MenuSubItem/MenuSubItem.cjs.map +1 -0
  25. package/cjs/components/Menu/MenuSubTarget/MenuSubTarget.cjs +33 -0
  26. package/cjs/components/Menu/MenuSubTarget/MenuSubTarget.cjs.map +1 -0
  27. package/cjs/components/Popover/Popover.cjs +19 -6
  28. package/cjs/components/Popover/Popover.cjs.map +1 -1
  29. package/cjs/components/Popover/Popover.context.cjs.map +1 -1
  30. package/cjs/components/Popover/PopoverDropdown/PopoverDropdown.cjs +13 -6
  31. package/cjs/components/Popover/PopoverDropdown/PopoverDropdown.cjs.map +1 -1
  32. package/cjs/components/Popover/use-popover.cjs +1 -1
  33. package/cjs/components/Popover/use-popover.cjs.map +1 -1
  34. package/cjs/components/Portal/OptionalPortal.cjs +19 -5
  35. package/cjs/components/Portal/OptionalPortal.cjs.map +1 -1
  36. package/cjs/components/Portal/Portal.cjs +32 -6
  37. package/cjs/components/Portal/Portal.cjs.map +1 -1
  38. package/cjs/components/Radio/Radio.cjs.map +1 -1
  39. package/cjs/components/Radio/RadioGroup/RadioGroup.cjs.map +1 -1
  40. package/cjs/components/ScrollArea/ScrollArea.cjs +10 -5
  41. package/cjs/components/ScrollArea/ScrollArea.cjs.map +1 -1
  42. package/cjs/components/ScrollArea/ScrollArea.context.cjs.map +1 -1
  43. package/cjs/components/ScrollArea/ScrollArea.module.css.cjs +1 -1
  44. package/cjs/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.cjs +7 -3
  45. package/cjs/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.cjs.map +1 -1
  46. package/cjs/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.cjs +1 -1
  47. package/cjs/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.cjs.map +1 -1
  48. package/cjs/components/Switch/Switch.cjs +12 -2
  49. package/cjs/components/Switch/Switch.cjs.map +1 -1
  50. package/cjs/components/Switch/SwitchGroup/SwitchGroup.cjs.map +1 -1
  51. package/cjs/components/Tabs/Tabs.module.css.cjs +1 -1
  52. package/cjs/components/Transition/Transition.cjs +12 -1
  53. package/cjs/components/Transition/Transition.cjs.map +1 -1
  54. package/cjs/core/MantineProvider/Mantine.context.cjs +4 -0
  55. package/cjs/core/MantineProvider/Mantine.context.cjs.map +1 -1
  56. package/cjs/core/MantineProvider/MantineProvider.cjs +4 -4
  57. package/cjs/core/MantineProvider/MantineProvider.cjs.map +1 -1
  58. package/cjs/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.cjs +8 -0
  59. package/cjs/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.cjs.map +1 -1
  60. package/cjs/index.cjs +1 -0
  61. package/cjs/index.cjs.map +1 -1
  62. package/esm/components/Affix/Affix.mjs +5 -5
  63. package/esm/components/Affix/Affix.mjs.map +1 -1
  64. package/esm/components/Anchor/Anchor.mjs.map +1 -1
  65. package/esm/components/Checkbox/Checkbox.mjs.map +1 -1
  66. package/esm/components/Checkbox/CheckboxGroup/CheckboxGroup.mjs.map +1 -1
  67. package/esm/components/Chip/Chip.mjs.map +1 -1
  68. package/esm/components/Input/Input.mjs.map +1 -1
  69. package/esm/components/InputBase/InputBase.mjs.map +1 -1
  70. package/esm/components/Kbd/Kbd.mjs +1 -4
  71. package/esm/components/Kbd/Kbd.mjs.map +1 -1
  72. package/esm/components/Menu/Menu.context.mjs.map +1 -1
  73. package/esm/components/Menu/Menu.mjs +3 -8
  74. package/esm/components/Menu/Menu.mjs.map +1 -1
  75. package/esm/components/Menu/Menu.module.css.mjs +1 -1
  76. package/esm/components/Menu/MenuItem/MenuItem.mjs +10 -15
  77. package/esm/components/Menu/MenuItem/MenuItem.mjs.map +1 -1
  78. package/esm/components/Menu/MenuSub/MenuSub.context.mjs +18 -0
  79. package/esm/components/Menu/MenuSub/MenuSub.context.mjs.map +1 -0
  80. package/esm/components/Menu/MenuSub/MenuSub.mjs +69 -0
  81. package/esm/components/Menu/MenuSub/MenuSub.mjs.map +1 -0
  82. package/esm/components/Menu/MenuSubDropdown/MenuSubDropdown.mjs +68 -0
  83. package/esm/components/Menu/MenuSubDropdown/MenuSubDropdown.mjs.map +1 -0
  84. package/esm/components/Menu/MenuSubItem/MenuSubItem.mjs +113 -0
  85. package/esm/components/Menu/MenuSubItem/MenuSubItem.mjs.map +1 -0
  86. package/esm/components/Menu/MenuSubTarget/MenuSubTarget.mjs +31 -0
  87. package/esm/components/Menu/MenuSubTarget/MenuSubTarget.mjs.map +1 -0
  88. package/esm/components/Popover/Popover.context.mjs.map +1 -1
  89. package/esm/components/Popover/Popover.mjs +19 -6
  90. package/esm/components/Popover/Popover.mjs.map +1 -1
  91. package/esm/components/Popover/PopoverDropdown/PopoverDropdown.mjs +13 -6
  92. package/esm/components/Popover/PopoverDropdown/PopoverDropdown.mjs.map +1 -1
  93. package/esm/components/Popover/use-popover.mjs +2 -2
  94. package/esm/components/Popover/use-popover.mjs.map +1 -1
  95. package/esm/components/Portal/OptionalPortal.mjs +19 -5
  96. package/esm/components/Portal/OptionalPortal.mjs.map +1 -1
  97. package/esm/components/Portal/Portal.mjs +33 -7
  98. package/esm/components/Portal/Portal.mjs.map +1 -1
  99. package/esm/components/Radio/Radio.mjs.map +1 -1
  100. package/esm/components/Radio/RadioGroup/RadioGroup.mjs.map +1 -1
  101. package/esm/components/ScrollArea/ScrollArea.context.mjs.map +1 -1
  102. package/esm/components/ScrollArea/ScrollArea.mjs +10 -5
  103. package/esm/components/ScrollArea/ScrollArea.mjs.map +1 -1
  104. package/esm/components/ScrollArea/ScrollArea.module.css.mjs +1 -1
  105. package/esm/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.mjs +7 -3
  106. package/esm/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.mjs.map +1 -1
  107. package/esm/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.mjs +1 -1
  108. package/esm/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.mjs.map +1 -1
  109. package/esm/components/Switch/Switch.mjs +12 -2
  110. package/esm/components/Switch/Switch.mjs.map +1 -1
  111. package/esm/components/Switch/SwitchGroup/SwitchGroup.mjs.map +1 -1
  112. package/esm/components/Tabs/Tabs.module.css.mjs +1 -1
  113. package/esm/components/Transition/Transition.mjs +12 -1
  114. package/esm/components/Transition/Transition.mjs.map +1 -1
  115. package/esm/core/MantineProvider/Mantine.context.mjs +4 -1
  116. package/esm/core/MantineProvider/Mantine.context.mjs.map +1 -1
  117. package/esm/core/MantineProvider/MantineProvider.mjs +4 -4
  118. package/esm/core/MantineProvider/MantineProvider.mjs.map +1 -1
  119. package/esm/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs +8 -0
  120. package/esm/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs.map +1 -1
  121. package/esm/index.mjs +1 -1
  122. package/lib/components/Affix/Affix.d.ts +5 -5
  123. package/lib/components/Anchor/Anchor.d.ts +1 -1
  124. package/lib/components/Checkbox/Checkbox.d.ts +2 -2
  125. package/lib/components/Checkbox/CheckboxGroup/CheckboxGroup.d.ts +2 -2
  126. package/lib/components/Chip/Chip.d.ts +2 -2
  127. package/lib/components/Input/Input.d.ts +3 -3
  128. package/lib/components/Input/use-input-props.d.ts +281 -5
  129. package/lib/components/InputBase/InputBase.d.ts +2 -2
  130. package/lib/components/Kbd/Kbd.d.ts +3 -3
  131. package/lib/components/Menu/Menu.context.d.ts +0 -2
  132. package/lib/components/Menu/Menu.d.ts +3 -3
  133. package/lib/components/Menu/MenuSub/MenuSub.context.d.ts +13 -0
  134. package/lib/components/Menu/MenuSub/MenuSub.d.ts +53 -0
  135. package/lib/components/Menu/MenuSubDropdown/MenuSubDropdown.d.ts +16 -0
  136. package/lib/components/Menu/MenuSubItem/MenuSubItem.d.ts +51 -0
  137. package/lib/components/Menu/MenuSubTarget/MenuSubTarget.d.ts +10 -0
  138. package/lib/components/Popover/Popover.context.d.ts +2 -0
  139. package/lib/components/Popover/Popover.d.ts +4 -0
  140. package/lib/components/Popover/use-popover.d.ts +1 -0
  141. package/lib/components/Portal/OptionalPortal.d.ts +9 -4
  142. package/lib/components/Portal/Portal.d.ts +11 -1
  143. package/lib/components/Radio/Radio.d.ts +2 -2
  144. package/lib/components/Radio/RadioGroup/RadioGroup.d.ts +2 -2
  145. package/lib/components/ScrollArea/ScrollArea.context.d.ts +3 -0
  146. package/lib/components/ScrollArea/ScrollArea.d.ts +3 -1
  147. package/lib/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.d.ts +3 -11
  148. package/lib/components/Switch/Switch.d.ts +4 -2
  149. package/lib/components/Switch/SwitchGroup/SwitchGroup.d.ts +2 -2
  150. package/lib/core/MantineProvider/Mantine.context.d.ts +2 -0
  151. package/lib/core/MantineProvider/MantineProvider.d.ts +5 -1
  152. package/lib/core/MantineProvider/index.d.ts +1 -1
  153. package/lib/core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.d.ts +1 -1
  154. package/lib/core/index.d.ts +1 -0
  155. package/lib/core/types.d.ts +3 -0
  156. package/package.json +4 -4
  157. package/styles/Anchor.css +18 -0
  158. package/styles/Anchor.layer.css +18 -0
  159. package/styles/Code.css +2 -4
  160. package/styles/Code.layer.css +2 -4
  161. package/styles/Image.css +0 -1
  162. package/styles/Image.layer.css +0 -1
  163. package/styles/Kbd.css +2 -8
  164. package/styles/Kbd.layer.css +2 -8
  165. package/styles/Menu.css +14 -2
  166. package/styles/Menu.layer.css +14 -2
  167. package/styles/ScrollArea.css +5 -0
  168. package/styles/ScrollArea.layer.css +5 -0
  169. package/styles/SegmentedControl.css +5 -5
  170. package/styles/SegmentedControl.layer.css +5 -5
  171. package/styles/Switch.css +17 -20
  172. package/styles/Switch.layer.css +17 -20
  173. package/styles/Tabs.css +39 -74
  174. package/styles/Tabs.layer.css +39 -74
  175. package/styles/baseline.css +40 -0
  176. package/styles/baseline.layer.css +41 -0
  177. package/styles/default-css-variables.css +501 -0
  178. package/styles/default-css-variables.layer.css +502 -0
  179. package/styles/global.css +0 -548
  180. package/styles/global.layer.css +1 -549
  181. package/styles.css +133 -150
  182. package/styles.layer.css +133 -150
@@ -1,4 +1,4 @@
1
- import { BoxProps, ElementProps, Factory, MantineColor, MantineRadius, MantineSize, StylesApiProps } from '../../core';
1
+ import { BoxProps, DataAttributes, ElementProps, Factory, MantineColor, MantineRadius, MantineSize, StylesApiProps } from '../../core';
2
2
  import { InlineInputStylesNames } from '../InlineInput';
3
3
  import { CheckboxCard } from './CheckboxCard/CheckboxCard';
4
4
  import { CheckboxGroup } from './CheckboxGroup/CheckboxGroup';
@@ -20,7 +20,7 @@ export interface CheckboxProps extends BoxProps, StylesApiProps<CheckboxFactory>
20
20
  /** Key of `theme.radius` or any valid CSS value to set `border-radius,` `theme.defaultRadius` by default */
21
21
  radius?: MantineRadius;
22
22
  /** Props passed down to the root element */
23
- wrapperProps?: Record<string, any>;
23
+ wrapperProps?: React.ComponentPropsWithoutRef<'div'> & DataAttributes;
24
24
  /** Position of the label relative to the input, `'right'` by default */
25
25
  labelPosition?: 'left' | 'right';
26
26
  /** Description displayed below the label */
@@ -1,4 +1,4 @@
1
- import { Factory, MantineSize } from '../../../core';
1
+ import { DataAttributes, Factory, MantineSize } from '../../../core';
2
2
  import { InputWrapperProps, InputWrapperStylesNames } from '../../Input';
3
3
  export type CheckboxGroupStylesNames = InputWrapperStylesNames;
4
4
  export interface CheckboxGroupProps extends Omit<InputWrapperProps, 'onChange'> {
@@ -11,7 +11,7 @@ export interface CheckboxGroupProps extends Omit<InputWrapperProps, 'onChange'>
11
11
  /** Called with an array of selected checkboxes values when value changes */
12
12
  onChange?: (value: string[]) => void;
13
13
  /** Props passed down to the root element (`Input.Wrapper` component) */
14
- wrapperProps?: Record<string, any>;
14
+ wrapperProps?: React.ComponentPropsWithoutRef<'div'> & DataAttributes;
15
15
  /** Controls size of the `Input.Wrapper`, `'sm'` by default */
16
16
  size?: MantineSize | (string & {});
17
17
  /** If set, value cannot be changed */
@@ -1,4 +1,4 @@
1
- import { BoxProps, ElementProps, Factory, MantineColor, MantineRadius, MantineSize, StylesApiProps } from '../../core';
1
+ import { BoxProps, DataAttributes, ElementProps, Factory, MantineColor, MantineRadius, MantineSize, StylesApiProps } from '../../core';
2
2
  import { ChipGroup } from './ChipGroup/ChipGroup';
3
3
  export type ChipStylesNames = 'root' | 'input' | 'iconWrapper' | 'checkIcon' | 'label';
4
4
  export type ChipVariant = 'outline' | 'filled' | 'light';
@@ -25,7 +25,7 @@ export interface ChipProps extends BoxProps, StylesApiProps<ChipFactory>, Elemen
25
25
  /** Static id to connect input with the label, by default `id` is randomly generated */
26
26
  id?: string;
27
27
  /** Props passed down to the root element */
28
- wrapperProps?: Record<string, any>;
28
+ wrapperProps?: React.ComponentPropsWithoutRef<'div'> & DataAttributes;
29
29
  /** Any element or component to replace default icon */
30
30
  icon?: React.ReactNode;
31
31
  /** Assigns ref of the root element */
@@ -1,4 +1,4 @@
1
- import { BoxProps, MantineRadius, MantineSize, PolymorphicFactory, StylesApiProps } from '../../core';
1
+ import { BoxProps, DataAttributes, MantineRadius, MantineSize, PolymorphicFactory, StylesApiProps } from '../../core';
2
2
  import { InputClearButton } from './InputClearButton/InputClearButton';
3
3
  import { InputDescription } from './InputDescription/InputDescription';
4
4
  import { InputError } from './InputError/InputError';
@@ -7,7 +7,7 @@ import { InputPlaceholder } from './InputPlaceholder/InputPlaceholder';
7
7
  import { __InputWrapperProps, InputWrapper, InputWrapperStylesNames } from './InputWrapper/InputWrapper';
8
8
  export interface __BaseInputProps extends __InputWrapperProps, Omit<__InputProps, 'wrapperProps'> {
9
9
  /** Props passed down to the root element */
10
- wrapperProps?: Record<string, any>;
10
+ wrapperProps?: React.ComponentPropsWithoutRef<'div'> & DataAttributes;
11
11
  }
12
12
  export type __InputStylesNames = InputStylesNames | InputWrapperStylesNames;
13
13
  export type InputStylesNames = 'input' | 'wrapper' | 'section';
@@ -37,7 +37,7 @@ export interface __InputProps {
37
37
  /** Sets `pointer-events` styles on the `rightSection` element, `'none'` by default */
38
38
  rightSectionPointerEvents?: React.CSSProperties['pointerEvents'];
39
39
  /** Props passed down to the root element of the `Input` component */
40
- wrapperProps?: Record<string, any>;
40
+ wrapperProps?: React.ComponentPropsWithoutRef<'div'> & DataAttributes;
41
41
  /** Sets `required` attribute on the `input` element */
42
42
  required?: boolean;
43
43
  /** Key of `theme.radius` or any valid CSS value to set `border-radius`, numbers are converted to rem, `theme.defaultRadius` by default */
@@ -8,17 +8,295 @@ interface BaseProps extends __BaseInputProps, BoxProps, StylesApiProps<{
8
8
  __stylesApiProps?: Record<string, any>;
9
9
  id?: string;
10
10
  }
11
- export declare function useInputProps<T extends BaseProps, U extends Partial<T>>(component: string, defaultProps: U, _props: T): Omit<T & { [Key in Extract<keyof T, never>]-?: {}[Key] | NonNullable<T[Key]>; }, "label" | "style" | "size" | "styles" | "className" | "id" | "vars" | "variant" | "unstyled" | "classNames" | "mod" | "error" | "description" | "__staticSelector" | "required" | "__stylesApiProps" | "withAsterisk" | "labelProps" | "descriptionProps" | "errorProps" | "inputContainer" | "inputWrapperOrder" | "wrapperProps"> & {
11
+ export declare function useInputProps<T extends BaseProps, U extends Partial<T>>(component: string, defaultProps: U, _props: T): Omit<T & { [Key in Extract<keyof T, never>]-?: {}[Key] | NonNullable<T[Key]>; }, "variant" | "style" | "size" | "label" | "required" | "className" | "id" | "description" | "error" | "__staticSelector" | "__stylesApiProps" | "withAsterisk" | "labelProps" | "descriptionProps" | "errorProps" | "inputContainer" | "inputWrapperOrder" | "mod" | "unstyled" | "classNames" | "styles" | "vars" | "wrapperProps"> & {
12
12
  classNames: Partial<Record<string, string>> | ((theme: import("../../core").MantineTheme, props: any, ctx: unknown) => Partial<Record<string, string>>) | undefined;
13
13
  styles: Partial<Record<string, import("../../core").CSSProperties>> | ((theme: import("../../core").MantineTheme, props: any, ctx: unknown) => Partial<Record<string, import("../../core").CSSProperties>>) | undefined;
14
14
  unstyled: boolean | undefined;
15
15
  wrapperProps: {
16
+ color?: string | undefined;
17
+ children?: import("react").ReactNode | undefined;
18
+ style: import("react").CSSProperties | ((theme: import("../../core").MantineTheme) => import("../../core").CSSProperties) | import("../../core").MantineStyleProp[] | undefined;
19
+ slot?: string | undefined;
20
+ title?: string | undefined;
21
+ key?: import("react").Key | null | undefined;
22
+ onChange?: import("react").FormEventHandler<HTMLDivElement> | undefined;
23
+ defaultChecked?: boolean | undefined;
24
+ defaultValue?: string | number | readonly string[] | undefined;
25
+ suppressContentEditableWarning?: boolean | undefined;
26
+ suppressHydrationWarning?: boolean | undefined;
27
+ accessKey?: string | undefined;
28
+ autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {});
29
+ autoFocus?: boolean | undefined;
30
+ className: string | undefined;
31
+ contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
32
+ contextMenu?: string | undefined;
33
+ dir?: string | undefined;
34
+ draggable?: (boolean | "true" | "false") | undefined;
35
+ enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
36
+ hidden?: boolean | undefined;
37
+ id: string | undefined;
38
+ lang?: string | undefined;
39
+ nonce?: string | undefined;
40
+ spellCheck?: (boolean | "true" | "false") | undefined;
41
+ tabIndex?: number | undefined;
42
+ translate?: "yes" | "no" | undefined;
43
+ radioGroup?: string | undefined;
44
+ role?: import("react").AriaRole | undefined;
45
+ about?: string | undefined;
46
+ content?: string | undefined;
47
+ datatype?: string | undefined;
48
+ inlist?: any;
49
+ prefix?: string | undefined;
50
+ property?: string | undefined;
51
+ rel?: string | undefined;
52
+ resource?: string | undefined;
53
+ rev?: string | undefined;
54
+ typeof?: string | undefined;
55
+ vocab?: string | undefined;
56
+ autoCorrect?: string | undefined;
57
+ autoSave?: string | undefined;
58
+ itemProp?: string | undefined;
59
+ itemScope?: boolean | undefined;
60
+ itemType?: string | undefined;
61
+ itemID?: string | undefined;
62
+ itemRef?: string | undefined;
63
+ results?: number | undefined;
64
+ security?: string | undefined;
65
+ unselectable?: "on" | "off" | undefined;
66
+ popover?: "" | "auto" | "manual" | undefined;
67
+ popoverTargetAction?: "toggle" | "show" | "hide" | undefined;
68
+ popoverTarget?: string | undefined;
69
+ inert?: boolean | undefined;
70
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
71
+ is?: string | undefined;
72
+ "aria-activedescendant"?: string | undefined;
73
+ "aria-atomic"?: (boolean | "true" | "false") | undefined;
74
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined;
75
+ "aria-braillelabel"?: string | undefined;
76
+ "aria-brailleroledescription"?: string | undefined;
77
+ "aria-busy"?: (boolean | "true" | "false") | undefined;
78
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined;
79
+ "aria-colcount"?: number | undefined;
80
+ "aria-colindex"?: number | undefined;
81
+ "aria-colindextext"?: string | undefined;
82
+ "aria-colspan"?: number | undefined;
83
+ "aria-controls"?: string | undefined;
84
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined;
85
+ "aria-describedby"?: string | undefined;
86
+ "aria-description"?: string | undefined;
87
+ "aria-details"?: string | undefined;
88
+ "aria-disabled"?: (boolean | "true" | "false") | undefined;
89
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
90
+ "aria-errormessage"?: string | undefined;
91
+ "aria-expanded"?: (boolean | "true" | "false") | undefined;
92
+ "aria-flowto"?: string | undefined;
93
+ "aria-grabbed"?: (boolean | "true" | "false") | undefined;
94
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
95
+ "aria-hidden"?: (boolean | "true" | "false") | undefined;
96
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined;
97
+ "aria-keyshortcuts"?: string | undefined;
98
+ "aria-label"?: string | undefined;
99
+ "aria-labelledby"?: string | undefined;
100
+ "aria-level"?: number | undefined;
101
+ "aria-live"?: "off" | "assertive" | "polite" | undefined;
102
+ "aria-modal"?: (boolean | "true" | "false") | undefined;
103
+ "aria-multiline"?: (boolean | "true" | "false") | undefined;
104
+ "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
105
+ "aria-orientation"?: "horizontal" | "vertical" | undefined;
106
+ "aria-owns"?: string | undefined;
107
+ "aria-placeholder"?: string | undefined;
108
+ "aria-posinset"?: number | undefined;
109
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined;
110
+ "aria-readonly"?: (boolean | "true" | "false") | undefined;
111
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
112
+ "aria-required"?: (boolean | "true" | "false") | undefined;
113
+ "aria-roledescription"?: string | undefined;
114
+ "aria-rowcount"?: number | undefined;
115
+ "aria-rowindex"?: number | undefined;
116
+ "aria-rowindextext"?: string | undefined;
117
+ "aria-rowspan"?: number | undefined;
118
+ "aria-selected"?: (boolean | "true" | "false") | undefined;
119
+ "aria-setsize"?: number | undefined;
120
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined;
121
+ "aria-valuemax"?: number | undefined;
122
+ "aria-valuemin"?: number | undefined;
123
+ "aria-valuenow"?: number | undefined;
124
+ "aria-valuetext"?: string | undefined;
125
+ dangerouslySetInnerHTML?: {
126
+ __html: string | TrustedHTML;
127
+ } | undefined;
128
+ onCopy?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
129
+ onCopyCapture?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
130
+ onCut?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
131
+ onCutCapture?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
132
+ onPaste?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
133
+ onPasteCapture?: import("react").ClipboardEventHandler<HTMLDivElement> | undefined;
134
+ onCompositionEnd?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
135
+ onCompositionEndCapture?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
136
+ onCompositionStart?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
137
+ onCompositionStartCapture?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
138
+ onCompositionUpdate?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
139
+ onCompositionUpdateCapture?: import("react").CompositionEventHandler<HTMLDivElement> | undefined;
140
+ onFocus?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
141
+ onFocusCapture?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
142
+ onBlur?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
143
+ onBlurCapture?: import("react").FocusEventHandler<HTMLDivElement> | undefined;
144
+ onChangeCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
145
+ onBeforeInput?: import("react").FormEventHandler<HTMLDivElement> | undefined;
146
+ onBeforeInputCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
147
+ onInput?: import("react").FormEventHandler<HTMLDivElement> | undefined;
148
+ onInputCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
149
+ onReset?: import("react").FormEventHandler<HTMLDivElement> | undefined;
150
+ onResetCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
151
+ onSubmit?: import("react").FormEventHandler<HTMLDivElement> | undefined;
152
+ onSubmitCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
153
+ onInvalid?: import("react").FormEventHandler<HTMLDivElement> | undefined;
154
+ onInvalidCapture?: import("react").FormEventHandler<HTMLDivElement> | undefined;
155
+ onLoad?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
156
+ onLoadCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
157
+ onError?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
158
+ onErrorCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
159
+ onKeyDown?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
160
+ onKeyDownCapture?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
161
+ onKeyPress?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
162
+ onKeyPressCapture?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
163
+ onKeyUp?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
164
+ onKeyUpCapture?: import("react").KeyboardEventHandler<HTMLDivElement> | undefined;
165
+ onAbort?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
166
+ onAbortCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
167
+ onCanPlay?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
168
+ onCanPlayCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
169
+ onCanPlayThrough?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
170
+ onCanPlayThroughCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
171
+ onDurationChange?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
172
+ onDurationChangeCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
173
+ onEmptied?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
174
+ onEmptiedCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
175
+ onEncrypted?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
176
+ onEncryptedCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
177
+ onEnded?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
178
+ onEndedCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
179
+ onLoadedData?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
180
+ onLoadedDataCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
181
+ onLoadedMetadata?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
182
+ onLoadedMetadataCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
183
+ onLoadStart?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
184
+ onLoadStartCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
185
+ onPause?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
186
+ onPauseCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
187
+ onPlay?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
188
+ onPlayCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
189
+ onPlaying?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
190
+ onPlayingCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
191
+ onProgress?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
192
+ onProgressCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
193
+ onRateChange?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
194
+ onRateChangeCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
195
+ onResize?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
196
+ onResizeCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
197
+ onSeeked?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
198
+ onSeekedCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
199
+ onSeeking?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
200
+ onSeekingCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
201
+ onStalled?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
202
+ onStalledCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
203
+ onSuspend?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
204
+ onSuspendCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
205
+ onTimeUpdate?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
206
+ onTimeUpdateCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
207
+ onVolumeChange?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
208
+ onVolumeChangeCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
209
+ onWaiting?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
210
+ onWaitingCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
211
+ onAuxClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
212
+ onAuxClickCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
213
+ onClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
214
+ onClickCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
215
+ onContextMenu?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
216
+ onContextMenuCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
217
+ onDoubleClick?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
218
+ onDoubleClickCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
219
+ onDrag?: import("react").DragEventHandler<HTMLDivElement> | undefined;
220
+ onDragCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
221
+ onDragEnd?: import("react").DragEventHandler<HTMLDivElement> | undefined;
222
+ onDragEndCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
223
+ onDragEnter?: import("react").DragEventHandler<HTMLDivElement> | undefined;
224
+ onDragEnterCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
225
+ onDragExit?: import("react").DragEventHandler<HTMLDivElement> | undefined;
226
+ onDragExitCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
227
+ onDragLeave?: import("react").DragEventHandler<HTMLDivElement> | undefined;
228
+ onDragLeaveCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
229
+ onDragOver?: import("react").DragEventHandler<HTMLDivElement> | undefined;
230
+ onDragOverCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
231
+ onDragStart?: import("react").DragEventHandler<HTMLDivElement> | undefined;
232
+ onDragStartCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
233
+ onDrop?: import("react").DragEventHandler<HTMLDivElement> | undefined;
234
+ onDropCapture?: import("react").DragEventHandler<HTMLDivElement> | undefined;
235
+ onMouseDown?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
236
+ onMouseDownCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
237
+ onMouseEnter?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
238
+ onMouseLeave?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
239
+ onMouseMove?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
240
+ onMouseMoveCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
241
+ onMouseOut?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
242
+ onMouseOutCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
243
+ onMouseOver?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
244
+ onMouseOverCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
245
+ onMouseUp?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
246
+ onMouseUpCapture?: import("react").MouseEventHandler<HTMLDivElement> | undefined;
247
+ onSelect?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
248
+ onSelectCapture?: import("react").ReactEventHandler<HTMLDivElement> | undefined;
249
+ onTouchCancel?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
250
+ onTouchCancelCapture?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
251
+ onTouchEnd?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
252
+ onTouchEndCapture?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
253
+ onTouchMove?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
254
+ onTouchMoveCapture?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
255
+ onTouchStart?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
256
+ onTouchStartCapture?: import("react").TouchEventHandler<HTMLDivElement> | undefined;
257
+ onPointerDown?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
258
+ onPointerDownCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
259
+ onPointerMove?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
260
+ onPointerMoveCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
261
+ onPointerUp?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
262
+ onPointerUpCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
263
+ onPointerCancel?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
264
+ onPointerCancelCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
265
+ onPointerEnter?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
266
+ onPointerLeave?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
267
+ onPointerOver?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
268
+ onPointerOverCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
269
+ onPointerOut?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
270
+ onPointerOutCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
271
+ onGotPointerCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
272
+ onGotPointerCaptureCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
273
+ onLostPointerCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
274
+ onLostPointerCaptureCapture?: import("react").PointerEventHandler<HTMLDivElement> | undefined;
275
+ onScroll?: import("react").UIEventHandler<HTMLDivElement> | undefined;
276
+ onScrollCapture?: import("react").UIEventHandler<HTMLDivElement> | undefined;
277
+ onWheel?: import("react").WheelEventHandler<HTMLDivElement> | undefined;
278
+ onWheelCapture?: import("react").WheelEventHandler<HTMLDivElement> | undefined;
279
+ onAnimationStart?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
280
+ onAnimationStartCapture?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
281
+ onAnimationEnd?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
282
+ onAnimationEndCapture?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
283
+ onAnimationIteration?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
284
+ onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLDivElement> | undefined;
285
+ onToggle?: import("react").ToggleEventHandler<HTMLDivElement> | undefined;
286
+ onBeforeToggle?: import("react").ToggleEventHandler<HTMLDivElement> | undefined;
287
+ onTransitionCancel?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
288
+ onTransitionCancelCapture?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
289
+ onTransitionEnd?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
290
+ onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
291
+ onTransitionRun?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
292
+ onTransitionRunCapture?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
293
+ onTransitionStart?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
294
+ onTransitionStartCapture?: import("react").TransitionEventHandler<HTMLDivElement> | undefined;
16
295
  label: import("react").ReactNode;
17
296
  description: import("react").ReactNode;
18
297
  error: import("react").ReactNode;
19
298
  required: boolean | undefined;
20
299
  classNames: Partial<Record<string, string>> | ((theme: import("../../core").MantineTheme, props: any, ctx: unknown) => Partial<Record<string, string>>) | undefined;
21
- className: string | undefined;
22
300
  __staticSelector: string | undefined;
23
301
  __stylesApiProps: Record<string, any>;
24
302
  errorProps: Record<string, any> | undefined;
@@ -27,12 +305,10 @@ export declare function useInputProps<T extends BaseProps, U extends Partial<T>>
27
305
  unstyled: boolean | undefined;
28
306
  styles: Partial<Record<string, import("../../core").CSSProperties>> | ((theme: import("../../core").MantineTheme, props: any, ctx: unknown) => Partial<Record<string, import("../../core").CSSProperties>>) | undefined;
29
307
  size: (string & {}) | import("../../core").MantineSize | undefined;
30
- style: import("../../core").MantineStyleProp;
31
308
  inputContainer: ((children: React.ReactNode) => React.ReactNode) | undefined;
32
- inputWrapperOrder: ("input" | "label" | "error" | "description")[] | undefined;
309
+ inputWrapperOrder: ("input" | "label" | "description" | "error")[] | undefined;
33
310
  withAsterisk: boolean | undefined;
34
311
  variant: string | undefined;
35
- id: string | undefined;
36
312
  mod: import("../../core").BoxMod | undefined;
37
313
  } & BoxProps;
38
314
  inputProps: {
@@ -1,10 +1,10 @@
1
- import { BoxProps, PolymorphicFactory, StylesApiProps } from '../../core';
1
+ import { BoxProps, DataAttributes, PolymorphicFactory, StylesApiProps } from '../../core';
2
2
  import { __BaseInputProps, __InputStylesNames, InputVariant } from '../Input';
3
3
  export interface InputBaseProps extends BoxProps, __BaseInputProps, StylesApiProps<InputBaseFactory> {
4
4
  __staticSelector?: string;
5
5
  __stylesApiProps?: Record<string, any>;
6
6
  /** Props passed down to the root element (`Input.Wrapper` component) */
7
- wrapperProps?: Record<string, any>;
7
+ wrapperProps?: React.ComponentPropsWithoutRef<'div'> & DataAttributes;
8
8
  /** Determines whether the input can have multiple lines, for example when `component="textarea"`, `false` by default */
9
9
  multiline?: boolean;
10
10
  /** Determines whether `aria-` and other accessibility attributes should be added to the input, `true` by default */
@@ -1,11 +1,11 @@
1
1
  import { BoxProps, ElementProps, Factory, MantineSize, StylesApiProps } from '../../core';
2
2
  export type KbdStylesNames = 'root';
3
3
  export type KbdCssVariables = {
4
- root: '--kbd-padding' | '--kbd-fz';
4
+ root: '--kbd-fz';
5
5
  };
6
6
  export interface KbdProps extends BoxProps, StylesApiProps<KbdFactory>, ElementProps<'kbd'> {
7
- /** Controls font-size and padding, `'sm'` by default */
8
- size?: MantineSize | (string & {});
7
+ /** Controls `font-size` and `padding`, `'sm'` by default */
8
+ size?: MantineSize | number | (string & {});
9
9
  }
10
10
  export type KbdFactory = Factory<{
11
11
  props: KbdProps;
@@ -6,8 +6,6 @@ interface MenuContext {
6
6
  closeDropdown: () => void;
7
7
  openDropdown: () => void;
8
8
  getItemIndex: (node: HTMLButtonElement) => number | null;
9
- setHovered: (index: number | null) => void;
10
- hovered: number | null;
11
9
  closeOnItemClick: boolean | undefined;
12
10
  loop: boolean | undefined;
13
11
  trigger: 'click' | 'hover' | 'click-hover' | undefined;
@@ -1,9 +1,9 @@
1
1
  import { ExtendComponent, Factory, StylesApiProps } from '../../core';
2
2
  import { __PopoverProps, PopoverStylesNames } from '../Popover';
3
- export type MenuStylesNames = 'item' | 'itemLabel' | 'itemSection' | 'label' | 'divider' | PopoverStylesNames;
3
+ import { MenuSub } from './MenuSub/MenuSub';
4
+ export type MenuStylesNames = 'item' | 'itemLabel' | 'itemSection' | 'label' | 'divider' | 'chevron' | PopoverStylesNames;
4
5
  export type MenuFactory = Factory<{
5
6
  props: MenuProps;
6
- ref: HTMLDivElement;
7
7
  stylesNames: MenuStylesNames;
8
8
  }>;
9
9
  export interface MenuProps extends __PopoverProps, StylesApiProps<MenuFactory> {
@@ -49,7 +49,6 @@ export declare function Menu(_props: MenuProps): import("react/jsx-runtime").JSX
49
49
  export declare namespace Menu {
50
50
  var extend: (input: ExtendComponent<MenuFactory>) => import("../../core/factory/factory").ExtendsRootComponent<{
51
51
  props: MenuProps;
52
- ref: HTMLDivElement;
53
52
  stylesNames: MenuStylesNames;
54
53
  }>;
55
54
  var classes: Record<string, string>;
@@ -100,4 +99,5 @@ export declare namespace Menu {
100
99
  stylesNames: import("./MenuDivider/MenuDivider").MenuDividerStylesNames;
101
100
  compound: true;
102
101
  }>;
102
+ var Sub: typeof MenuSub;
103
103
  }
@@ -0,0 +1,13 @@
1
+ interface SubMenuContext {
2
+ opened: boolean;
3
+ close: () => void;
4
+ open: () => void;
5
+ focusFirstItem: () => void;
6
+ focusParentItem: () => void;
7
+ parentContext: SubMenuContext | null;
8
+ }
9
+ export declare const SubMenuProvider: ({ children, value }: {
10
+ value: SubMenuContext;
11
+ children: React.ReactNode;
12
+ }) => import("react/jsx-runtime").JSX.Element, useSubMenuContext: () => SubMenuContext | null;
13
+ export {};
@@ -0,0 +1,53 @@
1
+ import { ExtendComponent, Factory } from '../../../core';
2
+ import { __PopoverProps } from '../../Popover';
3
+ import { MenuSubTarget } from '../MenuSubTarget/MenuSubTarget';
4
+ export type MenuSubFactory = Factory<{
5
+ props: MenuSubProps;
6
+ }>;
7
+ interface MenuSubProps extends __PopoverProps {
8
+ children: React.ReactNode;
9
+ /** Close delay in ms */
10
+ closeDelay?: number;
11
+ }
12
+ export declare function MenuSub(_props: MenuSubProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare namespace MenuSub {
14
+ var extend: (input: ExtendComponent<MenuSubFactory>) => import("../../../core/factory/factory").ExtendsRootComponent<{
15
+ props: MenuSubProps;
16
+ }>;
17
+ var displayName: string;
18
+ var Target: typeof MenuSubTarget;
19
+ var Dropdown: import("../../../core").MantineComponent<{
20
+ props: import("../MenuSubDropdown/MenuSubDropdown").MenuSubDropdownProps;
21
+ ref: HTMLDivElement;
22
+ stylesNames: import("../MenuSubDropdown/MenuSubDropdown").MenuSubDropdownStylesNames;
23
+ compound: true;
24
+ }>;
25
+ var Item: (<C = "button">(props: import("../../../core").PolymorphicComponentProps<C, import("../MenuSubItem/MenuSubItem").MenuSubItemProps>) => React.ReactElement) & Omit<import("react").FunctionComponent<(import("../MenuSubItem/MenuSubItem").MenuSubItemProps & {
26
+ component?: any;
27
+ } & Omit<Omit<any, "ref">, "component" | keyof import("../MenuSubItem/MenuSubItem").MenuSubItemProps> & {
28
+ ref?: any;
29
+ renderRoot?: (props: any) => any;
30
+ }) | (import("../MenuSubItem/MenuSubItem").MenuSubItemProps & {
31
+ component: React.ElementType;
32
+ renderRoot?: (props: Record<string, any>) => any;
33
+ })>, never> & import("../../../core/factory/factory").ThemeExtend<{
34
+ props: import("../MenuSubItem/MenuSubItem").MenuSubItemProps;
35
+ defaultRef: HTMLButtonElement;
36
+ defaultComponent: "button";
37
+ stylesNames: import("../MenuSubItem/MenuSubItem").MenuSubItemStylesNames;
38
+ compound: true;
39
+ }> & import("../../../core/factory/factory").ComponentClasses<{
40
+ props: import("../MenuSubItem/MenuSubItem").MenuSubItemProps;
41
+ defaultRef: HTMLButtonElement;
42
+ defaultComponent: "button";
43
+ stylesNames: import("../MenuSubItem/MenuSubItem").MenuSubItemStylesNames;
44
+ compound: true;
45
+ }> & import("../../../core/factory/polymorphic-factory").PolymorphicComponentWithProps<{
46
+ props: import("../MenuSubItem/MenuSubItem").MenuSubItemProps;
47
+ defaultRef: HTMLButtonElement;
48
+ defaultComponent: "button";
49
+ stylesNames: import("../MenuSubItem/MenuSubItem").MenuSubItemStylesNames;
50
+ compound: true;
51
+ }> & Record<string, never>;
52
+ }
53
+ export {};
@@ -0,0 +1,16 @@
1
+ import { BoxProps, CompoundStylesApiProps, ElementProps, Factory } from '../../../core';
2
+ export type MenuSubDropdownStylesNames = 'dropdown';
3
+ export interface MenuSubDropdownProps extends BoxProps, CompoundStylesApiProps<MenuSubDropdownFactory>, ElementProps<'div'> {
4
+ }
5
+ export type MenuSubDropdownFactory = Factory<{
6
+ props: MenuSubDropdownProps;
7
+ ref: HTMLDivElement;
8
+ stylesNames: MenuSubDropdownStylesNames;
9
+ compound: true;
10
+ }>;
11
+ export declare const MenuSubDropdown: import("../../../core").MantineComponent<{
12
+ props: MenuSubDropdownProps;
13
+ ref: HTMLDivElement;
14
+ stylesNames: MenuSubDropdownStylesNames;
15
+ compound: true;
16
+ }>;
@@ -0,0 +1,51 @@
1
+ import { BoxProps, CompoundStylesApiProps, MantineColor, PolymorphicFactory } from '../../../core';
2
+ export type MenuSubItemStylesNames = 'item' | 'itemLabel' | 'itemSection';
3
+ export interface MenuSubItemProps extends BoxProps, CompoundStylesApiProps<MenuSubItemFactory> {
4
+ 'data-disabled'?: boolean;
5
+ /** Item label */
6
+ children?: React.ReactNode;
7
+ /** Key of `theme.colors` or any valid CSS color */
8
+ color?: MantineColor;
9
+ /** Section displayed on the left side of the label */
10
+ leftSection?: React.ReactNode;
11
+ /** Section displayed on the right side of the label */
12
+ rightSection?: React.ReactNode;
13
+ /** Disables item */
14
+ disabled?: boolean;
15
+ /** Determines whether the menu should be closed when the item is clicked, `false` by default */
16
+ closeMenuOnClick?: boolean;
17
+ }
18
+ export type MenuSubItemFactory = PolymorphicFactory<{
19
+ props: MenuSubItemProps;
20
+ defaultRef: HTMLButtonElement;
21
+ defaultComponent: 'button';
22
+ stylesNames: MenuSubItemStylesNames;
23
+ compound: true;
24
+ }>;
25
+ export declare const MenuSubItem: (<C = "button">(props: import("../../../core").PolymorphicComponentProps<C, MenuSubItemProps>) => React.ReactElement) & Omit<import("react").FunctionComponent<(MenuSubItemProps & {
26
+ component?: any;
27
+ } & Omit<Omit<any, "ref">, "component" | keyof MenuSubItemProps> & {
28
+ ref?: any;
29
+ renderRoot?: (props: any) => any;
30
+ }) | (MenuSubItemProps & {
31
+ component: React.ElementType;
32
+ renderRoot?: (props: Record<string, any>) => any;
33
+ })>, never> & import("../../../core/factory/factory").ThemeExtend<{
34
+ props: MenuSubItemProps;
35
+ defaultRef: HTMLButtonElement;
36
+ defaultComponent: "button";
37
+ stylesNames: MenuSubItemStylesNames;
38
+ compound: true;
39
+ }> & import("../../../core/factory/factory").ComponentClasses<{
40
+ props: MenuSubItemProps;
41
+ defaultRef: HTMLButtonElement;
42
+ defaultComponent: "button";
43
+ stylesNames: MenuSubItemStylesNames;
44
+ compound: true;
45
+ }> & import("../../../core/factory/polymorphic-factory").PolymorphicComponentWithProps<{
46
+ props: MenuSubItemProps;
47
+ defaultRef: HTMLButtonElement;
48
+ defaultComponent: "button";
49
+ stylesNames: MenuSubItemStylesNames;
50
+ compound: true;
51
+ }> & Record<string, never>;
@@ -0,0 +1,10 @@
1
+ export interface MenuSubTargetProps {
2
+ /** Target element */
3
+ children: React.ReactNode;
4
+ /** Key of the prop that should be used to get element ref */
5
+ refProp?: string;
6
+ }
7
+ export declare function MenuSubTarget({ children, refProp }: MenuSubTargetProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare namespace MenuSubTarget {
9
+ var displayName: string;
10
+ }
@@ -29,6 +29,7 @@ interface PopoverContext {
29
29
  radius?: MantineRadius | undefined;
30
30
  shadow?: MantineShadow | undefined;
31
31
  onClose?: () => void;
32
+ onDismiss?: () => void;
32
33
  getDropdownId: () => string;
33
34
  getTargetId: () => string;
34
35
  controlled: boolean;
@@ -46,6 +47,7 @@ interface PopoverContext {
46
47
  getStyles: GetStylesApi<PopoverFactory>;
47
48
  resolvedStyles: Record<string, any>;
48
49
  floatingStrategy: FloatingStrategy | undefined;
50
+ referenceHidden: boolean | undefined;
49
51
  }
50
52
  export declare const PopoverContextProvider: ({ children, value }: {
51
53
  value: PopoverContext;