@ufoui/core 0.0.4 → 0.0.12

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 (151) hide show
  1. package/README.md +9 -3
  2. package/assets/icons.d.ts +11 -0
  3. package/assets/index.d.ts +1 -0
  4. package/components/accordion/accordion.d.ts +52 -0
  5. package/components/accordion/accordionItem.d.ts +65 -0
  6. package/components/accordion/accordionItem.guards.d.ts +15 -0
  7. package/components/accordion/index.d.ts +2 -0
  8. package/components/avatar/avatar.d.ts +26 -29
  9. package/components/avatar/avatar.guards.d.ts +15 -0
  10. package/components/avatar/avatarGroup.d.ts +29 -0
  11. package/components/avatar/index.d.ts +2 -0
  12. package/components/badge/badge.d.ts +1 -1
  13. package/components/base/{boxBase/boxBase.d.ts → boxBase.d.ts} +18 -11
  14. package/components/base/{buttonBase/buttonBase.d.ts → buttonBase.d.ts} +2 -3
  15. package/components/base/{checkboxBase/checkboxBase.d.ts → checkboxBase.d.ts} +2 -3
  16. package/components/base/dialogBase.d.ts +34 -0
  17. package/components/base/{fieldBase/fieldBase.d.ts → fieldBase.d.ts} +2 -3
  18. package/components/base/index.d.ts +6 -0
  19. package/components/base/textBase.d.ts +44 -0
  20. package/components/breadcrumbs/breadcrumbs.d.ts +48 -0
  21. package/components/button/button.d.ts +1 -1
  22. package/components/calendar/calendar.d.ts +23 -0
  23. package/components/calendar/calendarUtils.d.ts +18 -0
  24. package/components/checkbox/checkbox.d.ts +1 -1
  25. package/components/chip/chip.d.ts +1 -1
  26. package/components/collapse/collapse.d.ts +33 -0
  27. package/components/dialogs/bottomSheet.d.ts +23 -0
  28. package/components/dialogs/dialog.d.ts +21 -0
  29. package/components/{dialog → dialogs}/dialogActions.d.ts +1 -2
  30. package/components/{dialog → dialogs}/dialogTitle.d.ts +2 -3
  31. package/components/dialogs/drawer.d.ts +23 -0
  32. package/components/dialogs/index.d.ts +6 -0
  33. package/components/divider/divider.d.ts +1 -1
  34. package/components/divider/divider.guards.d.ts +1 -1
  35. package/components/fab/fab.d.ts +1 -1
  36. package/components/fields/dateField.d.ts +24 -0
  37. package/components/fields/dateTimeField.d.ts +24 -0
  38. package/components/fields/emailField.d.ts +24 -0
  39. package/components/fields/index.d.ts +11 -0
  40. package/components/fields/monthField.d.ts +24 -0
  41. package/components/fields/numberField.d.ts +24 -0
  42. package/components/fields/passwordField.d.ts +24 -0
  43. package/components/fields/phoneField.d.ts +24 -0
  44. package/components/fields/textField.d.ts +24 -0
  45. package/components/fields/timeField.d.ts +24 -0
  46. package/components/fields/urlField.d.ts +24 -0
  47. package/components/fields/weekField.d.ts +24 -0
  48. package/components/fieldset/fieldset.d.ts +2 -1
  49. package/components/iconButton/iconButton.d.ts +1 -1
  50. package/components/{article → layout}/article.d.ts +1 -1
  51. package/components/{aside → layout}/aside.d.ts +1 -1
  52. package/components/{content → layout}/content.d.ts +1 -1
  53. package/components/{div → layout}/div.d.ts +1 -1
  54. package/components/{flex → layout}/flex.d.ts +1 -1
  55. package/components/{footer → layout}/footer.d.ts +1 -1
  56. package/components/{grid → layout}/grid.d.ts +1 -1
  57. package/components/{header → layout}/header.d.ts +1 -1
  58. package/components/layout/index.d.ts +11 -0
  59. package/components/{main → layout}/main.d.ts +1 -1
  60. package/components/{nav → layout}/nav.d.ts +1 -1
  61. package/components/{section → layout}/section.d.ts +1 -1
  62. package/components/link/link.d.ts +58 -0
  63. package/components/list/list.d.ts +8 -0
  64. package/components/{listItem → list}/listItem.d.ts +2 -3
  65. package/components/{listItem → list}/listItem.guards.d.ts +1 -1
  66. package/components/menu/menu.d.ts +2 -4
  67. package/components/menu/menu.guards.d.ts +1 -1
  68. package/components/menuItem/menuItem.d.ts +2 -3
  69. package/components/menuItem/menuItem.guards.d.ts +1 -1
  70. package/components/option/option.d.ts +1 -1
  71. package/components/option/option.guards.d.ts +1 -1
  72. package/components/progress/progress.d.ts +27 -0
  73. package/components/radio/radio.d.ts +1 -1
  74. package/components/radiogroup/radioGroup.d.ts +1 -1
  75. package/components/rating/rating.d.ts +68 -0
  76. package/components/select/select.d.ts +1 -1
  77. package/components/slider/slider.d.ts +11 -0
  78. package/components/switch/switch.d.ts +1 -10
  79. package/components/tabs/index.d.ts +2 -0
  80. package/components/tabs/tab.d.ts +37 -0
  81. package/components/tabs/tab.guards.d.ts +15 -0
  82. package/components/tabs/tabs.d.ts +7 -0
  83. package/components/toast/index.d.ts +2 -0
  84. package/components/toast/toast.d.ts +52 -0
  85. package/components/toast/toastViewport.d.ts +7 -0
  86. package/components/toggleButton/toggleButton.d.ts +1 -1
  87. package/components/toolbar/toolbar.d.ts +51 -0
  88. package/components/tooltip/tooltip.d.ts +1 -1
  89. package/components/typography/h1.d.ts +18 -0
  90. package/components/typography/h2.d.ts +18 -0
  91. package/components/typography/h3.d.ts +18 -0
  92. package/components/typography/h4.d.ts +18 -0
  93. package/components/typography/h5.d.ts +18 -0
  94. package/components/typography/h6.d.ts +18 -0
  95. package/components/typography/index.d.ts +9 -0
  96. package/components/typography/label.d.ts +18 -0
  97. package/components/typography/p.d.ts +18 -0
  98. package/components/typography/span.d.ts +18 -0
  99. package/context/index.d.ts +4 -0
  100. package/context/selectionContext.d.ts +32 -0
  101. package/context/themeContext.d.ts +2 -2
  102. package/hooks/index.d.ts +10 -0
  103. package/hooks/useAnimate.d.ts +38 -18
  104. package/hooks/useFocusTrap.d.ts +32 -0
  105. package/hooks/useFocusVisible.d.ts +16 -14
  106. package/hooks/useResizeObserver.d.ts +30 -0
  107. package/hooks/useRovingFocus.d.ts +30 -0
  108. package/hooks/useSelection.d.ts +16 -0
  109. package/hooks/useSelectionState.d.ts +29 -0
  110. package/hooks/useSliderKeys.d.ts +41 -0
  111. package/index.css +1 -1
  112. package/index.d.ts +22 -36
  113. package/index.js +4881 -0
  114. package/internal/controlGrid/controlGrid.d.ts +32 -0
  115. package/internal/controlLabel/controlLabel.d.ts +31 -0
  116. package/internal/description/description.d.ts +18 -0
  117. package/internal/index.d.ts +6 -0
  118. package/internal/inlineTooltip/index.d.ts +1 -0
  119. package/internal/inlineTooltip/inlineTooltipManager.d.ts +2 -2
  120. package/internal/slots/slot.d.ts +44 -0
  121. package/internal/stateLayer/stateLayer.d.ts +33 -0
  122. package/package.json +12 -3
  123. package/utils/calculateFloatingPosition.d.ts +1 -1
  124. package/utils/color.d.ts +2 -194
  125. package/utils/controlStyle.d.ts +67 -0
  126. package/utils/generateMaterialColors.d.ts +1 -1
  127. package/utils/generateSchemes.d.ts +1 -1
  128. package/utils/getWrapperStyle.d.ts +53 -0
  129. package/utils/index.d.ts +10 -0
  130. package/utils/{inputhMethod.d.ts → interactionMode.d.ts} +1 -1
  131. package/utils/toasts/ensureViewport.d.ts +7 -0
  132. package/utils/toasts/index.d.ts +1 -0
  133. package/utils/toasts/toast.d.ts +85 -0
  134. package/utils/toasts/toastStore.d.ts +65 -0
  135. package/utils/uniqueID.d.ts +14 -0
  136. package/utils/utils.d.ts +81 -81
  137. package/components/base/dialogBase/dialog.d.ts +0 -35
  138. package/components/base/inlineBase/inlineBase.d.ts +0 -62
  139. package/components/dateInput/dateInput.d.ts +0 -2
  140. package/components/dateTimeInput/dateTimeInput.d.ts +0 -2
  141. package/components/emailInput/emailInput.d.ts +0 -2
  142. package/components/numberInput/numberInput.d.ts +0 -2
  143. package/components/telInput/telInput.d.ts +0 -2
  144. package/components/textField/textField.d.ts +0 -9
  145. package/components/timeInput/timeInput.d.ts +0 -2
  146. package/components/urlInput/urlInput.d.ts +0 -2
  147. package/hooks/useFocusState.d.ts +0 -16
  148. package/index.mjs +0 -3832
  149. package/internal/inlineTooltip/inlineTooltip.d.ts +0 -11
  150. package/internal/inlineTooltip/inlineTooltip2.d.ts +0 -10
  151. /package/components/{dialog → dialogs}/dialogContent.d.ts +0 -0
