@nationaldesignstudio/react 0.0.10 → 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.
- package/dist/component-registry.md +2405 -0
- package/dist/components/atoms/accordion/accordion.d.ts +44 -3
- package/dist/components/atoms/button/button.d.ts +155 -11
- package/dist/components/atoms/button/icon-button.d.ts +114 -5
- package/dist/components/atoms/ndstudio-footer/ndstudio-footer.d.ts +30 -0
- package/dist/components/atoms/pager-control/pager-control.d.ts +116 -9
- package/dist/components/dev-tools/dev-toolbar/dev-toolbar.d.ts +4 -0
- package/dist/components/dev-tools/grid-overlay/grid-overlay.d.ts +6 -0
- package/dist/components/organisms/card/card.d.ts +40 -4
- package/dist/components/sections/banner/banner.d.ts +39 -6
- package/dist/components/sections/card-grid/card-grid.d.ts +37 -4
- package/dist/components/sections/faq-section/faq-section.d.ts +2 -2
- package/dist/components/sections/hero/hero.d.ts +167 -16
- package/dist/components/sections/river/river.d.ts +37 -4
- package/dist/components/sections/tout/tout.d.ts +86 -6
- package/dist/components/sections/two-column-section/two-column-section.d.ts +80 -6
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/use-event-listener.d.ts +24 -0
- package/dist/index.d.ts +9 -2
- package/dist/index.js +12034 -5934
- package/dist/index.js.map +1 -1
- package/dist/lib/theme.d.ts +330 -0
- package/dist/tokens.css +13930 -6368
- package/package.json +14 -24
- package/src/App.css +0 -0
- package/src/App.tsx +0 -7
- package/src/assets/fonts/PPNeueMontreal-Variable.woff2 +0 -0
- package/src/assets/react.svg +0 -1
- package/src/components/atoms/accordion/accordion.stories.tsx +0 -228
- package/src/components/atoms/accordion/accordion.tsx +0 -137
- package/src/components/atoms/accordion/index.ts +0 -6
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-charcoal-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-charcoal-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-charcoal-outline-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-charcoal-outline-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-charcoal-outline-quiet-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-charcoal-outline-quiet-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-disabled-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-disabled-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-ivory-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-ivory-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-ivory-outline-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-ivory-outline-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-ivory-outline-quiet-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-ivory-outline-quiet-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-size-large-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-size-large-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-size-medium-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-size-medium-chromium-linux.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-size-small-chromium-darwin.png +0 -0
- package/src/components/atoms/button/__screenshots__/button.visual.test.tsx/button-size-small-chromium-linux.png +0 -0
- package/src/components/atoms/button/button.stories.tsx +0 -84
- package/src/components/atoms/button/button.test.tsx +0 -141
- package/src/components/atoms/button/button.tsx +0 -95
- package/src/components/atoms/button/button.visual.test.tsx +0 -102
- package/src/components/atoms/button/icon-button.stories.tsx +0 -166
- package/src/components/atoms/button/icon-button.tsx +0 -125
- package/src/components/atoms/button/index.ts +0 -6
- package/src/components/atoms/pager-control/index.ts +0 -5
- package/src/components/atoms/pager-control/pager-control.stories.tsx +0 -209
- package/src/components/atoms/pager-control/pager-control.test.tsx +0 -149
- package/src/components/atoms/pager-control/pager-control.tsx +0 -328
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-default-vertical-chromium-darwin.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-default-vertical-chromium-linux.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-horizontal-chromium-darwin.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-horizontal-chromium-linux.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-minimal-chromium-darwin.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-minimal-chromium-linux.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-without-actions-chromium-darwin.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-without-actions-chromium-linux.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-without-eyebrow-chromium-darwin.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-without-eyebrow-chromium-linux.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-without-image-chromium-darwin.png +0 -0
- package/src/components/organisms/card/__screenshots__/card.visual.test.tsx/card-without-image-chromium-linux.png +0 -0
- package/src/components/organisms/card/card.stories.tsx +0 -293
- package/src/components/organisms/card/card.test.tsx +0 -245
- package/src/components/organisms/card/card.tsx +0 -227
- package/src/components/organisms/card/card.visual.test.tsx +0 -197
- package/src/components/organisms/card/index.ts +0 -19
- package/src/components/organisms/navbar/__screenshots__/navbar.visual.test.tsx/navbar-active-link-chromium-darwin.png +0 -0
- package/src/components/organisms/navbar/__screenshots__/navbar.visual.test.tsx/navbar-active-link-chromium-linux.png +0 -0
- package/src/components/organisms/navbar/__screenshots__/navbar.visual.test.tsx/navbar-brand-only-chromium-darwin.png +0 -0
- package/src/components/organisms/navbar/__screenshots__/navbar.visual.test.tsx/navbar-brand-only-chromium-linux.png +0 -0
- package/src/components/organisms/navbar/__screenshots__/navbar.visual.test.tsx/navbar-default-chromium-darwin.png +0 -0
- package/src/components/organisms/navbar/__screenshots__/navbar.visual.test.tsx/navbar-default-chromium-linux.png +0 -0
- package/src/components/organisms/navbar/index.ts +0 -18
- package/src/components/organisms/navbar/navbar.stories.tsx +0 -313
- package/src/components/organisms/navbar/navbar.test.tsx +0 -190
- package/src/components/organisms/navbar/navbar.tsx +0 -317
- package/src/components/organisms/navbar/navbar.visual.test.tsx +0 -85
- package/src/components/organisms/us-gov-banner/__screenshots__/us-gov-banner.visual.test.tsx/us-gov-banner-custom-icon-chromium-darwin.png +0 -0
- package/src/components/organisms/us-gov-banner/__screenshots__/us-gov-banner.visual.test.tsx/us-gov-banner-custom-icon-chromium-linux.png +0 -0
- package/src/components/organisms/us-gov-banner/__screenshots__/us-gov-banner.visual.test.tsx/us-gov-banner-custom-text-chromium-darwin.png +0 -0
- package/src/components/organisms/us-gov-banner/__screenshots__/us-gov-banner.visual.test.tsx/us-gov-banner-custom-text-chromium-linux.png +0 -0
- package/src/components/organisms/us-gov-banner/__screenshots__/us-gov-banner.visual.test.tsx/us-gov-banner-default-chromium-darwin.png +0 -0
- package/src/components/organisms/us-gov-banner/__screenshots__/us-gov-banner.visual.test.tsx/us-gov-banner-default-chromium-linux.png +0 -0
- package/src/components/organisms/us-gov-banner/index.ts +0 -1
- package/src/components/organisms/us-gov-banner/us-gov-banner.stories.tsx +0 -35
- package/src/components/organisms/us-gov-banner/us-gov-banner.test.tsx +0 -107
- package/src/components/organisms/us-gov-banner/us-gov-banner.tsx +0 -73
- package/src/components/organisms/us-gov-banner/us-gov-banner.visual.test.tsx +0 -46
- package/src/components/sections/banner/banner.stories.tsx +0 -150
- package/src/components/sections/banner/banner.test.tsx +0 -185
- package/src/components/sections/banner/banner.tsx +0 -130
- package/src/components/sections/banner/index.ts +0 -2
- package/src/components/sections/card-grid/card-grid.stories.tsx +0 -351
- package/src/components/sections/card-grid/card-grid.tsx +0 -118
- package/src/components/sections/card-grid/index.ts +0 -1
- package/src/components/sections/faq-section/faq-section.tsx +0 -77
- package/src/components/sections/faq-section/index.ts +0 -2
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a1-desktop-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a1-desktop-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a1-mobile-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a1-mobile-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a1-tablet-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a1-tablet-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a2-desktop-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a2-desktop-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a2-mobile-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a2-mobile-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a2-tablet-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a2-tablet-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a3-desktop-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a3-desktop-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a3-mobile-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a3-mobile-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a3-tablet-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-a3-tablet-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-custom-class-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-custom-class-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-default-chromium-linux.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-long-title-chromium-darwin.png +0 -0
- package/src/components/sections/hero/__screenshots__/hero.visual.test.tsx/hero-long-title-chromium-linux.png +0 -0
- package/src/components/sections/hero/hero.stories.tsx +0 -145
- package/src/components/sections/hero/hero.test.tsx +0 -135
- package/src/components/sections/hero/hero.tsx +0 -191
- package/src/components/sections/hero/hero.visual.test.tsx +0 -140
- package/src/components/sections/hero/index.ts +0 -1
- package/src/components/sections/prose/__screenshots__/prose.visual.test.tsx/prose-h3-heading-chromium-darwin.png +0 -0
- package/src/components/sections/prose/__screenshots__/prose.visual.test.tsx/prose-h3-heading-chromium-linux.png +0 -0
- package/src/components/sections/prose/__screenshots__/prose.visual.test.tsx/prose-multiple-paragraphs-chromium-darwin.png +0 -0
- package/src/components/sections/prose/__screenshots__/prose.visual.test.tsx/prose-multiple-paragraphs-chromium-linux.png +0 -0
- package/src/components/sections/prose/__screenshots__/prose.visual.test.tsx/prose-multiple-sections-chromium-darwin.png +0 -0
- package/src/components/sections/prose/__screenshots__/prose.visual.test.tsx/prose-multiple-sections-chromium-linux.png +0 -0
- package/src/components/sections/prose/__screenshots__/prose.visual.test.tsx/prose-single-section-chromium-darwin.png +0 -0
- package/src/components/sections/prose/__screenshots__/prose.visual.test.tsx/prose-single-section-chromium-linux.png +0 -0
- package/src/components/sections/prose/index.ts +0 -6
- package/src/components/sections/prose/prose.stories.tsx +0 -144
- package/src/components/sections/prose/prose.test.tsx +0 -178
- package/src/components/sections/prose/prose.tsx +0 -88
- package/src/components/sections/prose/prose.visual.test.tsx +0 -105
- package/src/components/sections/river/index.ts +0 -1
- package/src/components/sections/river/river.stories.tsx +0 -237
- package/src/components/sections/river/river.test.tsx +0 -268
- package/src/components/sections/river/river.tsx +0 -175
- package/src/components/sections/tout/index.ts +0 -1
- package/src/components/sections/tout/tout.stories.tsx +0 -154
- package/src/components/sections/tout/tout.test.tsx +0 -242
- package/src/components/sections/tout/tout.tsx +0 -206
- package/src/components/sections/two-column-section/index.ts +0 -5
- package/src/components/sections/two-column-section/two-column-section.stories.tsx +0 -285
- package/src/components/sections/two-column-section/two-column-section.tsx +0 -152
- package/src/index.ts +0 -98
- package/src/lib/utils.ts +0 -6
- package/src/main.tsx +0 -13
- package/src/stories/Introduction.mdx +0 -114
- package/src/stories/TokenShowcase.stories.tsx +0 -92
- package/src/stories/TokenShowcase.tsx +0 -1352
- package/src/styles.css +0 -11
|
@@ -1,5 +1,42 @@
|
|
|
1
|
+
import { VariantProps } from 'tailwind-variants';
|
|
1
2
|
import * as React from "react";
|
|
2
|
-
|
|
3
|
+
declare const accordionVariants: import('tailwind-variants').TVReturnType<{
|
|
4
|
+
variant: {
|
|
5
|
+
dark: string;
|
|
6
|
+
light: string;
|
|
7
|
+
};
|
|
8
|
+
}, undefined, "flex flex-col", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
9
|
+
variant: {
|
|
10
|
+
dark: string;
|
|
11
|
+
light: string;
|
|
12
|
+
};
|
|
13
|
+
}, {
|
|
14
|
+
variant: {
|
|
15
|
+
dark: string;
|
|
16
|
+
light: string;
|
|
17
|
+
};
|
|
18
|
+
}>, {
|
|
19
|
+
variant: {
|
|
20
|
+
dark: string;
|
|
21
|
+
light: string;
|
|
22
|
+
};
|
|
23
|
+
}, undefined, import('tailwind-variants').TVReturnType<{
|
|
24
|
+
variant: {
|
|
25
|
+
dark: string;
|
|
26
|
+
light: string;
|
|
27
|
+
};
|
|
28
|
+
}, undefined, "flex flex-col", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
29
|
+
variant: {
|
|
30
|
+
dark: string;
|
|
31
|
+
light: string;
|
|
32
|
+
};
|
|
33
|
+
}, {
|
|
34
|
+
variant: {
|
|
35
|
+
dark: string;
|
|
36
|
+
light: string;
|
|
37
|
+
};
|
|
38
|
+
}>, unknown, unknown, undefined>>;
|
|
39
|
+
export interface AccordionProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof accordionVariants> {
|
|
3
40
|
/**
|
|
4
41
|
* Allow multiple items to be expanded at once
|
|
5
42
|
* @default false
|
|
@@ -15,9 +52,13 @@ export interface AccordionProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
15
52
|
* Accordion component for expandable/collapsible content sections.
|
|
16
53
|
* Built on Base UI's Accordion primitive.
|
|
17
54
|
*
|
|
55
|
+
* Variants:
|
|
56
|
+
* - dark: Dark theme styling (default)
|
|
57
|
+
* - light: Light theme styling
|
|
58
|
+
*
|
|
18
59
|
* @example
|
|
19
60
|
* ```tsx
|
|
20
|
-
* <Accordion defaultExpanded="item-1">
|
|
61
|
+
* <Accordion defaultExpanded="item-1" variant="dark">
|
|
21
62
|
* <AccordionItem id="item-1" title="Question 1">
|
|
22
63
|
* Answer to question 1
|
|
23
64
|
* </AccordionItem>
|
|
@@ -47,4 +88,4 @@ export interface AccordionItemProps extends Omit<React.HTMLAttributes<HTMLDivEle
|
|
|
47
88
|
* Must be used within an Accordion component.
|
|
48
89
|
*/
|
|
49
90
|
declare const AccordionItem: React.ForwardRefExoticComponent<AccordionItemProps & React.RefAttributes<HTMLDivElement>>;
|
|
50
|
-
export { Accordion, AccordionItem };
|
|
91
|
+
export { Accordion, AccordionItem, accordionVariants };
|
|
@@ -1,30 +1,174 @@
|
|
|
1
1
|
import { ButtonProps as BaseButtonProps } from '@base-ui-components/react/button';
|
|
2
|
-
import { VariantProps } from '
|
|
2
|
+
import { VariantProps } from 'tailwind-variants';
|
|
3
|
+
import { ButtonTheme } from '../../../lib/theme';
|
|
3
4
|
import * as React from "react";
|
|
4
5
|
/**
|
|
5
6
|
* Button component based on Figma BaseKit / Interface / Buttons
|
|
6
7
|
*
|
|
7
8
|
* Variants:
|
|
8
|
-
* -
|
|
9
|
+
* - primary: Primary filled button using semantic color tokens
|
|
10
|
+
* - primaryOutline: Outlined primary button (for light backgrounds)
|
|
11
|
+
* - secondary: Secondary button using semantic color tokens
|
|
12
|
+
* - charcoal: Dark filled button (for light backgrounds) - legacy
|
|
9
13
|
* - charcoalOutline: Dark outlined button (for light backgrounds)
|
|
10
14
|
* - charcoalOutlineQuiet: Subtle dark outlined button (for light backgrounds)
|
|
11
15
|
* - ivory: Light filled button (for dark backgrounds)
|
|
12
16
|
* - ivoryOutline: Light outlined button (for dark backgrounds)
|
|
13
17
|
* - ivoryOutlineQuiet: Subtle light outlined button (for dark backgrounds)
|
|
14
|
-
* -
|
|
18
|
+
* - gray: Gray filled button (for dark backgrounds)
|
|
15
19
|
*
|
|
16
20
|
* Sizes:
|
|
17
|
-
* - lg: Large buttons
|
|
18
|
-
* - default: Medium buttons
|
|
19
|
-
* - sm: Small buttons
|
|
21
|
+
* - lg: Large buttons
|
|
22
|
+
* - default: Medium buttons
|
|
23
|
+
* - sm: Small buttons
|
|
20
24
|
*
|
|
21
25
|
* For icon-only buttons, use the IconButton component instead.
|
|
26
|
+
*
|
|
27
|
+
* Theme Support:
|
|
28
|
+
* Pass a `theme` prop to override default colors via CSS custom properties.
|
|
29
|
+
* Surface tokens (--radius-surface-button, --surface-button-stroke) control
|
|
30
|
+
* border radius and stroke width across all variants.
|
|
22
31
|
*/
|
|
23
|
-
declare const buttonVariants: (
|
|
24
|
-
variant
|
|
25
|
-
|
|
26
|
-
|
|
32
|
+
declare const buttonVariants: import('tailwind-variants').TVReturnType<{
|
|
33
|
+
variant: {
|
|
34
|
+
primary: string;
|
|
35
|
+
primaryOutline: string;
|
|
36
|
+
secondary: string;
|
|
37
|
+
charcoal: string;
|
|
38
|
+
charcoalOutline: string;
|
|
39
|
+
charcoalOutlineQuiet: string;
|
|
40
|
+
ivory: string;
|
|
41
|
+
ivoryOutline: string;
|
|
42
|
+
ivoryOutlineQuiet: string;
|
|
43
|
+
gray: string;
|
|
44
|
+
themed: string;
|
|
45
|
+
};
|
|
46
|
+
size: {
|
|
47
|
+
lg: string;
|
|
48
|
+
default: string;
|
|
49
|
+
sm: string;
|
|
50
|
+
};
|
|
51
|
+
}, undefined, "inline-flex items-center justify-center gap-spacing-8 whitespace-nowrap transition-colors duration-150 cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 rounded-surface-button stroke-surface-button border-solid", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
52
|
+
variant: {
|
|
53
|
+
primary: string;
|
|
54
|
+
primaryOutline: string;
|
|
55
|
+
secondary: string;
|
|
56
|
+
charcoal: string;
|
|
57
|
+
charcoalOutline: string;
|
|
58
|
+
charcoalOutlineQuiet: string;
|
|
59
|
+
ivory: string;
|
|
60
|
+
ivoryOutline: string;
|
|
61
|
+
ivoryOutlineQuiet: string;
|
|
62
|
+
gray: string;
|
|
63
|
+
themed: string;
|
|
64
|
+
};
|
|
65
|
+
size: {
|
|
66
|
+
lg: string;
|
|
67
|
+
default: string;
|
|
68
|
+
sm: string;
|
|
69
|
+
};
|
|
70
|
+
}, {
|
|
71
|
+
variant: {
|
|
72
|
+
primary: string;
|
|
73
|
+
primaryOutline: string;
|
|
74
|
+
secondary: string;
|
|
75
|
+
charcoal: string;
|
|
76
|
+
charcoalOutline: string;
|
|
77
|
+
charcoalOutlineQuiet: string;
|
|
78
|
+
ivory: string;
|
|
79
|
+
ivoryOutline: string;
|
|
80
|
+
ivoryOutlineQuiet: string;
|
|
81
|
+
gray: string;
|
|
82
|
+
themed: string;
|
|
83
|
+
};
|
|
84
|
+
size: {
|
|
85
|
+
lg: string;
|
|
86
|
+
default: string;
|
|
87
|
+
sm: string;
|
|
88
|
+
};
|
|
89
|
+
}>, {
|
|
90
|
+
variant: {
|
|
91
|
+
primary: string;
|
|
92
|
+
primaryOutline: string;
|
|
93
|
+
secondary: string;
|
|
94
|
+
charcoal: string;
|
|
95
|
+
charcoalOutline: string;
|
|
96
|
+
charcoalOutlineQuiet: string;
|
|
97
|
+
ivory: string;
|
|
98
|
+
ivoryOutline: string;
|
|
99
|
+
ivoryOutlineQuiet: string;
|
|
100
|
+
gray: string;
|
|
101
|
+
themed: string;
|
|
102
|
+
};
|
|
103
|
+
size: {
|
|
104
|
+
lg: string;
|
|
105
|
+
default: string;
|
|
106
|
+
sm: string;
|
|
107
|
+
};
|
|
108
|
+
}, undefined, import('tailwind-variants').TVReturnType<{
|
|
109
|
+
variant: {
|
|
110
|
+
primary: string;
|
|
111
|
+
primaryOutline: string;
|
|
112
|
+
secondary: string;
|
|
113
|
+
charcoal: string;
|
|
114
|
+
charcoalOutline: string;
|
|
115
|
+
charcoalOutlineQuiet: string;
|
|
116
|
+
ivory: string;
|
|
117
|
+
ivoryOutline: string;
|
|
118
|
+
ivoryOutlineQuiet: string;
|
|
119
|
+
gray: string;
|
|
120
|
+
themed: string;
|
|
121
|
+
};
|
|
122
|
+
size: {
|
|
123
|
+
lg: string;
|
|
124
|
+
default: string;
|
|
125
|
+
sm: string;
|
|
126
|
+
};
|
|
127
|
+
}, undefined, "inline-flex items-center justify-center gap-spacing-8 whitespace-nowrap transition-colors duration-150 cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 rounded-surface-button stroke-surface-button border-solid", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
128
|
+
variant: {
|
|
129
|
+
primary: string;
|
|
130
|
+
primaryOutline: string;
|
|
131
|
+
secondary: string;
|
|
132
|
+
charcoal: string;
|
|
133
|
+
charcoalOutline: string;
|
|
134
|
+
charcoalOutlineQuiet: string;
|
|
135
|
+
ivory: string;
|
|
136
|
+
ivoryOutline: string;
|
|
137
|
+
ivoryOutlineQuiet: string;
|
|
138
|
+
gray: string;
|
|
139
|
+
themed: string;
|
|
140
|
+
};
|
|
141
|
+
size: {
|
|
142
|
+
lg: string;
|
|
143
|
+
default: string;
|
|
144
|
+
sm: string;
|
|
145
|
+
};
|
|
146
|
+
}, {
|
|
147
|
+
variant: {
|
|
148
|
+
primary: string;
|
|
149
|
+
primaryOutline: string;
|
|
150
|
+
secondary: string;
|
|
151
|
+
charcoal: string;
|
|
152
|
+
charcoalOutline: string;
|
|
153
|
+
charcoalOutlineQuiet: string;
|
|
154
|
+
ivory: string;
|
|
155
|
+
ivoryOutline: string;
|
|
156
|
+
ivoryOutlineQuiet: string;
|
|
157
|
+
gray: string;
|
|
158
|
+
themed: string;
|
|
159
|
+
};
|
|
160
|
+
size: {
|
|
161
|
+
lg: string;
|
|
162
|
+
default: string;
|
|
163
|
+
sm: string;
|
|
164
|
+
};
|
|
165
|
+
}>, unknown, unknown, undefined>>;
|
|
27
166
|
export type HTMLButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
|
|
28
|
-
export type ButtonProps = BaseButtonProps & VariantProps<typeof buttonVariants> & HTMLButtonProps
|
|
167
|
+
export type ButtonProps = BaseButtonProps & VariantProps<typeof buttonVariants> & HTMLButtonProps & {
|
|
168
|
+
/**
|
|
169
|
+
* Theme overrides for button styling via CSS custom properties
|
|
170
|
+
*/
|
|
171
|
+
theme?: ButtonTheme;
|
|
172
|
+
};
|
|
29
173
|
declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
30
174
|
export { Button, buttonVariants };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { VariantProps } from '
|
|
1
|
+
import { VariantProps } from 'tailwind-variants';
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
/**
|
|
4
4
|
* IconButton component based on Figma BaseKit / Interface / Icon Button
|
|
@@ -38,10 +38,119 @@ import * as React from "react";
|
|
|
38
38
|
* - default: Medium (36x36)
|
|
39
39
|
* - sm: Small (29x29)
|
|
40
40
|
*/
|
|
41
|
-
declare const iconButtonVariants: (
|
|
42
|
-
variant
|
|
43
|
-
|
|
44
|
-
|
|
41
|
+
declare const iconButtonVariants: import('tailwind-variants').TVReturnType<{
|
|
42
|
+
variant: {
|
|
43
|
+
charcoal: string;
|
|
44
|
+
charcoalOutline: string;
|
|
45
|
+
charcoalOutlineQuiet: string;
|
|
46
|
+
ghost: string;
|
|
47
|
+
ghostDark: string;
|
|
48
|
+
ivory: string;
|
|
49
|
+
ivoryOutline: string;
|
|
50
|
+
ivoryOutlineQuiet: string;
|
|
51
|
+
};
|
|
52
|
+
size: {
|
|
53
|
+
lg: string;
|
|
54
|
+
default: string;
|
|
55
|
+
sm: string;
|
|
56
|
+
};
|
|
57
|
+
}, undefined, "inline-flex items-center justify-center whitespace-nowrap transition-colors duration-150 cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
58
|
+
variant: {
|
|
59
|
+
charcoal: string;
|
|
60
|
+
charcoalOutline: string;
|
|
61
|
+
charcoalOutlineQuiet: string;
|
|
62
|
+
ghost: string;
|
|
63
|
+
ghostDark: string;
|
|
64
|
+
ivory: string;
|
|
65
|
+
ivoryOutline: string;
|
|
66
|
+
ivoryOutlineQuiet: string;
|
|
67
|
+
};
|
|
68
|
+
size: {
|
|
69
|
+
lg: string;
|
|
70
|
+
default: string;
|
|
71
|
+
sm: string;
|
|
72
|
+
};
|
|
73
|
+
}, {
|
|
74
|
+
variant: {
|
|
75
|
+
charcoal: string;
|
|
76
|
+
charcoalOutline: string;
|
|
77
|
+
charcoalOutlineQuiet: string;
|
|
78
|
+
ghost: string;
|
|
79
|
+
ghostDark: string;
|
|
80
|
+
ivory: string;
|
|
81
|
+
ivoryOutline: string;
|
|
82
|
+
ivoryOutlineQuiet: string;
|
|
83
|
+
};
|
|
84
|
+
size: {
|
|
85
|
+
lg: string;
|
|
86
|
+
default: string;
|
|
87
|
+
sm: string;
|
|
88
|
+
};
|
|
89
|
+
}>, {
|
|
90
|
+
variant: {
|
|
91
|
+
charcoal: string;
|
|
92
|
+
charcoalOutline: string;
|
|
93
|
+
charcoalOutlineQuiet: string;
|
|
94
|
+
ghost: string;
|
|
95
|
+
ghostDark: string;
|
|
96
|
+
ivory: string;
|
|
97
|
+
ivoryOutline: string;
|
|
98
|
+
ivoryOutlineQuiet: string;
|
|
99
|
+
};
|
|
100
|
+
size: {
|
|
101
|
+
lg: string;
|
|
102
|
+
default: string;
|
|
103
|
+
sm: string;
|
|
104
|
+
};
|
|
105
|
+
}, undefined, import('tailwind-variants').TVReturnType<{
|
|
106
|
+
variant: {
|
|
107
|
+
charcoal: string;
|
|
108
|
+
charcoalOutline: string;
|
|
109
|
+
charcoalOutlineQuiet: string;
|
|
110
|
+
ghost: string;
|
|
111
|
+
ghostDark: string;
|
|
112
|
+
ivory: string;
|
|
113
|
+
ivoryOutline: string;
|
|
114
|
+
ivoryOutlineQuiet: string;
|
|
115
|
+
};
|
|
116
|
+
size: {
|
|
117
|
+
lg: string;
|
|
118
|
+
default: string;
|
|
119
|
+
sm: string;
|
|
120
|
+
};
|
|
121
|
+
}, undefined, "inline-flex items-center justify-center whitespace-nowrap transition-colors duration-150 cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
122
|
+
variant: {
|
|
123
|
+
charcoal: string;
|
|
124
|
+
charcoalOutline: string;
|
|
125
|
+
charcoalOutlineQuiet: string;
|
|
126
|
+
ghost: string;
|
|
127
|
+
ghostDark: string;
|
|
128
|
+
ivory: string;
|
|
129
|
+
ivoryOutline: string;
|
|
130
|
+
ivoryOutlineQuiet: string;
|
|
131
|
+
};
|
|
132
|
+
size: {
|
|
133
|
+
lg: string;
|
|
134
|
+
default: string;
|
|
135
|
+
sm: string;
|
|
136
|
+
};
|
|
137
|
+
}, {
|
|
138
|
+
variant: {
|
|
139
|
+
charcoal: string;
|
|
140
|
+
charcoalOutline: string;
|
|
141
|
+
charcoalOutlineQuiet: string;
|
|
142
|
+
ghost: string;
|
|
143
|
+
ghostDark: string;
|
|
144
|
+
ivory: string;
|
|
145
|
+
ivoryOutline: string;
|
|
146
|
+
ivoryOutlineQuiet: string;
|
|
147
|
+
};
|
|
148
|
+
size: {
|
|
149
|
+
lg: string;
|
|
150
|
+
default: string;
|
|
151
|
+
sm: string;
|
|
152
|
+
};
|
|
153
|
+
}>, unknown, unknown, undefined>>;
|
|
45
154
|
export interface IconButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof iconButtonVariants> {
|
|
46
155
|
asChild?: boolean;
|
|
47
156
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface NdstudioFooterProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
/**
|
|
4
|
+
* The URL to link to
|
|
5
|
+
* @default "https://ndstudio.gov"
|
|
6
|
+
*/
|
|
7
|
+
href?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* NdstudioFooter component displays a "Designed and Engineered in DC by National Design Studio" footer link.
|
|
11
|
+
*
|
|
12
|
+
* This component is designed to be used as a footer within other components like Tout,
|
|
13
|
+
* but can also be used standalone.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```tsx
|
|
17
|
+
* // Used within a Tout component via footer slot
|
|
18
|
+
* <Tout
|
|
19
|
+
* headline="Feature Headline"
|
|
20
|
+
* primaryAction={<Button>Primary</Button>}
|
|
21
|
+
* backgroundMedia={<img src="/bg.jpg" alt="" />}
|
|
22
|
+
* footer={<NdstudioFooter />}
|
|
23
|
+
* />
|
|
24
|
+
*
|
|
25
|
+
* // Standalone usage
|
|
26
|
+
* <NdstudioFooter className="my-custom-class" />
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
declare const NdstudioFooter: React.ForwardRefExoticComponent<NdstudioFooterProps & React.RefAttributes<HTMLDivElement>>;
|
|
30
|
+
export { NdstudioFooter };
|
|
@@ -1,12 +1,119 @@
|
|
|
1
|
-
import { VariantProps } from '
|
|
1
|
+
import { VariantProps } from 'tailwind-variants';
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
declare const pagerControlVariants: (
|
|
4
|
-
size
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
3
|
+
declare const pagerControlVariants: import('tailwind-variants').TVReturnType<{
|
|
4
|
+
size: {
|
|
5
|
+
sm: string;
|
|
6
|
+
default: string;
|
|
7
|
+
lg: string;
|
|
8
|
+
};
|
|
9
|
+
}, undefined, "flex items-center", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
10
|
+
size: {
|
|
11
|
+
sm: string;
|
|
12
|
+
default: string;
|
|
13
|
+
lg: string;
|
|
14
|
+
};
|
|
15
|
+
}, {
|
|
16
|
+
size: {
|
|
17
|
+
sm: string;
|
|
18
|
+
default: string;
|
|
19
|
+
lg: string;
|
|
20
|
+
};
|
|
21
|
+
}>, {
|
|
22
|
+
size: {
|
|
23
|
+
sm: string;
|
|
24
|
+
default: string;
|
|
25
|
+
lg: string;
|
|
26
|
+
};
|
|
27
|
+
}, undefined, import('tailwind-variants').TVReturnType<{
|
|
28
|
+
size: {
|
|
29
|
+
sm: string;
|
|
30
|
+
default: string;
|
|
31
|
+
lg: string;
|
|
32
|
+
};
|
|
33
|
+
}, undefined, "flex items-center", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
34
|
+
size: {
|
|
35
|
+
sm: string;
|
|
36
|
+
default: string;
|
|
37
|
+
lg: string;
|
|
38
|
+
};
|
|
39
|
+
}, {
|
|
40
|
+
size: {
|
|
41
|
+
sm: string;
|
|
42
|
+
default: string;
|
|
43
|
+
lg: string;
|
|
44
|
+
};
|
|
45
|
+
}>, unknown, unknown, undefined>>;
|
|
46
|
+
declare const dotBaseVariants: import('tailwind-variants').TVReturnType<{
|
|
47
|
+
size: {
|
|
48
|
+
sm: string;
|
|
49
|
+
default: string;
|
|
50
|
+
lg: string;
|
|
51
|
+
};
|
|
52
|
+
variant: {
|
|
53
|
+
charcoal: string;
|
|
54
|
+
ivory: string;
|
|
55
|
+
};
|
|
56
|
+
}, undefined, "cursor-pointer rounded-full transition-all duration-500 ease-[cubic-bezier(0.23,1,0.32,1)]", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
57
|
+
size: {
|
|
58
|
+
sm: string;
|
|
59
|
+
default: string;
|
|
60
|
+
lg: string;
|
|
61
|
+
};
|
|
62
|
+
variant: {
|
|
63
|
+
charcoal: string;
|
|
64
|
+
ivory: string;
|
|
65
|
+
};
|
|
66
|
+
}, {
|
|
67
|
+
size: {
|
|
68
|
+
sm: string;
|
|
69
|
+
default: string;
|
|
70
|
+
lg: string;
|
|
71
|
+
};
|
|
72
|
+
variant: {
|
|
73
|
+
charcoal: string;
|
|
74
|
+
ivory: string;
|
|
75
|
+
};
|
|
76
|
+
}>, {
|
|
77
|
+
size: {
|
|
78
|
+
sm: string;
|
|
79
|
+
default: string;
|
|
80
|
+
lg: string;
|
|
81
|
+
};
|
|
82
|
+
variant: {
|
|
83
|
+
charcoal: string;
|
|
84
|
+
ivory: string;
|
|
85
|
+
};
|
|
86
|
+
}, undefined, import('tailwind-variants').TVReturnType<{
|
|
87
|
+
size: {
|
|
88
|
+
sm: string;
|
|
89
|
+
default: string;
|
|
90
|
+
lg: string;
|
|
91
|
+
};
|
|
92
|
+
variant: {
|
|
93
|
+
charcoal: string;
|
|
94
|
+
ivory: string;
|
|
95
|
+
};
|
|
96
|
+
}, undefined, "cursor-pointer rounded-full transition-all duration-500 ease-[cubic-bezier(0.23,1,0.32,1)]", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
97
|
+
size: {
|
|
98
|
+
sm: string;
|
|
99
|
+
default: string;
|
|
100
|
+
lg: string;
|
|
101
|
+
};
|
|
102
|
+
variant: {
|
|
103
|
+
charcoal: string;
|
|
104
|
+
ivory: string;
|
|
105
|
+
};
|
|
106
|
+
}, {
|
|
107
|
+
size: {
|
|
108
|
+
sm: string;
|
|
109
|
+
default: string;
|
|
110
|
+
lg: string;
|
|
111
|
+
};
|
|
112
|
+
variant: {
|
|
113
|
+
charcoal: string;
|
|
114
|
+
ivory: string;
|
|
115
|
+
};
|
|
116
|
+
}>, unknown, unknown, undefined>>;
|
|
10
117
|
export interface PagerControlProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange">, VariantProps<typeof pagerControlVariants>, VariantProps<typeof dotBaseVariants> {
|
|
11
118
|
/**
|
|
12
119
|
* Total number of pages/items
|
|
@@ -56,7 +163,7 @@ export interface PagerControlProps extends Omit<React.HTMLAttributes<HTMLDivElem
|
|
|
56
163
|
* Sizes:
|
|
57
164
|
* - sm: Small dots (6px height)
|
|
58
165
|
* - default: Medium dots (10px height)
|
|
59
|
-
* - lg: Large dots (
|
|
166
|
+
* - lg: Large dots (16px height)
|
|
60
167
|
*/
|
|
61
168
|
declare const PagerControl: React.ForwardRefExoticComponent<PagerControlProps & React.RefAttributes<HTMLDivElement>>;
|
|
62
169
|
export { PagerControl, pagerControlVariants };
|
|
@@ -1,8 +1,41 @@
|
|
|
1
|
-
import { VariantProps } from '
|
|
1
|
+
import { VariantProps } from 'tailwind-variants';
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
declare const cardVariants: (
|
|
4
|
-
layout
|
|
5
|
-
|
|
3
|
+
declare const cardVariants: import('tailwind-variants').TVReturnType<{
|
|
4
|
+
layout: {
|
|
5
|
+
vertical: string;
|
|
6
|
+
horizontal: string;
|
|
7
|
+
};
|
|
8
|
+
}, undefined, "flex overflow-hidden rounded-surface-card bg-card-background stroke-surface-card border-border-subtle border-solid", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
9
|
+
layout: {
|
|
10
|
+
vertical: string;
|
|
11
|
+
horizontal: string;
|
|
12
|
+
};
|
|
13
|
+
}, {
|
|
14
|
+
layout: {
|
|
15
|
+
vertical: string;
|
|
16
|
+
horizontal: string;
|
|
17
|
+
};
|
|
18
|
+
}>, {
|
|
19
|
+
layout: {
|
|
20
|
+
vertical: string;
|
|
21
|
+
horizontal: string;
|
|
22
|
+
};
|
|
23
|
+
}, undefined, import('tailwind-variants').TVReturnType<{
|
|
24
|
+
layout: {
|
|
25
|
+
vertical: string;
|
|
26
|
+
horizontal: string;
|
|
27
|
+
};
|
|
28
|
+
}, undefined, "flex overflow-hidden rounded-surface-card bg-card-background stroke-surface-card border-border-subtle border-solid", import('tailwind-variants/dist/config.js').TVConfig<{
|
|
29
|
+
layout: {
|
|
30
|
+
vertical: string;
|
|
31
|
+
horizontal: string;
|
|
32
|
+
};
|
|
33
|
+
}, {
|
|
34
|
+
layout: {
|
|
35
|
+
vertical: string;
|
|
36
|
+
horizontal: string;
|
|
37
|
+
};
|
|
38
|
+
}>, unknown, unknown, undefined>>;
|
|
6
39
|
export interface CardProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof cardVariants> {
|
|
7
40
|
}
|
|
8
41
|
/**
|
|
@@ -34,6 +67,7 @@ export interface CardContentProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
34
67
|
}
|
|
35
68
|
/**
|
|
36
69
|
* Card content container with proper padding and spacing.
|
|
70
|
+
* Uses spatial card tokens for consistent sizing.
|
|
37
71
|
*/
|
|
38
72
|
declare const CardContent: React.ForwardRefExoticComponent<CardContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
39
73
|
export interface CardEyebrowProps extends React.HTMLAttributes<HTMLParagraphElement> {
|
|
@@ -62,12 +96,14 @@ export interface CardBodyProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
62
96
|
}
|
|
63
97
|
/**
|
|
64
98
|
* Container for card text content (eyebrow, title, description).
|
|
99
|
+
* Uses spatial card tokens for consistent sizing.
|
|
65
100
|
*/
|
|
66
101
|
declare const CardBody: React.ForwardRefExoticComponent<CardBodyProps & React.RefAttributes<HTMLDivElement>>;
|
|
67
102
|
export interface CardActionsProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
68
103
|
}
|
|
69
104
|
/**
|
|
70
105
|
* Container for card action buttons.
|
|
106
|
+
* Uses primitive spacing tokens.
|
|
71
107
|
*/
|
|
72
108
|
declare const CardActions: React.ForwardRefExoticComponent<CardActionsProps & React.RefAttributes<HTMLDivElement>>;
|
|
73
109
|
export { Card, cardVariants, CardImage, CardContent, CardEyebrow, CardTitle, CardDescription, CardBody, CardActions, };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { VariantProps } from '
|
|
1
|
+
import { VariantProps } from 'tailwind-variants';
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
/**
|
|
4
4
|
* Banner component based on Figma BaseKit / Banners
|
|
@@ -13,9 +13,42 @@ import * as React from "react";
|
|
|
13
13
|
*
|
|
14
14
|
* Must be placed inside a `grid-container`. Uses `col-full` to span all columns.
|
|
15
15
|
*/
|
|
16
|
-
declare const bannerVariants: (
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
declare const bannerVariants: import('tailwind-variants').TVReturnType<{
|
|
17
|
+
variant: {
|
|
18
|
+
light: string;
|
|
19
|
+
dark: string;
|
|
20
|
+
};
|
|
21
|
+
}, undefined, string[], import('tailwind-variants/dist/config.js').TVConfig<{
|
|
22
|
+
variant: {
|
|
23
|
+
light: string;
|
|
24
|
+
dark: string;
|
|
25
|
+
};
|
|
26
|
+
}, {
|
|
27
|
+
variant: {
|
|
28
|
+
light: string;
|
|
29
|
+
dark: string;
|
|
30
|
+
};
|
|
31
|
+
}>, {
|
|
32
|
+
variant: {
|
|
33
|
+
light: string;
|
|
34
|
+
dark: string;
|
|
35
|
+
};
|
|
36
|
+
}, undefined, import('tailwind-variants').TVReturnType<{
|
|
37
|
+
variant: {
|
|
38
|
+
light: string;
|
|
39
|
+
dark: string;
|
|
40
|
+
};
|
|
41
|
+
}, undefined, string[], import('tailwind-variants/dist/config.js').TVConfig<{
|
|
42
|
+
variant: {
|
|
43
|
+
light: string;
|
|
44
|
+
dark: string;
|
|
45
|
+
};
|
|
46
|
+
}, {
|
|
47
|
+
variant: {
|
|
48
|
+
light: string;
|
|
49
|
+
dark: string;
|
|
50
|
+
};
|
|
51
|
+
}>, unknown, unknown, undefined>>;
|
|
19
52
|
export interface BannerProps extends React.HTMLAttributes<HTMLElement>, VariantProps<typeof bannerVariants> {
|
|
20
53
|
/**
|
|
21
54
|
* The heading text displayed in the banner
|
|
@@ -51,9 +84,9 @@ export interface BannerProps extends React.HTMLAttributes<HTMLElement>, VariantP
|
|
|
51
84
|
* />
|
|
52
85
|
* </div>
|
|
53
86
|
*
|
|
54
|
-
* // Dark
|
|
87
|
+
* // Dark variant
|
|
55
88
|
* <Banner
|
|
56
|
-
*
|
|
89
|
+
* variant="dark"
|
|
57
90
|
* heading="Still Have Questions?"
|
|
58
91
|
* description="Contact us at support@example.com"
|
|
59
92
|
* action={<Button variant="secondary">Email Us</Button>}
|