@motech-development/breeze-ui 4.4.0 → 4.6.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 (30) hide show
  1. package/lib/index.d.ts +11 -0
  2. package/lib/index.d.ts.map +1 -1
  3. package/lib/index.js +1620 -369
  4. package/lib/index.js.map +1 -1
  5. package/lib/primitives/Checkbox/Checkbox.d.ts +54 -0
  6. package/lib/primitives/Checkbox/Checkbox.d.ts.map +1 -0
  7. package/lib/primitives/Collection/CollectionPopover.d.ts +15 -0
  8. package/lib/primitives/Collection/CollectionPopover.d.ts.map +1 -0
  9. package/lib/primitives/Collection/DescriptorContent.d.ts +9 -0
  10. package/lib/primitives/Collection/DescriptorContent.d.ts.map +1 -0
  11. package/lib/primitives/Collection/DescriptorOption.d.ts +7 -0
  12. package/lib/primitives/Collection/DescriptorOption.d.ts.map +1 -0
  13. package/lib/primitives/Collection/collection.styles.d.ts +19 -0
  14. package/lib/primitives/Collection/collection.styles.d.ts.map +1 -0
  15. package/lib/primitives/Collection/item.types.d.ts +18 -0
  16. package/lib/primitives/Collection/item.types.d.ts.map +1 -0
  17. package/lib/primitives/ComboBox/ComboBox.d.ts +62 -0
  18. package/lib/primitives/ComboBox/ComboBox.d.ts.map +1 -0
  19. package/lib/primitives/Field/field.presentation.d.ts +17 -0
  20. package/lib/primitives/Field/field.presentation.d.ts.map +1 -0
  21. package/lib/primitives/Field/field.styles.d.ts +20 -0
  22. package/lib/primitives/Field/field.styles.d.ts.map +1 -0
  23. package/lib/primitives/NumberField/NumberField.d.ts +66 -0
  24. package/lib/primitives/NumberField/NumberField.d.ts.map +1 -0
  25. package/lib/primitives/Select/Select.d.ts +59 -0
  26. package/lib/primitives/Select/Select.d.ts.map +1 -0
  27. package/lib/primitives/TextField/TextField.d.ts +61 -0
  28. package/lib/primitives/TextField/TextField.d.ts.map +1 -0
  29. package/lib/styles.css +1 -1
  30. package/package.json +2 -1
