@hirobius/design-system 0.19.1 → 0.20.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/CONSUMING.md +9 -6
- package/DESIGN.md +7 -5
- package/README.md +14 -11
- package/codemods/hds-prefix.mjs +231 -0
- package/codemods/jsx-fold.mjs +515 -0
- package/codemods/not-found-pattern.mjs +71 -0
- package/codemods/patterns-subpath.mjs +242 -81
- package/codemods/patterns-subpath.names.json +41 -15
- package/codemods/removed-0.20.json +194 -0
- package/codemods/tile-grid.mjs +283 -0
- package/codemods/unrewritable.mjs +291 -0
- package/dist/chunks/DemoStateContext-Cz5TmrYu.js +32 -0
- package/dist/chunks/empty-state-BBqhCx0S.js +1217 -0
- package/dist/contexts.js +157 -78
- package/dist/hirobius-ui.js +1517 -5270
- package/dist/manifest.js +12 -13
- package/dist/patterns.js +780 -513
- package/dist/styles.css +1 -1
- package/dist/tokens.css +1 -1
- package/dist/tokens.js +29 -8
- package/dist/types/src/app/components/avatar-group.d.ts +1 -2
- package/dist/types/src/app/components/badge.d.ts +8 -3
- package/dist/types/src/app/components/blockquote.d.ts +1 -2
- package/dist/types/src/app/components/box-sx.d.ts +110 -13
- package/dist/types/src/app/components/box.d.ts +6 -3
- package/dist/types/src/app/components/breadcrumb.d.ts +0 -5
- package/dist/types/src/app/components/button.d.ts +33 -4
- package/dist/types/src/app/components/card.d.ts +7 -8
- package/dist/types/src/app/components/combobox.d.ts +47 -11
- package/dist/types/src/app/components/container.d.ts +2 -2
- package/dist/types/src/app/components/data-table-section.d.ts +1 -1
- package/dist/types/src/app/components/dialog.d.ts +7 -1
- package/dist/types/src/app/components/disclosure.d.ts +1 -5
- package/dist/types/src/app/components/field.d.ts +1 -2
- package/dist/types/src/app/components/grid.d.ts +10 -6
- package/dist/types/src/app/components/hds-tooltip.d.ts +12 -2
- package/dist/types/src/app/components/inline-code.d.ts +1 -2
- package/dist/types/src/app/components/input.d.ts +8 -5
- package/dist/types/src/app/components/kbd.d.ts +1 -2
- package/dist/types/src/app/components/metadata-list.d.ts +1 -2
- package/dist/types/src/app/components/page-header.d.ts +0 -2
- package/dist/types/src/app/components/popover.d.ts +8 -0
- package/dist/types/src/app/components/progress.d.ts +33 -6
- package/dist/types/src/app/components/segmented-control.d.ts +2 -26
- package/dist/types/src/app/components/select.d.ts +10 -1
- package/dist/types/src/app/components/skeleton.d.ts +2 -3
- package/dist/types/src/app/components/spinner.d.ts +1 -2
- package/dist/types/src/app/components/stack.d.ts +4 -1
- package/dist/types/src/app/components/stat.d.ts +1 -2
- package/dist/types/src/app/components/status-dot.d.ts +18 -4
- package/dist/types/src/app/components/status-list-item.d.ts +1 -2
- package/dist/types/src/app/components/surface.d.ts +2 -3
- package/dist/types/src/app/components/switcher.d.ts +1 -1
- package/dist/types/src/app/components/table.d.ts +1 -15
- package/dist/types/src/app/components/tag.d.ts +0 -6
- package/dist/types/src/app/components/text.d.ts +1 -2
- package/dist/types/src/app/components/textarea.d.ts +1 -2
- package/dist/types/src/app/components/toast.d.ts +1 -2
- package/dist/types/src/app/components/tooltip.d.ts +1 -1
- package/dist/types/src/app/context/DemoStateContext.d.ts +1 -1
- package/dist/types/src/app/context/RouterContext.d.ts +5 -5
- package/dist/types/src/app/data/manifest-types.d.ts +6 -5
- package/dist/types/src/app/design-system/generated-token-refs.d.ts +8 -0
- package/dist/types/src/app/design-system/generated-token-values.d.ts +1 -0
- package/dist/types/src/app/design-system/tokens.d.ts +22 -3
- package/dist/types/src/icons.d.ts +1 -1
- package/dist/types/src/index.d.ts +33 -124
- package/dist/types/src/patterns.d.ts +20 -25
- package/dist/variables.css +6 -0
- package/docs/CONSUMING.md +21 -13
- package/hirobius.tokens.json +48 -15
- package/llms.txt +19 -20
- package/package.json +17 -22
- package/public/hds-manifest.json +2405 -6537
- package/public/llms/components.txt +41 -423
- package/public/llms/layout.txt +4 -4
- package/public/llms-full.txt +67 -448
- package/public/llms.txt +19 -20
- package/src/app/data/component-api.json +1379 -3271
- package/dist/chunks/LanguageContext-BxdCwiFg.js +0 -95
- package/dist/chunks/TokenDisplayContext-DKYJMVWk.js +0 -26
- package/dist/chunks/activity-feed-BGQ6v3wc.js +0 -22040
- package/dist/types/src/app/components/activity-feed.d.ts +0 -73
- package/dist/types/src/app/components/app-shell.d.ts +0 -40
- package/dist/types/src/app/components/aspect-ratio.d.ts +0 -25
- package/dist/types/src/app/components/bleed.d.ts +0 -39
- package/dist/types/src/app/components/button-group.d.ts +0 -22
- package/dist/types/src/app/components/calendar.d.ts +0 -22
- package/dist/types/src/app/components/carousel.d.ts +0 -26
- package/dist/types/src/app/components/center.d.ts +0 -36
- package/dist/types/src/app/components/cinematic-link.d.ts +0 -18
- package/dist/types/src/app/components/circular-progress.d.ts +0 -28
- package/dist/types/src/app/components/cluster.d.ts +0 -39
- package/dist/types/src/app/components/command-palette.d.ts +0 -46
- package/dist/types/src/app/components/component-instance-matrix.d.ts +0 -27
- package/dist/types/src/app/components/context-menu.d.ts +0 -78
- package/dist/types/src/app/components/cover.d.ts +0 -43
- package/dist/types/src/app/components/date-input.d.ts +0 -31
- package/dist/types/src/app/components/date-range-input.d.ts +0 -34
- package/dist/types/src/app/components/date-time-input.d.ts +0 -30
- package/dist/types/src/app/components/doc-link-card.d.ts +0 -32
- package/dist/types/src/app/components/error-boundary.d.ts +0 -25
- package/dist/types/src/app/components/file-input.d.ts +0 -30
- package/dist/types/src/app/components/foundation-swatch.d.ts +0 -45
- package/dist/types/src/app/components/frame.d.ts +0 -38
- package/dist/types/src/app/components/heading-stack.d.ts +0 -52
- package/dist/types/src/app/components/history-card.d.ts +0 -12
- package/dist/types/src/app/components/hover-card.d.ts +0 -46
- package/dist/types/src/app/components/icon-button.d.ts +0 -22
- package/dist/types/src/app/components/image-lightbox.d.ts +0 -14
- package/dist/types/src/app/components/input-group.d.ts +0 -23
- package/dist/types/src/app/components/multi-selector.d.ts +0 -40
- package/dist/types/src/app/components/nav-group.d.ts +0 -29
- package/dist/types/src/app/components/nav-item.d.ts +0 -33
- package/dist/types/src/app/components/not-found-pattern.d.ts +0 -1
- package/dist/types/src/app/components/overflow-list.d.ts +0 -21
- package/dist/types/src/app/components/selectable-card.d.ts +0 -29
- package/dist/types/src/app/components/side-nav.d.ts +0 -23
- package/dist/types/src/app/components/sketch.d.ts +0 -19
- package/dist/types/src/app/components/stacked-card-rail.d.ts +0 -32
- package/dist/types/src/app/components/stepper-field.d.ts +0 -12
- package/dist/types/src/app/components/stepper.d.ts +0 -33
- package/dist/types/src/app/components/text-lockup.d.ts +0 -38
- package/dist/types/src/app/components/tile-grid.d.ts +0 -17
- package/dist/types/src/app/components/time-input.d.ts +0 -24
- package/dist/types/src/app/components/toggle-button.d.ts +0 -32
- package/dist/types/src/app/components/token.d.ts +0 -90
- package/dist/types/src/app/components/tokenUtils.d.ts +0 -38
- package/dist/types/src/app/components/tokenizer.d.ts +0 -24
- package/dist/types/src/app/components/toolbar.d.ts +0 -36
- package/dist/types/src/app/components/top-nav.d.ts +0 -23
- package/dist/types/src/app/components/tree-list.d.ts +0 -30
- package/dist/types/src/app/data/nav-model.d.ts +0 -39
- package/dist/types/src/app/hooks/useFocusVisible.d.ts +0 -9
- package/dist/types/src/app/layouts/CaseStudyLayout.d.ts +0 -20
- package/dist/types/src/app/layouts/DocLayout.d.ts +0 -14
- package/dist/types/src/app/layouts/EmbeddedDocLayoutContext.d.ts +0 -6
- package/dist/types/src/app/layouts/HdsDocsShell.d.ts +0 -72
- package/dist/types/src/app/layouts/HdsSystemDocLayout.d.ts +0 -14
- package/dist/types/src/app/lib/hds-search.d.ts +0 -45
- package/dist/types/src/app/lib/nav-active.d.ts +0 -16
- package/dist/types/src/app/lib/navLevels.d.ts +0 -4
|
@@ -22,5 +22,4 @@ export type InlineCodeProps = {
|
|
|
22
22
|
};
|
|
23
23
|
/** @public */
|
|
24
24
|
export declare function InlineCode({ children, style, density, compact, copyable, }: InlineCodeProps): import("react/jsx-runtime").JSX.Element;
|
|
25
|
-
|
|
26
|
-
export { inlineCodeVariants };
|
|
25
|
+
export {};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Input — text field primitive with label, helper, and error slots.
|
|
3
3
|
* @category Inputs
|
|
4
4
|
* @tier primitive
|
|
5
|
-
* @usage Collect a single line of text, a number, an email or a
|
|
5
|
+
* @usage Collect a single line of text, a number, an email, a password, a date or a time, with label, helper and error slots.
|
|
6
6
|
* @whenNot Multi-line text, or choosing from a fixed list of options.
|
|
7
7
|
* @useInstead Textarea multi-line text
|
|
8
8
|
* @useInstead Select a short fixed list
|
|
@@ -16,10 +16,10 @@ declare const inputVariants: (props?: ({
|
|
|
16
16
|
textStyle?: "body" | "mono" | null | undefined;
|
|
17
17
|
invalid?: boolean | null | undefined;
|
|
18
18
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
19
|
-
type InputFieldType = 'text' | 'email' | 'password' | 'search' | 'tel' | 'url' | 'number';
|
|
19
|
+
type InputFieldType = 'text' | 'email' | 'password' | 'search' | 'tel' | 'url' | 'number' | 'date' | 'time' | 'datetime-local';
|
|
20
20
|
/** @public */
|
|
21
21
|
export type InputSize = NonNullable<VariantProps<typeof inputVariants>['size']>;
|
|
22
|
-
export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'disabled' | 'size'> {
|
|
22
|
+
export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'disabled' | 'size' | 'prefix'> {
|
|
23
23
|
/** Native input type. */
|
|
24
24
|
type?: InputFieldType;
|
|
25
25
|
/** Field height tier. */
|
|
@@ -34,6 +34,10 @@ export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElem
|
|
|
34
34
|
leadingVisual?: React.ReactNode;
|
|
35
35
|
/** Optional trailing visual rendered inside the input shell. */
|
|
36
36
|
trailingVisual?: React.ReactNode;
|
|
37
|
+
/** In-flow content before the value, e.g. `https://` or `$`. Not part of the accessible name. */
|
|
38
|
+
prefix?: React.ReactNode;
|
|
39
|
+
/** In-flow content after the value, e.g. a unit such as `kg`. Not part of the accessible name. */
|
|
40
|
+
suffix?: React.ReactNode;
|
|
37
41
|
/** Disable interaction. */
|
|
38
42
|
disabled?: boolean;
|
|
39
43
|
/** Mark the field as invalid (sets aria-invalid + destructive border). */
|
|
@@ -48,5 +52,4 @@ export interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElem
|
|
|
48
52
|
inputClassName?: string;
|
|
49
53
|
}
|
|
50
54
|
export declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
|
|
51
|
-
|
|
52
|
-
export { inputVariants };
|
|
55
|
+
export {};
|
|
@@ -17,5 +17,4 @@ export interface KbdProps extends React.HTMLAttributes<HTMLElement>, KbdVariantP
|
|
|
17
17
|
}
|
|
18
18
|
/** Renders a keyboard key or shortcut token, e.g. `<Kbd>⌘K</Kbd>`. */
|
|
19
19
|
export declare const Kbd: React.ForwardRefExoticComponent<KbdProps & React.RefAttributes<HTMLElement>>;
|
|
20
|
-
|
|
21
|
-
export { kbdVariants };
|
|
20
|
+
export {};
|
|
@@ -39,5 +39,4 @@ export interface MetadataListProps extends Omit<React.HTMLAttributes<HTMLDListEl
|
|
|
39
39
|
}
|
|
40
40
|
/** Renders object metadata as a semantic `<dl>` of term/description pairs. */
|
|
41
41
|
export declare const MetadataList: React.ForwardRefExoticComponent<MetadataListProps & React.RefAttributes<HTMLDListElement>>;
|
|
42
|
-
|
|
43
|
-
export { metadataListVariants };
|
|
42
|
+
export {};
|
|
@@ -27,8 +27,6 @@ export interface PageHeaderProps extends Omit<React.HTMLAttributes<HTMLElement>,
|
|
|
27
27
|
* Screen header: breadcrumb slot, the title at the one canonical page-title size
|
|
28
28
|
* (`heading2`), a status slot and an actions slot. Every screen has exactly one.
|
|
29
29
|
* `display` and `h1` type are reserved for marketing and landing surfaces.
|
|
30
|
-
*
|
|
31
|
-
* Distinct from the docs-only page header in `src/docs-tooling`.
|
|
32
30
|
* @screenPattern
|
|
33
31
|
*/
|
|
34
32
|
export declare const PageHeader: React.ForwardRefExoticComponent<PageHeaderProps & React.RefAttributes<HTMLElement>>;
|
|
@@ -51,6 +51,14 @@ interface PopoverComponent extends React.FC<React.ComponentProps<typeof PopoverP
|
|
|
51
51
|
/**
|
|
52
52
|
* Popover root + parts. Controlled via `open`/`onOpenChange`, or uncontrolled
|
|
53
53
|
* with `defaultOpen`.
|
|
54
|
+
* @usage Anchor interactive content, such as a short form, a filter set or a picker, to a trigger people click to open.
|
|
55
|
+
* @whenNot A short label on hover or focus, a list of actions, or a decision that must block the page.
|
|
56
|
+
* @useInstead Tooltip a short label shown on hover or focus
|
|
57
|
+
* @useInstead Menu a list of actions
|
|
58
|
+
* @useInstead Dialog a decision that blocks the page
|
|
59
|
+
* @keyboard Enter/Space Opens the popover from the trigger and moves focus inside it.
|
|
60
|
+
* @keyboard Escape Closes the popover and returns focus to the trigger.
|
|
61
|
+
* @keyboard Tab Cycles focus inside the open popover; the page behind stays reachable.
|
|
54
62
|
* @public
|
|
55
63
|
*/
|
|
56
64
|
declare const Popover: PopoverComponent;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Progress - linear
|
|
2
|
+
* Progress - linear bar or circular ring (determinate or indeterminate).
|
|
3
3
|
* @category Feedback
|
|
4
4
|
* @tier primitive
|
|
5
|
-
* @usage Show how far a task has got, as a bar that is determinate or indeterminate.
|
|
5
|
+
* @usage Show how far a task has got, as a bar or ring that is determinate or indeterminate.
|
|
6
6
|
* @whenNot A wait of unknown length with no bar, or content that is still loading.
|
|
7
7
|
* @useInstead Spinner a wait of unknown length
|
|
8
8
|
* @useInstead Skeleton placeholder shapes for loading content
|
|
@@ -13,18 +13,45 @@ import { type VariantProps } from 'class-variance-authority';
|
|
|
13
13
|
declare const progressTrackVariants: (props?: ({
|
|
14
14
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
15
15
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
16
|
+
declare const PROGRESS_TONES: {
|
|
17
|
+
readonly neutral: {
|
|
18
|
+
readonly bar: "bg-accent";
|
|
19
|
+
readonly ring: "text-primary";
|
|
20
|
+
};
|
|
21
|
+
readonly danger: {
|
|
22
|
+
readonly bar: "bg-feedback-danger";
|
|
23
|
+
readonly ring: "text-feedback-danger";
|
|
24
|
+
};
|
|
25
|
+
readonly success: {
|
|
26
|
+
readonly bar: "bg-feedback-success";
|
|
27
|
+
readonly ring: "text-feedback-success";
|
|
28
|
+
};
|
|
29
|
+
readonly warning: {
|
|
30
|
+
readonly bar: "bg-feedback-warning";
|
|
31
|
+
readonly ring: "text-feedback-warning";
|
|
32
|
+
};
|
|
33
|
+
readonly info: {
|
|
34
|
+
readonly bar: "bg-feedback-info";
|
|
35
|
+
readonly ring: "text-feedback-info";
|
|
36
|
+
};
|
|
37
|
+
};
|
|
16
38
|
type ProgressVariantProps = VariantProps<typeof progressTrackVariants>;
|
|
17
39
|
/** @public */
|
|
18
40
|
export interface ProgressProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'role'>, ProgressVariantProps {
|
|
19
41
|
/**
|
|
20
|
-
* Completion 0–
|
|
42
|
+
* Completion 0–max. Omit (or pass null) for an indeterminate bar that
|
|
21
43
|
* animates until the work completes.
|
|
22
44
|
*/
|
|
23
45
|
value?: number | null;
|
|
46
|
+
/** Upper bound for `value`. Defaults to 100. */
|
|
47
|
+
max?: number;
|
|
48
|
+
/** Shape: `linear` bar (default) or `circular` ring. */
|
|
49
|
+
variant?: 'linear' | 'circular';
|
|
50
|
+
/** Fill color: `neutral` (default) or a feedback tone. */
|
|
51
|
+
tone?: keyof typeof PROGRESS_TONES;
|
|
24
52
|
/** Accessible label for the progress bar. */
|
|
25
53
|
label?: string;
|
|
26
54
|
}
|
|
27
|
-
/** Linear
|
|
55
|
+
/** Linear bar or circular ring. Determinate when `value` is a number, else indeterminate. */
|
|
28
56
|
export declare const Progress: React.ForwardRefExoticComponent<ProgressProps & React.RefAttributes<HTMLDivElement>>;
|
|
29
|
-
|
|
30
|
-
export { progressTrackVariants };
|
|
57
|
+
export {};
|
|
@@ -1,35 +1,12 @@
|
|
|
1
1
|
import { type VariantProps } from 'class-variance-authority';
|
|
2
|
-
declare const segmentedControlWrapperVariants: (props?: ({
|
|
3
|
-
fullWidth?: boolean | null | undefined;
|
|
4
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
5
|
-
declare const segmentedControlRailVariants: (props?: ({
|
|
6
|
-
variant?: "primary" | "secondary" | null | undefined;
|
|
7
|
-
fullWidth?: boolean | null | undefined;
|
|
8
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
9
2
|
declare const segmentedControlItemVariants: (props?: ({
|
|
10
3
|
size?: "sm" | "md" | null | undefined;
|
|
11
4
|
fullWidth?: boolean | null | undefined;
|
|
12
5
|
variant?: "primary" | "secondary" | null | undefined;
|
|
13
6
|
active?: boolean | null | undefined;
|
|
14
|
-
interaction?: "
|
|
7
|
+
interaction?: "hover" | "pressed" | "rest" | null | undefined;
|
|
15
8
|
disabled?: boolean | null | undefined;
|
|
16
9
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
17
|
-
declare const segmentedControlIndicatorVariants: (props?: ({
|
|
18
|
-
variant?: "primary" | "secondary" | null | undefined;
|
|
19
|
-
active?: boolean | null | undefined;
|
|
20
|
-
interaction?: "rest" | "hover" | "pressed" | null | undefined;
|
|
21
|
-
disabled?: boolean | null | undefined;
|
|
22
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
23
|
-
declare const segmentedControlDescriptionVariants: (props?: ({
|
|
24
|
-
variant?: "primary" | "secondary" | null | undefined;
|
|
25
|
-
active?: boolean | null | undefined;
|
|
26
|
-
interaction?: "rest" | "hover" | "pressed" | null | undefined;
|
|
27
|
-
disabled?: boolean | null | undefined;
|
|
28
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
29
|
-
declare const segmentedControlFocusRingVariants: (props?: ({
|
|
30
|
-
variant?: "primary" | "secondary" | null | undefined;
|
|
31
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
32
|
-
declare const segmentedControlLabelVariants: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
|
|
33
10
|
type SegmentedItemVariantProps = VariantProps<typeof segmentedControlItemVariants>;
|
|
34
11
|
interface HdsSegmentedOption {
|
|
35
12
|
/** Value submitted when this option is selected. */
|
|
@@ -63,5 +40,4 @@ export interface SegmentedControlProps {
|
|
|
63
40
|
}
|
|
64
41
|
/** @public */
|
|
65
42
|
export declare const SegmentedControl: import("react").ForwardRefExoticComponent<SegmentedControlProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
66
|
-
|
|
67
|
-
export { segmentedControlWrapperVariants, segmentedControlRailVariants, segmentedControlItemVariants, segmentedControlIndicatorVariants, segmentedControlDescriptionVariants, segmentedControlFocusRingVariants, segmentedControlLabelVariants, };
|
|
43
|
+
export {};
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
* tabs.tsx / command-palette.tsx; `ref` targets the trigger button.
|
|
24
24
|
*/
|
|
25
25
|
export interface SelectProps {
|
|
26
|
-
/** Select label rendered above the control. */
|
|
26
|
+
/** Select label rendered above the control. It names the trigger, also when hidden. */
|
|
27
27
|
label: string;
|
|
28
28
|
/** Controls whether the label is rendered. */
|
|
29
29
|
showLabel?: boolean;
|
|
@@ -41,5 +41,14 @@ export interface SelectProps {
|
|
|
41
41
|
* overlay inherits its theme; pass `null` to use `document.body`.
|
|
42
42
|
*/
|
|
43
43
|
container?: HTMLElement | null;
|
|
44
|
+
/**
|
|
45
|
+
* Id of the trigger, so a `<label for>` names it. `FormField` sets it, with
|
|
46
|
+
* `aria-describedby` and `aria-invalid`.
|
|
47
|
+
*/
|
|
48
|
+
id?: string;
|
|
49
|
+
/** Ids of the elements that describe the trigger (helper text, error). */
|
|
50
|
+
'aria-describedby'?: string;
|
|
51
|
+
/** Marks the trigger invalid, for example while the field shows an error. */
|
|
52
|
+
'aria-invalid'?: boolean;
|
|
44
53
|
}
|
|
45
54
|
export declare const Select: import("react").ForwardRefExoticComponent<SelectProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
import * as React from 'react';
|
|
12
12
|
import { type VariantProps } from 'class-variance-authority';
|
|
13
13
|
declare const skeletonVariants: (props?: ({
|
|
14
|
-
variant?: "text" | "
|
|
14
|
+
variant?: "text" | "circular" | "rectangular" | null | undefined;
|
|
15
15
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
16
16
|
type SkeletonVariantProps = VariantProps<typeof skeletonVariants>;
|
|
17
17
|
/** @public */
|
|
@@ -26,5 +26,4 @@ export interface SkeletonProps extends React.HTMLAttributes<HTMLDivElement>, Ske
|
|
|
26
26
|
* state on the surrounding region (e.g. aria-busy) rather than per skeleton.
|
|
27
27
|
*/
|
|
28
28
|
export declare const Skeleton: React.ForwardRefExoticComponent<SkeletonProps & React.RefAttributes<HTMLDivElement>>;
|
|
29
|
-
|
|
30
|
-
export { skeletonVariants };
|
|
29
|
+
export {};
|
|
@@ -21,5 +21,4 @@ export interface SpinnerProps extends React.HTMLAttributes<HTMLSpanElement>, Spi
|
|
|
21
21
|
}
|
|
22
22
|
/** Indeterminate spinner. Inherits the surrounding text color via currentColor. */
|
|
23
23
|
export declare const Spinner: React.ForwardRefExoticComponent<SpinnerProps & React.RefAttributes<HTMLSpanElement>>;
|
|
24
|
-
|
|
25
|
-
export { spinnerVariants };
|
|
24
|
+
export {};
|
|
@@ -23,7 +23,10 @@ export interface StackProps {
|
|
|
23
23
|
children: React.ReactNode;
|
|
24
24
|
/** Flex direction for the stack. */
|
|
25
25
|
direction?: 'row' | 'column';
|
|
26
|
-
/**
|
|
26
|
+
/**
|
|
27
|
+
* Gap token: semantic (tight, normal, inset, spacious) or primitive (px4, px8, etc). Defaults to 'tight' (16px).
|
|
28
|
+
* Not the t-shirt scale: Stack's 'xs' is the 2px subgrid step, while Box `sx` 'xs' is scale.xs (8px), until the 1.0 rename (hds#206).
|
|
29
|
+
*/
|
|
27
30
|
gap?: GapOption;
|
|
28
31
|
/** Cross-axis alignment: start | center | end | stretch. */
|
|
29
32
|
align?: FlexAlign;
|
|
@@ -23,5 +23,4 @@ export interface StatProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'c
|
|
|
23
23
|
* @useInstead StatusTile a titled status with notes and a trailing badge
|
|
24
24
|
*/
|
|
25
25
|
export declare const Stat: React.ForwardRefExoticComponent<StatProps & React.RefAttributes<HTMLDivElement>>;
|
|
26
|
-
|
|
27
|
-
export { statVariants };
|
|
26
|
+
export {};
|
|
@@ -10,7 +10,13 @@ declare const statusDotVariants: (props?: ({
|
|
|
10
10
|
size?: "sm" | "md" | "lg" | null | undefined;
|
|
11
11
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
12
12
|
type StatusDotVariantProps = VariantProps<typeof statusDotVariants>;
|
|
13
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* @public
|
|
15
|
+
* @deprecated Use `BadgeProps` with `dot`: `tone`, `size` and `label` are the
|
|
16
|
+
* same. Badge takes no `style`, so move a `style` to a wrapper or a
|
|
17
|
+
* `className` first (MIGRATIONS.md, hds#395).
|
|
18
|
+
* @removeIn 0.21.0
|
|
19
|
+
*/
|
|
14
20
|
export interface StatusDotProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children'>, StatusDotVariantProps {
|
|
15
21
|
/**
|
|
16
22
|
* Accessible name for the status. When provided the dot is exposed as a
|
|
@@ -19,7 +25,15 @@ export interface StatusDotProps extends Omit<React.HTMLAttributes<HTMLSpanElemen
|
|
|
19
25
|
*/
|
|
20
26
|
label?: string;
|
|
21
27
|
}
|
|
22
|
-
/**
|
|
28
|
+
/**
|
|
29
|
+
* A small solid dot conveying a semantic status via `tone`.
|
|
30
|
+
*
|
|
31
|
+
* @deprecated Use `<Badge dot>`: `tone`, `size` and `label` are the same, and
|
|
32
|
+
* so is the dot. Badge takes no `style`, so move a `style` to a wrapper or a
|
|
33
|
+
* `className` first (MIGRATIONS.md, hds#395). Kept in 0.20.0 because ops passes
|
|
34
|
+
* StatusDot a `style` no codemod can carry over.
|
|
35
|
+
* @removeIn 0.21.0
|
|
36
|
+
* @useInstead Badge with `dot`
|
|
37
|
+
*/
|
|
23
38
|
export declare const StatusDot: React.ForwardRefExoticComponent<StatusDotProps & React.RefAttributes<HTMLSpanElement>>;
|
|
24
|
-
|
|
25
|
-
export { statusDotVariants };
|
|
39
|
+
export {};
|
|
@@ -21,5 +21,4 @@ export interface StatusListItemProps extends Omit<React.HTMLAttributes<HTMLDivEl
|
|
|
21
21
|
* Status dot + title row with optional muted notes and trailing slot (e.g. badge).
|
|
22
22
|
*/
|
|
23
23
|
export declare const StatusListItem: React.ForwardRefExoticComponent<StatusListItemProps & React.RefAttributes<HTMLDivElement>>;
|
|
24
|
-
|
|
25
|
-
export { statusListItemDotVariants };
|
|
24
|
+
export {};
|
|
@@ -2,7 +2,7 @@ import React, { type CSSProperties, type HTMLAttributes, type ReactNode } from '
|
|
|
2
2
|
import { type VariantProps } from 'class-variance-authority';
|
|
3
3
|
import type { PaddingOption } from './surface-padding.js';
|
|
4
4
|
declare const surfaceVariants: (props?: ({
|
|
5
|
-
padding?: "none" | "item" | "
|
|
5
|
+
padding?: "none" | "item" | "component" | "px16" | "px24" | null | undefined;
|
|
6
6
|
shadow?: boolean | null | undefined;
|
|
7
7
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
8
8
|
type SurfaceVariantProps = VariantProps<typeof surfaceVariants>;
|
|
@@ -26,5 +26,4 @@ export interface SurfaceProps extends Omit<HTMLAttributes<HTMLDivElement>, 'styl
|
|
|
26
26
|
}
|
|
27
27
|
/** @public */
|
|
28
28
|
export declare const Surface: React.ForwardRefExoticComponent<SurfaceProps & React.RefAttributes<HTMLDivElement>>;
|
|
29
|
-
|
|
30
|
-
export { surfaceVariants };
|
|
29
|
+
export {};
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* (column) layout once there are more than `limit` children, regardless of
|
|
15
15
|
* container width — use it to stop a row from thinning out into an
|
|
16
16
|
* unreadable N-up strip. Do NOT use Switcher for content that should always
|
|
17
|
-
* wrap in place — use
|
|
17
|
+
* wrap in place — use Stack with `direction="row"` and `wrap="wrap"`.
|
|
18
18
|
*
|
|
19
19
|
* Every Layout reference: https://every-layout.dev/layouts/the-switcher/
|
|
20
20
|
*/
|
|
@@ -9,19 +9,6 @@
|
|
|
9
9
|
* @figma https://www.figma.com/design/c8MaVgwxOlxm4wr8wnH0Z4/HDS-Tokens-Components?node-id=89-300
|
|
10
10
|
*/
|
|
11
11
|
import { type ReactNode } from 'react';
|
|
12
|
-
declare const tableHeaderCellVariants: (props?: ({
|
|
13
|
-
align?: "center" | "left" | "right" | null | undefined;
|
|
14
|
-
density?: "compact" | "comfortable" | "follow" | null | undefined;
|
|
15
|
-
sticky?: boolean | null | undefined;
|
|
16
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
17
|
-
declare const tableSortButtonVariants: (props?: ({
|
|
18
|
-
align?: "center" | "left" | "right" | null | undefined;
|
|
19
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
20
|
-
declare const tableDataCellVariants: (props?: ({
|
|
21
|
-
align?: "center" | "left" | "right" | null | undefined;
|
|
22
|
-
density?: "compact" | "comfortable" | "follow" | null | undefined;
|
|
23
|
-
divider?: boolean | null | undefined;
|
|
24
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
25
12
|
/** @public */
|
|
26
13
|
export type TableColumnAlign = 'left' | 'center' | 'right';
|
|
27
14
|
/** @public */
|
|
@@ -91,5 +78,4 @@ export declare function Table({ columns, rows, caption, captionAction, descripti
|
|
|
91
78
|
flush?: boolean;
|
|
92
79
|
stickyHeader?: boolean;
|
|
93
80
|
}): import("react/jsx-runtime").JSX.Element;
|
|
94
|
-
|
|
95
|
-
export { tableHeaderCellVariants, tableDataCellVariants, tableSortButtonVariants };
|
|
81
|
+
export {};
|
|
@@ -20,10 +20,6 @@
|
|
|
20
20
|
* contract expects, just keyed by selection instead of tone/size/density.
|
|
21
21
|
*/
|
|
22
22
|
import * as React from 'react';
|
|
23
|
-
declare const tagButtonVariants: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
|
|
24
|
-
declare const tagPillVariants: (props?: ({
|
|
25
|
-
selected?: boolean | null | undefined;
|
|
26
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
27
23
|
/** @public */
|
|
28
24
|
export interface TagProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
|
|
29
25
|
/** Tag content displayed inside the pill. */
|
|
@@ -33,5 +29,3 @@ export interface TagProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElem
|
|
|
33
29
|
}
|
|
34
30
|
/** @public */
|
|
35
31
|
export declare const Tag: React.ForwardRefExoticComponent<TagProps & React.RefAttributes<HTMLButtonElement>>;
|
|
36
|
-
/** @internal — CVA variant helpers; compose via Tag props instead. */
|
|
37
|
-
export { tagButtonVariants, tagPillVariants };
|
|
@@ -32,5 +32,4 @@ export declare const Text: import("react").ForwardRefExoticComponent<{
|
|
|
32
32
|
className?: string;
|
|
33
33
|
style?: CSSProperties;
|
|
34
34
|
} & HTMLAttributes<HTMLElement> & import("react").RefAttributes<HTMLElement>>;
|
|
35
|
-
|
|
36
|
-
export { textVariants };
|
|
35
|
+
export {};
|
|
@@ -38,5 +38,4 @@ export interface TextareaProps extends Omit<React.TextareaHTMLAttributes<HTMLTex
|
|
|
38
38
|
textareaClassName?: string;
|
|
39
39
|
}
|
|
40
40
|
export declare const Textarea: React.ForwardRefExoticComponent<TextareaProps & React.RefAttributes<HTMLTextAreaElement>>;
|
|
41
|
-
|
|
42
|
-
export { textareaVariants };
|
|
41
|
+
export {};
|
|
@@ -63,5 +63,4 @@ export interface ToastProviderProps {
|
|
|
63
63
|
* @public
|
|
64
64
|
*/
|
|
65
65
|
export declare function ToastProvider({ children, duration, swipeDirection, }: ToastProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
66
|
-
|
|
67
|
-
export { toastIconVariants };
|
|
66
|
+
export {};
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* ExpandTooltip — HDS image interaction tooltip
|
|
7
7
|
*
|
|
8
|
-
* A pill-shaped label (
|
|
8
|
+
* A pill-shaped label (accent fill / onAccent text) that indicates an image
|
|
9
9
|
* is expandable. Supports two render modes:
|
|
10
10
|
*
|
|
11
11
|
* 'cursor' — fixed-positioned portal tracking the mouse cursor.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* DemoStateContext — React context for freezing HDS component demos into a fixed visual state.
|
|
3
3
|
*
|
|
4
|
-
* Replaces the forceHover/forceFocus/forcePressed prop trio on Button
|
|
4
|
+
* Replaces the forceHover/forceFocus/forcePressed prop trio on Button.
|
|
5
5
|
* Wrap any demo with <FreezeState state="hover"> and every HDS component inside will
|
|
6
6
|
* render that visual state without wiring individual force props.
|
|
7
7
|
*
|
|
@@ -8,17 +8,17 @@
|
|
|
8
8
|
* falls back to window.location. Drop-in for apps with no router
|
|
9
9
|
* (e.g. job-hunt, a plain Vite/React app).
|
|
10
10
|
* 2. react-router consumers — wrap the app once in <HdsRouterProvider> with an
|
|
11
|
-
* adapter that bridges useNavigate()/useLocation()/<Link>.
|
|
12
|
-
* does this internally via ReactRouterBridge (NOT exported).
|
|
11
|
+
* adapter that bridges useNavigate()/useLocation()/<Link>.
|
|
13
12
|
* 3. Next.js / other routers — same seam: provide an adapter mapping to that
|
|
14
13
|
* router's navigation + Link.
|
|
15
14
|
*
|
|
16
15
|
* IMPORTANT: this module MUST NOT import react-router (or any router). It is the
|
|
17
16
|
* router-free contract every consumer can satisfy.
|
|
18
17
|
*
|
|
19
|
-
* @
|
|
20
|
-
*
|
|
21
|
-
*
|
|
18
|
+
* @category Theming
|
|
19
|
+
* @tier primitive
|
|
20
|
+
* @usage Wrap the app root once so HDS links and navigation use your client router; with no provider they stay plain anchors.
|
|
21
|
+
* @doc-exempt: provider/hook seam like HdsThemeProvider, not a visual component; no Figma node or docs page, documented in README.md and docs/CONSUMING.md
|
|
22
22
|
*/
|
|
23
23
|
import { type AnchorHTMLAttributes, type ReactNode } from 'react';
|
|
24
24
|
/** Options forwarded to a router's navigate call (state preserved for SPA nav). */
|
|
@@ -93,12 +93,13 @@ export type ManifestComponentSpec = {
|
|
|
93
93
|
usage?: ManifestUsage;
|
|
94
94
|
keyboard?: ManifestKeyboardEntry[];
|
|
95
95
|
aiRules?: string;
|
|
96
|
+
/** Deprecation notice from the component's `@deprecated` JSDoc tag (hds#390). */
|
|
97
|
+
deprecated?: string;
|
|
98
|
+
/** Release that removes the deprecated component, from `@removeIn`. */
|
|
99
|
+
removeIn?: string;
|
|
100
|
+
/** Replacement for the deprecated component, from `@useInstead` in the same block. */
|
|
101
|
+
useInstead?: string;
|
|
96
102
|
};
|
|
97
|
-
/**
|
|
98
|
-
* Alias of ManifestComponentSpec for hds-search.ts back-compat.
|
|
99
|
-
* @deprecated Use ManifestComponentSpec directly in new code.
|
|
100
|
-
*/
|
|
101
|
-
export type ManifestSpec = ManifestComponentSpec;
|
|
102
103
|
/** The root SystemManifest shape (virtual:hds-manifest). */
|
|
103
104
|
export type SystemManifest = {
|
|
104
105
|
name?: string;
|
|
@@ -203,6 +203,7 @@ export declare const tokenRefs: {
|
|
|
203
203
|
readonly "64": "var(--primitive-size-64)";
|
|
204
204
|
readonly "80": "var(--primitive-size-80)";
|
|
205
205
|
readonly "96": "var(--primitive-size-96)";
|
|
206
|
+
readonly "120": "var(--primitive-size-120)";
|
|
206
207
|
readonly interactive: {
|
|
207
208
|
readonly min: "var(--primitive-size-interactive-min)";
|
|
208
209
|
readonly minCompact: "var(--primitive-size-interactive-minCompact)";
|
|
@@ -304,6 +305,11 @@ export declare const tokenRefs: {
|
|
|
304
305
|
readonly inProgress: "var(--semantic-color-feedback-bg-inProgress)";
|
|
305
306
|
};
|
|
306
307
|
};
|
|
308
|
+
readonly state: {
|
|
309
|
+
readonly pressed: {
|
|
310
|
+
readonly overlay: "var(--semantic-color-state-pressed-overlay)";
|
|
311
|
+
};
|
|
312
|
+
};
|
|
307
313
|
};
|
|
308
314
|
readonly space: {
|
|
309
315
|
readonly scale: {
|
|
@@ -511,6 +517,7 @@ export declare const tokenRefs: {
|
|
|
511
517
|
readonly lg: "var(--semantic-size-icon-lg)";
|
|
512
518
|
};
|
|
513
519
|
readonly avatar: "var(--semantic-size-avatar)";
|
|
520
|
+
readonly tile: "var(--semantic-size-tile)";
|
|
514
521
|
readonly row: {
|
|
515
522
|
readonly compact: "var(--semantic-size-row-compact)";
|
|
516
523
|
readonly comfortable: "var(--semantic-size-row-comfortable)";
|
|
@@ -641,6 +648,7 @@ export declare const tokenRefs: {
|
|
|
641
648
|
readonly "card-foreground": "var(--role-card-foreground)";
|
|
642
649
|
readonly popover: "var(--role-popover)";
|
|
643
650
|
readonly scrim: "var(--role-scrim)";
|
|
651
|
+
readonly "pressed-overlay": "var(--role-pressed-overlay)";
|
|
644
652
|
readonly "popover-foreground": "var(--role-popover-foreground)";
|
|
645
653
|
readonly primary: "var(--role-primary)";
|
|
646
654
|
readonly "primary-foreground": "var(--role-primary-foreground)";
|
|
@@ -124,16 +124,25 @@ declare const hds: {
|
|
|
124
124
|
xs: string;
|
|
125
125
|
};
|
|
126
126
|
component: {
|
|
127
|
-
/**
|
|
127
|
+
/**
|
|
128
|
+
* @deprecated hds#206 — use `semantic.space.surface.padding`.
|
|
129
|
+
* @removeIn 1.0.0
|
|
130
|
+
*/
|
|
128
131
|
padding: string;
|
|
129
|
-
/**
|
|
132
|
+
/**
|
|
133
|
+
* @deprecated hds#206 — use `semantic.space.scale.xs`.
|
|
134
|
+
* @removeIn 1.0.0
|
|
135
|
+
*/
|
|
130
136
|
gap: string;
|
|
131
137
|
};
|
|
132
138
|
stack: {
|
|
133
139
|
gap: string;
|
|
134
140
|
};
|
|
135
141
|
layout: {
|
|
136
|
-
/**
|
|
142
|
+
/**
|
|
143
|
+
* @deprecated hds#206 — use `semantic.space.region.gutter`.
|
|
144
|
+
* @removeIn 1.0.0
|
|
145
|
+
*/
|
|
137
146
|
gutter: string;
|
|
138
147
|
gap: string;
|
|
139
148
|
section: string;
|
|
@@ -192,6 +201,16 @@ declare const hds: {
|
|
|
192
201
|
medium: string;
|
|
193
202
|
large: string;
|
|
194
203
|
};
|
|
204
|
+
/**
|
|
205
|
+
* @deprecated hds#206 — use `hds.semantic.space.scale.*`, which compact density
|
|
206
|
+
* remaps too. Same pixels at both densities, one step down the name ladder:
|
|
207
|
+
* `density.sm` → `scale.xs`, `density.md` → `scale.sm`, `density.lg` → `scale.md`,
|
|
208
|
+
* `density.xl` → `scale.lg`, `density.xl2` → `scale.xl`. `density.xs` (4px),
|
|
209
|
+
* `density.xl3` (64px) and `density.xl4` (80px) have no scale step:
|
|
210
|
+
* `hds.space.px4` / `px64` / `px80` keep their comfortable pixels, without the
|
|
211
|
+
* compact remap.
|
|
212
|
+
* @removeIn 1.0.0
|
|
213
|
+
*/
|
|
195
214
|
density: {
|
|
196
215
|
xs: string;
|
|
197
216
|
sm: string;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @hirobius/design-system/icons
|
|
3
3
|
*
|
|
4
4
|
* A curated subset of Lucide (canonical 0.487.0 names) so a consumer can get
|
|
5
|
-
* an `icon` for
|
|
5
|
+
* an `icon` for Icon (and Button iconOnly through it) with nothing extra to install. Bare
|
|
6
6
|
* re-export from 'lucide-react' (external in the lib build, so it tree-shakes).
|
|
7
7
|
* Legacy aliases (MoreHorizontal, MoreVertical, AlertTriangle, Home, Filter)
|
|
8
8
|
* are intentionally not exported; use Ellipsis, EllipsisVertical,
|