@aurora-ds/components 0.6.7 → 0.10.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.
- package/README.md +2 -0
- package/dist/cjs/components/actions/button/Button.d.ts +12 -0
- package/dist/cjs/components/actions/button/Button.props.d.ts +41 -0
- package/dist/cjs/components/actions/button/Button.styles.d.ts +18 -0
- package/dist/cjs/components/actions/button/index.d.ts +2 -0
- package/dist/cjs/components/actions/icon-button/IconButton.d.ts +4 -0
- package/dist/cjs/components/actions/icon-button/IconButton.props.d.ts +37 -0
- package/dist/cjs/components/actions/icon-button/IconButton.styles.d.ts +4 -0
- package/dist/cjs/components/actions/icon-button/index.d.ts +2 -0
- package/dist/cjs/components/data-display/chip/Chip.props.d.ts +10 -0
- package/dist/cjs/components/forms/form/Form.d.ts +3 -0
- package/dist/cjs/components/forms/form/Form.props.d.ts +9 -0
- package/dist/cjs/components/forms/form/Form.styles.d.ts +3 -0
- package/dist/cjs/components/forms/form/index.d.ts +2 -0
- package/dist/cjs/components/forms/input/Input.d.ts +3 -0
- package/dist/cjs/components/forms/input/Input.props.d.ts +32 -0
- package/dist/cjs/components/forms/input/Input.styles.d.ts +15 -0
- package/dist/cjs/components/forms/input/index.d.ts +2 -0
- package/dist/cjs/components/forms/textarea/TextArea.d.ts +3 -0
- package/dist/cjs/components/forms/textarea/TextArea.props.d.ts +27 -0
- package/dist/cjs/components/forms/textarea/TextArea.styles.d.ts +11 -0
- package/dist/cjs/components/forms/textarea/index.d.ts +2 -0
- package/dist/cjs/components/foundation/icon/Icon.d.ts +35 -0
- package/dist/cjs/components/foundation/icon/Icon.props.d.ts +24 -0
- package/dist/cjs/components/foundation/icon/Icon.styles.d.ts +3 -0
- package/dist/cjs/components/foundation/icon/index.d.ts +2 -0
- package/dist/cjs/components/foundation/text/Text.d.ts +21 -0
- package/dist/cjs/components/foundation/text/Text.props.d.ts +38 -0
- package/dist/cjs/components/foundation/text/Text.styles.d.ts +4 -0
- package/dist/cjs/components/foundation/text/index.d.ts +2 -0
- package/dist/cjs/components/index.d.ts +11 -5
- package/dist/cjs/components/inputs/button/Button.props.d.ts +1 -0
- package/dist/cjs/components/inputs/icon-button/IconButton.props.d.ts +1 -0
- package/dist/cjs/components/inputs/input/Input.d.ts +6 -0
- package/dist/cjs/components/inputs/input/Input.props.d.ts +17 -0
- package/dist/cjs/components/inputs/input/Input.styles.d.ts +7 -0
- package/dist/cjs/components/inputs/input/index.d.ts +2 -0
- package/dist/cjs/components/layout/card/Card.props.d.ts +10 -0
- package/dist/cjs/components/layout/grid/Grid.props.d.ts +10 -0
- package/dist/cjs/components/layout/page-construction/page/Page.d.ts +10 -0
- package/dist/cjs/components/layout/page-construction/page/Page.props.d.ts +30 -0
- package/dist/cjs/components/layout/page-construction/page/Page.styles.d.ts +5 -0
- package/dist/cjs/components/layout/page-construction/page/index.d.ts +2 -0
- package/dist/cjs/components/layout/page-construction/page-section/PageSection.d.ts +10 -0
- package/dist/cjs/components/layout/page-construction/page-section/PageSection.props.d.ts +34 -0
- package/dist/cjs/components/layout/page-construction/page-section/PageSection.styles.d.ts +4 -0
- package/dist/cjs/components/layout/page-construction/page-section/index.d.ts +2 -0
- package/dist/cjs/components/layout/stack/Stack.props.d.ts +10 -0
- package/dist/cjs/components/layout/text/Text.d.ts +1 -0
- package/dist/cjs/components/layout/text/Text.props.d.ts +3 -0
- package/dist/cjs/components/navigation/breadcrumb/Breadcrumb.d.ts +12 -0
- package/dist/cjs/components/navigation/breadcrumb/Breadcrumb.props.d.ts +13 -0
- package/dist/cjs/components/navigation/breadcrumb/Breadcrumb.styles.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.d.ts +8 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.props.d.ts +5 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.styles.d.ts +7 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis/index.d.ts +2 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbEllipsis.d.ts +9 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbItem/BreadcrumbItem.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbItem/BreadcrumbItem.styles.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbItem/index.d.ts +1 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbItem.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.d.ts +7 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.props.d.ts +14 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.styles.d.ts +7 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink/index.d.ts +2 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbLink.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbList/BreadcrumbList.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbList/BreadcrumbList.styles.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbList/index.d.ts +1 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbList.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.d.ts +7 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.props.d.ts +10 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.styles.d.ts +7 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage/index.d.ts +2 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbPage.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.d.ts +7 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.props.d.ts +5 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.styles.d.ts +6 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator/index.d.ts +2 -0
- package/dist/cjs/components/navigation/breadcrumb/BreadcrumbSeparator.d.ts +9 -0
- package/dist/cjs/components/navigation/breadcrumb/index.d.ts +10 -0
- package/dist/cjs/components/navigation/drawer-item/DrawerItem.props.d.ts +10 -0
- package/dist/cjs/components/overlay/accordion/Accordion.d.ts +10 -0
- package/dist/cjs/components/overlay/accordion/Accordion.props.d.ts +52 -0
- package/dist/cjs/components/overlay/accordion/Accordion.styles.d.ts +7 -0
- package/dist/cjs/components/overlay/accordion/index.d.ts +2 -0
- package/dist/cjs/index.js +741 -203
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interfaces/button.types.d.ts +14 -1
- package/dist/cjs/resources/Icons.d.ts +5 -1
- package/dist/cjs/resources/icons/ChevronRightIcon.d.ts +1 -0
- package/dist/cjs/resources/icons/EyeIcon.d.ts +1 -0
- package/dist/cjs/resources/icons/EyeOffIcon.d.ts +1 -0
- package/dist/cjs/resources/icons/MoreHorizontalIcon.d.ts +1 -0
- package/dist/cjs/utils/ui/components/actions/button/getButtonSizeStyles.utils.d.ts +12 -0
- package/dist/cjs/utils/ui/components/actions/button/getButtonVariantStyles.utils.d.ts +7 -0
- package/dist/cjs/utils/ui/components/actions/icon-button/getIconButtonSizeStyles.utils.d.ts +9 -0
- package/dist/cjs/utils/ui/components/data-display/chip/getChipColorStyles.utils.d.ts +7 -0
- package/dist/cjs/utils/ui/components/data-display/chip/getChipContentSize.utils.d.ts +8 -0
- package/dist/cjs/utils/ui/components/data-display/chip/getChipSizeStyles.utils.d.ts +12 -0
- package/dist/cjs/utils/ui/components/foundation/text/getTextVariantStyles.utils.d.ts +7 -0
- package/dist/cjs/utils/ui/components/foundation/text/getTruncateTextStyles.utils.d.ts +17 -0
- package/dist/cjs/utils/ui/components/foundation/text/parseTextWithBold.utils.d.ts +7 -0
- package/dist/cjs/utils/ui/components/navigation/breadcrumb/buildBreadcrumbChildren.utils.d.ts +5 -0
- package/dist/cjs/utils/ui/components/navigation/breadcrumb/flattenChildren.utils.d.ts +5 -0
- package/dist/cjs/utils/ui/components/navigation/breadcrumb/insertSeparators.utils.d.ts +5 -0
- package/dist/cjs/utils/ui/components/navigation/breadcrumb/isSeparator.utils.d.ts +5 -0
- package/dist/esm/components/actions/button/Button.d.ts +12 -0
- package/dist/esm/components/actions/button/Button.props.d.ts +41 -0
- package/dist/esm/components/actions/button/Button.styles.d.ts +18 -0
- package/dist/esm/components/actions/button/index.d.ts +2 -0
- package/dist/esm/components/actions/icon-button/IconButton.d.ts +4 -0
- package/dist/esm/components/actions/icon-button/IconButton.props.d.ts +37 -0
- package/dist/esm/components/actions/icon-button/IconButton.styles.d.ts +4 -0
- package/dist/esm/components/actions/icon-button/index.d.ts +2 -0
- package/dist/esm/components/data-display/chip/Chip.props.d.ts +10 -0
- package/dist/esm/components/forms/form/Form.d.ts +3 -0
- package/dist/esm/components/forms/form/Form.props.d.ts +9 -0
- package/dist/esm/components/forms/form/Form.styles.d.ts +3 -0
- package/dist/esm/components/forms/form/index.d.ts +2 -0
- package/dist/esm/components/forms/input/Input.d.ts +3 -0
- package/dist/esm/components/forms/input/Input.props.d.ts +32 -0
- package/dist/esm/components/forms/input/Input.styles.d.ts +15 -0
- package/dist/esm/components/forms/input/index.d.ts +2 -0
- package/dist/esm/components/forms/textarea/TextArea.d.ts +3 -0
- package/dist/esm/components/forms/textarea/TextArea.props.d.ts +27 -0
- package/dist/esm/components/forms/textarea/TextArea.styles.d.ts +11 -0
- package/dist/esm/components/forms/textarea/index.d.ts +2 -0
- package/dist/esm/components/foundation/icon/Icon.d.ts +35 -0
- package/dist/esm/components/foundation/icon/Icon.props.d.ts +24 -0
- package/dist/esm/components/foundation/icon/Icon.styles.d.ts +3 -0
- package/dist/esm/components/foundation/icon/index.d.ts +2 -0
- package/dist/esm/components/foundation/text/Text.d.ts +21 -0
- package/dist/esm/components/foundation/text/Text.props.d.ts +38 -0
- package/dist/esm/components/foundation/text/Text.styles.d.ts +4 -0
- package/dist/esm/components/foundation/text/index.d.ts +2 -0
- package/dist/esm/components/index.d.ts +11 -5
- package/dist/esm/components/inputs/button/Button.props.d.ts +1 -0
- package/dist/esm/components/inputs/icon-button/IconButton.props.d.ts +1 -0
- package/dist/esm/components/inputs/input/Input.d.ts +6 -0
- package/dist/esm/components/inputs/input/Input.props.d.ts +17 -0
- package/dist/esm/components/inputs/input/Input.styles.d.ts +7 -0
- package/dist/esm/components/inputs/input/index.d.ts +2 -0
- package/dist/esm/components/layout/card/Card.props.d.ts +10 -0
- package/dist/esm/components/layout/grid/Grid.props.d.ts +10 -0
- package/dist/esm/components/layout/page-construction/page/Page.d.ts +10 -0
- package/dist/esm/components/layout/page-construction/page/Page.props.d.ts +30 -0
- package/dist/esm/components/layout/page-construction/page/Page.styles.d.ts +5 -0
- package/dist/esm/components/layout/page-construction/page/index.d.ts +2 -0
- package/dist/esm/components/layout/page-construction/page-section/PageSection.d.ts +10 -0
- package/dist/esm/components/layout/page-construction/page-section/PageSection.props.d.ts +34 -0
- package/dist/esm/components/layout/page-construction/page-section/PageSection.styles.d.ts +4 -0
- package/dist/esm/components/layout/page-construction/page-section/index.d.ts +2 -0
- package/dist/esm/components/layout/stack/Stack.props.d.ts +10 -0
- package/dist/esm/components/layout/text/Text.d.ts +1 -0
- package/dist/esm/components/layout/text/Text.props.d.ts +3 -0
- package/dist/esm/components/navigation/breadcrumb/Breadcrumb.d.ts +12 -0
- package/dist/esm/components/navigation/breadcrumb/Breadcrumb.props.d.ts +13 -0
- package/dist/esm/components/navigation/breadcrumb/Breadcrumb.styles.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.d.ts +8 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.props.d.ts +5 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis/BreadcrumbEllipsis.styles.d.ts +7 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis/index.d.ts +2 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbEllipsis.d.ts +9 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbItem/BreadcrumbItem.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbItem/BreadcrumbItem.styles.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbItem/index.d.ts +1 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbItem.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.d.ts +7 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.props.d.ts +14 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink/BreadcrumbLink.styles.d.ts +7 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink/index.d.ts +2 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbLink.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbList/BreadcrumbList.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbList/BreadcrumbList.styles.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbList/index.d.ts +1 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbList.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.d.ts +7 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.props.d.ts +10 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage/BreadcrumbPage.styles.d.ts +7 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage/index.d.ts +2 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbPage.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.d.ts +7 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.props.d.ts +5 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator/BreadcrumbSeparator.styles.d.ts +6 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator/index.d.ts +2 -0
- package/dist/esm/components/navigation/breadcrumb/BreadcrumbSeparator.d.ts +9 -0
- package/dist/esm/components/navigation/breadcrumb/index.d.ts +10 -0
- package/dist/esm/components/navigation/drawer-item/DrawerItem.props.d.ts +10 -0
- package/dist/esm/components/overlay/accordion/Accordion.d.ts +10 -0
- package/dist/esm/components/overlay/accordion/Accordion.props.d.ts +52 -0
- package/dist/esm/components/overlay/accordion/Accordion.styles.d.ts +7 -0
- package/dist/esm/components/overlay/accordion/index.d.ts +2 -0
- package/dist/esm/index.js +733 -205
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interfaces/button.types.d.ts +14 -1
- package/dist/esm/resources/Icons.d.ts +5 -1
- package/dist/esm/resources/icons/ChevronRightIcon.d.ts +1 -0
- package/dist/esm/resources/icons/EyeIcon.d.ts +1 -0
- package/dist/esm/resources/icons/EyeOffIcon.d.ts +1 -0
- package/dist/esm/resources/icons/MoreHorizontalIcon.d.ts +1 -0
- package/dist/esm/utils/ui/components/actions/button/getButtonSizeStyles.utils.d.ts +12 -0
- package/dist/esm/utils/ui/components/actions/button/getButtonVariantStyles.utils.d.ts +7 -0
- package/dist/esm/utils/ui/components/actions/icon-button/getIconButtonSizeStyles.utils.d.ts +9 -0
- package/dist/esm/utils/ui/components/data-display/chip/getChipColorStyles.utils.d.ts +7 -0
- package/dist/esm/utils/ui/components/data-display/chip/getChipContentSize.utils.d.ts +8 -0
- package/dist/esm/utils/ui/components/data-display/chip/getChipSizeStyles.utils.d.ts +12 -0
- package/dist/esm/utils/ui/components/foundation/text/getTextVariantStyles.utils.d.ts +7 -0
- package/dist/esm/utils/ui/components/foundation/text/getTruncateTextStyles.utils.d.ts +17 -0
- package/dist/esm/utils/ui/components/foundation/text/parseTextWithBold.utils.d.ts +7 -0
- package/dist/esm/utils/ui/components/navigation/breadcrumb/buildBreadcrumbChildren.utils.d.ts +5 -0
- package/dist/esm/utils/ui/components/navigation/breadcrumb/flattenChildren.utils.d.ts +5 -0
- package/dist/esm/utils/ui/components/navigation/breadcrumb/insertSeparators.utils.d.ts +5 -0
- package/dist/esm/utils/ui/components/navigation/breadcrumb/isSeparator.utils.d.ts +5 -0
- package/dist/index.d.ts +382 -45
- package/package.json +76 -77
package/README.md
CHANGED
|
@@ -48,7 +48,9 @@ function App() {
|
|
|
48
48
|
|-----------|-------------|
|
|
49
49
|
| **Accordion** | Collapsible container to show/hide content |
|
|
50
50
|
| **Button** | Button with variants (contained, outlined, text), icons, and states |
|
|
51
|
+
| **Breadcrumb** | Navigation component for hierarchical page structures |
|
|
51
52
|
| **IconButton** | Icon-only button component |
|
|
53
|
+
| **Input** | Input field component with controlled value and change handler |
|
|
52
54
|
| **Text** | Typography component with semantic HTML tags (h1-h6, p, span, label) |
|
|
53
55
|
| **Stack** | Flexbox container for horizontal/vertical layouts |
|
|
54
56
|
| **Card** | Container with background, border radius, and shadow |
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { ButtonProps } from '@components/actions/button/Button.props.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Button component
|
|
5
|
+
*
|
|
6
|
+
* **Variants:**
|
|
7
|
+
* - `contained`: Solid background button (default)
|
|
8
|
+
* - `outlined`: Border only button
|
|
9
|
+
* - `text`: Text only button without background
|
|
10
|
+
*/
|
|
11
|
+
declare const Button: FC<ButtonProps>;
|
|
12
|
+
export default Button;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Theme } from '@aurora-ds/theme';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { ButtonVariants, IconButtonSizes } from '@interfaces/button.types.ts';
|
|
4
|
+
export type ButtonProps = {
|
|
5
|
+
/** Button text label */
|
|
6
|
+
label: string;
|
|
7
|
+
/** Optional icon to display before label */
|
|
8
|
+
startIcon?: ReactNode;
|
|
9
|
+
/** Optional icon to display after label */
|
|
10
|
+
endIcon?: ReactNode;
|
|
11
|
+
/** Click handler */
|
|
12
|
+
onClick?: () => void;
|
|
13
|
+
/** Visual variant of the button */
|
|
14
|
+
variant?: ButtonVariants;
|
|
15
|
+
/** Button type attribute */
|
|
16
|
+
type?: 'button' | 'submit';
|
|
17
|
+
/** Active/pressed state */
|
|
18
|
+
active?: boolean;
|
|
19
|
+
/** Disabled state */
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
/** Custom text color (overrides variant color) */
|
|
22
|
+
textColor?: keyof Theme['colors'];
|
|
23
|
+
/** Size of the button */
|
|
24
|
+
size?: IconButtonSizes;
|
|
25
|
+
/** Accessibility label for screen readers */
|
|
26
|
+
ariaLabel?: string;
|
|
27
|
+
/** ID of element that labels this button */
|
|
28
|
+
ariaLabelledBy?: string;
|
|
29
|
+
/** ID of element that describes this button */
|
|
30
|
+
ariaDescribedBy?: string;
|
|
31
|
+
/** ARIA role */
|
|
32
|
+
role?: string;
|
|
33
|
+
/** Tab index for keyboard navigation */
|
|
34
|
+
tabIndex?: number;
|
|
35
|
+
};
|
|
36
|
+
export type ButtonStyleParams = {
|
|
37
|
+
variant?: ButtonVariants;
|
|
38
|
+
active?: boolean;
|
|
39
|
+
textColor?: keyof Theme['colors'];
|
|
40
|
+
size?: IconButtonSizes;
|
|
41
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ButtonStyleParams } from '@components/actions/button/Button.props.ts';
|
|
2
|
+
/**
|
|
3
|
+
* Button styles using createStyles from @aurora-ds/theme
|
|
4
|
+
*
|
|
5
|
+
* Override via className with createStyles:
|
|
6
|
+
* ```tsx
|
|
7
|
+
* const myStyles = createStyles((theme) => ({
|
|
8
|
+
* custom: {
|
|
9
|
+
* backgroundColor: theme.colors.accent,
|
|
10
|
+
* ':hover': { backgroundColor: theme.colors.accentHover }
|
|
11
|
+
* }
|
|
12
|
+
* }))
|
|
13
|
+
* <Button className={myStyles.custom} label="Custom" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export declare const BUTTON_STYLES: {
|
|
17
|
+
root: (args_0: ButtonStyleParams) => string;
|
|
18
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Theme } from '@aurora-ds/theme';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { IconButtonSizes, IconButtonVariants } from '@/interfaces';
|
|
4
|
+
export type IconButtonProps = {
|
|
5
|
+
/** IconButton icon */
|
|
6
|
+
icon?: ReactNode;
|
|
7
|
+
/** Click handler */
|
|
8
|
+
onClick?: () => void;
|
|
9
|
+
/** Visual variant of the button */
|
|
10
|
+
variant?: IconButtonVariants;
|
|
11
|
+
/** Button type attribute */
|
|
12
|
+
type?: 'button' | 'submit';
|
|
13
|
+
/** Active/pressed state */
|
|
14
|
+
active?: boolean;
|
|
15
|
+
/** Disabled state */
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
/** Custom text/icon color (overrides variant color) */
|
|
18
|
+
textColor?: keyof Theme['colors'];
|
|
19
|
+
/** Size of the icon button */
|
|
20
|
+
size?: IconButtonSizes;
|
|
21
|
+
/** Accessibility label for screen readers */
|
|
22
|
+
ariaLabel?: string;
|
|
23
|
+
/** ID of element that labels this button */
|
|
24
|
+
ariaLabelledBy?: string;
|
|
25
|
+
/** ID of element that describes this button */
|
|
26
|
+
ariaDescribedBy?: string;
|
|
27
|
+
/** ARIA role */
|
|
28
|
+
role?: string;
|
|
29
|
+
/** Tab index for keyboard navigation */
|
|
30
|
+
tabIndex?: number;
|
|
31
|
+
};
|
|
32
|
+
export type IconButtonStyleParams = {
|
|
33
|
+
variant?: IconButtonVariants;
|
|
34
|
+
active?: boolean;
|
|
35
|
+
size?: IconButtonSizes;
|
|
36
|
+
textColor?: keyof Theme['colors'];
|
|
37
|
+
};
|
|
@@ -18,6 +18,16 @@ export type ChipProps = {
|
|
|
18
18
|
radius?: keyof Theme['radius'];
|
|
19
19
|
/** Disabled state */
|
|
20
20
|
disabled?: boolean;
|
|
21
|
+
/** Accessibility label for screen readers */
|
|
22
|
+
ariaLabel?: string;
|
|
23
|
+
/** ID of element that labels this chip */
|
|
24
|
+
ariaLabelledBy?: string;
|
|
25
|
+
/** ID of element that describes this chip */
|
|
26
|
+
ariaDescribedBy?: string;
|
|
27
|
+
/** ARIA role */
|
|
28
|
+
role?: string;
|
|
29
|
+
/** Tab index for keyboard navigation */
|
|
30
|
+
tabIndex?: number;
|
|
21
31
|
};
|
|
22
32
|
export type ChipStyleParams = {
|
|
23
33
|
variant: ChipVariant;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { FormEvent, ReactNode } from 'react';
|
|
2
|
+
export type FormProps = {
|
|
3
|
+
/** Form content (inputs, buttons, etc.) */
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
/** Callback fired when the form is submitted (preventDefault is called automatically) */
|
|
6
|
+
onSubmit?: (e: FormEvent) => void;
|
|
7
|
+
/** Accessibility label for the form */
|
|
8
|
+
ariaLabel?: string;
|
|
9
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { CSSProperties, ReactNode } from 'react';
|
|
2
|
+
export type InputProps = {
|
|
3
|
+
/** The value of the input */
|
|
4
|
+
value: string;
|
|
5
|
+
/** Callback fired when the value changes */
|
|
6
|
+
onChange: (value: string) => void;
|
|
7
|
+
/** Label displayed above the input */
|
|
8
|
+
label?: string;
|
|
9
|
+
/** Whether the field is mandatory (displays an asterisk next to the label) */
|
|
10
|
+
mandatory?: boolean;
|
|
11
|
+
/** Placeholder text */
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
/** Whether the input is disabled */
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
/** Input type */
|
|
16
|
+
type?: 'text' | 'password' | 'email' | 'number';
|
|
17
|
+
/** Accessibility label */
|
|
18
|
+
ariaLabel?: string;
|
|
19
|
+
/** Icon to display before the input */
|
|
20
|
+
startIcon?: ReactNode;
|
|
21
|
+
/** Icon to display after the input */
|
|
22
|
+
endIcon?: ReactNode;
|
|
23
|
+
/** Custom width for the input */
|
|
24
|
+
width?: CSSProperties['width'];
|
|
25
|
+
};
|
|
26
|
+
export type InputStyleParams = {
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
hasStartIcon?: boolean;
|
|
29
|
+
hasEndIcon?: boolean;
|
|
30
|
+
hasPasswordToggle?: boolean;
|
|
31
|
+
width?: CSSProperties['width'];
|
|
32
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { InputStyleParams } from '@components/forms/input/Input.props.ts';
|
|
2
|
+
import type { CSSProperties } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Input styles using createStyles from @aurora-ds/theme
|
|
5
|
+
*/
|
|
6
|
+
export declare const INPUT_STYLES: {
|
|
7
|
+
container: (args_0: {
|
|
8
|
+
width?: CSSProperties["width"];
|
|
9
|
+
}) => string;
|
|
10
|
+
startIcon: string;
|
|
11
|
+
endIcon: string;
|
|
12
|
+
endIconShifted: string;
|
|
13
|
+
passwordToggle: string;
|
|
14
|
+
root: (args_0: InputStyleParams) => string;
|
|
15
|
+
};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { TextAreaProps } from '@components/forms/textarea/TextArea.props.ts';
|
|
2
|
+
declare const _default: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<TextAreaProps & import("react").RefAttributes<HTMLTextAreaElement>>>;
|
|
3
|
+
export default _default;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
export type TextAreaProps = {
|
|
3
|
+
/** The value of the textarea */
|
|
4
|
+
value: string;
|
|
5
|
+
/** Callback fired when the value changes */
|
|
6
|
+
onChange: (value: string) => void;
|
|
7
|
+
/** Label displayed above the textarea */
|
|
8
|
+
label?: string;
|
|
9
|
+
/** Whether the field is mandatory (displays an asterisk next to the label) */
|
|
10
|
+
mandatory?: boolean;
|
|
11
|
+
/** Placeholder text */
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
/** Whether the textarea is disabled */
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
/** Accessibility label */
|
|
16
|
+
ariaLabel?: string;
|
|
17
|
+
/** Custom width for the textarea */
|
|
18
|
+
width?: CSSProperties['width'];
|
|
19
|
+
/** Minimum number of visible text lines (auto-expands with content) */
|
|
20
|
+
minRows?: number;
|
|
21
|
+
/** Maximum number of visible text lines (adds scroll when exceeded) */
|
|
22
|
+
maxRows?: number;
|
|
23
|
+
};
|
|
24
|
+
export type TextAreaStyleParams = {
|
|
25
|
+
disabled?: boolean;
|
|
26
|
+
width?: CSSProperties['width'];
|
|
27
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TextAreaStyleParams } from '@components/forms/textarea/TextArea.props.ts';
|
|
2
|
+
import type { CSSProperties } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* TextArea styles using createStyles from @aurora-ds/theme
|
|
5
|
+
*/
|
|
6
|
+
export declare const TEXTAREA_STYLES: {
|
|
7
|
+
container: (args_0: {
|
|
8
|
+
width?: CSSProperties["width"];
|
|
9
|
+
}) => string;
|
|
10
|
+
root: (args_0: TextAreaStyleParams) => string;
|
|
11
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { IconProps } from '@components/foundation/icon/Icon.props.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Icon component - Wrapper for SVG icons with theme-aware styling
|
|
5
|
+
*
|
|
6
|
+
* **Features:**
|
|
7
|
+
* - Theme-aware sizing via font sizes
|
|
8
|
+
* - Color and fill support from theme
|
|
9
|
+
* - Optional background with padding and border radius
|
|
10
|
+
* - Transition animation on color changes
|
|
11
|
+
*
|
|
12
|
+
* **Usage:**
|
|
13
|
+
* ```tsx
|
|
14
|
+
* import { SomeIcon } from 'some-icon-library'
|
|
15
|
+
*
|
|
16
|
+
* <Icon size="md" color="primary">
|
|
17
|
+
* <SomeIcon />
|
|
18
|
+
* </Icon>
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* **With background:**
|
|
22
|
+
* ```tsx
|
|
23
|
+
* <Icon
|
|
24
|
+
* size="lg"
|
|
25
|
+
* color="onPrimary"
|
|
26
|
+
* backgroundColor="primary"
|
|
27
|
+
* padding="sm"
|
|
28
|
+
* borderRadius="full"
|
|
29
|
+
* >
|
|
30
|
+
* <SomeIcon />
|
|
31
|
+
* </Icon>
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
declare const Icon: FC<IconProps>;
|
|
35
|
+
export default Icon;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Theme } from '@aurora-ds/theme';
|
|
2
|
+
import { PropsWithChildren } from 'react';
|
|
3
|
+
export type IconProps = PropsWithChildren<{
|
|
4
|
+
/** Icon size based on theme font sizes */
|
|
5
|
+
size?: keyof Theme['fontSize'];
|
|
6
|
+
/** Icon stroke/line color from theme */
|
|
7
|
+
color?: keyof Theme['colors'];
|
|
8
|
+
/** Background color from theme */
|
|
9
|
+
backgroundColor?: keyof Theme['colors'];
|
|
10
|
+
/** Padding from theme spacing */
|
|
11
|
+
padding?: keyof Theme['spacing'];
|
|
12
|
+
/** Border radius from theme */
|
|
13
|
+
borderRadius?: keyof Theme['radius'];
|
|
14
|
+
/** Accessibility label for screen readers */
|
|
15
|
+
ariaLabel?: string;
|
|
16
|
+
/** ID of element that labels this icon */
|
|
17
|
+
ariaLabelledBy?: string;
|
|
18
|
+
/** ID of element that describes this icon */
|
|
19
|
+
ariaDescribedBy?: string;
|
|
20
|
+
/** ARIA role */
|
|
21
|
+
role?: string;
|
|
22
|
+
/** Tab index for keyboard navigation */
|
|
23
|
+
tabIndex?: number;
|
|
24
|
+
}>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const ICON_STYLES: {
|
|
2
|
+
root: (size?: keyof import("@aurora-ds/theme").BaseFontSize | undefined, color?: keyof import("@aurora-ds/theme").BaseColors | undefined, backgroundColor?: keyof import("@aurora-ds/theme").BaseColors | undefined, padding?: keyof import("@aurora-ds/theme").BaseSpacing | undefined, borderRadius?: keyof import("@aurora-ds/theme").BaseRadius | undefined) => string;
|
|
3
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { TextProps } from '@components/foundation/text/Text.props.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Text component - Renders semantic HTML elements based on variant
|
|
5
|
+
*
|
|
6
|
+
* **Variants:**
|
|
7
|
+
* - `h1-h6`: Heading elements with appropriate styling
|
|
8
|
+
* - `p`: Paragraph element with relaxed line height
|
|
9
|
+
* - `span`: Inline text element (default)
|
|
10
|
+
* - `label`: Label element with medium font weight
|
|
11
|
+
*
|
|
12
|
+
* **Features:**
|
|
13
|
+
* - Automatic HTML tag selection based on variant
|
|
14
|
+
* - Theme-aware colors
|
|
15
|
+
* - Text truncation with `maxLines`
|
|
16
|
+
* - Underline support
|
|
17
|
+
* - Preserve whitespace with `preserveWhitespace` prop
|
|
18
|
+
* - Bold text with **double asterisks** syntax
|
|
19
|
+
*/
|
|
20
|
+
declare const Text: FC<TextProps>;
|
|
21
|
+
export default Text;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Theme } from '@aurora-ds/theme';
|
|
2
|
+
import { PropsWithChildren } from 'react';
|
|
3
|
+
import { TextVariants } from '@interfaces/text.types.ts';
|
|
4
|
+
export type TextProps = PropsWithChildren<{
|
|
5
|
+
/** Text variant that determines the HTML tag and default styling */
|
|
6
|
+
variant?: TextVariants;
|
|
7
|
+
/** Text color from theme */
|
|
8
|
+
color?: keyof Theme['colors'];
|
|
9
|
+
/** Font size from theme (overrides variant fontSize if provided) */
|
|
10
|
+
fontSize?: keyof Theme['fontSize'];
|
|
11
|
+
/** Font family override (CSS value) */
|
|
12
|
+
fontFamily?: string;
|
|
13
|
+
/** Maximum number of lines before truncation with ellipsis */
|
|
14
|
+
maxLines?: number;
|
|
15
|
+
/** Add underline text decoration */
|
|
16
|
+
underline?: boolean;
|
|
17
|
+
/** Preserve whitespace and line breaks */
|
|
18
|
+
preserveWhitespace?: boolean;
|
|
19
|
+
/** Accessibility label for screen readers */
|
|
20
|
+
ariaLabel?: string;
|
|
21
|
+
/** ID of element that labels this text */
|
|
22
|
+
ariaLabelledBy?: string;
|
|
23
|
+
/** ID of element that describes this text */
|
|
24
|
+
ariaDescribedBy?: string;
|
|
25
|
+
/** ARIA role */
|
|
26
|
+
role?: string;
|
|
27
|
+
/** Tab index for keyboard navigation */
|
|
28
|
+
tabIndex?: number;
|
|
29
|
+
}>;
|
|
30
|
+
export type TextStyleParams = {
|
|
31
|
+
variant?: TextVariants;
|
|
32
|
+
color?: keyof Theme['colors'];
|
|
33
|
+
fontSize?: keyof Theme['fontSize'];
|
|
34
|
+
fontFamily?: string;
|
|
35
|
+
maxLines?: number;
|
|
36
|
+
underline?: boolean;
|
|
37
|
+
preserveWhitespace?: boolean;
|
|
38
|
+
};
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
export * from '@components/
|
|
1
|
+
export * from '@components/foundation/icon';
|
|
2
|
+
export * from '@components/foundation/text';
|
|
2
3
|
export * from '@components/data-display/chip';
|
|
3
|
-
export * from '@components/
|
|
4
|
-
export * from '@components/
|
|
5
|
-
export * from '@components/
|
|
4
|
+
export * from '@components/actions/button';
|
|
5
|
+
export * from '@components/actions/icon-button';
|
|
6
|
+
export * from '@components/forms/form';
|
|
7
|
+
export * from '@components/forms/input';
|
|
8
|
+
export * from '@components/forms/textarea';
|
|
6
9
|
export * from '@components/layout/stack';
|
|
7
10
|
export * from '@components/layout/card';
|
|
8
11
|
export * from '@components/layout/grid';
|
|
9
|
-
export * from '@components/layout/
|
|
12
|
+
export * from '@components/layout/page-construction/page-section';
|
|
13
|
+
export * from '@components/layout/page-construction/page';
|
|
14
|
+
export * from '@components/overlay/accordion';
|
|
10
15
|
export * from '@components/navigation/drawer-item';
|
|
16
|
+
export * from '@components/navigation/breadcrumb';
|
|
11
17
|
export type { ButtonVariants, ButtonVariantStyle } from '@interfaces/button.types';
|
|
12
18
|
export type { TextVariants, TextVariantStyle } from '@interfaces/text.types';
|
|
13
19
|
export type { ChipVariant, ChipColor, ChipSize } from '@interfaces/chip.types';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type InputProps = {
|
|
2
|
+
/** The value of the input */
|
|
3
|
+
value: string;
|
|
4
|
+
/** Callback fired when the value changes */
|
|
5
|
+
onChange: (value: string) => void;
|
|
6
|
+
/** Placeholder text */
|
|
7
|
+
placeholder?: string;
|
|
8
|
+
/** Whether the input is disabled */
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
/** Input type */
|
|
11
|
+
type?: 'text' | 'password' | 'email' | 'number';
|
|
12
|
+
/** Accessibility label */
|
|
13
|
+
ariaLabel?: string;
|
|
14
|
+
};
|
|
15
|
+
export type InputStyleParams = {
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
};
|
|
@@ -25,6 +25,16 @@ export type CardProps = {
|
|
|
25
25
|
backgroundColor?: keyof Theme['colors'];
|
|
26
26
|
/** Border color of the card */
|
|
27
27
|
borderColor?: keyof Theme['colors'];
|
|
28
|
+
/** Accessibility label for screen readers */
|
|
29
|
+
ariaLabel?: string;
|
|
30
|
+
/** ID of element that labels this card */
|
|
31
|
+
ariaLabelledBy?: string;
|
|
32
|
+
/** ID of element that describes this card */
|
|
33
|
+
ariaDescribedBy?: string;
|
|
34
|
+
/** ARIA role */
|
|
35
|
+
role?: string;
|
|
36
|
+
/** Tab index for keyboard navigation */
|
|
37
|
+
tabIndex?: number;
|
|
28
38
|
};
|
|
29
39
|
export type CardStyleParams = {
|
|
30
40
|
direction: CSSProperties['flexDirection'];
|
|
@@ -29,6 +29,16 @@ export type GridProps = {
|
|
|
29
29
|
padding?: keyof Theme['spacing'];
|
|
30
30
|
/** Minimum width for auto-fill/auto-fit columns */
|
|
31
31
|
minChildWidth?: CSSProperties['width'];
|
|
32
|
+
/** Accessibility label for screen readers */
|
|
33
|
+
ariaLabel?: string;
|
|
34
|
+
/** ID of element that labels this grid */
|
|
35
|
+
ariaLabelledBy?: string;
|
|
36
|
+
/** ID of element that describes this grid */
|
|
37
|
+
ariaDescribedBy?: string;
|
|
38
|
+
/** ARIA role */
|
|
39
|
+
role?: string;
|
|
40
|
+
/** Tab index for keyboard navigation */
|
|
41
|
+
tabIndex?: number;
|
|
32
42
|
};
|
|
33
43
|
export type GridStyleParams = {
|
|
34
44
|
columns?: number | string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { PageProps } from '@components/layout/page-construction/page/Page.props.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Page component
|
|
5
|
+
*
|
|
6
|
+
* A layout component that provides consistent page structure with optional footer.
|
|
7
|
+
* Supports customization of dimensions, background, and content constraints.
|
|
8
|
+
*/
|
|
9
|
+
declare const Page: FC<PageProps>;
|
|
10
|
+
export default Page;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { CSSProperties, ReactNode } from 'react';
|
|
2
|
+
export type PageProps = {
|
|
3
|
+
/** Page content */
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
/** Optional footer component */
|
|
6
|
+
footer?: ReactNode;
|
|
7
|
+
/** Maximum width of the page content (default: 100%) */
|
|
8
|
+
maxWidth?: CSSProperties['maxWidth'];
|
|
9
|
+
/** Background color */
|
|
10
|
+
backgroundColor?: CSSProperties['backgroundColor'];
|
|
11
|
+
/** Padding around the page */
|
|
12
|
+
padding?: CSSProperties['padding'];
|
|
13
|
+
/** Custom className for additional styling */
|
|
14
|
+
className?: string;
|
|
15
|
+
/** Accessibility label for screen readers */
|
|
16
|
+
ariaLabel?: string;
|
|
17
|
+
/** ID of element that labels this page */
|
|
18
|
+
ariaLabelledBy?: string;
|
|
19
|
+
/** ID of element that describes this page */
|
|
20
|
+
ariaDescribedBy?: string;
|
|
21
|
+
/** ARIA role */
|
|
22
|
+
role?: string;
|
|
23
|
+
/** Tab index for keyboard navigation */
|
|
24
|
+
tabIndex?: number;
|
|
25
|
+
};
|
|
26
|
+
export type PageStyleParams = {
|
|
27
|
+
maxWidth?: CSSProperties['maxWidth'];
|
|
28
|
+
backgroundColor?: CSSProperties['backgroundColor'];
|
|
29
|
+
padding?: CSSProperties['padding'];
|
|
30
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { PageSectionProps } from '@components/layout/page-construction/page-section/PageSection.props.ts';
|
|
3
|
+
/**
|
|
4
|
+
* PageSection component
|
|
5
|
+
*
|
|
6
|
+
* A layout component that provides consistent spacing and alignment for page sections.
|
|
7
|
+
* Supports customization of gap, padding, alignment, min height and max width.
|
|
8
|
+
*/
|
|
9
|
+
declare const PageSection: FC<PageSectionProps>;
|
|
10
|
+
export default PageSection;
|