@@ -0,0 +1,54 @@
1
+ import type { Ref } from 'react';
2
+ interface CheckboxCommonProps {
3
+ /** Prevents selection and focus. Defaults to `false`. */
4
+ disabled?: boolean;
5
+ /** Associates the checkbox with a form outside its ancestor tree. */
6
+ form?: string;
7
+ /** Sets the native input id. */
8
+ id?: string;
9
+ /** Accessible checkbox label, shown as text outside loading state. */
10
+ label: string;
11
+ /** Replaces the checkbox content with a shape-preserving loading presentation. */
12
+ loading?: boolean;
13
+ /** Sets the submitted name of the checkbox. */
14
+ name?: string;
15
+ /** Supporting guidance announced with the checkbox. */
16
+ description?: string;
17
+ /** Prevents editing while retaining focus and form participation. */
18
+ readOnly?: boolean;
19
+ /** Ref to the native checkbox input. */
20
+ ref?: Ref<HTMLInputElement>;
21
+ /** Marks the checkbox as required. Defaults to `false`. */
22
+ required?: boolean;
23
+ /** Visible validation message; any non-empty value marks the checkbox invalid. */
24
+ error?: string;
25
+ /** Native value submitted when the checkbox is selected. */
26
+ value?: string;
27
+ }
28
+ interface ControlledCheckboxProps {
29
+ /** Current selected state. */
30
+ selected: boolean;
31
+ /** Reports the next selected state without exposing a DOM event. */
32
+ onChange: (selected: boolean) => void;
33
+ /** Controlled and uncontrolled selection props are mutually exclusive. */
34
+ defaultSelected?: never;
35
+ }
36
+ interface UncontrolledCheckboxProps {
37
+ /** Initial selected state. Defaults to `false`. */
38
+ defaultSelected?: boolean;
39
+ /** Reports the next selected state without exposing a DOM event. */
40
+ onChange?: (selected: boolean) => void;
41
+ /** Controlled and uncontrolled selection props are mutually exclusive. */
42
+ selected?: never;
43
+ }
44
+ /** Props for controlled or uncontrolled boolean selection. */
45
+ export type CheckboxProps = CheckboxCommonProps & (ControlledCheckboxProps | UncontrolledCheckboxProps);
46
+ /**
47
+ * Renders an accessible checkbox with a visible label, validation messages,
48
+ * semantic boolean changes, and a closed loading presentation.
49
+ *
50
+ * @summary Flat boolean selection with semantic value changes.
51
+ */
52
+ export declare function Checkbox({ defaultSelected, description, disabled, error, form, id, label, loading, name, onChange, readOnly, ref, required, selected, value, }: Readonly<CheckboxProps>): import("react").JSX.Element;
53
+ export {};
54
+ //# sourceMappingURL=Checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../src/primitives/Checkbox/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AA4BjC,UAAU,mBAAmB;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;IACd,kFAAkF;IAClF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+CAA+C;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,GAAG,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kFAAkF;IAClF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,uBAAuB;IAC/B,8BAA8B;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,oEAAoE;IACpE,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,0EAA0E;IAC1E,eAAe,CAAC,EAAE,KAAK,CAAC;CACzB;AAED,UAAU,yBAAyB;IACjC,mDAAmD;IACnD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,oEAAoE;IACpE,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,KAAK,CAAC;CAClB;AAED,8DAA8D;AAC9D,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAC7C,CAAC,uBAAuB,GAAG,yBAAyB,CAAC,CAAC;AAExD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,EACvB,eAAe,EACf,WAAW,EACX,QAAgB,EAChB,KAAK,EACL,IAAI,EACJ,EAAE,EACF,KAAK,EACL,OAAe,EACf,IAAI,EACJ,QAAQ,EACR,QAAgB,EAChB,GAAG,EACH,QAAgB,EAChB,QAAQ,EACR,KAAK,GACN,EAAE,QAAQ,CAAC,aAAa,CAAC,+BAyEzB"}
@@ -0,0 +1,15 @@
1
+ import type { ReactNode, RefObject } from 'react';
2
+ interface CollectionPopoverProps {
3
+ children: ReactNode;
4
+ className: string;
5
+ isOpen: boolean;
6
+ onOpenChange: (open: boolean) => void;
7
+ triggerRef: RefObject<Element | null>;
8
+ }
9
+ /**
10
+ * The collection popover bridge keeps listbox surfaces inside Breeze's portal
11
+ * and overlay stack while React Aria owns positioning, focus and dismissal.
12
+ */
13
+ export default function CollectionPopover({ children, className, isOpen: requestedOpen, onOpenChange, triggerRef, }: Readonly<CollectionPopoverProps>): import("react").JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=CollectionPopover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollectionPopover.d.ts","sourceRoot":"","sources":["../../../src/primitives/Collection/CollectionPopover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AA4BlD,UAAU,sBAAsB;IAC9B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,UAAU,EAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;CACvC;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,QAAQ,EACR,SAAS,EACT,MAAM,EAAE,aAAa,EACrB,YAAY,EACZ,UAAU,GACX,EAAE,QAAQ,CAAC,sBAAsB,CAAC,+BAoKlC"}
@@ -0,0 +1,9 @@
1
+ import type { ItemDescriptor } from './item.types';
2
+ interface DescriptorContentProps {
3
+ descriptor: ItemDescriptor;
4
+ isSelected: boolean;
5
+ }
6
+ /** Renders the closed descriptor content shared by collection controls. */
7
+ export default function DescriptorContent({ descriptor, isSelected, }: Readonly<DescriptorContentProps>): import("react").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=DescriptorContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DescriptorContent.d.ts","sourceRoot":"","sources":["../../../src/primitives/Collection/DescriptorContent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,UAAU,sBAAsB;IAC9B,UAAU,EAAE,cAAc,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,2EAA2E;AAC3E,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,UAAU,EACV,UAAU,GACX,EAAE,QAAQ,CAAC,sBAAsB,CAAC,+BAgClC"}
@@ -0,0 +1,7 @@
1
+ import type { ItemDescriptor } from './item.types';
2
+ /** Renders Breeze's closed descriptor contract inside a React Aria option. */
3
+ declare function DescriptorOption({ descriptor, }: Readonly<{
4
+ descriptor: ItemDescriptor;
5
+ }>): import("react").JSX.Element;
6
+ export default DescriptorOption;
7
+ //# sourceMappingURL=DescriptorOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DescriptorOption.d.ts","sourceRoot":"","sources":["../../../src/primitives/Collection/DescriptorOption.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,8EAA8E;AAC9E,iBAAS,gBAAgB,CAAC,EACxB,UAAU,GACX,EAAE,QAAQ,CAAC;IAAE,UAAU,EAAE,cAAc,CAAA;CAAE,CAAC,+BAa1C;AAED,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,19 @@
1
+ /** Shared listbox geometry and descriptor treatment for collection controls. */
2
+ declare const collectionVariants: {
3
+ readonly base: {
4
+ readonly badge: "breeze:ms-auto";
5
+ readonly content: "breeze:flex breeze:min-inline-size-0 breeze:flex-1 breeze:flex-col breeze:gap-breeze-1";
6
+ readonly description: "breeze:text-breeze-xs breeze:font-normal breeze:leading-breeze-snug breeze:text-breeze-ink-3";
7
+ readonly item: "breeze:flex breeze:any-pointer-coarse:min-block-breeze-tap breeze:min-inline-size-0 breeze:items-start breeze:gap-breeze-2 breeze:rounded-breeze-sm breeze:ps-breeze-3 breeze:pe-breeze-3 breeze:py-breeze-2 breeze:font-breeze-sans breeze:text-breeze-sm breeze:leading-breeze-snug breeze:text-breeze-ink breeze:outline-offset-[-2px] breeze:data-[disabled]:cursor-not-allowed breeze:data-[disabled]:opacity-50 breeze:data-[focused]:bg-breeze-sunken breeze:data-[focus-visible]:outline-2 breeze:data-[focus-visible]:outline-solid breeze:data-[focus-visible]:outline-breeze-brand breeze:data-[hovered]:bg-breeze-sunken breeze:data-[selected]:bg-breeze-brand-soft breeze:data-[selected]:text-breeze-brand-text";
8
+ readonly label: "breeze:font-medium";
9
+ readonly listBox: "breeze:min-inline-size-0 breeze:outline-none";
10
+ readonly popover: "breeze:min-inline-size-[var(--trigger-width)] breeze:max-inline-size-[calc(100vw-24px)] breeze:overflow-auto breeze:rounded-breeze-panel breeze:border breeze:border-solid breeze:border-breeze-line breeze:bg-breeze-surface breeze:p-breeze-1 breeze:shadow-breeze-overlay";
11
+ readonly selectedIndicator: "breeze:ms-auto breeze:block-size-breeze-4 breeze:inline-size-breeze-4 breeze:shrink-0 breeze:text-breeze-brand-text";
12
+ };
13
+ readonly compound: {};
14
+ readonly size: {};
15
+ readonly state: {};
16
+ readonly variant: {};
17
+ };
18
+ export default collectionVariants;
19
+ //# sourceMappingURL=collection.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection.styles.d.ts","sourceRoot":"","sources":["../../../src/primitives/Collection/collection.styles.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;CAmBd,CAAC;AAEX,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { BadgeProps } from '../Badge/Badge';
2
+ import type { IconName } from '../Icon/Icon';
3
+ /** The data contract used to render a compact status badge in a collection item. */
4
+ export type ItemDescriptorBadge = Pick<BadgeProps, 'aria-label' | 'children' | 'variant'>;
5
+ /**
6
+ * The closed data contract for content rendered by Breeze collection controls.
7
+ * Unsupported content requires a deliberate library change rather than a
8
+ * render or markup escape hatch.
9
+ */
10
+ export interface ItemDescriptor {
11
+ badge?: ItemDescriptorBadge;
12
+ description?: string;
13
+ disabled?: boolean;
14
+ icon?: IconName;
15
+ id: string;
16
+ label: string;
17
+ }
18
+ //# sourceMappingURL=item.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.types.d.ts","sourceRoot":"","sources":["../../../src/primitives/Collection/item.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,oFAAoF;AACpF,MAAM,MAAM,mBAAmB,GAAG,IAAI,CACpC,UAAU,EACV,YAAY,GAAG,UAAU,GAAG,SAAS,CACtC,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf"}
@@ -0,0 +1,62 @@
1
+ import type { ItemDescriptor } from '../Collection/item.types';
2
+ interface ComboBoxCommonProps<T> {
3
+ /** Hints at the browser's autocomplete behaviour for this field. */
4
+ autoComplete?: string;
5
+ /** Focuses the input when the component is mounted. */
6
+ autoFocus?: boolean;
7
+ /** Prevents editing and opening the suggestions. Defaults to `false`. */
8
+ disabled?: boolean;
9
+ /** Supporting guidance announced with the input. */
10
+ description?: string;
11
+ /** Visible validation message; any non-empty value marks the field invalid. */
12
+ error?: string;
13
+ /** Associates the input with a form outside its ancestor tree. */
14
+ form?: string;
15
+ /** Maps an item to the closed descriptor rendered by Breeze. */
16
+ getItem: (item: T) => ItemDescriptor;
17
+ /** Sets the native input id used by the field label. */
18
+ id?: string;
19
+ /** Accessible field label, shown as text outside loading state. */
20
+ label: string;
21
+ /** Replaces the field with a shape-preserving loading presentation. */
22
+ loading?: boolean;
23
+ /** Items displayed as suggestions. */
24
+ items: T[];
25
+ /** Sets the submitted name of the input. */
26
+ name?: string;
27
+ /** Temporary text shown while the input is empty. */
28
+ placeholder?: string;
29
+ /** Prevents editing while retaining focus and form participation. */
30
+ readOnly?: boolean;
31
+ /** Marks the input as required. Defaults to `false`. */
32
+ required?: boolean;
33
+ }
34
+ /** The application value emitted by a ComboBox. */
35
+ type ComboBoxValue<T> = T | string | null;
36
+ interface ControlledComboBoxProps<Value> {
37
+ /** Current selected item or free-text value. */
38
+ value: Value;
39
+ /** Reports the next selected item or free-text value without exposing a DOM event. */
40
+ onChange: (value: Value) => void;
41
+ /** Controlled and uncontrolled value props are mutually exclusive. */
42
+ defaultValue?: never;
43
+ }
44
+ interface UncontrolledComboBoxProps<Value> {
45
+ /** Initial selected item or free-text value. */
46
+ defaultValue?: Value;
47
+ /** Reports the next selected item or free-text value without exposing a DOM event. */
48
+ onChange?: (value: Value) => void;
49
+ /** Controlled and uncontrolled value props are mutually exclusive. */
50
+ value?: never;
51
+ }
52
+ /** Props for controlled or uncontrolled suggestion entry. */
53
+ export type ComboBoxProps<T> = (ComboBoxCommonProps<T> & {
54
+ /** Allows a value that is not one of the suggestions. */
55
+ allowsCustomValue: true;
56
+ } & (ControlledComboBoxProps<ComboBoxValue<NoInfer<T>>> | UncontrolledComboBoxProps<ComboBoxValue<NoInfer<T>>>)) | (ComboBoxCommonProps<T> & {
57
+ /** Disallows values that are not one of the suggestions. */
58
+ allowsCustomValue?: false;
59
+ } & (ControlledComboBoxProps<NoInfer<T> | null> | UncontrolledComboBoxProps<NoInfer<T> | null>));
60
+ export declare function ComboBox<T>(props: Readonly<ComboBoxProps<T>>): import("react").JSX.Element;
61
+ export {};
62
+ //# sourceMappingURL=ComboBox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboBox.d.ts","sourceRoot":"","sources":["../../../src/primitives/ComboBox/ComboBox.tsx"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAkC/D,UAAU,mBAAmB,CAAC,CAAC;IAC7B,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,cAAc,CAAC;IACrC,wDAAwD;IACxD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,mDAAmD;AACnD,KAAK,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;AAE1C,UAAU,uBAAuB,CAAC,KAAK;IACrC,gDAAgD;IAChD,KAAK,EAAE,KAAK,CAAC;IACb,sFAAsF;IACtF,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,sEAAsE;IACtE,YAAY,CAAC,EAAE,KAAK,CAAC;CACtB;AAED,UAAU,yBAAyB,CAAC,KAAK;IACvC,gDAAgD;IAChD,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC,sEAAsE;IACtE,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,6DAA6D;AAC7D,MAAM,MAAM,aAAa,CAAC,CAAC,IACvB,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG;IACxB,yDAAyD;IACzD,iBAAiB,EAAE,IAAI,CAAC;CACzB,GAAG,CACE,uBAAuB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAClD,yBAAyB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CACvD,CAAC,GACJ,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG;IACxB,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,KAAK,CAAC;CAC3B,GAAG,CACE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAC1C,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAC/C,CAAC,CAAC;AAs0CT,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,+BAE5D"}
@@ -0,0 +1,17 @@
1
+ interface FieldLabelProps {
2
+ htmlFor?: string;
3
+ id?: string;
4
+ label: string;
5
+ loading: boolean;
6
+ }
7
+ export declare function FieldLabel({ htmlFor, id, label, loading, }: Readonly<FieldLabelProps>): import("react").JSX.Element;
8
+ interface FieldSupportProps {
9
+ description?: string;
10
+ descriptionId?: string;
11
+ error?: string;
12
+ errorId?: string;
13
+ loading: boolean;
14
+ }
15
+ export declare function FieldSupportingContent({ description, descriptionId, error, errorId, loading, }: Readonly<FieldSupportProps>): import("react").JSX.Element;
16
+ export {};
17
+ //# sourceMappingURL=field.presentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.presentation.d.ts","sourceRoot":"","sources":["../../../src/primitives/Field/field.presentation.tsx"],"names":[],"mappings":"AAMA,UAAU,eAAe;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,EAAE,EACF,KAAK,EACL,OAAO,GACR,EAAE,QAAQ,CAAC,eAAe,CAAC,+BAU3B;AAED,UAAU,iBAAiB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,sBAAsB,CAAC,EACrC,WAAW,EACX,aAAa,EACb,KAAK,EACL,OAAO,EACP,OAAO,GACR,EAAE,QAAQ,CAAC,iBAAiB,CAAC,+BAgC7B"}
@@ -0,0 +1,20 @@
1
+ /** Shared field chrome used by Breeze's flat field primitives. */
2
+ export declare const fieldVariants: {
3
+ readonly base: {
4
+ readonly control: "breeze:relative breeze:inline-grid breeze:min-inline-size-0 breeze:inline-size-full";
5
+ readonly description: "breeze:m-0 breeze:text-breeze-xs breeze:font-normal breeze:leading-breeze-snug breeze:text-breeze-ink-3";
6
+ readonly error: "breeze:m-0 breeze:text-breeze-xs breeze:font-medium breeze:leading-breeze-snug breeze:text-breeze-danger";
7
+ readonly input: "breeze:min-block-breeze-md breeze:any-pointer-coarse:min-block-breeze-tap breeze:min-inline-size-0 breeze:inline-size-full breeze:rounded-breeze-ctl breeze:border breeze:border-solid breeze:border-breeze-line-strong breeze:bg-breeze-surface breeze:ps-breeze-3 breeze:pe-breeze-3 breeze:py-breeze-2 breeze:font-breeze-sans breeze:text-breeze-sm breeze:leading-breeze-snug breeze:text-breeze-ink breeze:outline-offset-2 breeze:placeholder:text-breeze-ink-3 breeze:data-[hovered]:border-breeze-brand breeze:data-[focus-visible]:outline-2 breeze:data-[focus-visible]:outline-solid breeze:data-[focus-visible]:outline-breeze-brand breeze:data-[invalid]:border-breeze-danger breeze:disabled:cursor-not-allowed breeze:disabled:bg-breeze-sunken breeze:disabled:opacity-60 breeze:read-only:cursor-default breeze:read-only:bg-breeze-sunken";
8
+ readonly label: "breeze:m-0 breeze:text-breeze-xs breeze:font-medium breeze:leading-breeze-snug breeze:text-breeze-ink";
9
+ readonly root: "breeze:flex breeze:min-inline-size-0 breeze:flex-col breeze:gap-breeze-2";
10
+ readonly skeleton: "breeze:pointer-events-none breeze:absolute breeze:[inset-block:0] breeze:[inset-inline:0]";
11
+ };
12
+ readonly compound: {};
13
+ readonly size: {};
14
+ readonly state: {
15
+ readonly loadingInput: "breeze:!opacity-0";
16
+ };
17
+ readonly variant: {};
18
+ };
19
+ export declare function joinClassNames(...classNames: Array<string | false | undefined>): string;
20
+ //# sourceMappingURL=field.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.styles.d.ts","sourceRoot":"","sources":["../../../src/primitives/Field/field.styles.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;CAsBhB,CAAC;AAEX,wBAAgB,cAAc,CAC5B,GAAG,UAAU,EAAE,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,SAAS,CAAC,GAC/C,MAAM,CAER"}
@@ -0,0 +1,66 @@
1
+ import type { Ref } from 'react';
2
+ interface NumberFieldCommonProps {
3
+ /** Hints at the browser's autocomplete behaviour for this field. */
4
+ autoComplete?: string;
5
+ /** Focuses the input when the component is mounted. */
6
+ autoFocus?: boolean;
7
+ /** Supporting guidance announced with the input. */
8
+ description?: string;
9
+ /** Prevents editing, stepping, and focus. Defaults to `false`. */
10
+ disabled?: boolean;
11
+ /** Visible validation message; any non-empty value marks the field invalid. */
12
+ error?: string;
13
+ /** Associates the field with a form outside its ancestor tree. */
14
+ form?: string;
15
+ /** Locale-aware formatting options used by React Aria. */
16
+ formatOptions?: Intl.NumberFormatOptions;
17
+ /** Sets the native input id used by the field label. */
18
+ id?: string;
19
+ /** Accessible field label, shown as text outside loading state. */
20
+ label: string;
21
+ /** Replaces the input with a shape-preserving loading presentation. */
22
+ loading?: boolean;
23
+ /** Largest permitted value. */
24
+ maxValue?: number;
25
+ /** Smallest permitted value. */
26
+ minValue?: number;
27
+ /** Sets the submitted name of the field's hidden native input. */
28
+ name?: string;
29
+ /** Temporary text shown while the input is empty. */
30
+ placeholder?: string;
31
+ /** Prevents editing while retaining focus and form participation. */
32
+ readOnly?: boolean;
33
+ /** Ref to the native numeric input. */
34
+ ref?: Ref<HTMLInputElement>;
35
+ /** Marks the input as required. Defaults to `false`. */
36
+ required?: boolean;
37
+ /** Amount applied by arrow keys and stepper buttons. Defaults to `1`. */
38
+ step?: number;
39
+ }
40
+ interface ControlledNumberFieldProps {
41
+ /** Current number. React Aria reports `NaN` while the input is empty. */
42
+ value: number;
43
+ /** Reports the next number without exposing a DOM event. */
44
+ onChange: (value: number) => void;
45
+ /** Controlled and uncontrolled value props are mutually exclusive. */
46
+ defaultValue?: never;
47
+ }
48
+ interface UncontrolledNumberFieldProps {
49
+ /** Initial number. Defaults to an empty numeric input. */
50
+ defaultValue?: number;
51
+ /** Reports the next number without exposing a DOM event. */
52
+ onChange?: (value: number) => void;
53
+ /** Controlled and uncontrolled value props are mutually exclusive. */
54
+ value?: never;
55
+ }
56
+ /** Props for controlled or uncontrolled locale-aware numeric entry. */
57
+ export type NumberFieldProps = NumberFieldCommonProps & (ControlledNumberFieldProps | UncontrolledNumberFieldProps);
58
+ /**
59
+ * Renders locale-aware numeric entry with React Aria stepper controls,
60
+ * validation, tabular figures, and a closed loading presentation.
61
+ *
62
+ * @summary Flat numeric entry with semantic number changes.
63
+ */
64
+ export declare function NumberField({ autoComplete, autoFocus, defaultValue, description, disabled, error, form, formatOptions, id, label, loading, maxValue, minValue, name, onChange, placeholder, readOnly, ref, required, step, value, }: Readonly<NumberFieldProps>): import("react").JSX.Element;
65
+ export {};
66
+ //# sourceMappingURL=NumberField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumberField.d.ts","sourceRoot":"","sources":["../../../src/primitives/NumberField/NumberField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAqCjC,UAAU,sBAAsB;IAC9B,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,aAAa,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC;IACzC,wDAAwD;IACxD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uCAAuC;IACvC,GAAG,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC5B,wDAAwD;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yEAAyE;IACzE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,0BAA0B;IAClC,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAC;IACd,4DAA4D;IAC5D,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,sEAAsE;IACtE,YAAY,CAAC,EAAE,KAAK,CAAC;CACtB;AAED,UAAU,4BAA4B;IACpC,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,sEAAsE;IACtE,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,uEAAuE;AACvE,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GACnD,CAAC,0BAA0B,GAAG,4BAA4B,CAAC,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAC1B,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,WAAW,EACX,QAAgB,EAChB,KAAK,EACL,IAAI,EACJ,aAAa,EACb,EAAE,EACF,KAAK,EACL,OAAe,EACf,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,QAAgB,EAChB,GAAG,EACH,QAAgB,EAChB,IAAI,EACJ,KAAK,GACN,EAAE,QAAQ,CAAC,gBAAgB,CAAC,+BAmG5B"}
@@ -0,0 +1,59 @@
1
+ import type { ItemDescriptor } from '../Collection/item.types';
2
+ interface SelectCommonProps<T> {
3
+ /** Hints at the browser's autocomplete behaviour for this field. */
4
+ autoComplete?: string;
5
+ /** Focuses the control when the component is mounted. */
6
+ autoFocus?: boolean;
7
+ /** Prevents opening and selecting. Defaults to `false`. */
8
+ disabled?: boolean;
9
+ /** Supporting guidance announced with the control. */
10
+ description?: string;
11
+ /** Visible validation message; any non-empty value marks the field invalid. */
12
+ error?: string;
13
+ /** Associates the control with a form outside its ancestor tree. */
14
+ form?: string;
15
+ /** Maps an item to the closed descriptor rendered by Breeze. */
16
+ getItem: (item: T) => ItemDescriptor;
17
+ /** Sets the control id used by the field label. */
18
+ id?: string;
19
+ /** Accessible field label, shown as text outside loading state. */
20
+ label: string;
21
+ /** Replaces the control with a shape-preserving loading presentation. */
22
+ loading?: boolean;
23
+ /** Fixed choices displayed in the popover listbox. */
24
+ items: T[];
25
+ /** Sets the submitted name of the control. */
26
+ name?: string;
27
+ /** Temporary text shown when no choice is selected. */
28
+ placeholder?: string;
29
+ /** Prevents changing the choice while retaining focus and form participation. */
30
+ readOnly?: boolean;
31
+ /** Marks the control as required. Defaults to `false`. */
32
+ required?: boolean;
33
+ }
34
+ interface ControlledSelectProps<T> {
35
+ /** Current selected item. */
36
+ value: T | null;
37
+ /** Reports the next selected item without exposing a DOM event. */
38
+ onChange: (value: T | null) => void;
39
+ /** Controlled and uncontrolled value props are mutually exclusive. */
40
+ defaultValue?: never;
41
+ }
42
+ interface UncontrolledSelectProps<T> {
43
+ /** Initial selected item. */
44
+ defaultValue?: T | null;
45
+ /** Reports the next selected item without exposing a DOM event. */
46
+ onChange?: (value: T | null) => void;
47
+ /** Controlled and uncontrolled value props are mutually exclusive. */
48
+ value?: never;
49
+ }
50
+ /** Props for controlled or uncontrolled fixed-choice selection. */
51
+ export type SelectProps<T> = SelectCommonProps<T> & (ControlledSelectProps<T> | UncontrolledSelectProps<T>);
52
+ /**
53
+ * Renders a fixed-choice popover listbox without a native select element.
54
+ *
55
+ * @summary Flat fixed-choice selection with semantic item changes.
56
+ */
57
+ export declare function Select<T>({ autoComplete, autoFocus, defaultValue, description, disabled, error, form, getItem, id, items, label, loading, name, onChange, placeholder, readOnly, required, value, }: Readonly<SelectProps<T>>): import("react").JSX.Element;
58
+ export {};
59
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/primitives/Select/Select.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAsB/D,UAAU,iBAAiB,CAAC,CAAC;IAC3B,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,cAAc,CAAC;IACrC,mDAAmD;IACnD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,8CAA8C;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,qBAAqB,CAAC,CAAC;IAC/B,6BAA6B;IAC7B,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IAChB,mEAAmE;IACnE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IACpC,sEAAsE;IACtE,YAAY,CAAC,EAAE,KAAK,CAAC;CACtB;AAED,UAAU,uBAAuB,CAAC,CAAC;IACjC,6BAA6B;IAC7B,YAAY,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACxB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IACrC,sEAAsE;IACtE,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,mEAAmE;AACnE,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,GAC/C,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;AAyZ1D;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,EACxB,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,WAAW,EACX,QAAgB,EAChB,KAAK,EACL,IAAI,EACJ,OAAO,EACP,EAAE,EACF,KAAK,EACL,KAAK,EACL,OAAe,EACf,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,QAAgB,EAChB,QAAgB,EAChB,KAAK,GACN,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,+BAuT1B"}
@@ -0,0 +1,61 @@
1
+ import type { Ref } from 'react';
2
+ type TextInputType = 'email' | 'password' | 'search' | 'tel' | 'text' | 'url';
3
+ interface TextFieldCommonProps {
4
+ /** Hints at the browser's autocomplete behaviour for this field. */
5
+ autoComplete?: string;
6
+ /** Focuses the input when the component is mounted. */
7
+ autoFocus?: boolean;
8
+ /** Prevents editing and focus. Defaults to `false`. */
9
+ disabled?: boolean;
10
+ /** Supporting guidance announced with the input. */
11
+ description?: string;
12
+ /** Visible validation message; any non-empty value marks the field invalid. */
13
+ error?: string;
14
+ /** Associates the input with a form outside its ancestor tree. */
15
+ form?: string;
16
+ /** Sets the native input id used by the field label. */
17
+ id?: string;
18
+ /** Accessible field label, shown as text outside loading state. */
19
+ label: string;
20
+ /** Replaces the input with a shape-preserving loading presentation. */
21
+ loading?: boolean;
22
+ /** Sets the submitted name of the input. */
23
+ name?: string;
24
+ /** Temporary text shown while the input is empty. */
25
+ placeholder?: string;
26
+ /** Prevents editing while retaining focus and form participation. */
27
+ readOnly?: boolean;
28
+ /** Ref to the native text input. */
29
+ ref?: Ref<HTMLInputElement>;
30
+ /** Marks the input as required. Defaults to `false`. */
31
+ required?: boolean;
32
+ /** Selects the browser input purpose. Defaults to `text`. */
33
+ type?: TextInputType;
34
+ }
35
+ interface ControlledTextFieldProps {
36
+ /** Current text value. */
37
+ value: string;
38
+ /** Reports the next text value without exposing a DOM event. */
39
+ onChange: (value: string) => void;
40
+ /** Controlled and uncontrolled value props are mutually exclusive. */
41
+ defaultValue?: never;
42
+ }
43
+ interface UncontrolledTextFieldProps {
44
+ /** Initial text value. Defaults to an empty string. */
45
+ defaultValue?: string;
46
+ /** Reports the next text value without exposing a DOM event. */
47
+ onChange?: (value: string) => void;
48
+ /** Controlled and uncontrolled value props are mutually exclusive. */
49
+ value?: never;
50
+ }
51
+ /** Props for controlled or uncontrolled text entry. */
52
+ export type TextFieldProps = TextFieldCommonProps & (ControlledTextFieldProps | UncontrolledTextFieldProps);
53
+ /**
54
+ * Renders a labelled, accessible single-line text input with validation and a
55
+ * closed loading presentation.
56
+ *
57
+ * @summary Flat text entry with semantic value changes.
58
+ */
59
+ export declare function TextField({ autoComplete, autoFocus, defaultValue, description, disabled, error, form, id, label, loading, name, onChange, placeholder, readOnly, ref, required, type, value, }: Readonly<TextFieldProps>): import("react").JSX.Element;
60
+ export {};
61
+ //# sourceMappingURL=TextField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/primitives/TextField/TextField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAWjC,KAAK,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC;AAE9E,UAAU,oBAAoB;IAC5B,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,GAAG,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC5B,wDAAwD;IACxD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB;AAED,UAAU,wBAAwB;IAChC,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,sEAAsE;IACtE,YAAY,CAAC,EAAE,KAAK,CAAC;CACtB;AAED,UAAU,0BAA0B;IAClC,uDAAuD;IACvD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,sEAAsE;IACtE,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED,uDAAuD;AACvD,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAC/C,CAAC,wBAAwB,GAAG,0BAA0B,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,EACxB,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,WAAW,EACX,QAAgB,EAChB,KAAK,EACL,IAAI,EACJ,EAAE,EACF,KAAK,EACL,OAAe,EACf,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,QAAgB,EAChB,GAAG,EACH,QAAgB,EAChB,IAAa,EACb,KAAK,GACN,EAAE,QAAQ,CAAC,cAAc,CAAC,+BAsD1B"}