@leonardaustin/ui 0.6.1 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/tables/ColumnPicker.d.ts +3 -1
- package/dist/components/tables/ColumnPicker.d.ts.map +1 -1
- package/dist/components/tables/ResourceTable.d.ts +13 -6
- package/dist/components/tables/ResourceTable.d.ts.map +1 -1
- package/dist/components/ui/AttachmentList.d.ts +23 -0
- package/dist/components/ui/AttachmentList.d.ts.map +1 -0
- package/dist/components/ui/Button.d.ts +3 -0
- package/dist/components/ui/Button.d.ts.map +1 -1
- package/dist/components/ui/Calendar.d.ts +6 -3
- package/dist/components/ui/Calendar.d.ts.map +1 -1
- package/dist/components/ui/CalendarGrid.d.ts +3 -1
- package/dist/components/ui/CalendarGrid.d.ts.map +1 -1
- package/dist/components/ui/Card.d.ts +7 -4
- package/dist/components/ui/Card.d.ts.map +1 -1
- package/dist/components/ui/CharacterCount.d.ts +10 -0
- package/dist/components/ui/CharacterCount.d.ts.map +1 -0
- package/dist/components/ui/Checkbox.d.ts +7 -7
- package/dist/components/ui/Checkbox.d.ts.map +1 -1
- package/dist/components/ui/Combobox.d.ts +32 -5
- package/dist/components/ui/Combobox.d.ts.map +1 -1
- package/dist/components/ui/DatePartsInput.d.ts +26 -0
- package/dist/components/ui/DatePartsInput.d.ts.map +1 -0
- package/dist/components/ui/DatePicker.d.ts +7 -3
- package/dist/components/ui/DatePicker.d.ts.map +1 -1
- package/dist/components/ui/DateRangePicker.d.ts +4 -1
- package/dist/components/ui/DateRangePicker.d.ts.map +1 -1
- package/dist/components/ui/DateTimePicker.d.ts +7 -3
- package/dist/components/ui/DateTimePicker.d.ts.map +1 -1
- package/dist/components/ui/Dialog.d.ts +47 -5
- package/dist/components/ui/Dialog.d.ts.map +1 -1
- package/dist/components/ui/DialogActions.d.ts +22 -11
- package/dist/components/ui/DialogActions.d.ts.map +1 -1
- package/dist/components/ui/FieldContext.d.ts +9 -0
- package/dist/components/ui/FieldContext.d.ts.map +1 -0
- package/dist/components/ui/Fieldset.d.ts +9 -0
- package/dist/components/ui/Fieldset.d.ts.map +1 -0
- package/dist/components/ui/FormField.d.ts +24 -0
- package/dist/components/ui/FormField.d.ts.map +1 -0
- package/dist/components/ui/NavTabs.d.ts +16 -0
- package/dist/components/ui/NavTabs.d.ts.map +1 -0
- package/dist/components/ui/PageHeader.d.ts +8 -5
- package/dist/components/ui/PageHeader.d.ts.map +1 -1
- package/dist/components/ui/PasswordInput.d.ts +4 -0
- package/dist/components/ui/PasswordInput.d.ts.map +1 -1
- package/dist/components/ui/ProgressBar.d.ts +18 -0
- package/dist/components/ui/ProgressBar.d.ts.map +1 -0
- package/dist/components/ui/Radio.d.ts +27 -0
- package/dist/components/ui/Radio.d.ts.map +1 -0
- package/dist/components/ui/Select.d.ts +4 -0
- package/dist/components/ui/Select.d.ts.map +1 -1
- package/dist/components/ui/SideSheet.d.ts.map +1 -1
- package/dist/components/ui/Skeleton.d.ts +8 -0
- package/dist/components/ui/Skeleton.d.ts.map +1 -0
- package/dist/components/ui/Tabs.d.ts.map +1 -1
- package/dist/components/ui/TextInput.d.ts +4 -0
- package/dist/components/ui/TextInput.d.ts.map +1 -1
- package/dist/components/ui/Textarea.d.ts +4 -0
- package/dist/components/ui/Textarea.d.ts.map +1 -1
- package/dist/components/ui/UploadDropzone.d.ts +6 -7
- package/dist/components/ui/UploadDropzone.d.ts.map +1 -1
- package/dist/components/ui/calendar/AgendaView.d.ts.map +1 -1
- package/dist/components/ui/calendar/MonthView.d.ts.map +1 -1
- package/dist/components/ui/calendar/TimeGrid.d.ts.map +1 -1
- package/dist/components/ui/calendar/TimelineView.d.ts.map +1 -1
- package/dist/components/ui/calendar/context.d.ts +4 -1
- package/dist/components/ui/calendar/context.d.ts.map +1 -1
- package/dist/components/ui/calendar/useGridInteraction.d.ts +4 -0
- package/dist/components/ui/calendar/useGridInteraction.d.ts.map +1 -1
- package/dist/components/ui/useFieldControl.d.ts +17 -0
- package/dist/components/ui/useFieldControl.d.ts.map +1 -0
- package/dist/hooks/useDropUp.d.ts.map +1 -1
- package/dist/hooks/useFocusTrap.d.ts +6 -5
- package/dist/hooks/useFocusTrap.d.ts.map +1 -1
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4345 -2972
- package/dist/lib/anchorPlacement.d.ts +44 -0
- package/dist/lib/anchorPlacement.d.ts.map +1 -0
- package/dist/lib/calendar.d.ts +70 -0
- package/dist/lib/calendar.d.ts.map +1 -1
- package/dist/lib/dateParts.d.ts +11 -0
- package/dist/lib/dateParts.d.ts.map +1 -0
- package/dist/lib/dialogDrag.d.ts +20 -11
- package/dist/lib/dialogDrag.d.ts.map +1 -1
- package/dist/lib/rect.d.ts +8 -0
- package/dist/lib/rect.d.ts.map +1 -0
- package/dist/providers/ControlSizeContext.d.ts +4 -0
- package/dist/providers/ControlSizeContext.d.ts.map +1 -0
- package/dist/providers/ControlSizeProvider.d.ts +9 -0
- package/dist/providers/ControlSizeProvider.d.ts.map +1 -0
- package/dist/providers/SettingsProvider.d.ts +19 -1
- package/dist/providers/SettingsProvider.d.ts.map +1 -1
- package/dist/styles.css +313 -1
- package/package.json +1 -1
|
@@ -21,7 +21,9 @@ interface ColumnDef {
|
|
|
21
21
|
/** Unique column key. */
|
|
22
22
|
key: string;
|
|
23
23
|
/** Display label for the column header. */
|
|
24
|
-
header:
|
|
24
|
+
header: ReactNode;
|
|
25
|
+
/** Plain name for rich headers, matching ResourceTable columns. */
|
|
26
|
+
sortLabel?: string;
|
|
25
27
|
/** Heading to list this column under; consecutive columns share one. */
|
|
26
28
|
group?: string;
|
|
27
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnPicker.d.ts","sourceRoot":"","sources":["../../../src/components/tables/ColumnPicker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAKL,KAAK,WAAW,EAChB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AASf,UAAU,SAAS;IACjB,yBAAyB;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ColumnPicker.d.ts","sourceRoot":"","sources":["../../../src/components/tables/ColumnPicker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAKL,KAAK,WAAW,EAChB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AASf,UAAU,SAAS;IACjB,yBAAyB;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,MAAM,EAAE,SAAS,CAAC;IAClB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,iBAAiB;IACzB,gFAAgF;IAChF,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,2CAA2C;IAC3C,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,oDAAoD;IACpD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,uEAAuE;IACvE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB;AAQD,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,MAAM,EACN,QAAQ,EACR,KAAiB,EACjB,OAA0B,EAC1B,IAAe,EACf,MAAM,EACN,SAAkB,EAClB,MAAM,GACP,EAAE,iBAAiB,2CAkEnB"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { type ReactNode } from "react";
|
|
1
|
+
import { type HTMLAttributes, type ReactNode, type TableHTMLAttributes } from "react";
|
|
2
2
|
import { type SortDir } from "./sortRows";
|
|
3
3
|
export interface Column<T> {
|
|
4
4
|
key: string;
|
|
5
|
-
header:
|
|
5
|
+
header: ReactNode;
|
|
6
|
+
sortLabel?: string;
|
|
6
7
|
width?: string;
|
|
7
8
|
sortable?: boolean;
|
|
8
9
|
/**
|
|
@@ -21,12 +22,19 @@ export interface Column<T> {
|
|
|
21
22
|
getValue?: (row: T) => string | number;
|
|
22
23
|
render: (row: T) => ReactNode;
|
|
23
24
|
}
|
|
24
|
-
interface ResourceTableProps<T> {
|
|
25
|
+
export interface ResourceTableProps<T> {
|
|
25
26
|
data: T[];
|
|
26
27
|
columns: Column<T>[];
|
|
27
28
|
getRowId: (row: T) => string | number;
|
|
28
29
|
onRowClick?: (row: T) => void;
|
|
29
|
-
emptyMessage?:
|
|
30
|
+
emptyMessage?: ReactNode;
|
|
31
|
+
caption?: ReactNode;
|
|
32
|
+
loading?: boolean;
|
|
33
|
+
loadingMessage?: ReactNode;
|
|
34
|
+
className?: string;
|
|
35
|
+
tableProps?: Omit<TableHTMLAttributes<HTMLTableElement>, "children">;
|
|
36
|
+
getRowProps?: (row: T) => HTMLAttributes<HTMLTableRowElement>;
|
|
37
|
+
isRowSelected?: (row: T) => boolean;
|
|
30
38
|
/**
|
|
31
39
|
* Controlled sort key. Provide together with `onSortChange` to make
|
|
32
40
|
* sorting controlled — the table then renders `data` as-is and the caller
|
|
@@ -51,6 +59,5 @@ interface ResourceTableProps<T> {
|
|
|
51
59
|
* comparison semantics for that pre-slice sort. For server-paginated data,
|
|
52
60
|
* sort in the query.
|
|
53
61
|
*/
|
|
54
|
-
export declare function ResourceTable<T>({ data, columns, getRowId, onRowClick, emptyMessage, sortKey: controlledSortKey, sortDir: controlledSortDir, onSortChange, }: ResourceTableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
55
|
-
export {};
|
|
62
|
+
export declare function ResourceTable<T>({ data, columns, getRowId, onRowClick, emptyMessage, sortKey: controlledSortKey, sortDir: controlledSortDir, onSortChange, caption, loading, loadingMessage, className, tableProps, getRowProps, isRowSelected, }: ResourceTableProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
56
63
|
//# sourceMappingURL=ResourceTable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceTable.d.ts","sourceRoot":"","sources":["../../../src/components/tables/ResourceTable.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ResourceTable.d.ts","sourceRoot":"","sources":["../../../src/components/tables/ResourceTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,mBAAmB,EACzB,MAAM,OAAO,CAAC;AAKf,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,CAAC;IACvC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACrB,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,CAAC;IACtC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC9B,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,UAAU,CAAC,CAAC;IACrE,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,cAAc,CAAC,mBAAmB,CAAC,CAAC;IAC9D,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,OAAO,CAAC;IACpC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,qEAAqE;IACrE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;CAC3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,EAC/B,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAwB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,iBAAiB,EAC1B,YAAY,EACZ,OAAO,EACP,OAAe,EACf,cAA2B,EAC3B,SAAS,EACT,UAAU,EACV,WAAW,EACX,aAAa,GACd,EAAE,kBAAkB,CAAC,CAAC,CAAC,2CAkKvB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from "react";
|
|
2
|
+
export type AttachmentStatus = "pending" | "uploading" | "processing" | "ready" | "error";
|
|
3
|
+
export interface AttachmentItemProps extends Omit<HTMLAttributes<HTMLLIElement>, "id"> {
|
|
4
|
+
name: string;
|
|
5
|
+
/** Size in bytes; omitted when unknown. */
|
|
6
|
+
size?: number;
|
|
7
|
+
status?: AttachmentStatus;
|
|
8
|
+
statusLabel?: ReactNode;
|
|
9
|
+
error?: ReactNode;
|
|
10
|
+
onRetry?: () => void;
|
|
11
|
+
onRemove?: () => void;
|
|
12
|
+
onDownload?: () => void;
|
|
13
|
+
/** A caller-authorized download URL; the component does not fetch or authorize files. */
|
|
14
|
+
downloadHref?: string;
|
|
15
|
+
actionsDisabled?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export declare function AttachmentItem({ name, size, status, statusLabel, error, onRetry, onRemove, onDownload, downloadHref, actionsDisabled, className, ...props }: AttachmentItemProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export interface AttachmentListProps extends HTMLAttributes<HTMLUListElement> {
|
|
19
|
+
children?: ReactNode;
|
|
20
|
+
}
|
|
21
|
+
/** Controlled presentation only. Keep transport, scanning, authorization and send policy in the application. */
|
|
22
|
+
export declare function AttachmentList({ children, className, "aria-label": label, ...props }: AttachmentListProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
//# sourceMappingURL=AttachmentList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AttachmentList.d.ts","sourceRoot":"","sources":["../../../src/components/ui/AttachmentList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvD,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,WAAW,GACX,YAAY,GACZ,OAAO,GACP,OAAO,CAAC;AACZ,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAC/C,cAAc,CAAC,aAAa,CAAC,EAC7B,IAAI,CACL;IACC,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,yFAAyF;IACzF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAeD,wBAAgB,cAAc,CAAC,EAC7B,IAAI,EACJ,IAAI,EACJ,MAAgB,EAChB,WAAW,EACX,KAAK,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,eAAe,EACf,SAAS,EACT,GAAG,KAAK,EACT,EAAE,mBAAmB,2CAwErB;AACD,MAAM,WAAW,mBAAoB,SAAQ,cAAc,CAAC,gBAAgB,CAAC;IAC3E,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AACD,gHAAgH;AAChH,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,SAAS,EACT,YAAY,EAAE,KAAqB,EACnC,GAAG,KAAK,EACT,EAAE,mBAAmB,2CAMrB"}
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
* unbalanced as an icon-only button.
|
|
35
35
|
*/
|
|
36
36
|
import { type ButtonHTMLAttributes, type ElementType, type ReactNode } from "react";
|
|
37
|
+
import { type ControlSize } from "../../providers/ControlSizeContext";
|
|
37
38
|
type Variant = "primary" | "secondary" | "danger" | "ghost" | "icon";
|
|
38
39
|
type Size = "xs" | "sm" | "md" | "lg";
|
|
39
40
|
export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
@@ -45,6 +46,8 @@ export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
|
45
46
|
variant?: Variant;
|
|
46
47
|
/** Control height and padding. Defaults to `md`. */
|
|
47
48
|
size?: Size;
|
|
49
|
+
/** Inherit ControlSizeProvider or opt into a minimum 44px hit area. */
|
|
50
|
+
controlSize?: ControlSize;
|
|
48
51
|
/**
|
|
49
52
|
* Show a spinner and disable the button while an action is in flight.
|
|
50
53
|
* Implies `disabled`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Button.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Button.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAKf,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,oCAAoC,CAAC;AAE5C,KAAK,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AACrE,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEtC,MAAM,WAAW,WAAY,SAAQ,oBAAoB,CAAC,iBAAiB,CAAC;IAC1E;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oDAAoD;IACpD,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,uEAAuE;IACvE,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAgED,eAAO,MAAM,MAAM,2GA4DlB,CAAC"}
|
|
@@ -12,8 +12,9 @@
|
|
|
12
12
|
* `onAvailabilityChange`; apply the change to your state (or reject it in
|
|
13
13
|
* `validate`, which also drives the live drag preview).
|
|
14
14
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
15
|
+
* Dates are real instants. Set timeZone to an IANA zone (e.g. Europe/London)
|
|
16
|
+
* for practice-zone display and elapsed transition-day axes; the default
|
|
17
|
+
* retains browser-local wall-clock behavior.
|
|
17
18
|
*
|
|
18
19
|
* @example
|
|
19
20
|
* ```tsx
|
|
@@ -156,6 +157,8 @@ export interface CalendarProps<T = unknown, A = unknown> {
|
|
|
156
157
|
narrowWidth?: number;
|
|
157
158
|
/** Locale for dates and times. Defaults to "en-GB". */
|
|
158
159
|
locale?: string;
|
|
160
|
+
/** IANA timezone for display, civil navigation and input. Defaults to the browser zone. Dates and callbacks always retain real instant identity. */
|
|
161
|
+
timeZone?: string;
|
|
159
162
|
/** 12-hour clock. Defaults to false. */
|
|
160
163
|
hour12?: boolean;
|
|
161
164
|
/** Override any user-facing string. */
|
|
@@ -170,5 +173,5 @@ export interface CalendarProps<T = unknown, A = unknown> {
|
|
|
170
173
|
/** Accessible name for the calendar region. */
|
|
171
174
|
"aria-label"?: string;
|
|
172
175
|
}
|
|
173
|
-
export declare function Calendar<T = unknown, A = unknown>({ events, availability, resources, view: viewProp, defaultView, onViewChange, views, date: dateProp, defaultDate, onDateChange, onRangeChange, weekStartsOn, workWeekDays, agendaDays, slotMinTime, slotMaxTime, slotDuration, slotLabelInterval, hourHeight, timelineHourWidth, resourceMinWidth, scrollToTime, scrollAlign, now: nowProp, nowIndicator, editLayer, readOnly, selectable, clickCreateDuration, shadeOutsideAvailability, onCreate, onEventClick, onEventChange, onAvailabilityClick, onAvailabilityChange, validate, onInvalidChange, onDateClick, renderEvent, monthMaxEvents, agendaShowAvailability, display, narrowView, narrowWidth, locale, hour12, labels: labelOverrides, toolbar, toolbarActions, loading, className, "aria-label": ariaLabel, }: CalendarProps<T, A>): import("react/jsx-runtime").JSX.Element;
|
|
176
|
+
export declare function Calendar<T = unknown, A = unknown>({ events, availability, resources, view: viewProp, defaultView, onViewChange, views, date: dateProp, defaultDate, onDateChange, onRangeChange, weekStartsOn, workWeekDays, agendaDays, slotMinTime, slotMaxTime, slotDuration, slotLabelInterval, hourHeight, timelineHourWidth, resourceMinWidth, scrollToTime, scrollAlign, now: nowProp, nowIndicator, editLayer, readOnly, selectable, clickCreateDuration, shadeOutsideAvailability, onCreate, onEventClick, onEventChange, onAvailabilityClick, onAvailabilityChange, validate, onInvalidChange, onDateClick, renderEvent, monthMaxEvents, agendaShowAvailability, display, narrowView, narrowWidth, locale, timeZone, hour12, labels: labelOverrides, toolbar, toolbarActions, loading, className, "aria-label": ariaLabel, }: CalendarProps<T, A>): import("react/jsx-runtime").JSX.Element;
|
|
174
177
|
//# sourceMappingURL=Calendar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Calendar.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Calendar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
interface CalendarGridProps {
|
|
2
|
+
/** Explicit zone; day buttons return real instants at midnight in this zone. */
|
|
3
|
+
timeZone?: string;
|
|
2
4
|
/** Currently displayed month (year, month). */
|
|
3
5
|
year: number;
|
|
4
6
|
month: number;
|
|
@@ -18,6 +20,6 @@ interface CalendarGridProps {
|
|
|
18
20
|
/** Maximum selectable date. */
|
|
19
21
|
maxDate?: Date;
|
|
20
22
|
}
|
|
21
|
-
export declare function CalendarGrid({ year, month, selected, rangeStart, rangeEnd, hoverDate, onSelect, onMonthChange, onHover, minDate, maxDate, }: CalendarGridProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
export declare function CalendarGrid({ year, month, timeZone, selected, rangeStart, rangeEnd, hoverDate, onSelect, onMonthChange, onHover, minDate, maxDate, }: CalendarGridProps): import("react/jsx-runtime").JSX.Element;
|
|
22
24
|
export {};
|
|
23
25
|
//# sourceMappingURL=CalendarGrid.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarGrid.d.ts","sourceRoot":"","sources":["../../../src/components/ui/CalendarGrid.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CalendarGrid.d.ts","sourceRoot":"","sources":["../../../src/components/ui/CalendarGrid.tsx"],"names":[],"mappings":"AAuBA,UAAU,iBAAiB;IACzB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,iCAAiC;IACjC,UAAU,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC/B,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACtC,+BAA+B;IAC/B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,+BAA+B;IAC/B,OAAO,CAAC,EAAE,IAAI,CAAC;CAChB;AAyBD,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,aAAa,EACb,OAAO,EACP,OAAO,EACP,OAAO,GACR,EAAE,iBAAiB,2CAkMnB"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import type { ReactNode } from "react";
|
|
2
|
-
export interface CardProps {
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from "react";
|
|
2
|
+
export interface CardProps extends HTMLAttributes<HTMLElement> {
|
|
3
3
|
children: ReactNode;
|
|
4
|
-
className?: string;
|
|
5
4
|
header?: ReactNode;
|
|
6
5
|
footer?: ReactNode;
|
|
6
|
+
/** Semantic container; use aria-labelledby to associate a header heading. */
|
|
7
|
+
as?: "div" | "section" | "article" | "aside";
|
|
8
|
+
flush?: boolean;
|
|
9
|
+
bodyClassName?: string;
|
|
7
10
|
}
|
|
8
|
-
export declare function Card({ children, className, header, footer }: CardProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare function Card({ children, className, header, footer, as: Root, flush, bodyClassName, ...props }: CardProps): import("react/jsx-runtime").JSX.Element;
|
|
9
12
|
//# sourceMappingURL=Card.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvD,MAAM,WAAW,SAAU,SAAQ,cAAc,CAAC,WAAW,CAAC;IAC5D,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,6EAA6E;IAC7E,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAC7C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,IAAI,CAAC,EACnB,QAAQ,EACR,SAAS,EACT,MAAM,EACN,MAAM,EACN,EAAE,EAAE,IAAY,EAChB,KAAa,EACb,aAAa,EACb,GAAG,KAAK,EACT,EAAE,SAAS,2CA+BX"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type HTMLAttributes } from "react";
|
|
2
|
+
export interface CharacterCountProps extends HTMLAttributes<HTMLParagraphElement> {
|
|
3
|
+
value: string;
|
|
4
|
+
maxLength: number;
|
|
5
|
+
/** Delay screen-reader announcements while typing; visible text updates immediately. */
|
|
6
|
+
announcementDelay?: number;
|
|
7
|
+
}
|
|
8
|
+
/** Counts UTF-16 code units, matching native input/textarea maxLength. */
|
|
9
|
+
export declare function CharacterCount({ value, maxLength, announcementDelay, className, ...props }: CharacterCountProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=CharacterCount.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CharacterCount.d.ts","sourceRoot":"","sources":["../../../src/components/ui/CharacterCount.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAIjE,MAAM,WAAW,mBAAoB,SAAQ,cAAc,CAAC,oBAAoB,CAAC;IAC/E,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,wFAAwF;IACxF,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AACD,0EAA0E;AAC1E,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,SAAS,EACT,iBAAwB,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,mBAAmB,2CA6BrB"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { type ChangeEvent, type InputHTMLAttributes, type ReactNode } from "react";
|
|
2
|
+
export interface CheckboxProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "type" | "onChange" | "size"> {
|
|
3
3
|
checked: boolean;
|
|
4
4
|
indeterminate?: boolean;
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/** Existing boolean-first callback; native event is also available. */
|
|
6
|
+
onChange: (checked: boolean, event: ChangeEvent<HTMLInputElement>) => void;
|
|
7
|
+
label?: ReactNode;
|
|
7
8
|
ariaLabel?: string;
|
|
8
|
-
|
|
9
|
-
className?: string;
|
|
9
|
+
controlSize?: "compact" | "comfortable";
|
|
10
10
|
}
|
|
11
|
-
export declare
|
|
11
|
+
export declare const Checkbox: import("react").ForwardRefExoticComponent<CheckboxProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
12
12
|
//# sourceMappingURL=Checkbox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Checkbox.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAQf,MAAM,WAAW,aAAc,SAAQ,IAAI,CACzC,mBAAmB,CAAC,gBAAgB,CAAC,EACrC,MAAM,GAAG,UAAU,GAAG,MAAM,CAC7B;IACC,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uEAAuE;IACvE,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC3E,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;CACzC;AAED,eAAO,MAAM,QAAQ,4GA+EpB,CAAC"}
|
|
@@ -1,15 +1,42 @@
|
|
|
1
|
-
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import { type ControlSize } from "../../providers/ControlSizeContext";
|
|
3
|
+
export interface ComboboxOption {
|
|
2
4
|
value: string;
|
|
3
5
|
label: string;
|
|
6
|
+
disabled?: boolean;
|
|
4
7
|
}
|
|
5
|
-
interface ComboboxProps {
|
|
6
|
-
options:
|
|
8
|
+
export interface ComboboxProps<T extends ComboboxOption = ComboboxOption> {
|
|
9
|
+
options: T[];
|
|
7
10
|
value: string;
|
|
8
11
|
onChange: (value: string) => void;
|
|
12
|
+
/** Receives the complete result, including caller-owned metadata. */
|
|
13
|
+
onOptionChange?: (option: T) => void;
|
|
9
14
|
placeholder?: string;
|
|
10
15
|
label?: string;
|
|
11
16
|
className?: string;
|
|
17
|
+
/** Opt-in larger controls, or inherit ControlSizeProvider. */
|
|
18
|
+
controlSize?: ControlSize;
|
|
19
|
+
id?: string;
|
|
20
|
+
name?: string;
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
"aria-label"?: string;
|
|
23
|
+
"aria-describedby"?: string;
|
|
24
|
+
"aria-invalid"?: boolean | "true" | "false";
|
|
25
|
+
/** Controlled query. The application owns fetching, cancellation and paging. */
|
|
26
|
+
query?: string;
|
|
27
|
+
onQueryChange?: (query: string) => void;
|
|
28
|
+
/** Set false for server-filtered/paginated results. */
|
|
29
|
+
filterOptions?: boolean;
|
|
30
|
+
/** Retain an existing selection even when it is absent from this result page. */
|
|
31
|
+
selectedOption?: T;
|
|
32
|
+
renderOption?: (option: T) => ReactNode;
|
|
33
|
+
loading?: boolean;
|
|
34
|
+
loadingMessage?: ReactNode;
|
|
35
|
+
error?: ReactNode;
|
|
36
|
+
onRetry?: () => void;
|
|
37
|
+
emptyMessage?: ReactNode;
|
|
38
|
+
/** Pagination/load-more controls, outside the listbox so they remain operable. */
|
|
39
|
+
footer?: ReactNode;
|
|
12
40
|
}
|
|
13
|
-
export declare function Combobox({ options, value, onChange, placeholder, label, className, }: ComboboxProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
-
export {};
|
|
41
|
+
export declare function Combobox<T extends ComboboxOption = ComboboxOption>({ options, value, onChange, onOptionChange, placeholder, label, className, controlSize, id, name, disabled, "aria-label": ariaLabel, "aria-describedby": describedBy, "aria-invalid": invalid, query, onQueryChange, filterOptions, selectedOption, renderOption, loading, loadingMessage, error, onRetry, emptyMessage, footer, }: ComboboxProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
15
42
|
//# sourceMappingURL=Combobox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Combobox.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Combobox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAM7E,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,oCAAoC,CAAC;AAE5C,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc;IACtE,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,qEAAqE;IACrE,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8DAA8D;IAC9D,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,uDAAuD;IACvD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iFAAiF;IACjF,cAAc,CAAC,EAAE,CAAC,CAAC;IACnB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,kFAAkF;IAClF,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,EAClE,OAAO,EACP,KAAK,EACL,QAAQ,EACR,cAAc,EACd,WAAyB,EACzB,KAAK,EACL,SAAS,EACT,WAAW,EACX,EAAE,EACF,IAAI,EACJ,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,kBAAkB,EAAE,WAAW,EAC/B,cAAc,EAAE,OAAO,EACvB,KAAK,EACL,aAAa,EACb,aAAoB,EACpB,cAAc,EACd,YAAY,EACZ,OAAe,EACf,cAAmC,EACnC,KAAK,EACL,OAAO,EACP,YAA2B,EAC3B,MAAM,GACP,EAAE,aAAa,CAAC,CAAC,CAAC,2CAyQlB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type ComponentPropsWithRef, type ReactNode } from "react";
|
|
2
|
+
export interface DateParts {
|
|
3
|
+
day: string;
|
|
4
|
+
month: string;
|
|
5
|
+
year: string;
|
|
6
|
+
}
|
|
7
|
+
export interface DatePartsInputProps {
|
|
8
|
+
value: DateParts;
|
|
9
|
+
onChange: (value: DateParts) => void;
|
|
10
|
+
label: ReactNode;
|
|
11
|
+
hint?: ReactNode;
|
|
12
|
+
error?: ReactNode;
|
|
13
|
+
id?: string;
|
|
14
|
+
name?: string;
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
required?: boolean;
|
|
17
|
+
className?: string;
|
|
18
|
+
/** Inclusive year bounds for validation and the year selector. */
|
|
19
|
+
minYear?: number;
|
|
20
|
+
maxYear?: number;
|
|
21
|
+
/** Native attributes for each text input, including refs, autocomplete and blur handlers. */
|
|
22
|
+
inputProps?: Partial<Record<keyof DateParts, ComponentPropsWithRef<"input">>>;
|
|
23
|
+
}
|
|
24
|
+
/** Retains raw strings, including partial/invalid dates. Validates the combined civil date and offers native selectors for each field. */
|
|
25
|
+
export declare function DatePartsInput({ value, onChange, label, hint, error, id, name, disabled, required, className, inputProps, minYear, maxYear, }: DatePartsInputProps): import("react/jsx-runtime").JSX.Element;
|
|
26
|
+
//# sourceMappingURL=DatePartsInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePartsInput.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DatePartsInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,qBAAqB,EAC1B,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAQf,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AACD,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6FAA6F;IAC7F,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;CAC/E;AACD,0IAA0I;AAC1I,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,KAAK,EACL,EAAE,EACF,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,UAAU,EACV,OAAc,EACd,OAAc,GACf,EAAE,mBAAmB,2CA4IrB"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
import { type ControlSize } from "../../providers/ControlSizeContext";
|
|
2
|
+
export interface DatePickerProps {
|
|
3
|
+
/** Optional zone for instant-backed dates. Birth dates/civil dates should use DatePartsInput. */
|
|
4
|
+
timeZone?: string;
|
|
5
|
+
/** Inherit ControlSizeProvider or override this trigger’s sizing. */
|
|
6
|
+
controlSize?: ControlSize;
|
|
2
7
|
label?: string;
|
|
3
8
|
value: Date | null;
|
|
4
9
|
onChange: (date: Date | null) => void;
|
|
@@ -6,6 +11,5 @@ interface DatePickerProps {
|
|
|
6
11
|
/** Format function for display. Defaults to "MMM D, YYYY". */
|
|
7
12
|
format?: (date: Date) => string;
|
|
8
13
|
}
|
|
9
|
-
export declare function DatePicker({ label, value, onChange, placeholder, format, }: DatePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
-
export {};
|
|
14
|
+
export declare function DatePicker({ controlSize, label, timeZone, value, onChange, placeholder, format, }: DatePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
11
15
|
//# sourceMappingURL=DatePicker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DatePicker.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DatePicker.tsx"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,oCAAoC,CAAC;AAG5C,MAAM,WAAW,eAAe;IAC9B,iGAAiG;IACjG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qEAAqE;IACrE,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC;CACjC;AAoBD,wBAAgB,UAAU,CAAC,EACzB,WAAW,EACX,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,WAA8B,EAC9B,MAAM,GACP,EAAE,eAAe,2CA4FjB"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
+
import { type ControlSize } from "../../providers/ControlSizeContext";
|
|
1
2
|
export interface DateRange {
|
|
2
3
|
start: Date | null;
|
|
3
4
|
end: Date | null;
|
|
4
5
|
}
|
|
5
6
|
interface DateRangePickerProps {
|
|
7
|
+
/** Inherit ControlSizeProvider or override this trigger’s sizing. */
|
|
8
|
+
controlSize?: ControlSize;
|
|
6
9
|
label?: string;
|
|
7
10
|
value: DateRange;
|
|
8
11
|
onChange: (range: DateRange) => void;
|
|
9
12
|
placeholder?: string;
|
|
10
13
|
}
|
|
11
|
-
export declare function DateRangePicker({ label, value, onChange, placeholder, }: DateRangePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function DateRangePicker({ controlSize, label, value, onChange, placeholder, }: DateRangePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
12
15
|
export {};
|
|
13
16
|
//# sourceMappingURL=DateRangePicker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DateRangePicker.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DateRangePicker.tsx"],"names":[],"mappings":"AAOA,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,oCAAoC,CAAC;AAG5C,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC;CAClB;AAED,UAAU,oBAAoB;IAC5B,qEAAqE;IACrE,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AA6BD,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,KAAK,EACL,KAAK,EACL,QAAQ,EACR,WAAoC,GACrC,EAAE,oBAAoB,2CAuLtB"}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
import { type ControlSize } from "../../providers/ControlSizeContext";
|
|
2
|
+
export interface DateTimePickerProps {
|
|
3
|
+
/** IANA zone for display/input. Values and callbacks are real instants. */
|
|
4
|
+
timeZone?: string;
|
|
5
|
+
/** Inherit ControlSizeProvider or override this trigger’s sizing. */
|
|
6
|
+
controlSize?: ControlSize;
|
|
2
7
|
label?: string;
|
|
3
8
|
value: Date | null;
|
|
4
9
|
onChange: (date: Date | null) => void;
|
|
5
10
|
placeholder?: string;
|
|
6
11
|
}
|
|
7
|
-
export declare function DateTimePicker(
|
|
8
|
-
export {};
|
|
12
|
+
export declare function DateTimePicker(props: DateTimePickerProps): import("react/jsx-runtime").JSX.Element;
|
|
9
13
|
//# sourceMappingURL=DateTimePicker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimePicker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DateTimePicker.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DateTimePicker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DateTimePicker.tsx"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,WAAW,EACjB,MAAM,oCAAoC,CAAC;AAG5C,MAAM,WAAW,mBAAmB;IAClC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qEAAqE;IACrE,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAyDD,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,2CAIxD"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import { type ReactNode } from "react";
|
|
1
|
+
import { type ReactNode, type RefObject } from "react";
|
|
2
|
+
import { type AnchorPlacement } from "../../lib/anchorPlacement";
|
|
3
|
+
/** Where a Dialog opens: the centred layout, or beside its anchor. */
|
|
4
|
+
export type DialogPlacement = "center" | AnchorPlacement;
|
|
2
5
|
export interface DialogProps {
|
|
3
6
|
open: boolean;
|
|
4
7
|
onClose: () => void;
|
|
@@ -24,11 +27,50 @@ export interface DialogProps {
|
|
|
24
27
|
footer?: ReactNode;
|
|
25
28
|
className?: string;
|
|
26
29
|
/**
|
|
27
|
-
* Let the user move the dialog by dragging its title bar. It
|
|
28
|
-
* the viewport and reopens in its default
|
|
29
|
-
*
|
|
30
|
+
* Let the user move the dialog by dragging its title bar. It keeps a
|
|
31
|
+
* theme-spacing margin from the viewport edges and reopens in its default
|
|
32
|
+
* position unless `rememberPosition` is set. Off below the `md`
|
|
33
|
+
* breakpoint.
|
|
30
34
|
*/
|
|
31
35
|
draggable?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* With `draggable`, reopen the dialog at the screen position the user last
|
|
38
|
+
* dragged it to, instead of its default (or anchored) position. Kept in
|
|
39
|
+
* memory for this Dialog instance only (not persisted), pulled back inside
|
|
40
|
+
* the viewport if the window has shrunk, and cleared below the `md`
|
|
41
|
+
* breakpoint. Ignored without `draggable`.
|
|
42
|
+
*/
|
|
43
|
+
rememberPosition?: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Where the dialog opens. `center` (default) is the usual layout: centred
|
|
46
|
+
* horizontally, near the top of the viewport. `top`, `bottom`, `left` and
|
|
47
|
+
* `right` open it beside `anchorRef`, flipping to the opposite side when
|
|
48
|
+
* it doesn't fit there; `auto` tries each side from the most room to the
|
|
49
|
+
* least and uses the first that fits. When no candidate side fits, or
|
|
50
|
+
* there's no usable anchor, it falls back to `center`. Re-checked when the
|
|
51
|
+
* window resizes or scrolls and when the dialog changes size. Ignored
|
|
52
|
+
* below the `md` breakpoint.
|
|
53
|
+
*/
|
|
54
|
+
placement?: DialogPlacement;
|
|
55
|
+
/**
|
|
56
|
+
* The element an anchored `placement` opens against, usually the button
|
|
57
|
+
* that opened the dialog. Ignored when `placement` is `center`. If it's
|
|
58
|
+
* unset, detached or hidden, the element that had focus when the dialog
|
|
59
|
+
* opened is used instead; Safari doesn't focus buttons on click, so pass
|
|
60
|
+
* `anchorRef` for reliable placement.
|
|
61
|
+
*/
|
|
62
|
+
anchorRef?: RefObject<HTMLElement | null>;
|
|
63
|
+
role?: "dialog" | "alertdialog";
|
|
64
|
+
description?: ReactNode;
|
|
65
|
+
"aria-label"?: string;
|
|
66
|
+
"aria-describedby"?: string;
|
|
67
|
+
initialFocusRef?: RefObject<HTMLElement | null>;
|
|
68
|
+
returnFocusRef?: RefObject<HTMLElement | null>;
|
|
69
|
+
/** Busy dialogs suppress every dismissal path without removing focus. */
|
|
70
|
+
busy?: boolean;
|
|
71
|
+
closeOnEscape?: boolean;
|
|
72
|
+
closeOnOverlayClick?: boolean;
|
|
73
|
+
hideCloseButton?: boolean;
|
|
32
74
|
}
|
|
33
|
-
export declare function Dialog({ open, onClose, title, children, footer, className, draggable, }: DialogProps): import("react").ReactPortal | null;
|
|
75
|
+
export declare function Dialog({ open, onClose, title, children, footer, className, draggable, rememberPosition, placement, anchorRef, role, description, "aria-label": ariaLabel, "aria-describedby": describedBy, initialFocusRef, returnFocusRef, busy, closeOnEscape, closeOnOverlayClick, hideCloseButton, }: DialogProps): import("react").ReactPortal | null;
|
|
34
76
|
//# sourceMappingURL=Dialog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,SAAS,EAEd,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAMf,OAAO,EAEL,KAAK,eAAe,EAErB,MAAM,2BAA2B,CAAC;AAanC,sEAAsE;AACtE,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,eAAe,CAAC;AAEzD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC1C,IAAI,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;IAChC,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAChD,cAAc,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC/C,yEAAyE;IACzE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAuWD,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,OAAO,EACP,KAAK,EACL,QAAQ,EACR,MAAM,EACN,SAAS,EACT,SAAiB,EACjB,gBAAwB,EACxB,SAAoB,EACpB,SAAS,EACT,IAAe,EACf,WAAW,EACX,YAAY,EAAE,SAAS,EACvB,kBAAkB,EAAE,WAAW,EAC/B,eAAe,EACf,cAAc,EACd,IAAY,EACZ,aAAoB,EACpB,mBAA0B,EAC1B,eAAuB,GACxB,EAAE,WAAW,sCA+Hb"}
|
|
@@ -1,20 +1,26 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* DialogActions — a right-aligned button footer for dialogs.
|
|
3
3
|
*
|
|
4
|
-
* Provides a consistent Cancel + Confirm button layout
|
|
5
|
-
*
|
|
4
|
+
* Provides a consistent Cancel + Confirm button layout for a `<Dialog>`'s
|
|
5
|
+
* `footer`. The confirm button supports all `Button` variants
|
|
6
6
|
* so it can be used for destructive confirmations (variant="danger") or
|
|
7
7
|
* standard confirmations (variant="primary").
|
|
8
8
|
*
|
|
9
9
|
* @example Standard confirmation
|
|
10
10
|
* ```tsx
|
|
11
|
-
* <Dialog
|
|
11
|
+
* <Dialog
|
|
12
|
+
* open={open}
|
|
13
|
+
* onClose={() => setOpen(false)}
|
|
14
|
+
* title="Confirm"
|
|
15
|
+
* footer={
|
|
16
|
+
* <DialogActions
|
|
17
|
+
* onCancel={() => setOpen(false)}
|
|
18
|
+
* onConfirm={handleConfirm}
|
|
19
|
+
* confirmLabel="Confirm"
|
|
20
|
+
* />
|
|
21
|
+
* }
|
|
22
|
+
* >
|
|
12
23
|
* <p>Are you sure?</p>
|
|
13
|
-
* <DialogActions
|
|
14
|
-
* onCancel={() => setOpen(false)}
|
|
15
|
-
* onConfirm={handleConfirm}
|
|
16
|
-
* confirmLabel="Confirm"
|
|
17
|
-
* />
|
|
18
24
|
* </Dialog>
|
|
19
25
|
* ```
|
|
20
26
|
*
|
|
@@ -28,8 +34,9 @@
|
|
|
28
34
|
* />
|
|
29
35
|
* ```
|
|
30
36
|
*/
|
|
37
|
+
import type { Ref } from "react";
|
|
31
38
|
import { type ButtonProps } from "./Button";
|
|
32
|
-
interface DialogActionsProps {
|
|
39
|
+
export interface DialogActionsProps {
|
|
33
40
|
/** Called when the Cancel button is clicked. */
|
|
34
41
|
onCancel: () => void;
|
|
35
42
|
/** Called when the Confirm button is clicked. */
|
|
@@ -46,7 +53,11 @@ interface DialogActionsProps {
|
|
|
46
53
|
confirmVariant?: ButtonProps["variant"];
|
|
47
54
|
/** Additional utility classes for the root container. */
|
|
48
55
|
className?: string;
|
|
56
|
+
busy?: boolean;
|
|
57
|
+
busyLabel?: string;
|
|
58
|
+
cancelRef?: Ref<HTMLButtonElement>;
|
|
59
|
+
confirmRef?: Ref<HTMLButtonElement>;
|
|
60
|
+
confirmDisabled?: boolean;
|
|
49
61
|
}
|
|
50
|
-
export declare function DialogActions({ onCancel, onConfirm, cancelLabel, confirmLabel, confirmVariant, className, }: DialogActionsProps): import("react/jsx-runtime").JSX.Element;
|
|
51
|
-
export {};
|
|
62
|
+
export declare function DialogActions({ onCancel, onConfirm, cancelLabel, confirmLabel, confirmVariant, className, busy, busyLabel, cancelRef, confirmRef, confirmDisabled, }: DialogActionsProps): import("react/jsx-runtime").JSX.Element;
|
|
52
63
|
//# sourceMappingURL=DialogActions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogActions.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DialogActions.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"DialogActions.d.ts","sourceRoot":"","sources":["../../../src/components/ui/DialogActions.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,iDAAiD;IACjD,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,cAAc,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IACxC,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC,UAAU,CAAC,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACpC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,SAAS,EACT,WAAsB,EACtB,YAAwB,EACxB,cAA0B,EAC1B,SAAS,EACT,IAAY,EACZ,SAAsB,EACtB,SAAS,EACT,UAAU,EACV,eAAuB,GACxB,EAAE,kBAAkB,2CAgCpB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface FieldContextValue {
|
|
2
|
+
id?: string;
|
|
3
|
+
describedBy?: string;
|
|
4
|
+
invalid?: boolean;
|
|
5
|
+
required?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare const FieldContext: import("react").Context<FieldContextValue | null>;
|
|
8
|
+
export declare function describeField(...ids: (string | undefined)[]): string | undefined;
|
|
9
|
+
//# sourceMappingURL=FieldContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldContext.d.ts","sourceRoot":"","sources":["../../../src/components/ui/FieldContext.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AACD,eAAO,MAAM,YAAY,mDAAgD,CAAC;AAE1E,wBAAgB,aAAa,CAAC,GAAG,GAAG,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,sBAM3D"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type FieldsetHTMLAttributes, type ReactNode } from "react";
|
|
2
|
+
export interface FieldsetProps extends FieldsetHTMLAttributes<HTMLFieldSetElement> {
|
|
3
|
+
legend: ReactNode;
|
|
4
|
+
hint?: ReactNode;
|
|
5
|
+
error?: ReactNode;
|
|
6
|
+
}
|
|
7
|
+
/** Group choices without forcing a shared input ID or required state. */
|
|
8
|
+
export declare function Fieldset({ id, legend, hint, error, children, className, "aria-describedby": describedBy, ...props }: FieldsetProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
//# sourceMappingURL=Fieldset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Fieldset.d.ts","sourceRoot":"","sources":["../../../src/components/ui/Fieldset.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,sBAAsB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAK3E,MAAM,WAAW,aAAc,SAAQ,sBAAsB,CAAC,mBAAmB,CAAC;IAChF,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,yEAAyE;AACzE,wBAAgB,QAAQ,CAAC,EACvB,EAAE,EACF,MAAM,EACN,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,SAAS,EACT,kBAAkB,EAAE,WAAW,EAC/B,GAAG,KAAK,EACT,EAAE,aAAa,2CAiCf"}
|