@@ -0,0 +1,33 @@
1
+ import { ReactNode } from 'react';
2
+ import { BoxBaseProps } from '../base';
3
+ import { MotionAnimation, MotionStyle } from '../../types';
4
+ /**
5
+ * Props for the Collapse component.
6
+ *
7
+ * @category Collapse
8
+ */
9
+ export interface CollapseProps extends Omit<BoxBaseProps, 'elevation'> {
10
+ /** Motion animation key. Default: slideDown. */
11
+ animation?: MotionAnimation;
12
+ /** Content rendered inside the container. */
13
+ children?: ReactNode;
14
+ /** Additional root class name. */
15
+ className?: string;
16
+ /** Animation duration in milliseconds. Default: 220. */
17
+ duration?: number;
18
+ /** Motion style variant. */
19
+ motionStyle?: MotionStyle;
20
+ /** Controls whether the container is expanded. */
21
+ open: boolean;
22
+ }
23
+ /**
24
+ * Animated container that expands and collapses vertically.
25
+ *
26
+ * Animates height and integrates with the UUI motion system.
27
+ *
28
+ * @function
29
+ * @param props Component properties.
30
+ *
31
+ * @category Collapse
32
+ */
33
+ export declare const Collapse: import('react').ForwardRefExoticComponent<CollapseProps & import('react').RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,23 @@
1
+ import { DialogBaseProps } from '../base/dialogBase';
2
+ /**
3
+ * Props for {@link BottomSheet}.
4
+ * Extends {@link DialogBaseProps}.
5
+ *
6
+ * @category BottomSheet
7
+ */
8
+ export type BottomSheetProps = Omit<DialogBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Bottom sheet component used to display supplementary content anchored to the bottom of the screen.
11
+ *
12
+ * Use for actions, filters, or contextual mobile interactions.
13
+ *
14
+ * @category BottomSheet
15
+ * @function
16
+ * @param props - All bottom sheet props inherited from {@link DialogBase}.
17
+ *
18
+ * @example
19
+ * <BottomSheet open onClose={() => setOpen(false)}>
20
+ * Content
21
+ * </BottomSheet>
22
+ */
23
+ export declare const BottomSheet: import('react').ForwardRefExoticComponent<BottomSheetProps & import('react').RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,21 @@
1
+ import { DialogBaseProps } from '../base';
2
+ /**
3
+ * Props for {@link Dialog}.
4
+ * Extends {@link DialogBaseProps}.
5
+ *
6
+ * @category Dialog
7
+ */
8
+ export type DialogProps = Omit<DialogBaseProps, 'elementClass'>;
9
+ /**
10
+ * Dialog component used to display modal or non-modal content above the app layer.
11
+ *
12
+ * @category Dialog
13
+ * @function
14
+ * @param props - All dialog props inherited from {@link DialogBase}.
15
+ *
16
+ * @example
17
+ * <Dialog open onClose={() => setOpen(false)}>
18
+ * Content
19
+ * </Dialog>
20
+ */
21
+ export declare const Dialog: import('react').ForwardRefExoticComponent<DialogProps & import('react').RefAttributes<HTMLDivElement>>;
@@ -1,6 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import { ElementOutline } from '../../utils/utils.ts';
3
- import { BorderColor, SurfaceColor } from '../../utils/color';
2
+ import { BorderColor, ElementOutline, SurfaceColor } from '../../utils';
4
3
  export interface DialogActionsProps {
5
4
  children?: ReactNode;
6
5
  className?: string;
@@ -1,6 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import { ElementFont } from '../../utils/utils.ts';
3
- import { SurfaceColor } from '../../utils/color';
2
+ import { ElementFont, SurfaceColor } from '../../utils';
4
3
  export interface DialogTitleProps {
5
4
  icon?: ReactNode;
6
5
  label?: string;
@@ -11,6 +10,6 @@ export interface DialogTitleProps {
11
10
  textColor?: SurfaceColor;
12
11
  }
13
12
  export declare const DialogTitle: {
14
- ({ icon, label, children, className, font, }: DialogTitleProps): import("react/jsx-runtime").JSX.Element | null;
13
+ ({ icon, label, children, className, font }: DialogTitleProps): import("react/jsx-runtime").JSX.Element | null;
15
14
  displayName: string;
16
15
  };
@@ -0,0 +1,23 @@
1
+ import { DialogBaseProps } from '../base';
2
+ /**
3
+ * Props for {@link Drawer}.
4
+ * Extends {@link DialogBaseProps}.
5
+ *
6
+ * @category Drawer
7
+ */
8
+ export type DrawerProps = Omit<DialogBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Drawer component used to display side content that slides in from the edge of the screen.
11
+ *
12
+ * Use for navigation panels, filters, or contextual content.
13
+ *
14
+ * @category Drawer
15
+ * @function
16
+ * @param props - All drawer props inherited from {@link DialogBase}.
17
+ *
18
+ * @example
19
+ * <Drawer open onClose={() => setOpen(false)}>
20
+ * Content
21
+ * </Drawer>
22
+ */
23
+ export declare const Drawer: import('react').ForwardRefExoticComponent<DrawerProps & import('react').RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,6 @@
1
+ export * from './dialog';
2
+ export * from './dialogActions';
3
+ export * from './dialogContent';
4
+ export * from './dialogTitle';
5
+ export * from './drawer';
6
+ export * from './bottomSheet';
@@ -1,5 +1,5 @@
1
1
  import { HTMLProps } from 'react';
2
- import { BorderColor, ElementBorder, ElementElevation, ElementInset, ElementShape } from '../../index.ts';
2
+ import { BorderColor, ElementBorder, ElementElevation, ElementInset, ElementShape } from '../../utils';
3
3
  import { IS_DIVIDER } from './divider.guards';
4
4
  /**
5
5
  * Props for the {@link Divider} component.
@@ -1,5 +1,5 @@
1
1
  import { default as React } from 'react';
2
- import { DividerProps } from '../../index.ts';
2
+ import { DividerProps } from './divider';
3
3
  export declare const IS_DIVIDER: unique symbol;
4
4
  /**
5
5
  * Type guard that checks whether a React node is a Divider component.
@@ -1,5 +1,5 @@
1
1
  import { ReactElement } from 'react';
2
- import { ButtonBaseProps } from '../../index.ts';
2
+ import { ButtonBaseProps } from '../base/buttonBase';
3
3
  /**
4
4
  * Props for {@link Fab}.
5
5
  * Extends {@link ButtonBaseProps}.
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link DateField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category DateField
7
+ */
8
+ export type DateFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Date field component used to enter date values.
11
+ *
12
+ * Use for selecting calendar dates in forms.
13
+ *
14
+ * @category DateField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <DateField label="Label" />
20
+ *
21
+ * @example
22
+ * <DateField required />
23
+ */
24
+ export declare const DateField: import('react').ForwardRefExoticComponent<DateFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link DateTimeField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category DateTimeField
7
+ */
8
+ export type DateTimeFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Date and time field component used to enter combined date and time values.
11
+ *
12
+ * Use for scheduling and time-based form input.
13
+ *
14
+ * @category DateTimeField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <DateTimeField label="Label" />
20
+ *
21
+ * @example
22
+ * <DateTimeField required />
23
+ */
24
+ export declare const DateTimeField: import('react').ForwardRefExoticComponent<DateTimeFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link EmailField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category EmailField
7
+ */
8
+ export type EmailFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Email field component used to enter email addresses.
11
+ *
12
+ * Use for collecting email contact information in forms.
13
+ *
14
+ * @category EmailField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <EmailField label="Label" />
20
+ *
21
+ * @example
22
+ * <EmailField required />
23
+ */
24
+ export declare const EmailField: import('react').ForwardRefExoticComponent<EmailFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,11 @@
1
+ export * from './textField';
2
+ export * from './numberField';
3
+ export * from './emailField';
4
+ export * from './phoneField';
5
+ export * from './passwordField';
6
+ export * from './dateField';
7
+ export * from './dateTimeField';
8
+ export * from './timeField';
9
+ export * from './monthField';
10
+ export * from './weekField';
11
+ export * from './urlField';
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link MonthField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category MonthField
7
+ */
8
+ export type MonthFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Month field component used to enter month and year values.
11
+ *
12
+ * Use for selecting calendar months in forms.
13
+ *
14
+ * @category MonthField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <MonthField label="Label" />
20
+ *
21
+ * @example
22
+ * <MonthField required />
23
+ */
24
+ export declare const MonthField: import('react').ForwardRefExoticComponent<MonthFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link NumberField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category NumberField
7
+ */
8
+ export type NumberFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Number field component used to enter numeric values.
11
+ *
12
+ * Use for quantities, amounts, and other number-based input.
13
+ *
14
+ * @category NumberField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <NumberField label="Label" />
20
+ *
21
+ * @example
22
+ * <NumberField required />
23
+ */
24
+ export declare const NumberField: import('react').ForwardRefExoticComponent<NumberFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link PasswordField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category PasswordField
7
+ */
8
+ export type PasswordFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Password field component used to enter secure text input.
11
+ *
12
+ * Use for authentication and protected form data.
13
+ *
14
+ * @category PasswordField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <PasswordField label="Label" />
20
+ *
21
+ * @example
22
+ * <PasswordField required />
23
+ */
24
+ export declare const PasswordField: import('react').ForwardRefExoticComponent<PasswordFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link PhoneField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category PhoneField
7
+ */
8
+ export type PhoneFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Phone field component used to enter telephone numbers.
11
+ *
12
+ * Use for collecting contact phone information in forms.
13
+ *
14
+ * @category PhoneField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <PhoneField label="Label" />
20
+ *
21
+ * @example
22
+ * <PhoneField required />
23
+ */
24
+ export declare const PhoneField: import('react').ForwardRefExoticComponent<PhoneFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base';
2
+ /**
3
+ * Props for {@link TextField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category TextField
7
+ */
8
+ export type TextFieldProps = Omit<FieldBaseProps, 'elementClass'>;
9
+ /**
10
+ * Text field component used to collect user input.
11
+ *
12
+ * Use for forms, search, and general data entry.
13
+ *
14
+ * @category TextField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <TextField label="Label" />
20
+ *
21
+ * @example
22
+ * <TextField placeholder="Enter value" />
23
+ */
24
+ export declare const TextField: import('react').ForwardRefExoticComponent<TextFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link TimeField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category TimeField
7
+ */
8
+ export type TimeFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Time field component used to enter time values.
11
+ *
12
+ * Use for selecting hours and minutes in forms.
13
+ *
14
+ * @category TimeField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <TimeField label="Label" />
20
+ *
21
+ * @example
22
+ * <TimeField required />
23
+ */
24
+ export declare const TimeField: import('react').ForwardRefExoticComponent<TimeFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link UrlField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category UrlField
7
+ */
8
+ export type UrlFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * URL field component used to enter web addresses.
11
+ *
12
+ * Use for collecting links and website references in forms.
13
+ *
14
+ * @category UrlField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <UrlField label="Label" />
20
+ *
21
+ * @example
22
+ * <UrlField required />
23
+ */
24
+ export declare const UrlField: import('react').ForwardRefExoticComponent<UrlFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { FieldBaseProps } from '../base/fieldBase';
2
+ /**
3
+ * Props for {@link WeekField}.
4
+ * Extends {@link FieldBaseProps}.
5
+ *
6
+ * @category WeekField
7
+ */
8
+ export type WeekFieldProps = Omit<FieldBaseProps, 'elementClass' | 'type'>;
9
+ /**
10
+ * Week field component used to enter week and year values.
11
+ *
12
+ * Use for selecting calendar weeks in forms.
13
+ *
14
+ * @category WeekField
15
+ * @function
16
+ * @param props - All field props inherited from {@link FieldBase}.
17
+ *
18
+ * @example
19
+ * <WeekField label="Label" />
20
+ *
21
+ * @example
22
+ * <WeekField required />
23
+ */
24
+ export declare const WeekField: import('react').ForwardRefExoticComponent<WeekFieldProps & import('react').RefAttributes<HTMLInputElement>>;
@@ -1,5 +1,6 @@
1
1
  import { default as React } from 'react';
2
- import { BoxBaseProps, ElementFont, SurfaceColor } from '../../index.ts';
2
+ import { ElementFont, SurfaceColor } from '../../utils';
3
+ import { BoxBaseProps } from '../base';
3
4
  /**
4
5
  * Props for {@link Fieldset}.
5
6
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -1,4 +1,4 @@
1
- import { ButtonBaseProps } from '../../index.ts';
1
+ import { ButtonBaseProps } from '../base/buttonBase';
2
2
  /**
3
3
  * Props for {@link IconButton}.
4
4
  * Extends {@link ButtonBaseProps} except for text and trailing content.
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for {@link Article}.
4
4
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for {@link Aside}.
4
4
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for {@link Content}.
4
4
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for the {@link Div} component.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for the {@link Flex} component.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for {@link Footer}.
4
4
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for the {@link Grid} component.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for {@link Header}.
4
4
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -0,0 +1,11 @@
1
+ export * from './article';
2
+ export * from './aside';
3
+ export * from './content';
4
+ export * from './div';
5
+ export * from './flex';
6
+ export * from './footer';
7
+ export * from './grid';
8
+ export * from './header';
9
+ export * from './main';
10
+ export * from './nav';
11
+ export * from './section';
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for {@link Main}.
4
4
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for {@link Nav}.
4
4
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -1,4 +1,4 @@
1
- import { BoxBaseProps } from '../../index.ts';
1
+ import { BoxBaseProps } from '../base/boxBase';
2
2
  /**
3
3
  * Props for {@link Section}.
4
4
  * Extends {@link BoxBaseProps} except for `elementClass` and `component`.
@@ -0,0 +1,58 @@
1
+ import { default as React, ElementType, ReactNode } from 'react';
2
+ import { ElementFocusEffect, ElementFont, ElementHoverEffect, ElementPressedEffect, SurfaceColor } from '../../utils';
3
+ /**
4
+ * Props for the Link component.
5
+ *
6
+ * Inline link element with optional leading and trailing content and animated underline.
7
+ *
8
+ * @category Link
9
+ */
10
+ export type LinkProps<T extends ElementType = 'a'> = {
11
+ /** Underlying element or router component. */
12
+ as?: T;
13
+ /** Link content. */
14
+ children?: ReactNode;
15
+ /** Fallback text when children is not provided. */
16
+ label?: string;
17
+ /** Leading visual element. */
18
+ leading?: ReactNode;
19
+ /** Trailing visual element. */
20
+ trailing?: ReactNode;
21
+ /** Surface color token applied to text. */
22
+ color?: SurfaceColor;
23
+ /** Underline visibility behavior. */
24
+ underline?: 'none' | 'hover' | 'always';
25
+ /** Font token applied to content. */
26
+ font?: ElementFont;
27
+ /** Opens link in new tab with security attributes. */
28
+ isExternal?: boolean;
29
+ /** Accessibility label override. */
30
+ 'aria-label'?: string;
31
+ /** Additional class applied to the root element. */
32
+ className?: string;
33
+ /** Disables interaction and focus. */
34
+ disabled?: boolean;
35
+ /** Hover visual effects. */
36
+ hoverEffects?: ElementHoverEffect[];
37
+ /** Focus visual effects. */
38
+ focusEffects?: ElementFocusEffect[];
39
+ /** Pressed visual effects. */
40
+ pressedEffects?: ElementPressedEffect[];
41
+ /** Underline animation origin. */
42
+ underlineOrigin?: 'left' | 'center';
43
+ /** Underline animation type. */
44
+ underlineAnimation?: 'scale' | 'fade';
45
+ } & Omit<React.ComponentPropsWithoutRef<T>, 'as' | 'color' | 'children' | 'className'>;
46
+ export interface LinkComponent {
47
+ <T extends ElementType = 'a'>(props: LinkProps<T>): ReactNode;
48
+ displayName?: string;
49
+ }
50
+ /**
51
+ * Inline link component with optional leading and trailing content and animated underline.
52
+ *
53
+ * @function
54
+ * @param props Component properties.
55
+ *
56
+ * @category Link
57
+ */
58
+ export declare const Link: LinkComponent;
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ import { BoxBaseProps } from '../base/boxBase';
3
+ export interface ListProps extends Omit<BoxBaseProps, 'type'> {
4
+ type?: 'single' | 'multiple';
5
+ defaultValue?: string;
6
+ children: ReactNode;
7
+ }
8
+ export declare const List: ({ type, defaultValue, children }: ListProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,6 @@
1
1
  import { default as React, HTMLProps, ReactNode } from 'react';
2
- import { ElementDensity, ElementFocusEffect, ElementFont, ElementSelectedEffect, ElementShape, ElementTouchEffect } from '../../utils/utils.ts';
3
- import { SurfaceColor } from '../../utils/color';
4
- import { MenuVariant } from '../../index.ts';
2
+ import { ElementDensity, ElementFocusEffect, ElementFont, ElementSelectedEffect, ElementShape, ElementTouchEffect, SurfaceColor } from '../../utils';
3
+ import { MenuVariant } from '../menu/menu';
5
4
  /**
6
5
  * Visual variant of a ListItem.
7
6
  *
@@ -1,5 +1,5 @@
1
1
  import { default as React, ReactElement } from 'react';
2
- import { ListItemInternalProps, ListItemProps } from '../../index.ts';
2
+ import { ListItemInternalProps, ListItemProps } from './listItem';
3
3
  export declare const IS_LIST_ITEM: unique symbol;
4
4
  /**
5
5
  * Type guard that checks whether a React node is a MenuItem component.