@mechane-ai/elements 0.11.0 → 0.12.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.
Files changed (61) hide show
  1. package/README.md +8 -4
  2. package/dist/ai.js +4 -5
  3. package/dist/{categorical-values-FYc43JCa.js → categorical-values-CTrHn9jH.js} +2 -2
  4. package/dist/{chart-frame-Bczk5sWj.js → chart-frame-38ES6kwK.js} +4 -4
  5. package/dist/{chart-input-CbzVN76m.js → chart-input-C9fu7f1Q.js} +2 -2
  6. package/dist/charts/cartesian.js +6 -6
  7. package/dist/charts/distribution.js +2 -2
  8. package/dist/charts/graph.js +3 -3
  9. package/dist/charts/hierarchy.js +3 -3
  10. package/dist/charts/matrix.js +2 -2
  11. package/dist/charts/timeline.js +4 -4
  12. package/dist/charts.js +1 -1
  13. package/dist/{code-block-B7xzM3tD.js → code-block-BjV2EFZS.js} +2 -2
  14. package/dist/collections.js +346 -294
  15. package/dist/content/code.js +1 -1
  16. package/dist/content/diff.js +3 -3
  17. package/dist/content/link.js +1 -1
  18. package/dist/content/markdown.js +2 -2
  19. package/dist/content/tree.js +2 -2
  20. package/dist/{content-link-CatGOrbo.js → content-link-C460m-O7.js} +1 -1
  21. package/dist/content.js +3 -4
  22. package/dist/elements.css +133 -80
  23. package/dist/feedback.js +1 -1
  24. package/dist/forms/dates.js +22 -23
  25. package/dist/forms.js +1 -1
  26. package/dist/index.js +1 -1
  27. package/dist/layout.js +223 -237
  28. package/dist/navigation/commands.js +3 -3
  29. package/dist/overlays.js +1 -1
  30. package/dist/packages/collections/src/collection-controls.d.ts +1 -1
  31. package/dist/packages/collections/src/data-table.d.ts +5 -4
  32. package/dist/packages/collections/src/index.d.ts +1 -1
  33. package/dist/packages/core/src/actions.d.ts +5 -8
  34. package/dist/packages/feedback/src/control-placeholders.d.ts +16 -0
  35. package/dist/packages/feedback/src/index.d.ts +2 -0
  36. package/dist/packages/forms/src/field-styles.d.ts +2 -74
  37. package/dist/packages/forms/src/form-actions.d.ts +11 -0
  38. package/dist/packages/forms/src/form-controls.d.ts +1 -1
  39. package/dist/packages/forms/src/forms.d.ts +3 -3
  40. package/dist/packages/forms/src/index.d.ts +2 -0
  41. package/dist/packages/forms/src/select.d.ts +2 -2
  42. package/dist/packages/forms/src/selection-styles.d.ts +0 -13
  43. package/dist/packages/foundations/src/control-styles.d.ts +101 -0
  44. package/dist/packages/foundations/src/style-composition.d.ts +0 -2
  45. package/dist/packages/foundations/src/tokens.stylex.d.ts +8 -2
  46. package/dist/packages/layout/src/frame.stylex.d.ts +0 -1
  47. package/dist/packages/layout/src/index.d.ts +2 -0
  48. package/dist/packages/layout/src/page-content.d.ts +5 -0
  49. package/dist/packages/layout/src/page-toolbar.d.ts +1 -1
  50. package/dist/packages/layout/src/sidebar.d.ts +3 -3
  51. package/dist/{pierre-diff--zsiHCCB.js → pierre-diff-sUAU-xeL.js} +1 -1
  52. package/dist/{pierre-theme-D9hnHv3Z.js → pierre-theme-CBAncKdH.js} +1 -1
  53. package/dist/{pierre-tree-D47uA7lb.js → pierre-tree-DKN2eGlZ.js} +3 -3
  54. package/dist/{src-D05isEh_.js → src-3gzujMhN.js} +124 -66
  55. package/dist/{src-DXsGTJgv.js → src-CI6KtN2w.js} +366 -307
  56. package/dist/{src-Cs0dRc4X.js → src-CVlgjAlw.js} +1 -1
  57. package/dist/src-DOzle5d4.js +1199 -0
  58. package/dist/tokens.js +14 -8
  59. package/package.json +1 -1
  60. package/packages/foundations/src/tokens.stylex.ts +13 -5
  61. package/dist/src-C_heP5kL.js +0 -1264
@@ -1,5 +1,5 @@
1
- import { l as e } from "../src-C_heP5kL.js";
2
- import { s as t } from "../src-Cs0dRc4X.js";
1
+ import { l as e } from "../src-DOzle5d4.js";
2
+ import { s as t } from "../src-CVlgjAlw.js";
3
3
  import { n } from "../navigation-D2_sGy3C.js";
4
4
  import "@stylexjs/stylex";
5
5
  import { jsx as r, jsxs as i } from "react/jsx-runtime";
