@koobiq/react-components 0.0.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +43 -0
- package/dist/components/Alert/Alert.d.ts +4 -0
- package/dist/components/Alert/Alert.js +78 -0
- package/dist/components/Alert/Alert.module.css.js +41 -0
- package/dist/components/Alert/components/AlertIcon/AlertIcon.d.ts +2 -0
- package/dist/components/Alert/components/AlertIcon/AlertIcon.js +19 -0
- package/dist/components/Alert/components/AlertIcon/AlertIcon.module.css.js +23 -0
- package/dist/components/Alert/components/AlertIcon/index.d.ts +1 -0
- package/dist/components/Alert/components/AlertIcon/types.d.ts +2 -0
- package/dist/components/Alert/components/AlertIcon/utils.d.ts +14 -0
- package/dist/components/Alert/components/AlertIcon/utils.js +23 -0
- package/dist/components/Alert/components/index.d.ts +1 -0
- package/dist/components/Alert/index.d.ts +2 -0
- package/dist/components/Alert/intl.json.js +11 -0
- package/dist/components/Alert/types.d.ts +43 -0
- package/dist/components/Alert/types.js +4 -0
- package/dist/components/Backdrop/Backdrop.d.ts +4 -0
- package/dist/components/Backdrop/Backdrop.js +52 -0
- package/dist/components/Backdrop/Backdrop.module.css.js +8 -0
- package/dist/components/Backdrop/index.d.ts +2 -0
- package/dist/components/Backdrop/types.d.ts +16 -0
- package/dist/components/Badge/Badge.d.ts +4 -0
- package/dist/components/Badge/Badge.js +32 -0
- package/dist/components/Badge/Badge.module.css.js +42 -0
- package/dist/components/Badge/index.d.ts +2 -0
- package/dist/components/Badge/types.d.ts +20 -0
- package/dist/components/Badge/types.js +22 -0
- package/dist/components/Button/Button.d.ts +4 -0
- package/dist/components/Button/Button.js +66 -0
- package/dist/components/Button/Button.module.css.js +44 -0
- package/dist/components/Button/index.d.ts +2 -0
- package/dist/components/Button/types.d.ts +47 -0
- package/dist/components/Button/types.js +11 -0
- package/dist/components/Checkbox/Checkbox.d.ts +19 -0
- package/dist/components/Checkbox/Checkbox.js +64 -0
- package/dist/components/Checkbox/Checkbox.module.css.js +41 -0
- package/dist/components/Checkbox/index.d.ts +2 -0
- package/dist/components/Checkbox/types.d.ts +27 -0
- package/dist/components/Checkbox/types.js +6 -0
- package/dist/components/Container/Container.d.ts +4 -0
- package/dist/components/Container/Container.js +45 -0
- package/dist/components/Container/Container.module.css.js +8 -0
- package/dist/components/Container/index.d.ts +2 -0
- package/dist/components/Container/types.d.ts +32 -0
- package/dist/components/Container/types.js +21 -0
- package/dist/components/Container/utils.d.ts +4 -0
- package/dist/components/Container/utils.js +19 -0
- package/dist/components/Dialog/Dialog.d.ts +2 -0
- package/dist/components/Dialog/Dialog.js +67 -0
- package/dist/components/Dialog/Dialog.module.css.js +23 -0
- package/dist/components/Dialog/DialogContext.d.ts +9 -0
- package/dist/components/Dialog/DialogContext.js +12 -0
- package/dist/components/Dialog/components/DialogCloseButton.d.ts +9 -0
- package/dist/components/Dialog/components/DialogCloseButton.js +30 -0
- package/dist/components/Dialog/components/DialogContent.d.ts +12 -0
- package/dist/components/Dialog/components/DialogContent.js +30 -0
- package/dist/components/Dialog/components/DialogFooter.d.ts +12 -0
- package/dist/components/Dialog/components/DialogFooter.js +12 -0
- package/dist/components/Dialog/components/DialoglHeader.d.ts +12 -0
- package/dist/components/Dialog/components/DialoglHeader.js +21 -0
- package/dist/components/Dialog/components/index.d.ts +4 -0
- package/dist/components/Dialog/index.d.ts +4 -0
- package/dist/components/Dialog/intl.json.js +11 -0
- package/dist/components/Dialog/types.d.ts +26 -0
- package/dist/components/FieldComponents/FieldAddon/FieldAddon.d.ts +10 -0
- package/dist/components/FieldComponents/FieldAddon/FieldAddon.js +19 -0
- package/dist/components/FieldComponents/FieldAddon/FieldAddon.module.css.js +17 -0
- package/dist/components/FieldComponents/FieldAddon/index.d.ts +1 -0
- package/dist/components/FieldComponents/FieldCaption/FieldCaption.d.ts +8 -0
- package/dist/components/FieldComponents/FieldCaption/FieldCaption.js +21 -0
- package/dist/components/FieldComponents/FieldCaption/FieldCaption.module.css.js +8 -0
- package/dist/components/FieldComponents/FieldCaption/index.d.ts +1 -0
- package/dist/components/FieldComponents/FieldControl/FieldControl.d.ts +10 -0
- package/dist/components/FieldComponents/FieldControl/FieldControl.js +20 -0
- package/dist/components/FieldComponents/FieldControl/FieldControl.module.css.js +11 -0
- package/dist/components/FieldComponents/FieldControl/index.d.ts +1 -0
- package/dist/components/FieldComponents/FieldError/FieldError.d.ts +6 -0
- package/dist/components/FieldComponents/FieldError/FieldError.js +21 -0
- package/dist/components/FieldComponents/FieldError/FieldError.module.css.js +8 -0
- package/dist/components/FieldComponents/FieldError/index.d.ts +1 -0
- package/dist/components/FieldComponents/FieldInput/FieldInput.d.ts +12 -0
- package/dist/components/FieldComponents/FieldInput/FieldInput.js +34 -0
- package/dist/components/FieldComponents/FieldInput/FieldInput.module.css.js +20 -0
- package/dist/components/FieldComponents/FieldInput/index.d.ts +1 -0
- package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroup.d.ts +11 -0
- package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroup.js +41 -0
- package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroup.module.css.js +14 -0
- package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroupContext.d.ts +8 -0
- package/dist/components/FieldComponents/FieldInputGroup/FieldInputGroupContext.js +7 -0
- package/dist/components/FieldComponents/FieldInputGroup/index.d.ts +2 -0
- package/dist/components/FieldComponents/FieldLabel/FieldLabel.d.ts +9 -0
- package/dist/components/FieldComponents/FieldLabel/FieldLabel.js +24 -0
- package/dist/components/FieldComponents/FieldLabel/FieldLabel.module.css.js +14 -0
- package/dist/components/FieldComponents/FieldLabel/index.d.ts +1 -0
- package/dist/components/FieldComponents/FieldNumberControl/FieldNumberControl.d.ts +10 -0
- package/dist/components/FieldComponents/FieldNumberControl/FieldNumberControl.js +18 -0
- package/dist/components/FieldComponents/FieldNumberControl/FieldNumberControl.module.css.js +11 -0
- package/dist/components/FieldComponents/FieldNumberControl/index.d.ts +1 -0
- package/dist/components/FieldComponents/index.d.ts +8 -0
- package/dist/components/FormControlLabel/FormControlLabel.d.ts +2 -0
- package/dist/components/FormControlLabel/index.d.ts +2 -0
- package/dist/components/FormControlLabel/types.d.ts +32 -0
- package/dist/components/Grid/Grid.d.ts +4 -0
- package/dist/components/Grid/Grid.js +52 -0
- package/dist/components/Grid/Grid.module.css.js +8 -0
- package/dist/components/Grid/components/GridItem/GridItem.d.ts +4 -0
- package/dist/components/Grid/components/GridItem/GridItem.js +52 -0
- package/dist/components/Grid/components/GridItem/GridItem.module.css.js +8 -0
- package/dist/components/Grid/components/GridItem/index.d.ts +2 -0
- package/dist/components/Grid/components/GridItem/types.d.ts +22 -0
- package/dist/components/Grid/components/index.d.ts +1 -0
- package/dist/components/Grid/index.d.ts +3 -0
- package/dist/components/Grid/types.d.ts +30 -0
- package/dist/components/Grid/types.js +19 -0
- package/dist/components/Grid/utils.d.ts +2 -0
- package/dist/components/Grid/utils.js +8 -0
- package/dist/components/IconButton/IconButton.d.ts +4 -0
- package/dist/components/IconButton/IconButton.js +51 -0
- package/dist/components/IconButton/IconButton.module.css.js +43 -0
- package/dist/components/IconButton/index.d.ts +2 -0
- package/dist/components/IconButton/types.d.ts +36 -0
- package/dist/components/IconButton/types.js +13 -0
- package/dist/components/Input/Input.d.ts +22 -0
- package/dist/components/Input/Input.js +70 -0
- package/dist/components/Input/components/FieldAddon/FieldAddon.d.ts +10 -0
- package/dist/components/Input/components/FieldAddon/index.d.ts +1 -0
- package/dist/components/Input/components/FieldCaption/FieldCaption.d.ts +6 -0
- package/dist/components/Input/components/FieldCaption/index.d.ts +1 -0
- package/dist/components/Input/components/FieldControl/FieldControl.d.ts +9 -0
- package/dist/components/Input/components/FieldControl/index.d.ts +1 -0
- package/dist/components/Input/components/FieldError/FieldError.d.ts +7 -0
- package/dist/components/Input/components/FieldError/index.d.ts +1 -0
- package/dist/components/Input/components/FieldInput/FieldInput.d.ts +9 -0
- package/dist/components/Input/components/FieldInput/index.d.ts +1 -0
- package/dist/components/Input/components/FieldInputGroup/FieldInputGroup.d.ts +7 -0
- package/dist/components/Input/components/FieldInputGroup/index.d.ts +1 -0
- package/dist/components/Input/components/FieldLabel/FieldLabel.d.ts +9 -0
- package/dist/components/Input/components/FieldLabel/index.d.ts +1 -0
- package/dist/components/Input/components/index.d.ts +7 -0
- package/dist/components/Input/index.d.ts +2 -0
- package/dist/components/Input/types.d.ts +62 -0
- package/dist/components/Input/types.js +4 -0
- package/dist/components/InputNumber/InputNumber.d.ts +22 -0
- package/dist/components/InputNumber/InputNumber.js +72 -0
- package/dist/components/InputNumber/components/InputNumberCounterControls.d.ts +1 -0
- package/dist/components/InputNumber/components/InputNumberCounterControls.js +37 -0
- package/dist/components/InputNumber/components/InputNumberCounterControls.module.css.js +14 -0
- package/dist/components/InputNumber/components/index.d.ts +1 -0
- package/dist/components/InputNumber/index.d.ts +2 -0
- package/dist/components/InputNumber/types.d.ts +62 -0
- package/dist/components/InputNumber/types.js +4 -0
- package/dist/components/Link/Link.d.ts +4 -0
- package/dist/components/Link/Link.js +54 -0
- package/dist/components/Link/Link.module.css.js +32 -0
- package/dist/components/Link/index.d.ts +2 -0
- package/dist/components/Link/types.d.ts +25 -0
- package/dist/components/Modal/Modal.d.ts +2 -0
- package/dist/components/Modal/Modal.js +121 -0
- package/dist/components/Modal/Modal.module.css.js +20 -0
- package/dist/components/Modal/index.d.ts +4 -0
- package/dist/components/Modal/types.d.ts +68 -0
- package/dist/components/Modal/types.js +4 -0
- package/dist/components/Popover/Popover.d.ts +2 -0
- package/dist/components/Popover/Popover.js +147 -0
- package/dist/components/Popover/Popover.module.css.js +17 -0
- package/dist/components/Popover/index.d.ts +4 -0
- package/dist/components/Popover/types.d.ts +97 -0
- package/dist/components/Popover/types.js +19 -0
- package/dist/components/Popover/utils.d.ts +2 -0
- package/dist/components/Popover/utils.js +11 -0
- package/dist/components/ProgressBar/ProgressBar.d.ts +2 -0
- package/dist/components/ProgressBar/ProgressBar.js +57 -0
- package/dist/components/ProgressBar/ProgressBar.module.css.js +15 -0
- package/dist/components/ProgressBar/index.d.ts +2 -0
- package/dist/components/ProgressBar/types.d.ts +34 -0
- package/dist/components/ProgressBar/types.js +4 -0
- package/dist/components/ProgressSpinner/ProgressSpinner.d.ts +2 -0
- package/dist/components/ProgressSpinner/ProgressSpinner.js +68 -0
- package/dist/components/ProgressSpinner/ProgressSpinner.module.css.js +18 -0
- package/dist/components/ProgressSpinner/index.d.ts +2 -0
- package/dist/components/ProgressSpinner/types.d.ts +41 -0
- package/dist/components/ProgressSpinner/types.js +9 -0
- package/dist/components/ProgressSpinner/utils.d.ts +2 -0
- package/dist/components/ProgressSpinner/utils.js +18 -0
- package/dist/components/Provider/BreakpointsContext.d.ts +5 -0
- package/dist/components/Provider/BreakpointsContext.js +17 -0
- package/dist/components/Provider/BreakpointsProvider.d.ts +10 -0
- package/dist/components/Provider/BreakpointsProvider.js +15 -0
- package/dist/components/Provider/Provider.d.ts +6 -0
- package/dist/components/Provider/Provider.js +29 -0
- package/dist/components/Provider/ProviderContext.d.ts +3 -0
- package/dist/components/Provider/ProviderContext.js +12 -0
- package/dist/components/Provider/index.d.ts +5 -0
- package/dist/components/Provider/types.d.ts +16 -0
- package/dist/components/Provider/utils/index.d.ts +1 -0
- package/dist/components/Provider/utils/useBreakpoints.d.ts +2 -0
- package/dist/components/Provider/utils/useBreakpoints.js +15 -0
- package/dist/components/Provider/utils/useMatchedBreakpoints.d.ts +2 -0
- package/dist/components/RadioGroup/RadioContext.d.ts +6 -0
- package/dist/components/RadioGroup/RadioContext.js +9 -0
- package/dist/components/RadioGroup/RadioGroup.d.ts +2 -0
- package/dist/components/RadioGroup/RadioGroup.js +35 -0
- package/dist/components/RadioGroup/components/Radio/Radio.d.ts +12 -0
- package/dist/components/RadioGroup/components/Radio/Radio.js +44 -0
- package/dist/components/RadioGroup/components/Radio/Radio.module.css.js +38 -0
- package/dist/components/RadioGroup/components/Radio/index.d.ts +2 -0
- package/dist/components/RadioGroup/components/Radio/types.d.ts +27 -0
- package/dist/components/RadioGroup/components/Radio/types.js +6 -0
- package/dist/components/RadioGroup/components/RadioGroupDescription/RadioGroupDescription.d.ts +7 -0
- package/dist/components/RadioGroup/components/RadioGroupDescription/RadioGroupDescription.js +21 -0
- package/dist/components/RadioGroup/components/RadioGroupDescription/index.d.ts +1 -0
- package/dist/components/RadioGroup/components/RadioGroupLabel/RadioGroupLabel.d.ts +6 -0
- package/dist/components/RadioGroup/components/RadioGroupLabel/RadioGroupLabel.js +14 -0
- package/dist/components/RadioGroup/components/RadioGroupLabel/index.d.ts +1 -0
- package/dist/components/RadioGroup/components/index.d.ts +3 -0
- package/dist/components/RadioGroup/index.d.ts +4 -0
- package/dist/components/RadioGroup/types.d.ts +37 -0
- package/dist/components/RadioGroup/types.js +6 -0
- package/dist/components/SidePanel/SidePanel.d.ts +2 -0
- package/dist/components/SidePanel/SidePanel.js +125 -0
- package/dist/components/SidePanel/SidePanel.module.css.js +26 -0
- package/dist/components/SidePanel/index.d.ts +4 -0
- package/dist/components/SidePanel/types.d.ts +75 -0
- package/dist/components/SidePanel/types.js +6 -0
- package/dist/components/SkeletonBlock/SkeletonBlock.d.ts +2 -0
- package/dist/components/SkeletonBlock/SkeletonBlock.js +37 -0
- package/dist/components/SkeletonBlock/SkeletonBlock.module.css.js +12 -0
- package/dist/components/SkeletonBlock/index.d.ts +2 -0
- package/dist/components/SkeletonBlock/types.d.ts +18 -0
- package/dist/components/SkeletonBlock/utils.d.ts +2 -0
- package/dist/components/SkeletonBlock/utils.js +8 -0
- package/dist/components/SkeletonTypography/SkeletonTypography.d.ts +2 -0
- package/dist/components/SkeletonTypography/SkeletonTypography.js +44 -0
- package/dist/components/SkeletonTypography/SkeletonTypography.module.css.js +14 -0
- package/dist/components/SkeletonTypography/index.d.ts +2 -0
- package/dist/components/SkeletonTypography/types.d.ts +25 -0
- package/dist/components/SkeletonTypography/utils.d.ts +2 -0
- package/dist/components/SkeletonTypography/utils.js +18 -0
- package/dist/components/Textarea/Textarea.d.ts +21 -0
- package/dist/components/Textarea/Textarea.js +51 -0
- package/dist/components/Textarea/Textarea.module.css.js +7 -0
- package/dist/components/Textarea/components/TextareaContextConsumer/TextareaContextConsumer.d.ts +6 -0
- package/dist/components/Textarea/components/TextareaContextConsumer/TextareaContextConsumer.js +58 -0
- package/dist/components/Textarea/components/TextareaContextConsumer/index.d.ts +1 -0
- package/dist/components/Textarea/components/index.d.ts +1 -0
- package/dist/components/Textarea/index.d.ts +2 -0
- package/dist/components/Textarea/types.d.ts +67 -0
- package/dist/components/Textarea/types.js +6 -0
- package/dist/components/Textarea/utils/index.d.ts +1 -0
- package/dist/components/Textarea/utils/useTextareaAutosize.d.ts +2 -0
- package/dist/components/Textarea/utils/useTextareaAutosize.js +15 -0
- package/dist/components/Toggle/Toggle.d.ts +16 -0
- package/dist/components/Toggle/Toggle.js +42 -0
- package/dist/components/Toggle/Toggle.module.css.js +38 -0
- package/dist/components/Toggle/index.d.ts +2 -0
- package/dist/components/Toggle/types.d.ts +25 -0
- package/dist/components/Toggle/types.js +6 -0
- package/dist/components/Tooltip/Tooltip.d.ts +20 -0
- package/dist/components/Tooltip/Tooltip.js +119 -0
- package/dist/components/Tooltip/Tooltip.module.css.js +30 -0
- package/dist/components/Tooltip/index.d.ts +2 -0
- package/dist/components/Tooltip/types.d.ts +81 -0
- package/dist/components/Tooltip/types.js +25 -0
- package/dist/components/Typography/Typography.d.ts +4 -0
- package/dist/components/Typography/Typography.js +46 -0
- package/dist/components/Typography/Typography.module.css.js +23 -0
- package/dist/components/Typography/index.d.ts +2 -0
- package/dist/components/Typography/types.d.ts +31 -0
- package/dist/components/Typography/types.js +84 -0
- package/dist/components/index.d.ts +24 -0
- package/dist/components/layout/flex/flex.d.ts +25 -0
- package/dist/components/layout/flex/flex.js +74 -0
- package/dist/components/layout/flex/flex.module.css.js +92 -0
- package/dist/components/layout/flex/index.d.ts +1 -0
- package/dist/components/layout/index.d.ts +2 -0
- package/dist/components/layout/spacing/index.d.ts +1 -0
- package/dist/components/layout/spacing/spacing.d.ts +33 -0
- package/dist/components/layout/spacing/spacing.js +44 -0
- package/dist/components/layout/spacing/spacing.module.css.js +365 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +152 -0
- package/dist/style.css +3329 -0
- package/dist/styles/utility.d.ts +71 -0
- package/dist/styles/utility.js +77 -0
- package/dist/styles/utility.module.css.js +76 -0
- package/dist/utils/getResponsiveValue/getResponsiveValue.d.ts +3 -0
- package/dist/utils/getResponsiveValue/getResponsiveValue.js +18 -0
- package/dist/utils/getResponsiveValue/index.d.ts +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/package.json +42 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { polymorphicForwardRef, clsx } from "@koobiq/react-core";
|
|
4
|
+
import s from "./Grid.module.css.js";
|
|
5
|
+
import { normalizeGap } from "./utils.js";
|
|
6
|
+
import { useMatchedBreakpoints } from "../Provider/BreakpointsContext.js";
|
|
7
|
+
import { getResponsiveValue } from "../../utils/getResponsiveValue/getResponsiveValue.js";
|
|
8
|
+
const Grid = polymorphicForwardRef(
|
|
9
|
+
({
|
|
10
|
+
as: Tag = "div",
|
|
11
|
+
gap: gapProp,
|
|
12
|
+
cols: colsProp,
|
|
13
|
+
style: styleProp,
|
|
14
|
+
colGap: colGapProp,
|
|
15
|
+
rowGap: rowGapProp,
|
|
16
|
+
alignItems: alignItemsProp,
|
|
17
|
+
justifyItems: justifyItemsProp,
|
|
18
|
+
children,
|
|
19
|
+
className,
|
|
20
|
+
...other
|
|
21
|
+
}, ref) => {
|
|
22
|
+
const breakpoints = useMatchedBreakpoints();
|
|
23
|
+
const cols = getResponsiveValue(colsProp, breakpoints);
|
|
24
|
+
const gap = getResponsiveValue(gapProp, breakpoints);
|
|
25
|
+
const colGap = getResponsiveValue(colGapProp, breakpoints);
|
|
26
|
+
const rowGap = getResponsiveValue(rowGapProp, breakpoints);
|
|
27
|
+
const alignItems = getResponsiveValue(alignItemsProp, breakpoints);
|
|
28
|
+
const justifyItems = getResponsiveValue(justifyItemsProp, breakpoints);
|
|
29
|
+
const style = {
|
|
30
|
+
...styleProp,
|
|
31
|
+
"--grid-cols": cols,
|
|
32
|
+
"--grid-col-gap": normalizeGap(colGap ?? gap),
|
|
33
|
+
"--grid-row-gap": normalizeGap(rowGap ?? gap),
|
|
34
|
+
"--grid-align-items": alignItems,
|
|
35
|
+
"--grid-justify-items": justifyItems
|
|
36
|
+
};
|
|
37
|
+
return /* @__PURE__ */ jsx(
|
|
38
|
+
Tag,
|
|
39
|
+
{
|
|
40
|
+
className: clsx(s.base, className),
|
|
41
|
+
style,
|
|
42
|
+
...other,
|
|
43
|
+
ref,
|
|
44
|
+
children
|
|
45
|
+
}
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
);
|
|
49
|
+
Grid.displayName = "Grid";
|
|
50
|
+
export {
|
|
51
|
+
Grid
|
|
52
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ComponentPropsWithRef, ElementType } from 'react';
|
|
2
|
+
import type { GridItemBaseProps } from './types';
|
|
3
|
+
export declare const GridItem: import("@koobiq/react-core").PolyForwardComponent<"div", GridItemBaseProps, ElementType>;
|
|
4
|
+
export type GridItemProps<As extends ElementType = 'div'> = ComponentPropsWithRef<typeof GridItem<As>>;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { polymorphicForwardRef, clsx } from "@koobiq/react-core";
|
|
4
|
+
import s from "./GridItem.module.css.js";
|
|
5
|
+
import { useMatchedBreakpoints } from "../../../Provider/BreakpointsContext.js";
|
|
6
|
+
import { getResponsiveValue } from "../../../../utils/getResponsiveValue/getResponsiveValue.js";
|
|
7
|
+
const GridItem = polymorphicForwardRef(
|
|
8
|
+
({
|
|
9
|
+
as: Tag = "div",
|
|
10
|
+
children,
|
|
11
|
+
className,
|
|
12
|
+
style: styleProp,
|
|
13
|
+
col: colProp,
|
|
14
|
+
row: rowProp,
|
|
15
|
+
colStart: colStartProp,
|
|
16
|
+
rowStart: rowStartProp,
|
|
17
|
+
alignSelf: alignSelfProp,
|
|
18
|
+
justifySelf: justifySelfProp,
|
|
19
|
+
...other
|
|
20
|
+
}, ref) => {
|
|
21
|
+
const breakpoints = useMatchedBreakpoints();
|
|
22
|
+
const col = getResponsiveValue(colProp, breakpoints);
|
|
23
|
+
const colStart = getResponsiveValue(colStartProp, breakpoints);
|
|
24
|
+
const row = getResponsiveValue(rowProp, breakpoints);
|
|
25
|
+
const rowStart = getResponsiveValue(rowStartProp, breakpoints);
|
|
26
|
+
const alignSelf = getResponsiveValue(alignSelfProp, breakpoints);
|
|
27
|
+
const justifySelf = getResponsiveValue(justifySelfProp, breakpoints);
|
|
28
|
+
const style = {
|
|
29
|
+
...styleProp,
|
|
30
|
+
"--grid-item-col-end": col,
|
|
31
|
+
"--grid-item-col-start": colStart ? `${colStart} / span` : void 0,
|
|
32
|
+
"--grid-item-row-end": row,
|
|
33
|
+
"--grid-item-row-start": rowStart ? `${rowStart} / span` : void 0,
|
|
34
|
+
"--grid-align-self": alignSelf,
|
|
35
|
+
"--grid-justify-self": justifySelf
|
|
36
|
+
};
|
|
37
|
+
return /* @__PURE__ */ jsx(
|
|
38
|
+
Tag,
|
|
39
|
+
{
|
|
40
|
+
style,
|
|
41
|
+
className: clsx(s.base, className),
|
|
42
|
+
...other,
|
|
43
|
+
ref,
|
|
44
|
+
children
|
|
45
|
+
}
|
|
46
|
+
);
|
|
47
|
+
}
|
|
48
|
+
);
|
|
49
|
+
GridItem.displayName = "GridItem";
|
|
50
|
+
export {
|
|
51
|
+
GridItem
|
|
52
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { CSSProperties, ReactNode } from 'react';
|
|
2
|
+
import type { ResponsiveValue } from '../../../../utils';
|
|
3
|
+
export type GridItemBaseProps = {
|
|
4
|
+
/** The number of columns an item spans. */
|
|
5
|
+
col?: number | ResponsiveValue<number>;
|
|
6
|
+
/** Move an item to a specific column. */
|
|
7
|
+
colStart?: number | ResponsiveValue<number>;
|
|
8
|
+
/** The number of rows an item spans. */
|
|
9
|
+
row?: number | ResponsiveValue<number>;
|
|
10
|
+
/** Move an item to a specific row. */
|
|
11
|
+
rowStart?: number | ResponsiveValue<number>;
|
|
12
|
+
/** The CSS justify-self property sets the way a box is justified inside its alignment container along the appropriate axis. */
|
|
13
|
+
justifySelf?: CSSProperties['justifySelf'] | ResponsiveValue<CSSProperties['justifySelf']>;
|
|
14
|
+
/** The align-self CSS property overrides a grid or flex item's align-items value. In Grid, it aligns the item inside the grid area. In Flexbox, it aligns the item on the cross axis. */
|
|
15
|
+
alignSelf?: CSSProperties['alignSelf'] | ResponsiveValue<CSSProperties['alignSelf']>;
|
|
16
|
+
/** Additional CSS-classes. */
|
|
17
|
+
className?: string;
|
|
18
|
+
/** The content of the component. */
|
|
19
|
+
children?: ReactNode;
|
|
20
|
+
/** Inline styles. */
|
|
21
|
+
style?: CSSProperties;
|
|
22
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './GridItem';
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { CSSProperties, ReactNode } from 'react';
|
|
2
|
+
import type { ResponsiveValue } from '../../utils';
|
|
3
|
+
export declare const gridPropGap: readonly [0, "3xs", "xxs", "xs", "s", "m", "l", "xl", "xxl", "3xl", "4xl", "5xl", "6xl", "7xl"];
|
|
4
|
+
export type GridPropGap = (typeof gridPropGap)[number];
|
|
5
|
+
export type GridBaseProps = {
|
|
6
|
+
/** Number of columns. */
|
|
7
|
+
cols?: number | ResponsiveValue<number>;
|
|
8
|
+
/** Size of gaps between columns and rows. */
|
|
9
|
+
gap?: GridPropGap | ResponsiveValue<GridPropGap>;
|
|
10
|
+
/** Size of gaps between columns. */
|
|
11
|
+
colGap?: GridPropGap | ResponsiveValue<GridPropGap>;
|
|
12
|
+
/** Size of gaps between rows. */
|
|
13
|
+
rowGap?: GridPropGap | ResponsiveValue<GridPropGap>;
|
|
14
|
+
/**
|
|
15
|
+
* Control item alignment on the horizontal axis.
|
|
16
|
+
* Defines the default `justifySelf` for all items in the grid.
|
|
17
|
+
* */
|
|
18
|
+
justifyItems?: CSSProperties['justifyItems'] | ResponsiveValue<CSSProperties['justifyItems']>;
|
|
19
|
+
/**
|
|
20
|
+
* Control item alignment on the vertical axis.
|
|
21
|
+
* Defines the default `alignSelf` for all items in the grid.
|
|
22
|
+
* */
|
|
23
|
+
alignItems?: CSSProperties['alignItems'] | ResponsiveValue<CSSProperties['alignItems']>;
|
|
24
|
+
/** Additional CSS-classes. */
|
|
25
|
+
className?: string;
|
|
26
|
+
/** The content of the component. */
|
|
27
|
+
children?: ReactNode;
|
|
28
|
+
/** Inline styles. */
|
|
29
|
+
style?: CSSProperties;
|
|
30
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ComponentPropsWithRef, ElementType } from 'react';
|
|
2
|
+
import type { IconButtonBaseProps } from './types.js';
|
|
3
|
+
export declare const IconButton: import("@koobiq/react-core").PolyForwardComponent<"button", IconButtonBaseProps, ElementType>;
|
|
4
|
+
export type IconButtonProps<As extends ElementType = 'button'> = ComponentPropsWithRef<typeof IconButton<As>>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { polymorphicForwardRef, clsx } from "@koobiq/react-core";
|
|
4
|
+
import { Button } from "@koobiq/react-primitives";
|
|
5
|
+
import s from "./IconButton.module.css.js";
|
|
6
|
+
const IconButton = polymorphicForwardRef(
|
|
7
|
+
({
|
|
8
|
+
as: Tag = "button",
|
|
9
|
+
variant = "theme",
|
|
10
|
+
size = "xl",
|
|
11
|
+
compact = false,
|
|
12
|
+
disabled = false,
|
|
13
|
+
children,
|
|
14
|
+
className,
|
|
15
|
+
...other
|
|
16
|
+
}, ref) => {
|
|
17
|
+
const classNameFn = ({
|
|
18
|
+
hovered,
|
|
19
|
+
disabled: disabled2,
|
|
20
|
+
loading,
|
|
21
|
+
focusVisible,
|
|
22
|
+
pressed
|
|
23
|
+
}) => clsx(
|
|
24
|
+
s.base,
|
|
25
|
+
size && s[size],
|
|
26
|
+
variant && s[variant],
|
|
27
|
+
hovered && s.hovered,
|
|
28
|
+
pressed && s.pressed,
|
|
29
|
+
disabled2 && s.disabled,
|
|
30
|
+
loading && s.progress,
|
|
31
|
+
compact && s.compact,
|
|
32
|
+
focusVisible && s.focusVisible,
|
|
33
|
+
className
|
|
34
|
+
);
|
|
35
|
+
return /* @__PURE__ */ jsx(
|
|
36
|
+
Button,
|
|
37
|
+
{
|
|
38
|
+
as: Tag,
|
|
39
|
+
disabled,
|
|
40
|
+
className: classNameFn,
|
|
41
|
+
...other,
|
|
42
|
+
ref,
|
|
43
|
+
children
|
|
44
|
+
}
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
);
|
|
48
|
+
IconButton.displayName = "IconButton";
|
|
49
|
+
export {
|
|
50
|
+
IconButton
|
|
51
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
const base = "kbq-iconbutton-0ff1bd";
|
|
2
|
+
const l = "kbq-iconbutton-l-2f8f66";
|
|
3
|
+
const xl = "kbq-iconbutton-xl-7ea358";
|
|
4
|
+
const compact = "kbq-iconbutton-compact-1a8941";
|
|
5
|
+
const hovered = "kbq-iconbutton-hovered-daeb15";
|
|
6
|
+
const pressed = "kbq-iconbutton-pressed-cd5790";
|
|
7
|
+
const focusVisible = "kbq-iconbutton-focusVisible-fe4d04";
|
|
8
|
+
const disabled = "kbq-iconbutton-disabled-d2beb1";
|
|
9
|
+
const theme = "kbq-iconbutton-theme-932771";
|
|
10
|
+
const error = "kbq-iconbutton-error-8e5261";
|
|
11
|
+
const success = "kbq-iconbutton-success-4c701d";
|
|
12
|
+
const warning = "kbq-iconbutton-warning-a2092b";
|
|
13
|
+
const s = {
|
|
14
|
+
base,
|
|
15
|
+
l,
|
|
16
|
+
xl,
|
|
17
|
+
compact,
|
|
18
|
+
hovered,
|
|
19
|
+
pressed,
|
|
20
|
+
focusVisible,
|
|
21
|
+
disabled,
|
|
22
|
+
theme,
|
|
23
|
+
"theme-contrast": "kbq-iconbutton-theme-contrast-6258bb",
|
|
24
|
+
"fade-contrast": "kbq-iconbutton-fade-contrast-4e4d6d",
|
|
25
|
+
error,
|
|
26
|
+
success,
|
|
27
|
+
warning
|
|
28
|
+
};
|
|
29
|
+
export {
|
|
30
|
+
base,
|
|
31
|
+
compact,
|
|
32
|
+
s as default,
|
|
33
|
+
disabled,
|
|
34
|
+
error,
|
|
35
|
+
focusVisible,
|
|
36
|
+
hovered,
|
|
37
|
+
l,
|
|
38
|
+
pressed,
|
|
39
|
+
success,
|
|
40
|
+
theme,
|
|
41
|
+
warning,
|
|
42
|
+
xl
|
|
43
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ButtonOptions, HoverEvent } from '@koobiq/react-primitives';
|
|
3
|
+
export declare const iconButtonPropVariant: readonly ["theme", "theme-contrast", "fade-contrast", "error", "success", "warning"];
|
|
4
|
+
export type IconButtonPropVariant = (typeof iconButtonPropVariant)[number];
|
|
5
|
+
export declare const iconButtonPropSize: readonly ["l", "xl"];
|
|
6
|
+
export type IconButtonPropSize = (typeof iconButtonPropSize)[number];
|
|
7
|
+
export type IconButtonBaseProps = {
|
|
8
|
+
/** The content of the component. */
|
|
9
|
+
children?: ReactNode;
|
|
10
|
+
/**
|
|
11
|
+
* The variant to use.
|
|
12
|
+
* @default theme
|
|
13
|
+
* */
|
|
14
|
+
variant?: IconButtonPropVariant;
|
|
15
|
+
/**
|
|
16
|
+
* If `true`, the component is disabled.
|
|
17
|
+
* @default false
|
|
18
|
+
* */
|
|
19
|
+
disabled?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Size of the component
|
|
22
|
+
* @default xl
|
|
23
|
+
* */
|
|
24
|
+
size?: IconButtonPropSize;
|
|
25
|
+
/**
|
|
26
|
+
* If `true`, reduce the size of the component canvas.
|
|
27
|
+
* @default false
|
|
28
|
+
* */
|
|
29
|
+
compact?: boolean;
|
|
30
|
+
/** Additional CSS-classes. */
|
|
31
|
+
className?: string;
|
|
32
|
+
/** Handler that is called when a hover interaction starts. */
|
|
33
|
+
onHoverStart?: (e: HoverEvent) => void;
|
|
34
|
+
/** Handler that is called when a hover interaction ends. */
|
|
35
|
+
onClick?: ButtonOptions['onPress'];
|
|
36
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export declare const Input: import("react").ForwardRefExoticComponent<Omit<Omit<import("@koobiq/react-primitives").UseTextFieldProps, "inputElementType">, "caption" | "label" | "style" | "className" | "disabled" | "required" | "error" | "variant" | "slotProps" | "fullWidth" | "data-testid" | "errorMessage" | "startAddon" | "endAddon" | "hiddenLabel"> & {
|
|
2
|
+
label?: import("react").ReactNode;
|
|
3
|
+
className?: string;
|
|
4
|
+
startAddon?: import("react").ReactNode;
|
|
5
|
+
endAddon?: import("react").ReactNode;
|
|
6
|
+
variant?: import("./types").InputPropVariant;
|
|
7
|
+
error?: boolean;
|
|
8
|
+
errorMessage?: string | number;
|
|
9
|
+
fullWidth?: boolean;
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
hiddenLabel?: boolean;
|
|
12
|
+
caption?: string | number;
|
|
13
|
+
required?: boolean;
|
|
14
|
+
style?: import("react").CSSProperties;
|
|
15
|
+
'data-testid'?: string | number;
|
|
16
|
+
slotProps?: {
|
|
17
|
+
label?: import("../FieldComponents").FieldLabelProps;
|
|
18
|
+
input?: import("../FieldComponents").FieldInputProps;
|
|
19
|
+
caption?: import("../FieldComponents").FieldCaptionProps;
|
|
20
|
+
errorMessage?: import("../FieldComponents").FieldErrorProps;
|
|
21
|
+
};
|
|
22
|
+
} & import("react").RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef } from "react";
|
|
4
|
+
import { useDOMRef, mergeProps } from "@koobiq/react-core";
|
|
5
|
+
import { FieldControl } from "../FieldComponents/FieldControl/FieldControl.js";
|
|
6
|
+
import { FieldLabel } from "../FieldComponents/FieldLabel/FieldLabel.js";
|
|
7
|
+
import { FieldInputGroup } from "../FieldComponents/FieldInputGroup/FieldInputGroup.js";
|
|
8
|
+
import { FieldInput } from "../FieldComponents/FieldInput/FieldInput.js";
|
|
9
|
+
import { FieldCaption } from "../FieldComponents/FieldCaption/FieldCaption.js";
|
|
10
|
+
import { FieldError } from "../FieldComponents/FieldError/FieldError.js";
|
|
11
|
+
const Input = forwardRef((props, ref) => {
|
|
12
|
+
const {
|
|
13
|
+
variant = "filled",
|
|
14
|
+
fullWidth = false,
|
|
15
|
+
hiddenLabel = false,
|
|
16
|
+
label,
|
|
17
|
+
startAddon,
|
|
18
|
+
endAddon,
|
|
19
|
+
errorMessage,
|
|
20
|
+
slotProps,
|
|
21
|
+
caption,
|
|
22
|
+
...other
|
|
23
|
+
} = props;
|
|
24
|
+
const domRef = useDOMRef(ref);
|
|
25
|
+
const rootProps = mergeProps(
|
|
26
|
+
{
|
|
27
|
+
label,
|
|
28
|
+
fullWidth,
|
|
29
|
+
errorMessage,
|
|
30
|
+
"data-variant": variant,
|
|
31
|
+
"data-fullwidth": fullWidth
|
|
32
|
+
},
|
|
33
|
+
other
|
|
34
|
+
);
|
|
35
|
+
return /* @__PURE__ */ jsx(FieldControl, { ...rootProps, children: ({ error, required, disabled }) => {
|
|
36
|
+
const labelProps = mergeProps(
|
|
37
|
+
{ hidden: hiddenLabel, required },
|
|
38
|
+
slotProps?.label
|
|
39
|
+
);
|
|
40
|
+
const inputProps = mergeProps(
|
|
41
|
+
{
|
|
42
|
+
error,
|
|
43
|
+
variant,
|
|
44
|
+
disabled,
|
|
45
|
+
ref: domRef
|
|
46
|
+
},
|
|
47
|
+
slotProps?.input
|
|
48
|
+
);
|
|
49
|
+
const captionProps = slotProps?.caption;
|
|
50
|
+
const errorProps = mergeProps({ error }, slotProps?.errorMessage);
|
|
51
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
52
|
+
/* @__PURE__ */ jsx(FieldLabel, { ...labelProps, children: labelProps?.children || label }),
|
|
53
|
+
/* @__PURE__ */ jsx(
|
|
54
|
+
FieldInputGroup,
|
|
55
|
+
{
|
|
56
|
+
error,
|
|
57
|
+
endAddon,
|
|
58
|
+
startAddon,
|
|
59
|
+
children: /* @__PURE__ */ jsx(FieldInput, { ...inputProps })
|
|
60
|
+
}
|
|
61
|
+
),
|
|
62
|
+
/* @__PURE__ */ jsx(FieldCaption, { ...captionProps, children: captionProps?.children || caption }),
|
|
63
|
+
/* @__PURE__ */ jsx(FieldError, { ...errorProps, children: errorProps.children || errorMessage })
|
|
64
|
+
] });
|
|
65
|
+
} });
|
|
66
|
+
});
|
|
67
|
+
Input.displayName = "Input";
|
|
68
|
+
export {
|
|
69
|
+
Input
|
|
70
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ExtendableComponentPropsWithRef } from '@koobiq/react-core';
|
|
3
|
+
export declare const fieldAddonPropPlacement: readonly ["start", "end"];
|
|
4
|
+
export type FieldAddonPlacement = (typeof fieldAddonPropPlacement)[number];
|
|
5
|
+
export type FieldAddonProps = ExtendableComponentPropsWithRef<{
|
|
6
|
+
children?: ReactNode;
|
|
7
|
+
placement?: FieldAddonPlacement;
|
|
8
|
+
error?: boolean;
|
|
9
|
+
}, 'div'>;
|
|
10
|
+
export declare const FieldAddon: import("react").ForwardRefExoticComponent<Omit<FieldAddonProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FieldAddon';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ExtendableComponentPropsWithRef } from '@koobiq/react-core';
|
|
3
|
+
export type FieldCaptionProps = ExtendableComponentPropsWithRef<{
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
}, 'div'>;
|
|
6
|
+
export declare const FieldCaption: import("react").ForwardRefExoticComponent<Omit<FieldCaptionProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FieldCaption';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import { type ExtendableComponentPropsWithRef } from '@koobiq/react-core';
|
|
3
|
+
export type FieldControlProps = ExtendableComponentPropsWithRef<{
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
fullWidth?: boolean;
|
|
6
|
+
error?: boolean;
|
|
7
|
+
className?: string;
|
|
8
|
+
}, 'div'>;
|
|
9
|
+
export declare const FieldControl: import("react").ForwardRefExoticComponent<Omit<FieldControlProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FieldControl';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ExtendableComponentPropsWithRef } from '@koobiq/react-core';
|
|
3
|
+
export type FieldErrorProps = ExtendableComponentPropsWithRef<{
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
error?: boolean;
|
|
6
|
+
}, 'div'>;
|
|
7
|
+
export declare const FieldError: import("react").ForwardRefExoticComponent<Omit<FieldErrorProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FieldError';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { useTextField } from '@koobiq/react-primitives';
|
|
2
|
+
import type { InputPropVariant } from '../../types';
|
|
3
|
+
export type FieldInputProps = {
|
|
4
|
+
error?: boolean;
|
|
5
|
+
variant?: InputPropVariant;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
className?: string;
|
|
8
|
+
} & ReturnType<typeof useTextField>['inputProps'];
|
|
9
|
+
export declare const FieldInput: import("@koobiq/react-core").PolyForwardComponent<"input", FieldInputProps, import("react").ElementType>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FieldInput';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import { type ExtendableComponentPropsWithRef } from '@koobiq/react-core';
|
|
3
|
+
export type FieldInputGroupProps = ExtendableComponentPropsWithRef<{
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
className?: string;
|
|
6
|
+
}, 'div'>;
|
|
7
|
+
export declare const FieldInputGroup: import("react").ForwardRefExoticComponent<Omit<FieldInputGroupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FieldInputGroup';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ExtendableComponentPropsWithRef } from '@koobiq/react-core';
|
|
3
|
+
export type FieldLabelProps = ExtendableComponentPropsWithRef<{
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
className?: string;
|
|
6
|
+
hiddenLabel?: boolean;
|
|
7
|
+
required?: boolean;
|
|
8
|
+
}, 'label'>;
|
|
9
|
+
export declare const FieldLabel: import("react").ForwardRefExoticComponent<Omit<FieldLabelProps, "ref"> & import("react").RefAttributes<HTMLLabelElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FieldLabel';
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { ComponentRef, CSSProperties, ReactNode } from 'react';
|
|
2
|
+
import type { ExtendableProps } from '@koobiq/react-core';
|
|
3
|
+
import type { UseTextFieldProps } from '@koobiq/react-primitives';
|
|
4
|
+
import type { FieldCaptionProps, FieldErrorProps, FieldInputProps, FieldLabelProps } from '../FieldComponents';
|
|
5
|
+
export declare const inputPropVariant: readonly ["filled", "transparent"];
|
|
6
|
+
export type InputPropVariant = (typeof inputPropVariant)[number];
|
|
7
|
+
export type InputProps = ExtendableProps<{
|
|
8
|
+
/** The content to display as the label. */
|
|
9
|
+
label?: ReactNode;
|
|
10
|
+
/** Additional CSS-classes. */
|
|
11
|
+
className?: string;
|
|
12
|
+
/** Addon placed before the children. */
|
|
13
|
+
startAddon?: ReactNode;
|
|
14
|
+
/** Addon placed after the children. */
|
|
15
|
+
endAddon?: ReactNode;
|
|
16
|
+
/**
|
|
17
|
+
* The variant to use.
|
|
18
|
+
* @default filled
|
|
19
|
+
* */
|
|
20
|
+
variant?: InputPropVariant;
|
|
21
|
+
/**
|
|
22
|
+
* If `true`, the input will indicate an error.
|
|
23
|
+
* @default false
|
|
24
|
+
* */
|
|
25
|
+
error?: boolean;
|
|
26
|
+
/** Message for the error state */
|
|
27
|
+
errorMessage?: string | number;
|
|
28
|
+
/**
|
|
29
|
+
* If true, the input will take up the full width of its container.
|
|
30
|
+
* @default false
|
|
31
|
+
* */
|
|
32
|
+
fullWidth?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* If `true`, the component is disabled.
|
|
35
|
+
* @default false
|
|
36
|
+
* */
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* If `true`, the label is hidden. Be sure to add aria-label to the input element.
|
|
40
|
+
* @default false
|
|
41
|
+
* */
|
|
42
|
+
hiddenLabel?: boolean;
|
|
43
|
+
/** The helper text content. */
|
|
44
|
+
caption?: string | number;
|
|
45
|
+
/**
|
|
46
|
+
* If `true`, the label is displayed as required and the input element is required.
|
|
47
|
+
* @default false
|
|
48
|
+
* */
|
|
49
|
+
required?: boolean;
|
|
50
|
+
/** Inline styles. */
|
|
51
|
+
style?: CSSProperties;
|
|
52
|
+
/** Unique identifier for testing purposes. */
|
|
53
|
+
'data-testid'?: string | number;
|
|
54
|
+
/** The props used for each slot inside. */
|
|
55
|
+
slotProps?: {
|
|
56
|
+
label?: FieldLabelProps;
|
|
57
|
+
input?: FieldInputProps;
|
|
58
|
+
caption?: FieldCaptionProps;
|
|
59
|
+
errorMessage?: FieldErrorProps;
|
|
60
|
+
};
|
|
61
|
+
}, Omit<UseTextFieldProps, 'inputElementType'>>;
|
|
62
|
+
export type InputRef = ComponentRef<'input'>;
|