@@ -57,7 +57,7 @@ function u({ open: n, onOpenChange: o, title: s, commands: c, trigger: u, placeh
57
57
  children: (e) => /* @__PURE__ */ i(a.Item, {
58
58
  value: e,
59
59
  disabled: e.disabled,
60
- className: "x78zum5 x9f619 x6s0dn4 xaml1ju x1uey4wk xwu7q15 xn9t2bk x5g2kb4 x1ok0vyi xbixft xpvm0e4 x1hz01jw xj57cvi xtqrqnz x1778rvt x1ypdohk xf2ykmf x1480za7 xd12npn xwj21n9 x1m8qfh3",
60
+ className: "x78zum5 x9f619 x6s0dn4 xaml1ju x17tes2r xwu7q15 xn9t2bk x5g2kb4 x1ok0vyi xbixft xpvm0e4 x1hz01jw xj57cvi xtqrqnz x1778rvt x1ypdohk xf2ykmf x1480za7 xd12npn xwj21n9 x1m8qfh3",
61
61
  onClick: () => {
62
62
  o(!1), e.onSelect();
63
63
  },
package/dist/overlays.js CHANGED
@@ -1 +1 @@
1
- export { o as AlertDialog, s as Dialog, a as Drawer, i as Menu, r as Popover, n as Preview, t as Tooltip } from "./src-Cs0dRc4X.js";
1
+ export { o as AlertDialog, s as Dialog, a as Drawer, i as Menu, r as Popover, n as Preview, t as Tooltip } from "./src-CVlgjAlw.js";
@@ -1,7 +1,7 @@
1
1
  import type { ReactNode } from 'react';
2
2
  export type CollectionToolbarProps = {
3
3
  readonly label: string;
4
- readonly children: ReactNode;
4
+ readonly children?: ReactNode;
5
5
  readonly actions?: ReactNode;
6
6
  };
7
7
  export declare function CollectionToolbar({ label, children, actions }: CollectionToolbarProps): ReactNode;
@@ -1,11 +1,11 @@
1
1
  import type { ReactNode } from 'react';
2
- type ColumnAlignment = 'start' | 'end';
3
2
  type RowSizing = 'fixed' | 'content';
3
+ export type DataTableColumnRole = 'primary' | 'text' | 'status' | 'number' | 'timestamp' | 'actions';
4
4
  export type DataTableColumn<Row> = {
5
5
  readonly id: string;
6
6
  readonly label: string;
7
+ readonly role: DataTableColumnRole;
7
8
  readonly cell: (row: Row) => ReactNode;
8
- readonly align?: ColumnAlignment;
9
9
  readonly width?: number;
10
10
  readonly secondary?: boolean;
11
11
  readonly truncate?: boolean;
@@ -15,8 +15,9 @@ export type DataTableTextProps = {
15
15
  readonly children: string;
16
16
  readonly secondary?: string | undefined;
17
17
  readonly leading?: ReactNode;
18
+ readonly trailing?: ReactNode;
18
19
  };
19
- export declare function DataTableText({ children, secondary, leading }: DataTableTextProps): ReactNode;
20
+ export declare function DataTableText({ children, secondary, leading, trailing }: DataTableTextProps): ReactNode;
20
21
  export type DataTableSort = {
21
22
  readonly columnId: string;
22
23
  readonly direction: 'ascending' | 'descending';
@@ -71,5 +72,5 @@ export type DataTableProps<Row> = SortProperties<Row> & OptionalSelection<Row> &
71
72
  readonly onEndReached?: () => void;
72
73
  readonly footer?: ReactNode;
73
74
  };
74
- export declare function DataTable<Row extends object>({ rows, columns, getRowId, caption, empty, sort, onSortChange, selectedIds, onSelectionChange, selectionLabel, rowAction, activeRowId, focusRowId, hideCaption, hideHeaders, rowSizing, window, endContent, onEndReached, footer, }: DataTableProps<Row>): ReactNode;
75
+ export declare function DataTable<Row extends object>({ rows, columns: suppliedColumns, getRowId, caption, empty, sort, onSortChange, selectedIds, onSelectionChange, selectionLabel, rowAction, activeRowId, focusRowId, hideCaption, hideHeaders, rowSizing, window, endContent, onEndReached, footer, }: DataTableProps<Row>): ReactNode;
75
76
  export {};
@@ -1,6 +1,6 @@
1
1
  export type { CollectionToolbarProps, FilterChip, FilterChipsProps, ColumnChoice, ColumnControlsProps, CollectionPaginationProps, } from './collection-controls.tsx';
2
2
  export { CollectionToolbar, FilterChips, ColumnControls, CollectionPagination } from './collection-controls.tsx';
3
- export type { DataTableColumn, DataTableSort, DataTableWindow, DataTableProps, DataTableRowAction, DataTableTextProps, } from './data-table.tsx';
3
+ export type { DataTableColumn, DataTableColumnRole, DataTableSort, DataTableWindow, DataTableProps, DataTableRowAction, DataTableTextProps, } from './data-table.tsx';
4
4
  export { DataTable, DataTableText } from './data-table.tsx';
5
5
  export type { CollectionEndProps, CollectionScrollProps } from './collection-scroll.tsx';
6
6
  export { CollectionEnd, CollectionScroll } from './collection-scroll.tsx';
@@ -1,10 +1,9 @@
1
1
  import { Button as BaseButton } from '@base-ui/react/button';
2
2
  import { useRender } from '@base-ui/react/use-render';
3
3
  import type { ComponentProps, ReactNode } from 'react';
4
- import type { ControlStyle, PlacementStyle } from '../../foundations/src/style-composition.ts';
4
+ import type { PlacementStyle } from '../../foundations/src/style-composition.ts';
5
5
  type ButtonVariant = 'solid' | 'outline' | 'ghost';
6
6
  type ButtonTone = 'neutral' | 'danger';
7
- type ControlSize = 'sm' | 'md';
8
7
  type PendingProps = {
9
8
  readonly pending?: boolean;
10
9
  readonly pendingLabel?: string | undefined;
@@ -12,15 +11,13 @@ type PendingProps = {
12
11
  type ButtonProps = ComponentProps<typeof BaseButton> & PendingProps & {
13
12
  readonly variant?: ButtonVariant;
14
13
  readonly tone?: ButtonTone;
15
- readonly size?: ControlSize;
16
- readonly xstyle?: ControlStyle;
14
+ readonly xstyle?: PlacementStyle;
17
15
  };
18
16
  type IconButtonProps = Omit<ButtonProps, 'aria-label' | 'pendingLabel'> & {
19
17
  readonly 'aria-label': string;
20
18
  };
21
19
  type IconLinkProps = Omit<useRender.ComponentProps<'a'>, 'aria-label'> & {
22
20
  readonly 'aria-label': string;
23
- readonly 'size'?: ControlSize;
24
21
  readonly 'xstyle'?: PlacementStyle;
25
22
  };
26
23
  type TextButtonProps = ComponentProps<typeof BaseButton> & PendingProps & {
@@ -30,9 +27,9 @@ type TextButtonProps = ComponentProps<typeof BaseButton> & PendingProps & {
30
27
  type TextLinkProps = ComponentProps<'a'> & {
31
28
  readonly xstyle?: PlacementStyle;
32
29
  };
33
- export declare function Button({ variant, tone, size, pending, pendingLabel, children, className, style, xstyle, disabled, ...props }: ButtonProps): ReactNode;
34
- export declare function IconButton({ size, children, xstyle, ...props }: IconButtonProps): ReactNode;
30
+ export declare function Button(props: ButtonProps): ReactNode;
31
+ export declare function IconButton({ children, ...props }: IconButtonProps): ReactNode;
35
32
  export declare function TextButton({ tone, pending, pendingLabel, children, className, style, xstyle, disabled, ...props }: TextButtonProps): ReactNode;
36
33
  export declare function TextLink({ xstyle, ...props }: TextLinkProps): ReactNode;
37
- export declare function IconLink({ size, children, xstyle, render, ref, ...props }: IconLinkProps): ReactNode;
34
+ export declare function IconLink({ children, xstyle, render, ref, ...props }: IconLinkProps): ReactNode;
38
35
  export {};
@@ -0,0 +1,16 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { PlacementStyle } from '../../foundations/src/style-composition.ts';
3
+ export type ButtonPlaceholderProps = {
4
+ readonly width?: number | string;
5
+ readonly xstyle?: PlacementStyle;
6
+ };
7
+ export type FieldPlaceholderProps = {
8
+ readonly label?: string;
9
+ readonly hint?: string;
10
+ readonly multiline?: boolean;
11
+ readonly rows?: number;
12
+ readonly width?: number | string;
13
+ readonly xstyle?: PlacementStyle;
14
+ };
15
+ export declare function ButtonPlaceholder({ width, xstyle }: ButtonPlaceholderProps): ReactNode;
16
+ export declare function FieldPlaceholder({ label, hint, multiline, rows, width, xstyle, }: FieldPlaceholderProps): ReactNode;
@@ -1,4 +1,6 @@
1
1
  export { EmptyState, Notice } from './feedback.tsx';
2
+ export type { ButtonPlaceholderProps, FieldPlaceholderProps } from './control-placeholders.tsx';
3
+ export { ButtonPlaceholder, FieldPlaceholder } from './control-placeholders.tsx';
2
4
  export { Loading } from './loading.tsx';
3
5
  export type { ProgressProps, MeterProps } from './progress.tsx';
4
6
  export { Progress, Meter } from './progress.tsx';
@@ -1,29 +1,5 @@
1
1
  import * as stylex from '@stylexjs/stylex';
2
2
  export declare const fieldStyles: Readonly<{
3
- readonly root: Readonly<{
4
- readonly display: stylex.StyleXClassNameFor<"display", "flex">;
5
- readonly flexDirection: stylex.StyleXClassNameFor<"flexDirection", "column">;
6
- readonly gap: stylex.StyleXClassNameFor<"gap", string>;
7
- readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
8
- readonly fontFamily: stylex.StyleXClassNameFor<"fontFamily", string>;
9
- readonly fontWeight: stylex.StyleXClassNameFor<"fontWeight", string>;
10
- readonly WebkitFontSmoothing: stylex.StyleXClassNameFor<"WebkitFontSmoothing", "antialiased">;
11
- }>;
12
- readonly label: Readonly<{
13
- readonly color: stylex.StyleXClassNameFor<"color", string>;
14
- readonly fontFamily: stylex.StyleXClassNameFor<"fontFamily", string>;
15
- readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
16
- readonly fontWeight: stylex.StyleXClassNameFor<"fontWeight", string>;
17
- readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
18
- readonly overflowWrap: stylex.StyleXClassNameFor<"overflowWrap", "anywhere">;
19
- }>;
20
- readonly description: Readonly<{
21
- readonly margin: stylex.StyleXClassNameFor<"margin", 0>;
22
- readonly color: stylex.StyleXClassNameFor<"color", string>;
23
- readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
24
- readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
25
- readonly overflowWrap: stylex.StyleXClassNameFor<"overflowWrap", "anywhere">;
26
- }>;
27
3
  readonly error: Readonly<{
28
4
  readonly color: stylex.StyleXClassNameFor<"color", string>;
29
5
  readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
@@ -31,24 +7,6 @@ export declare const fieldStyles: Readonly<{
31
7
  readonly overflowWrap: stylex.StyleXClassNameFor<"overflowWrap", "anywhere">;
32
8
  }>;
33
9
  readonly input: Readonly<{
34
- readonly display: stylex.StyleXClassNameFor<"display", "block">;
35
- readonly boxSizing: stylex.StyleXClassNameFor<"boxSizing", "border-box">;
36
- readonly width: stylex.StyleXClassNameFor<"width", "100%">;
37
- readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
38
- readonly minHeight: stylex.StyleXClassNameFor<"minHeight", string>;
39
- readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", string>;
40
- readonly color: stylex.StyleXClassNameFor<"color", string>;
41
- readonly borderWidth: stylex.StyleXClassNameFor<"borderWidth", 1>;
42
- readonly borderStyle: stylex.StyleXClassNameFor<"borderStyle", "solid">;
43
- readonly borderColor: stylex.StyleXClassNameFor<"borderColor", string>;
44
- readonly borderRadius: stylex.StyleXClassNameFor<"borderRadius", string>;
45
- readonly paddingBlock: stylex.StyleXClassNameFor<"paddingBlock", string>;
46
- readonly paddingInline: stylex.StyleXClassNameFor<"paddingInline", string>;
47
- readonly fontFamily: stylex.StyleXClassNameFor<"fontFamily", string>;
48
- readonly fontWeight: stylex.StyleXClassNameFor<"fontWeight", string>;
49
- readonly WebkitFontSmoothing: stylex.StyleXClassNameFor<"WebkitFontSmoothing", "antialiased">;
50
- readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
51
- readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
52
10
  readonly ':focus-visible': stylex.StyleXClassNameFor<":focus-visible", {
53
11
  readonly outlineWidth: stylex.StyleXVar<string>;
54
12
  readonly outlineStyle: "solid";
@@ -67,40 +25,10 @@ export declare const fieldStyles: Readonly<{
67
25
  readonly color: stylex.StyleXVar<string>;
68
26
  }>;
69
27
  }>;
70
- readonly textarea: Readonly<{
71
- readonly minHeight: stylex.StyleXClassNameFor<"minHeight", 144>;
72
- readonly resize: stylex.StyleXClassNameFor<"resize", "vertical">;
73
- readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
74
- }>;
75
28
  readonly compactTextarea: Readonly<{
76
29
  readonly minHeight: stylex.StyleXClassNameFor<"minHeight", 80>;
77
30
  readonly maxHeight: stylex.StyleXClassNameFor<"maxHeight", "30dvh">;
78
31
  }>;
79
32
  }>;
80
- export declare const textareaAppearanceStyles: Readonly<{
81
- readonly field: {};
82
- readonly plain: Readonly<{
83
- readonly minHeight: stylex.StyleXClassNameFor<"minHeight", string>;
84
- readonly maxHeight: stylex.StyleXClassNameFor<"maxHeight", "30dvh">;
85
- readonly fieldSizing: stylex.StyleXClassNameFor<"fieldSizing", "content">;
86
- readonly resize: stylex.StyleXClassNameFor<"resize", "none">;
87
- readonly padding: stylex.StyleXClassNameFor<"padding", 0>;
88
- readonly borderWidth: stylex.StyleXClassNameFor<"borderWidth", 0>;
89
- readonly borderRadius: stylex.StyleXClassNameFor<"borderRadius", 0>;
90
- readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", "transparent">;
91
- readonly ':focus-visible': stylex.StyleXClassNameFor<":focus-visible", {
92
- readonly outlineStyle: "none";
93
- }>;
94
- readonly ':disabled': stylex.StyleXClassNameFor<":disabled", {
95
- readonly backgroundColor: "transparent";
96
- }>;
97
- }>;
98
- }>;
99
- export declare const inputSizeStyles: Readonly<{
100
- readonly sm: Readonly<{
101
- readonly minHeight: stylex.StyleXClassNameFor<"minHeight", string>;
102
- readonly paddingBlock: stylex.StyleXClassNameFor<"paddingBlock", string>;
103
- readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
104
- }>;
105
- readonly md: {};
106
- }>;
33
+ export type TextareaAppearance = 'field' | 'plain';
34
+ export declare const textareaAppearanceStyles: Readonly<Record<TextareaAppearance, stylex.StyleXStyles>>;
@@ -0,0 +1,11 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { PlacementStyle } from '../../foundations/src/style-composition.ts';
3
+ type FormActionsAlignment = 'start' | 'end';
4
+ export type FormActionsProps = {
5
+ readonly children: ReactNode;
6
+ readonly align?: FormActionsAlignment;
7
+ readonly separated?: boolean;
8
+ readonly xstyle?: PlacementStyle;
9
+ };
10
+ export declare function FormActions({ children, align, separated, xstyle }: FormActionsProps): ReactNode;
11
+ export {};
@@ -39,7 +39,7 @@ declare function FieldsetRoot({ className, style, xstyle, ...props }: FieldsetRo
39
39
  declare function FieldsetLegend({ className, style, ...props }: FieldsetLegendProps): ReactNode;
40
40
  declare function InputGroupRoot({ xstyle, ...props }: InputGroupRootProps): ReactNode;
41
41
  declare function InputGroupAddon(props: InputGroupAddonProps): ReactNode;
42
- declare function InputGroupInput({ className, style, xstyle, size, ...props }: InputProps): ReactNode;
42
+ declare function InputGroupInput({ className, style, xstyle, ...props }: InputProps): ReactNode;
43
43
  declare function NumberFieldRoot({ className, style, xstyle, ...props }: NumberFieldRootProps): ReactNode;
44
44
  declare function NumberFieldGroup({ className, style, ...props }: NumberFieldGroupProps): ReactNode;
45
45
  declare function NumberFieldInput({ className, style, ...props }: NumberFieldInputProps): ReactNode;
@@ -3,6 +3,7 @@ import { Input as BaseInput } from '@base-ui/react/input';
3
3
  import type { ComponentProps, ReactNode } from 'react';
4
4
  import type { TextValueProperties } from '../../foundations/src/control-state.ts';
5
5
  import type { PlacementStyle } from '../../foundations/src/style-composition.ts';
6
+ import type { TextareaAppearance } from './field-styles.ts';
6
7
  type FieldRootProps = ComponentProps<typeof BaseField.Root> & {
7
8
  readonly xstyle?: PlacementStyle;
8
9
  };
@@ -11,14 +12,13 @@ type FieldDescriptionProps = ComponentProps<typeof BaseField.Description>;
11
12
  type FieldErrorProps = ComponentProps<typeof BaseField.Error>;
12
13
  type BaseInputProps = ComponentProps<typeof BaseInput>;
13
14
  export type InputProps = Omit<BaseInputProps, 'value' | 'defaultValue' | 'onChange' | 'onValueChange' | 'readOnly' | 'size'> & TextValueProperties<NonNullable<BaseInputProps['value']>, NonNullable<BaseInputProps['onChange']>, NonNullable<BaseInputProps['onValueChange']>> & {
14
- readonly size?: 'sm' | 'md';
15
15
  readonly xstyle?: PlacementStyle;
16
16
  };
17
17
  type NativeTextareaProps = ComponentProps<'textarea'>;
18
18
  type TextareaProps = Omit<NativeTextareaProps, 'value' | 'defaultValue' | 'onChange' | 'readOnly'> & TextValueProperties<NonNullable<NativeTextareaProps['value']>, NonNullable<NativeTextareaProps['onChange']>, NonNullable<BaseInputProps['onValueChange']>> & {
19
19
  readonly xstyle?: PlacementStyle;
20
20
  readonly compact?: boolean;
21
- readonly appearance?: 'field' | 'plain';
21
+ readonly appearance?: TextareaAppearance;
22
22
  };
23
23
  declare function FieldRoot({ className, style, xstyle, ...props }: FieldRootProps): ReactNode;
24
24
  declare function FieldLabel({ className, style, ...props }: FieldLabelProps): ReactNode;
@@ -30,6 +30,6 @@ export declare const Field: {
30
30
  Description: typeof FieldDescription;
31
31
  Error: typeof FieldError;
32
32
  };
33
- export declare function Input({ className, style, xstyle, size, ...props }: InputProps): ReactNode;
33
+ export declare function Input({ className, style, xstyle, ...props }: InputProps): ReactNode;
34
34
  export declare function Textarea({ compact, appearance, value, defaultValue, onValueChange, name, disabled, readOnly, required, className, style, xstyle, ...props }: TextareaProps): ReactNode;
35
35
  export {};
@@ -2,6 +2,8 @@ export { Combobox } from './combobox.tsx';
2
2
  export type { AgentAvatarPickerProps } from './agent-avatar-picker.tsx';
3
3
  export { AgentAvatarPicker } from './agent-avatar-picker.tsx';
4
4
  export { FilePicker, Fieldset, InputGroup, NumberField, Slider } from './form-controls.tsx';
5
+ export type { FormActionsProps } from './form-actions.tsx';
6
+ export { FormActions } from './form-actions.tsx';
5
7
  export { Field, Input, Textarea } from './forms.tsx';
6
8
  export { Select } from './select.tsx';
7
9
  export { Checkbox, RadioGroup, Switch, ToggleGroup } from './selection.tsx';
@@ -1,12 +1,12 @@
1
1
  import { Select as BaseSelect } from '@base-ui/react/select';
2
2
  import type { ComponentProps, ReactNode } from 'react';
3
3
  import type { OpenStateProperties, ReadOnlyValueProperties, ValueStateProperties } from '../../foundations/src/control-state.ts';
4
- import type { ControlStyle, PlacementStyle } from '../../foundations/src/style-composition.ts';
4
+ import type { PlacementStyle } from '../../foundations/src/style-composition.ts';
5
5
  type SelectVariant = 'outline' | 'ghost';
6
6
  type SelectRootProps<Value, Multiple extends boolean | undefined> = Omit<BaseSelect.Root.Props<Value, Multiple>, 'value' | 'defaultValue' | 'onValueChange' | 'open' | 'defaultOpen' | 'onOpenChange'> & OpenStateProperties<NonNullable<BaseSelect.Root.Props<Value, Multiple>['onOpenChange']>> & (ValueStateProperties<Exclude<BaseSelect.Root.Props<Value, Multiple>['value'], undefined>, NonNullable<BaseSelect.Root.Props<Value, Multiple>['onValueChange']>> | ReadOnlyValueProperties<Exclude<BaseSelect.Root.Props<Value, Multiple>['value'], undefined>, NonNullable<BaseSelect.Root.Props<Value, Multiple>['onValueChange']>>);
7
7
  type SelectTriggerProps = ComponentProps<typeof BaseSelect.Trigger> & {
8
8
  readonly variant?: SelectVariant;
9
- readonly xstyle?: ControlStyle;
9
+ readonly xstyle?: PlacementStyle;
10
10
  };
11
11
  type SelectValueProps = ComponentProps<typeof BaseSelect.Value> & {
12
12
  readonly xstyle?: PlacementStyle;
@@ -3,22 +3,10 @@ import { conditions } from '../../foundations/src/tokens.stylex.ts';
3
3
  export declare const selectionStyles: Readonly<{
4
4
  readonly trigger: Readonly<{
5
5
  readonly display: stylex.StyleXClassNameFor<"display", "inline-flex">;
6
- readonly boxSizing: stylex.StyleXClassNameFor<"boxSizing", "border-box">;
7
6
  readonly alignItems: stylex.StyleXClassNameFor<"alignItems", "center">;
8
7
  readonly justifyContent: stylex.StyleXClassNameFor<"justifyContent", "space-between">;
9
8
  readonly gap: stylex.StyleXClassNameFor<"gap", string>;
10
- readonly minHeight: stylex.StyleXClassNameFor<"minHeight", string>;
11
- readonly paddingBlock: stylex.StyleXClassNameFor<"paddingBlock", 0>;
12
- readonly paddingInline: stylex.StyleXClassNameFor<"paddingInline", string>;
13
9
  readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
14
- readonly borderWidth: stylex.StyleXClassNameFor<"borderWidth", 1>;
15
- readonly borderStyle: stylex.StyleXClassNameFor<"borderStyle", "solid">;
16
- readonly borderRadius: stylex.StyleXClassNameFor<"borderRadius", string>;
17
- readonly fontFamily: stylex.StyleXClassNameFor<"fontFamily", string>;
18
- readonly fontWeight: stylex.StyleXClassNameFor<"fontWeight", string>;
19
- readonly WebkitFontSmoothing: stylex.StyleXClassNameFor<"WebkitFontSmoothing", "antialiased">;
20
- readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
21
- readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
22
10
  readonly textAlign: stylex.StyleXClassNameFor<"textAlign", "left">;
23
11
  readonly color: stylex.StyleXClassNameFor<"color", string>;
24
12
  readonly cursor: stylex.StyleXClassNameFor<"cursor", "pointer">;
@@ -51,7 +39,6 @@ export declare const selectionStyles: Readonly<{
51
39
  readonly ghost: Readonly<{
52
40
  readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", "transparent">;
53
41
  readonly borderColor: stylex.StyleXClassNameFor<"borderColor", "transparent">;
54
- readonly borderWidth: stylex.StyleXClassNameFor<"borderWidth", 0>;
55
42
  }>;
56
43
  readonly value: Readonly<{
57
44
  readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
@@ -0,0 +1,101 @@
1
+ import * as stylex from '@stylexjs/stylex';
2
+ export declare const controlStyles: Readonly<{
3
+ readonly base: Readonly<{
4
+ readonly boxSizing: stylex.StyleXClassNameFor<"boxSizing", "border-box">;
5
+ readonly minHeight: stylex.StyleXClassNameFor<"minHeight", string>;
6
+ readonly paddingBlock: stylex.StyleXClassNameFor<"paddingBlock", string>;
7
+ readonly paddingInline: stylex.StyleXClassNameFor<"paddingInline", string>;
8
+ readonly borderWidth: stylex.StyleXClassNameFor<"borderWidth", 1>;
9
+ readonly borderStyle: stylex.StyleXClassNameFor<"borderStyle", "solid">;
10
+ readonly borderColor: stylex.StyleXClassNameFor<"borderColor", string>;
11
+ readonly borderRadius: stylex.StyleXClassNameFor<"borderRadius", string>;
12
+ readonly fontFamily: stylex.StyleXClassNameFor<"fontFamily", string>;
13
+ readonly WebkitFontSmoothing: stylex.StyleXClassNameFor<"WebkitFontSmoothing", "antialiased">;
14
+ readonly fontWeight: stylex.StyleXClassNameFor<"fontWeight", string>;
15
+ readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
16
+ readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
17
+ }>;
18
+ readonly button: Readonly<{
19
+ readonly display: stylex.StyleXClassNameFor<"display", "inline-flex">;
20
+ readonly alignItems: stylex.StyleXClassNameFor<"alignItems", "center">;
21
+ readonly justifyContent: stylex.StyleXClassNameFor<"justifyContent", "center">;
22
+ readonly gap: stylex.StyleXClassNameFor<"gap", string>;
23
+ readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
24
+ readonly maxWidth: stylex.StyleXClassNameFor<"maxWidth", "100%">;
25
+ readonly overflowWrap: stylex.StyleXClassNameFor<"overflowWrap", "anywhere">;
26
+ readonly textAlign: stylex.StyleXClassNameFor<"textAlign", "center">;
27
+ }>;
28
+ readonly field: Readonly<{
29
+ readonly display: stylex.StyleXClassNameFor<"display", "block">;
30
+ readonly width: stylex.StyleXClassNameFor<"width", "100%">;
31
+ readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
32
+ readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", string>;
33
+ readonly color: stylex.StyleXClassNameFor<"color", string>;
34
+ readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
35
+ }>;
36
+ readonly fieldRoot: Readonly<{
37
+ readonly display: stylex.StyleXClassNameFor<"display", "flex">;
38
+ readonly flexDirection: stylex.StyleXClassNameFor<"flexDirection", "column">;
39
+ readonly gap: stylex.StyleXClassNameFor<"gap", string>;
40
+ readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
41
+ readonly fontFamily: stylex.StyleXClassNameFor<"fontFamily", string>;
42
+ readonly fontWeight: stylex.StyleXClassNameFor<"fontWeight", string>;
43
+ readonly WebkitFontSmoothing: stylex.StyleXClassNameFor<"WebkitFontSmoothing", "antialiased">;
44
+ }>;
45
+ readonly label: Readonly<{
46
+ readonly color: stylex.StyleXClassNameFor<"color", string>;
47
+ readonly fontFamily: stylex.StyleXClassNameFor<"fontFamily", string>;
48
+ readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
49
+ readonly fontWeight: stylex.StyleXClassNameFor<"fontWeight", string>;
50
+ readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
51
+ readonly overflowWrap: stylex.StyleXClassNameFor<"overflowWrap", "anywhere">;
52
+ }>;
53
+ readonly description: Readonly<{
54
+ readonly margin: stylex.StyleXClassNameFor<"margin", 0>;
55
+ readonly color: stylex.StyleXClassNameFor<"color", string>;
56
+ readonly fontSize: stylex.StyleXClassNameFor<"fontSize", string>;
57
+ readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
58
+ readonly overflowWrap: stylex.StyleXClassNameFor<"overflowWrap", "anywhere">;
59
+ }>;
60
+ readonly textarea: Readonly<{
61
+ readonly minHeight: stylex.StyleXClassNameFor<"minHeight", 144>;
62
+ readonly resize: stylex.StyleXClassNameFor<"resize", "vertical">;
63
+ readonly lineHeight: stylex.StyleXClassNameFor<"lineHeight", string>;
64
+ }>;
65
+ readonly group: Readonly<{
66
+ readonly position: stylex.StyleXClassNameFor<"position", "relative">;
67
+ readonly display: stylex.StyleXClassNameFor<"display", "flex">;
68
+ readonly alignItems: stylex.StyleXClassNameFor<"alignItems", "stretch">;
69
+ readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
70
+ readonly borderRadius: stylex.StyleXClassNameFor<"borderRadius", string>;
71
+ readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", string>;
72
+ readonly '::after': stylex.StyleXClassNameFor<"::after", {
73
+ readonly content: "\"\"";
74
+ readonly position: "absolute";
75
+ readonly inset: 0;
76
+ readonly pointerEvents: "none";
77
+ readonly borderWidth: 1;
78
+ readonly borderStyle: "solid";
79
+ readonly borderColor: stylex.StyleXVar<string>;
80
+ readonly borderRadius: stylex.StyleXVar<string>;
81
+ }>;
82
+ readonly ':has(input[aria-invalid="true"])': stylex.StyleXClassNameFor<":has(input[aria-invalid=\"true\"])", {
83
+ readonly '::after': {
84
+ borderColor: stylex.StyleXVar<string>;
85
+ };
86
+ }>;
87
+ }>;
88
+ readonly embedded: Readonly<{
89
+ readonly flex: stylex.StyleXClassNameFor<"flex", 1>;
90
+ readonly minWidth: stylex.StyleXClassNameFor<"minWidth", 0>;
91
+ readonly width: stylex.StyleXClassNameFor<"width", 0>;
92
+ readonly borderColor: stylex.StyleXClassNameFor<"borderColor", "transparent">;
93
+ readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", "transparent">;
94
+ readonly ':is([data-invalid], [aria-invalid="true"])': stylex.StyleXClassNameFor<":is([data-invalid], [aria-invalid=\"true\"])", {
95
+ readonly borderColor: "transparent";
96
+ }>;
97
+ readonly ':focus-visible': stylex.StyleXClassNameFor<":focus-visible", {
98
+ readonly outlineOffset: `calc(0px - ${stylex.StyleXVar<string>})`;
99
+ }>;
100
+ }>;
101
+ }>;
@@ -1,12 +1,10 @@
1
1
  import type { StyleXStyles } from '@stylexjs/stylex';
2
2
  import type { CSSProperties } from 'react';
3
3
  type PlacementProperties = Pick<CSSProperties, 'alignSelf' | 'flex' | 'flexGrow' | 'flexShrink' | 'gridArea' | 'gridColumn' | 'gridRow' | 'margin' | 'marginBlock' | 'marginInline' | 'marginBlockStart' | 'marginBlockEnd' | 'marginInlineStart' | 'marginInlineEnd' | 'marginTop' | 'marginRight' | 'marginBottom' | 'marginLeft' | 'width' | 'maxWidth' | 'minWidth'>;
4
- type ControlGeometry = Pick<CSSProperties, 'height' | 'minHeight' | 'maxHeight' | 'padding' | 'paddingBlock' | 'paddingInline' | 'paddingTop' | 'paddingRight' | 'paddingBottom' | 'paddingLeft' | 'borderRadius' | 'justifyContent' | 'alignItems' | 'gap'>;
5
4
  type DefinedProperties<Properties> = {
6
5
  readonly [Key in keyof Properties]?: Exclude<Properties[Key], undefined>;
7
6
  };
8
7
  export type PlacementStyle = StyleXStyles<DefinedProperties<PlacementProperties>>;
9
- export type ControlStyle = StyleXStyles<DefinedProperties<PlacementProperties & ControlGeometry>>;
10
8
  type StyleProperties<State> = {
11
9
  readonly className?: string | ((state: State) => string | undefined) | undefined;
12
10
  readonly style?: CSSProperties | ((state: State) => CSSProperties | undefined) | undefined;
@@ -158,8 +158,7 @@ export declare const typography: stylex.VarGroup<Readonly<{
158
158
  headingTracking: string;
159
159
  }>, symbol>;
160
160
  export declare const controls: stylex.VarGroup<Readonly<{
161
- smHeight: string;
162
- mdHeight: string;
161
+ height: string;
163
162
  coarseTarget: string;
164
163
  iconSize: string;
165
164
  paddingInline: string;
@@ -168,6 +167,11 @@ export declare const controls: stylex.VarGroup<Readonly<{
168
167
  focusWidth: string;
169
168
  disabledOpacity: string;
170
169
  }>, symbol>;
170
+ export declare const pageGeometry: stylex.VarGroup<Readonly<{
171
+ inset: string;
172
+ toolbarHeight: string;
173
+ sectionGap: string;
174
+ }>, symbol>;
171
175
  export declare const radii: stylex.VarGroup<Readonly<{
172
176
  sm: string;
173
177
  md: string;
@@ -180,11 +184,13 @@ export declare const motion: stylex.VarGroup<Readonly<{
180
184
  }>, symbol>;
181
185
  export declare const shadows: stylex.VarGroup<Readonly<{
182
186
  popup: string;
187
+ selection: string;
183
188
  }>, symbol>;
184
189
  export declare const darkShadows: {
185
190
  popup: string;
186
191
  };
187
192
  export declare const layers: {
193
+ sticky: string;
188
194
  backdrop: string;
189
195
  dialog: string;
190
196
  popup: string;
@@ -1,7 +1,6 @@
1
1
  import * as stylex from '@stylexjs/stylex';
2
2
  export declare const frame: stylex.VarGroup<Readonly<{
3
3
  sidebarWidth: string;
4
- toolbarHeight: string;
5
4
  navigationHeight: string;
6
5
  navigationInset: string;
7
6
  navigationPadding: string;
@@ -4,6 +4,8 @@ export { FocusPage } from './focus-page.tsx';
4
4
  export { Workbench, WorkbenchScroll, WorkbenchFooter } from './workbench.tsx';
5
5
  export { ViewStack } from './view-stack.tsx';
6
6
  export { PageToolbar, ToolbarAction } from './page-toolbar.tsx';
7
+ export type { PageContentProps } from './page-content.tsx';
8
+ export { PageContent } from './page-content.tsx';
7
9
  export type { RecordPageRootProps, RecordPageToolbarProps, RecordPageBodyProps, RecordPageHeaderProps, RecordPageContentProps, RecordPageAsideProps, } from './record-page.tsx';
8
10
  export { RecordPage } from './record-page.tsx';
9
11
  export type { ResizableRootProps, ResizablePaneProps, ResizableHandleProps } from './resizable.tsx';
@@ -0,0 +1,5 @@
1
+ import type { ReactNode } from 'react';
2
+ export type PageContentProps = {
3
+ readonly children: ReactNode;
4
+ };
5
+ export declare function PageContent({ children }: PageContentProps): ReactNode;
@@ -8,7 +8,7 @@ type PageToolbarProps = {
8
8
  readonly views?: ReactNode;
9
9
  readonly leading?: ReactNode;
10
10
  };
11
- type ToolbarActionProps = Omit<ComponentProps<typeof Button>, 'variant' | 'size' | 'xstyle'> & {
11
+ type ToolbarActionProps = Omit<ComponentProps<typeof Button>, 'variant' | 'xstyle'> & {
12
12
  readonly icon?: ReactNode;
13
13
  };
14
14
  export declare function PageToolbar({ title, actions, breadcrumb, navigation, views, leading, }: PageToolbarProps): ReactNode;
@@ -1,5 +1,5 @@
1
+ import { Button as BaseButton } from '@base-ui/react/button';
1
2
  import type { ComponentProps, ReactNode, RefObject } from 'react';
2
- import { Button } from '../../core/src/index.ts';
3
3
  import { Drawer } from '../../overlays/src/index.ts';
4
4
  type SidebarState = {
5
5
  readonly isExpanded: boolean;
@@ -21,7 +21,7 @@ type NavigationProps = {
21
21
  readonly children: ReactNode;
22
22
  readonly label?: string;
23
23
  };
24
- type NavigationItemProps = Omit<ComponentProps<typeof Button>, 'variant' | 'tone' | 'size' | 'xstyle'> & {
24
+ type NavigationItemProps = ComponentProps<typeof BaseButton> & {
25
25
  readonly icon?: ReactNode;
26
26
  readonly selected?: boolean;
27
27
  };
@@ -45,7 +45,7 @@ export declare function NavigationSection({ children, label, }: {
45
45
  readonly children: ReactNode;
46
46
  readonly label: string;
47
47
  }): ReactNode;
48
- export declare function NavigationItem({ children, icon, selected, onClick, ...props }: NavigationItemProps): ReactNode;
48
+ export declare function NavigationItem({ children, icon, selected, onClick, className, style, ...props }: NavigationItemProps): ReactNode;
49
49
  export declare function NavigationLink({ children, icon, selected, onClick, className, style, ...props }: NavigationLinkProps): ReactNode;
50
50
  export declare function SidebarLabel({ children, grow }: SidebarLabelProps): ReactNode;
51
51
  export declare function SidebarFooter({ children, layout }: SidebarFooterProps): ReactNode;
@@ -1,4 +1,4 @@
1
- import { n as e, t } from "./pierre-theme-D9hnHv3Z.js";
1
+ import { n as e, t } from "./pierre-theme-CBAncKdH.js";
2
2
  import { t as n } from "./viewer-styles-CpHqp5Qv.js";
3
3
  import * as r from "@stylexjs/stylex";
4
4
  import { useCallback as i, useState as a } from "react";
@@ -62,7 +62,7 @@ var o = {
62
62
  pre { font-family: ${a.monoFamily}; font-size: ${a.captionSize}; line-height: ${a.bodyLineHeight}; }
63
63
  [data-line-number] { color: ${e.muted}; }
64
64
  [data-diffs-header] {
65
- min-height: ${n.mdHeight};
65
+ min-height: ${n.height};
66
66
  padding-block: ${r.sm};
67
67
  padding-inline: ${r.md};
68
68
  border-bottom: 1px solid ${e.line};
@@ -1,7 +1,7 @@
1
- import { c as e } from "./src-D05isEh_.js";
2
- import { l as t } from "./src-C_heP5kL.js";
1
+ import { c as e } from "./src-3gzujMhN.js";
2
+ import { l as t } from "./src-DOzle5d4.js";
3
3
  import { conditions as n } from "./tokens.js";
4
- import { r } from "./pierre-theme-D9hnHv3Z.js";
4
+ import { r } from "./pierre-theme-CBAncKdH.js";
5
5
  import * as i from "@stylexjs/stylex";
6
6
  import { useEffect as a, useId as o, useRef as s, useState as c } from "react";
7
7
  import { jsx as l, jsxs as u } from "react/jsx-runtime";