@techsio/ui-kit 0.48.0 → 0.50.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 (50) hide show
  1. package/dist/atoms/numeric-input.js +3 -0
  2. package/dist/molecules/combobox.js +204 -50
  3. package/dist/molecules/form-checkbox.js +12 -2
  4. package/dist/molecules/form-error-summary.js +59 -0
  5. package/dist/molecules/form-input.js +10 -1
  6. package/dist/molecules/form-numeric-input.js +9 -1
  7. package/dist/molecules/form-textarea.js +10 -1
  8. package/dist/src/atoms/numeric-input.d.ts +1 -1
  9. package/dist/src/atoms/numeric-input.d.ts.map +1 -1
  10. package/dist/src/molecules/combobox.d.ts +50 -4
  11. package/dist/src/molecules/combobox.d.ts.map +1 -1
  12. package/dist/src/molecules/form-checkbox.d.ts +2 -1
  13. package/dist/src/molecules/form-checkbox.d.ts.map +1 -1
  14. package/dist/src/molecules/form-error-summary.d.ts +29 -0
  15. package/dist/src/molecules/form-error-summary.d.ts.map +1 -0
  16. package/dist/src/molecules/form-input.d.ts +3 -3
  17. package/dist/src/molecules/form-input.d.ts.map +1 -1
  18. package/dist/src/molecules/form-numeric-input.d.ts +3 -3
  19. package/dist/src/molecules/form-numeric-input.d.ts.map +1 -1
  20. package/dist/src/molecules/form-textarea.d.ts +3 -3
  21. package/dist/src/molecules/form-textarea.d.ts.map +1 -1
  22. package/dist/src/templates/facet-filter-panel.d.ts +96 -0
  23. package/dist/src/templates/facet-filter-panel.d.ts.map +1 -0
  24. package/dist/src/templates/numeric-input.d.ts +1 -1
  25. package/dist/src/templates/search-suggestions.d.ts +23 -0
  26. package/dist/src/templates/search-suggestions.d.ts.map +1 -0
  27. package/dist/stories/changelog/changelog.stories.d.ts.map +1 -1
  28. package/dist/stories/molecules/combobox.stories.d.ts +6 -0
  29. package/dist/stories/molecules/combobox.stories.d.ts.map +1 -1
  30. package/dist/stories/molecules/form-error-summary.stories.d.ts +11 -0
  31. package/dist/stories/molecules/form-error-summary.stories.d.ts.map +1 -0
  32. package/dist/stories/templates/facet-filter-panel.stories.d.ts +17 -0
  33. package/dist/stories/templates/facet-filter-panel.stories.d.ts.map +1 -0
  34. package/dist/stories/templates/search-suggestions.stories.d.ts +119 -0
  35. package/dist/stories/templates/search-suggestions.stories.d.ts.map +1 -0
  36. package/dist/templates/facet-filter-panel.js +310 -0
  37. package/dist/templates/search-suggestions.js +14 -0
  38. package/dist/test/combobox.behavior.spec.d.ts +2 -0
  39. package/dist/test/combobox.behavior.spec.d.ts.map +1 -0
  40. package/dist/test/facet-filter-panel.spec.d.ts +2 -0
  41. package/dist/test/facet-filter-panel.spec.d.ts.map +1 -0
  42. package/dist/test/form-error-summary.ids.test.d.ts +2 -0
  43. package/dist/test/form-error-summary.ids.test.d.ts.map +1 -0
  44. package/dist/test/search-suggestions.spec.d.ts +2 -0
  45. package/dist/test/search-suggestions.spec.d.ts.map +1 -0
  46. package/package.json +1 -1
  47. package/src/tokens/components/components.css +3 -0
  48. package/src/tokens/components/molecules/_combobox.css +22 -0
  49. package/src/tokens/components/molecules/_form-error-summary.css +20 -0
  50. package/src/tokens/components/templates/_facet-filter-panel.css +43 -0
@@ -1,3 +1,16 @@
1
+ /**
2
+ * Combobox — @techsio/ui-kit molecule.
3
+ *
4
+ * @component Combobox
5
+ * @componentVersion v1.3.0
6
+ * @skill combobox-usage
7
+ * @changelog libs/ui/stories/changelog/changelog.stories.tsx
8
+ *
9
+ * Versioning is enforced at commit by scripts/check-skill-sync.mjs: @componentVersion must match
10
+ * the combobox-usage skill's component_version and a changelog entry. Bump all three together.
11
+ */
12
+ import { type Props as ZagComboboxProps } from "@zag-js/combobox";
13
+ import { type ReactNode } from "react";
1
14
  import type { VariantProps } from "tailwind-variants";
2
15
  import { type IconProps, type IconType } from "../atoms/icon.js";
3
16
  declare const comboboxVariants: import("tailwind-variants").TVReturnType<{
@@ -33,10 +46,13 @@ declare const comboboxVariants: import("tailwind-variants").TVReturnType<{
33
46
  positioner: string[];
34
47
  content: string[];
35
48
  list: string[];
49
+ groupLabel: string[];
50
+ footer: string[];
36
51
  itemText: string[];
37
52
  item: string[];
38
53
  itemIndicator: string[];
39
54
  emptyState: string[];
55
+ status: string[];
40
56
  triggerIndicator: string[];
41
57
  helper: string[];
42
58
  multiple: never[];
@@ -73,10 +89,13 @@ declare const comboboxVariants: import("tailwind-variants").TVReturnType<{
73
89
  positioner: string[];
74
90
  content: string[];
75
91
  list: string[];
92
+ groupLabel: string[];
93
+ footer: string[];
76
94
  itemText: string[];
77
95
  item: string[];
78
96
  itemIndicator: string[];
79
97
  emptyState: string[];
98
+ status: string[];
80
99
  triggerIndicator: string[];
81
100
  helper: string[];
82
101
  multiple: never[];
@@ -113,10 +132,13 @@ declare const comboboxVariants: import("tailwind-variants").TVReturnType<{
113
132
  positioner: string[];
114
133
  content: string[];
115
134
  list: string[];
135
+ groupLabel: string[];
136
+ footer: string[];
116
137
  itemText: string[];
117
138
  item: string[];
118
139
  itemIndicator: string[];
119
140
  emptyState: string[];
141
+ status: string[];
120
142
  triggerIndicator: string[];
121
143
  helper: string[];
122
144
  multiple: never[];
@@ -127,8 +149,20 @@ export type ComboboxItem<T = unknown> = {
127
149
  value: string;
128
150
  disabled?: boolean;
129
151
  data?: T;
152
+ href?: string;
130
153
  };
131
- export interface ComboboxProps<T = unknown> extends VariantProps<typeof comboboxVariants> {
154
+ export type ComboboxItemGroup<T = unknown> = {
155
+ id: string;
156
+ label?: string;
157
+ items: ComboboxItem<T>[];
158
+ };
159
+ export type ComboboxProps<T = unknown> = VariantProps<typeof comboboxVariants> & ({
160
+ items: ComboboxItem<T>[];
161
+ groups?: never;
162
+ } | {
163
+ items?: never;
164
+ groups: ComboboxItemGroup<T>[];
165
+ }) & {
132
166
  id?: string;
133
167
  name?: string;
134
168
  label?: string;
@@ -136,7 +170,6 @@ export interface ComboboxProps<T = unknown> extends VariantProps<typeof combobox
136
170
  disabled?: boolean;
137
171
  readOnly?: boolean;
138
172
  required?: boolean;
139
- items: ComboboxItem<T>[];
140
173
  value?: string | string[];
141
174
  defaultValue?: string | string[];
142
175
  inputValue?: string;
@@ -151,6 +184,8 @@ export interface ComboboxProps<T = unknown> extends VariantProps<typeof combobox
151
184
  allowCustomValue?: boolean;
152
185
  loopFocus?: boolean;
153
186
  autoFocus?: boolean;
187
+ open?: boolean;
188
+ defaultOpen?: boolean;
154
189
  triggerIcon?: IconType;
155
190
  triggerIconSize?: IconProps["size"];
156
191
  clearIcon?: IconType;
@@ -158,7 +193,18 @@ export interface ComboboxProps<T = unknown> extends VariantProps<typeof combobox
158
193
  onInputValueChange?: (value: string) => void;
159
194
  onOpenChange?: (open: boolean) => void;
160
195
  inputBehavior?: "autohighlight" | "autocomplete" | "none";
161
- }
162
- export declare function Combobox<T = unknown>({ id, name, label, size, placeholder, disabled, readOnly, required, items, value, defaultValue, inputValue, multiple, validateStatus, helpText, showHelpTextIcon, noResultsMessage, clearable, selectionBehavior, closeOnSelect, allowCustomValue, loopFocus, autoFocus, triggerIcon, triggerIconSize, clearIcon, inputBehavior, onChange, onInputValueChange, onOpenChange, }: ComboboxProps<T>): import("react/jsx-runtime").JSX.Element;
196
+ filterBehavior?: "local" | "external";
197
+ loading?: boolean;
198
+ loadingMessage?: string;
199
+ error?: ReactNode;
200
+ retryLabel?: string;
201
+ onRetry?: () => void;
202
+ renderItem?: (item: ComboboxItem<T>) => ReactNode;
203
+ mode?: "selection" | "navigation";
204
+ navigate?: ZagComboboxProps["navigate"];
205
+ footer?: ReactNode;
206
+ portalled?: boolean;
207
+ };
208
+ export declare function Combobox<T = unknown>({ id, name, label, size, placeholder, disabled, readOnly, required, items, groups, value, defaultValue, inputValue, multiple, validateStatus, helpText, showHelpTextIcon, noResultsMessage, clearable, selectionBehavior, closeOnSelect, allowCustomValue, loopFocus, autoFocus, open, defaultOpen, triggerIcon, triggerIconSize, clearIcon, inputBehavior, filterBehavior, loading, loadingMessage, error, retryLabel, onRetry, renderItem, onChange, onInputValueChange, onOpenChange, mode, navigate, footer, portalled, }: ComboboxProps<T>): import("react/jsx-runtime").JSX.Element;
163
209
  export {};
164
210
  //# sourceMappingURL=combobox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"combobox.d.ts","sourceRoot":"","sources":["../../../src/molecules/combobox.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"combobox.d.ts","sourceRoot":"","sources":["../../../src/molecules/combobox.tsx"],"names":[],"mappings":"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"}
@@ -12,13 +12,14 @@ export type FormCheckboxProps = {
12
12
  children?: ReactNode;
13
13
  label?: ReactNode;
14
14
  helpText?: ReactNode;
15
+ "aria-describedby"?: string;
15
16
  validateStatus?: "default" | "error" | "success" | "warning";
16
17
  showHelpTextIcon?: boolean;
17
18
  size?: "sm" | "md" | "lg";
18
19
  className?: string;
19
20
  onCheckedChange?: (checked: boolean) => void;
20
21
  };
21
- export declare function FormCheckbox({ id, name, value, checked, defaultChecked, indeterminate, disabled, required, readOnly, children, label, helpText, validateStatus, showHelpTextIcon, size, className, onCheckedChange, }: FormCheckboxProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function FormCheckbox({ id, name, value, checked, defaultChecked, indeterminate, disabled, required, readOnly, children, label, helpText, "aria-describedby": ariaDescribedBy, validateStatus, showHelpTextIcon, size, className, onCheckedChange, }: FormCheckboxProps): import("react/jsx-runtime").JSX.Element;
22
23
  export declare namespace FormCheckbox {
23
24
  var displayName: string;
24
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"form-checkbox.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-checkbox.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,SAAS,EAAS,MAAM,OAAO,CAAA;AAwD7C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,cAAc,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;IAC5D,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;CAC7C,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,EAAE,EACF,IAAI,EACJ,KAAK,EACL,OAAO,EACP,cAAc,EACd,aAAa,EACb,QAAgB,EAChB,QAAgB,EAChB,QAAgB,EAChB,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,cAA0B,EAC1B,gBAA+C,EAC/C,IAAW,EACX,SAAS,EACT,eAAe,GAChB,EAAE,iBAAiB,2CAuDnB;yBAzEe,YAAY"}
1
+ {"version":3,"file":"form-checkbox.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-checkbox.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,SAAS,EAAS,MAAM,OAAO,CAAA;AAwD7C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,cAAc,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;IAC5D,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;CAC7C,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,EAAE,EACF,IAAI,EACJ,KAAK,EACL,OAAO,EACP,cAAc,EACd,aAAa,EACb,QAAgB,EAChB,QAAgB,EAChB,QAAgB,EAChB,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,kBAAkB,EAAE,eAAe,EACnC,cAA0B,EAC1B,gBAA+C,EAC/C,IAAW,EACX,SAAS,EACT,eAAe,GAChB,EAAE,iBAAiB,2CA+DnB;yBAlFe,YAAY"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * FormErrorSummary — @techsio/ui-kit molecule.
3
+ *
4
+ * @component FormErrorSummary
5
+ * @componentVersion v1.0.1
6
+ * @skill form-error-summary-usage
7
+ * @changelog libs/ui/stories/changelog/changelog.stories.tsx
8
+ *
9
+ * Versioning is enforced at commit by scripts/check-skill-sync.mjs: @componentVersion must match
10
+ * the form-error-summary-usage skill's component_version and a changelog entry. Bump all three together.
11
+ */
12
+ import type { Ref } from "react";
13
+ export type FormErrorSummaryError = {
14
+ id: string;
15
+ label: string;
16
+ targetId: string;
17
+ };
18
+ export type FormErrorSummaryProps = {
19
+ title?: string;
20
+ errors: FormErrorSummaryError[];
21
+ onFieldFocus?: (targetId: string) => void;
22
+ className?: string;
23
+ ref?: Ref<HTMLDivElement>;
24
+ };
25
+ export declare function FormErrorSummary({ title, errors, onFieldFocus, className, ref, }: FormErrorSummaryProps): import("react/jsx-runtime").JSX.Element | null;
26
+ export declare namespace FormErrorSummary {
27
+ var displayName: string;
28
+ }
29
+ //# sourceMappingURL=form-error-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-error-summary.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-error-summary.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAGhC,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,qBAAqB,EAAE,CAAA;IAC/B,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAA;CAC1B,CAAA;AAuBD,wBAAgB,gBAAgB,CAAC,EAC/B,KAA4B,EAC5B,MAAM,EACN,YAAY,EACZ,SAAS,EACT,GAAG,GACJ,EAAE,qBAAqB,kDAyBvB;yBA/Be,gBAAgB"}
@@ -2,14 +2,14 @@
2
2
  * FormInput — @techsio/ui-kit molecule.
3
3
  *
4
4
  * @component FormInput
5
- * @componentVersion v1.0.0
5
+ * @componentVersion v1.1.0
6
6
  * @skill form-input-usage
7
7
  * @changelog libs/ui/stories/changelog/changelog.stories.tsx
8
8
  *
9
9
  * Versioning is enforced at commit by scripts/check-skill-sync.mjs: @componentVersion must match
10
10
  * the form-input-usage skill's component_version and a changelog entry. Bump all three together.
11
11
  */
12
- import type { ReactNode } from "react";
12
+ import { type ReactNode } from "react";
13
13
  import { type InputProps } from "../atoms/input.js";
14
14
  type ValidateStatus = "default" | "error" | "success" | "warning";
15
15
  interface FormInputRawProps extends InputProps {
@@ -22,6 +22,6 @@ export declare function FormInputRaw({ id, label, validateStatus, helpText, size
22
22
  type FormInputProps = FormInputRawProps & {
23
23
  showHelpTextIcon?: boolean;
24
24
  };
25
- export declare function FormInput({ helpText, id, validateStatus, showHelpTextIcon, size, ...props }: FormInputProps): import("react/jsx-runtime").JSX.Element;
25
+ export declare function FormInput({ helpText, id, validateStatus, showHelpTextIcon, size, "aria-describedby": ariaDescribedBy, "aria-invalid": ariaInvalid, ...props }: FormInputProps): import("react/jsx-runtime").JSX.Element;
26
26
  export {};
27
27
  //# sourceMappingURL=form-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-input.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAIvD,KAAK,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAEjE,UAAU,iBAAkB,SAAQ,UAAU;IAC5C,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,SAAS,CAAA;IAChB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED,wBAAgB,YAAY,CAAC,EAC3B,EAAE,EACF,KAAK,EACL,cAA0B,EAC1B,QAAQ,EACR,IAAW,EACX,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAmBnB;AAED,KAAK,cAAc,GAAG,iBAAiB,GAAG;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,EAAE,EACF,cAA0B,EAC1B,gBAA+C,EAC/C,IAAW,EACX,GAAG,KAAK,EACT,EAAE,cAAc,2CAoBhB"}
1
+ {"version":3,"file":"form-input.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,KAAK,SAAS,EAAS,MAAM,OAAO,CAAA;AAC7C,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAIvD,KAAK,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAEjE,UAAU,iBAAkB,SAAQ,UAAU;IAC5C,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,SAAS,CAAA;IAChB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED,wBAAgB,YAAY,CAAC,EAC3B,EAAE,EACF,KAAK,EACL,cAA0B,EAC1B,QAAQ,EACR,IAAW,EACX,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAmBnB;AAED,KAAK,cAAc,GAAG,iBAAiB,GAAG;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,EAAE,EACF,cAA0B,EAC1B,gBAA+C,EAC/C,IAAW,EACX,kBAAkB,EAAE,eAAe,EACnC,cAAc,EAAE,WAAW,EAC3B,GAAG,KAAK,EACT,EAAE,cAAc,2CA6BhB"}
@@ -2,14 +2,14 @@
2
2
  * FormNumericInput — @techsio/ui-kit molecule.
3
3
  *
4
4
  * @component FormNumericInput
5
- * @componentVersion v1.0.0
5
+ * @componentVersion v1.1.0
6
6
  * @skill form-numeric-input-usage
7
7
  * @changelog libs/ui/stories/changelog/changelog.stories.tsx
8
8
  *
9
9
  * Versioning is enforced at commit by scripts/check-skill-sync.mjs: @componentVersion must match
10
10
  * the form-numeric-input-usage skill's component_version and a changelog entry. Bump all three together.
11
11
  */
12
- import type { ReactNode } from "react";
12
+ import { type ReactNode } from "react";
13
13
  import { type NumericInputProps } from "../atoms/numeric-input.js";
14
14
  type ValidateStatus = "default" | "error" | "success" | "warning";
15
15
  interface FormNumericInputProps extends Omit<NumericInputProps, "children"> {
@@ -20,6 +20,6 @@ interface FormNumericInputProps extends Omit<NumericInputProps, "children"> {
20
20
  showHelpTextIcon?: boolean;
21
21
  children: ReactNode;
22
22
  }
23
- export declare function FormNumericInput({ id, label, validateStatus, helpText, showHelpTextIcon, size, required, disabled, children, ...numericInputProps }: FormNumericInputProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function FormNumericInput({ id, label, validateStatus, helpText, showHelpTextIcon, size, required, disabled, children, describedBy, ...numericInputProps }: FormNumericInputProps): import("react/jsx-runtime").JSX.Element;
24
24
  export {};
25
25
  //# sourceMappingURL=form-numeric-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-numeric-input.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-numeric-input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAG7E,KAAK,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAEjE,UAAU,qBAAsB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC;IACzE,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,SAAS,CAAA;IAChB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,EAAE,EACF,KAAK,EACL,cAA0B,EAC1B,QAAQ,EACR,gBAA+C,EAC/C,IAAW,EACX,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,GAAG,iBAAiB,EACrB,EAAE,qBAAqB,2CA+BvB"}
1
+ {"version":3,"file":"form-numeric-input.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-numeric-input.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,KAAK,SAAS,EAAS,MAAM,OAAO,CAAA;AAE7C,OAAO,EAAgB,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAG7E,KAAK,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAEjE,UAAU,qBAAsB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC;IACzE,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,SAAS,CAAA;IAChB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,EAAE,EACF,KAAK,EACL,cAA0B,EAC1B,QAAQ,EACR,gBAA+C,EAC/C,IAAW,EACX,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,GAAG,iBAAiB,EACrB,EAAE,qBAAqB,2CAqCvB"}
@@ -2,14 +2,14 @@
2
2
  * FormTextarea — @techsio/ui-kit molecule.
3
3
  *
4
4
  * @component FormTextarea
5
- * @componentVersion v1.0.0
5
+ * @componentVersion v1.1.0
6
6
  * @skill form-textarea-usage
7
7
  * @changelog libs/ui/stories/changelog/changelog.stories.tsx
8
8
  *
9
9
  * Versioning is enforced at commit by scripts/check-skill-sync.mjs: @componentVersion must match
10
10
  * the form-textarea-usage skill's component_version and a changelog entry. Bump all three together.
11
11
  */
12
- import type { ReactNode } from "react";
12
+ import { type ReactNode } from "react";
13
13
  import { type TextareaProps } from "../atoms/textarea.js";
14
14
  type ValidateStatus = "default" | "error" | "success" | "warning";
15
15
  interface FormTextareaRawProps extends TextareaProps {
@@ -22,6 +22,6 @@ export declare function FormTextareaRaw({ id, label, validateStatus, helpText, s
22
22
  type FormTextareaProps = FormTextareaRawProps & {
23
23
  showHelpTextIcon?: boolean;
24
24
  };
25
- export declare function FormTextarea({ helpText, id, validateStatus, showHelpTextIcon, size, ...props }: FormTextareaProps): import("react/jsx-runtime").JSX.Element;
25
+ export declare function FormTextarea({ helpText, id, validateStatus, showHelpTextIcon, size, "aria-describedby": ariaDescribedBy, "aria-invalid": ariaInvalid, ...props }: FormTextareaProps): import("react/jsx-runtime").JSX.Element;
26
26
  export {};
27
27
  //# sourceMappingURL=form-textarea.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-textarea.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-textarea.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEhE,KAAK,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAEjE,UAAU,oBAAqB,SAAQ,aAAa;IAClD,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,SAAS,CAAA;IAChB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED,wBAAgB,eAAe,CAAC,EAC9B,EAAE,EACF,KAAK,EACL,cAA0B,EAC1B,QAAQ,EACR,IAAW,EACX,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAkBtB;AAED,KAAK,iBAAiB,GAAG,oBAAoB,GAAG;IAC9C,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,EAAE,EACF,cAA0B,EAC1B,gBAA+C,EAC/C,IAAW,EACX,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAoBnB"}
1
+ {"version":3,"file":"form-textarea.d.ts","sourceRoot":"","sources":["../../../src/molecules/form-textarea.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,KAAK,SAAS,EAAS,MAAM,OAAO,CAAA;AAG7C,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEhE,KAAK,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAEjE,UAAU,oBAAqB,SAAQ,aAAa;IAClD,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,SAAS,CAAA;IAChB,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED,wBAAgB,eAAe,CAAC,EAC9B,EAAE,EACF,KAAK,EACL,cAA0B,EAC1B,QAAQ,EACR,IAAW,EACX,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAkBtB;AAED,KAAK,iBAAiB,GAAG,oBAAoB,GAAG;IAC9C,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,EAAE,EACF,cAA0B,EAC1B,gBAA+C,EAC/C,IAAW,EACX,kBAAkB,EAAE,eAAe,EACnC,cAAc,EAAE,WAAW,EAC3B,GAAG,KAAK,EACT,EAAE,iBAAiB,2CA6BnB"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * FacetFilterPanel - @techsio/ui-kit template.
3
+ *
4
+ * @component FacetFilterPanel
5
+ * @componentVersion v1.0.1
6
+ * @skill facet-filter-panel-usage
7
+ * @changelog libs/ui/stories/changelog/changelog.stories.tsx
8
+ */
9
+ import type { ReactNode } from "react";
10
+ export type FacetFilterOption = {
11
+ value: string;
12
+ label: ReactNode;
13
+ count?: number;
14
+ disabled?: boolean;
15
+ };
16
+ type FacetFilterGroupBase = {
17
+ id: string;
18
+ disabled?: boolean;
19
+ };
20
+ export type FacetFilterOptionsGroup = FacetFilterGroupBase & {
21
+ type: "options";
22
+ label: ReactNode;
23
+ options: readonly FacetFilterOption[];
24
+ collapseAfter?: number;
25
+ emptyLabel?: ReactNode;
26
+ };
27
+ export type FacetFilterRangeGroup = FacetFilterGroupBase & {
28
+ type: "range";
29
+ label: string;
30
+ min: number;
31
+ max: number;
32
+ step?: number;
33
+ minStepsBetweenThumbs?: number;
34
+ value: readonly [number, number];
35
+ formatValue?: (value: number) => string;
36
+ formatRangeText?: (values: number[]) => string;
37
+ };
38
+ export type FacetFilterGroup = FacetFilterOptionsGroup | FacetFilterRangeGroup;
39
+ export type FacetFilterActiveItem = {
40
+ id: string;
41
+ label: ReactNode;
42
+ removeLabel: string;
43
+ };
44
+ export type FacetFilterOptionChangeDetails = {
45
+ groupId: string;
46
+ value: string;
47
+ checked: boolean;
48
+ };
49
+ export type FacetFilterRangeChangeDetails = {
50
+ groupId: string;
51
+ value: [number, number];
52
+ };
53
+ export type FacetFilterPanelProps = {
54
+ title: ReactNode;
55
+ groups: readonly FacetFilterGroup[];
56
+ selectedValues?: Readonly<Record<string, readonly string[]>>;
57
+ activeFilters?: readonly FacetFilterActiveItem[];
58
+ presentation?: "inline" | "drawer";
59
+ disabled?: boolean;
60
+ pending?: boolean;
61
+ pendingLabel?: ReactNode;
62
+ activeFiltersLabel?: ReactNode;
63
+ resetLabel?: ReactNode;
64
+ showMoreLabel?: (hiddenCount: number) => ReactNode;
65
+ showLessLabel?: ReactNode;
66
+ expandedGroups?: string[];
67
+ defaultExpandedGroups?: string[];
68
+ onExpandedGroupsChange?: (groupIds: string[]) => void;
69
+ drawerTriggerLabel?: ReactNode;
70
+ drawerPlacement?: "left" | "right";
71
+ drawerSize?: "xs" | "sm" | "md" | "lg" | "xl" | "full";
72
+ drawerOpen?: boolean;
73
+ defaultDrawerOpen?: boolean;
74
+ onDrawerOpenChange?: (open: boolean) => void;
75
+ className?: string;
76
+ onOptionChange?: (details: FacetFilterOptionChangeDetails) => void;
77
+ onRangeChange?: (details: FacetFilterRangeChangeDetails) => void;
78
+ onRangeChangeEnd?: (details: FacetFilterRangeChangeDetails) => void;
79
+ onRemoveFilter?: (id: string) => void;
80
+ onReset?: () => void;
81
+ };
82
+ export type FacetFilterActiveFiltersProps = {
83
+ items: readonly FacetFilterActiveItem[];
84
+ label?: ReactNode;
85
+ resetLabel?: ReactNode;
86
+ disabled?: boolean;
87
+ className?: string;
88
+ onRemove?: (id: string) => void;
89
+ onReset?: () => void;
90
+ };
91
+ export declare function FacetFilterPanel({ presentation, drawerTriggerLabel, drawerPlacement, drawerSize, drawerOpen, defaultDrawerOpen, onDrawerOpenChange, className, ...props }: FacetFilterPanelProps): import("react/jsx-runtime").JSX.Element;
92
+ export declare namespace FacetFilterPanel {
93
+ var ActiveFilters: ({ items, label, resetLabel, disabled, className, onRemove, onReset, }: FacetFilterActiveFiltersProps) => import("react/jsx-runtime").JSX.Element | null;
94
+ }
95
+ export {};
96
+ //# sourceMappingURL=facet-filter-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"facet-filter-panel.d.ts","sourceRoot":"","sources":["../../../src/templates/facet-filter-panel.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * NumericInput — @techsio/ui-kit template.
3
3
  *
4
4
  * @component NumericInput
5
- * @componentVersion v1.0.0
5
+ * @componentVersion v1.0.1
6
6
  * @skill numeric-input-usage
7
7
  * @changelog libs/ui/stories/changelog/changelog.stories.tsx
8
8
  *
@@ -0,0 +1,23 @@
1
+ /**
2
+ * SearchSuggestions - @techsio/ui-kit template.
3
+ *
4
+ * @component SearchSuggestions
5
+ * @componentVersion v1.0.0
6
+ * @skill search-suggestions-usage
7
+ * @changelog libs/ui/stories/changelog/changelog.stories.tsx
8
+ */
9
+ import type { ReactNode } from "react";
10
+ import { type ComboboxItem, type ComboboxItemGroup, type ComboboxProps } from "../molecules/combobox.js";
11
+ export type SearchSuggestionItem<T = unknown> = ComboboxItem<T> & {
12
+ href: string;
13
+ };
14
+ export type SearchSuggestionGroup<T = unknown> = Omit<ComboboxItemGroup<T>, "items"> & {
15
+ items: SearchSuggestionItem<T>[];
16
+ };
17
+ export type SearchSuggestionsProps<T = unknown> = Omit<ComboboxProps<T>, "items" | "groups" | "renderItem" | "footer" | "mode" | "multiple" | "value" | "defaultValue" | "onChange" | "name" | "selectionBehavior" | "allowCustomValue"> & {
18
+ groups: SearchSuggestionGroup<T>[];
19
+ resultSlot?: ComboboxProps<T>["renderItem"];
20
+ allResultsLink?: ReactNode;
21
+ };
22
+ export declare function SearchSuggestions<T = unknown>({ resultSlot, allResultsLink, filterBehavior, inputBehavior, portalled, ...props }: SearchSuggestionsProps<T>): import("react/jsx-runtime").JSX.Element;
23
+ //# sourceMappingURL=search-suggestions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-suggestions.d.ts","sourceRoot":"","sources":["../../../src/templates/search-suggestions.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EACnB,MAAM,uBAAuB,CAAA;AAE9B,MAAM,MAAM,oBAAoB,CAAC,CAAC,GAAG,OAAO,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG;IAChE,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,qBAAqB,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,CACnD,iBAAiB,CAAC,CAAC,CAAC,EACpB,OAAO,CACR,GAAG;IACF,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,sBAAsB,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,CACpD,aAAa,CAAC,CAAC,CAAC,EACd,OAAO,GACP,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,MAAM,GACN,UAAU,GACV,OAAO,GACP,cAAc,GACd,UAAU,GACV,MAAM,GACN,mBAAmB,GACnB,kBAAkB,CACrB,GAAG;IACF,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAA;IAClC,UAAU,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;IAC3C,cAAc,CAAC,EAAE,SAAS,CAAA;CAC3B,CAAA;AAED,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,OAAO,EAAE,EAC7C,UAAU,EACV,cAAc,EACd,cAA2B,EAC3B,aAAsB,EACtB,SAAiB,EACjB,GAAG,KAAK,EACT,EAAE,sBAAsB,CAAC,CAAC,CAAC,2CAY3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"changelog.stories.d.ts","sourceRoot":"","sources":["../../../stories/changelog/changelog.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAyOtD,iBAAS,SAAS,4CAUjB;AAED,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CAKhC,CAAA;AAED,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,SAAS,CAAM,CAAA"}
1
+ {"version":3,"file":"changelog.stories.d.ts","sourceRoot":"","sources":["../../../stories/changelog/changelog.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAwRtD,iBAAS,SAAS,4CAUjB;AAED,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CAKhC,CAAA;AAED,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,SAAS,CAAM,CAAA"}
@@ -8,4 +8,10 @@ export declare const ValidationStates: Story;
8
8
  export declare const MultipleSelection: Story;
9
9
  export declare const Sizes: Story;
10
10
  export declare const ComplexStory: Story;
11
+ export declare const Grouped: Story;
12
+ export declare const ExternalFiltering: Story;
13
+ export declare const Loading: Story;
14
+ export declare const LoadingWithSelection: Story;
15
+ export declare const ErrorRetry: Story;
16
+ export declare const RichItem: Story;
11
17
  //# sourceMappingURL=combobox.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"combobox.stories.d.ts","sourceRoot":"","sources":["../../../stories/molecules/combobox.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAGtD,OAAO,EAAE,QAAQ,EAAqB,MAAM,8BAA8B,CAAA;AAiB1E,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,QAAQ,CAwE/B,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,QAAQ,CAAC,CAAA;AAEtC,eAAO,MAAM,UAAU,EAAE,KAiBxB,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,KAiC9B,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAmD/B,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KA0BnB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAgD1B,CAAA"}
1
+ {"version":3,"file":"combobox.stories.d.ts","sourceRoot":"","sources":["../../../stories/molecules/combobox.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAItD,OAAO,EAAE,QAAQ,EAAqB,MAAM,8BAA8B,CAAA;AAiB1E,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,QAAQ,CAwE/B,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,QAAQ,CAAC,CAAA;AAEtC,eAAO,MAAM,UAAU,EAAE,KAiBxB,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,KAiC9B,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAmD/B,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KA0BnB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAgD1B,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,KAsBrB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAE/B,CAAA;AAgCD,eAAO,MAAM,OAAO,EAAE,KAQrB,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,KAQlC,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAsBxB,CAAA;AAQD,eAAO,MAAM,QAAQ,EAAE,KAiBtB,CAAA"}
@@ -0,0 +1,11 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import { FormErrorSummary } from '../../src/molecules/form-error-summary.js';
3
+ declare const meta: Meta<typeof FormErrorSummary>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof FormErrorSummary>;
6
+ export declare const Playground: Story;
7
+ export declare const OneError: Story;
8
+ export declare const MultipleErrors: Story;
9
+ export declare const Hidden: Story;
10
+ export declare const WithForm: Story;
11
+ //# sourceMappingURL=form-error-summary.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-error-summary.stories.d.ts","sourceRoot":"","sources":["../../../stories/molecules/form-error-summary.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAOtD,OAAO,EACL,gBAAgB,EAEjB,MAAM,wCAAwC,CAAA;AAE/C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,gBAAgB,CAyBvC,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAQ9C,eAAO,MAAM,UAAU,EAAE,KAIxB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAItB,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAI5B,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KASpB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAA"}
@@ -0,0 +1,17 @@
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
+ import { FacetFilterPanel } from "../../src/templates/facet-filter-panel.js";
3
+ declare const meta: Meta<typeof FacetFilterPanel>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof FacetFilterPanel>;
6
+ export declare const Playground: Story;
7
+ export declare const Selected: Story;
8
+ export declare const ActiveFilters: Story;
9
+ export declare const EmptyAndOptionAvailability: Story;
10
+ export declare const Disabled: Story;
11
+ export declare const Pending: Story;
12
+ export declare const Overflow: Story;
13
+ export declare const NarrowLayout: Story;
14
+ export declare const AsyncGroups: Story;
15
+ export declare const RejectedDrawerClose: Story;
16
+ export declare const DrawerOpen: Story;
17
+ //# sourceMappingURL=facet-filter-panel.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"facet-filter-panel.stories.d.ts","sourceRoot":"","sources":["../../../stories/templates/facet-filter-panel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAItD,OAAO,EACL,gBAAgB,EAOjB,MAAM,wCAAwC,CAAA;AAoP/C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,gBAAgB,CAqDvC,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE9C,eAAO,MAAM,UAAU,EAAE,KAMxB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAwBtB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAmB3B,CAAA;AAED,eAAO,MAAM,0BAA0B,EAAE,KA0BxC,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAiBtB,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,KAiBrB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAWtB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAM1B,CAAA;AAeD,eAAO,MAAM,WAAW,EAAE,KAEzB,CAAA;AAyBD,eAAO,MAAM,mBAAmB,EAAE,KAKjC,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAcxB,CAAA"}
@@ -0,0 +1,119 @@
1
+ import type { StoryObj } from "@storybook/react";
2
+ import { type SearchSuggestionGroup, type SearchSuggestionsProps } from "../../src/templates/search-suggestions.js";
3
+ type ProductDetails = {
4
+ image?: string;
5
+ subtitle: string;
6
+ price?: string;
7
+ };
8
+ declare const meta: {
9
+ title: string;
10
+ component: ({ resultSlot, allResultsLink, filterBehavior, inputBehavior, portalled, ...props }: SearchSuggestionsProps<ProductDetails>) => import("react/jsx-runtime").JSX.Element;
11
+ tags: string[];
12
+ parameters: {
13
+ layout: string;
14
+ };
15
+ decorators: ((Story: import("storybook/internal/csf").PartialStoryFn<import("storybook-react-rsbuild").ReactRenderer, {
16
+ id?: string | undefined;
17
+ label?: string | undefined;
18
+ size?: "md" | "sm" | "lg" | undefined;
19
+ open?: boolean | undefined;
20
+ disabled?: boolean | undefined;
21
+ error?: import("react").ReactNode;
22
+ placeholder?: string | undefined;
23
+ readOnly?: boolean | undefined;
24
+ required?: boolean | undefined;
25
+ autoFocus?: boolean | undefined;
26
+ loading?: boolean | undefined;
27
+ loopFocus?: boolean | undefined;
28
+ inputValue?: string | undefined;
29
+ onInputValueChange?: ((value: string) => void) | undefined;
30
+ defaultOpen?: boolean | undefined;
31
+ inputBehavior?: "autohighlight" | "autocomplete" | "none" | undefined;
32
+ onOpenChange?: ((open: boolean) => void) | undefined;
33
+ closeOnSelect?: boolean | undefined;
34
+ navigate?: ((details: import("@zag-js/combobox").NavigateDetails) => void) | null | undefined;
35
+ validateStatus?: "default" | "error" | "success" | "warning" | undefined;
36
+ helpText?: string | undefined;
37
+ showHelpTextIcon?: boolean | undefined;
38
+ noResultsMessage?: string | undefined;
39
+ clearable?: boolean | undefined;
40
+ triggerIcon?: import("../../src/atoms/icon.js").IconType | undefined;
41
+ triggerIconSize?: "md" | "sm" | "lg" | "current" | "xs" | "xl" | "2xl" | undefined;
42
+ clearIcon?: import("../../src/atoms/icon.js").IconType | undefined;
43
+ filterBehavior?: "local" | "external" | undefined;
44
+ loadingMessage?: string | undefined;
45
+ retryLabel?: string | undefined;
46
+ onRetry?: (() => void) | undefined;
47
+ portalled?: boolean | undefined;
48
+ groups: SearchSuggestionGroup<ProductDetails>[];
49
+ resultSlot?: ((item: import("../../src/molecules/combobox.js").ComboboxItem<ProductDetails>) => import("react").ReactNode) | undefined;
50
+ allResultsLink?: import("react").ReactNode;
51
+ }>) => import("react/jsx-runtime").JSX.Element)[];
52
+ argTypes: {
53
+ label: {
54
+ control: "text";
55
+ };
56
+ placeholder: {
57
+ control: "text";
58
+ };
59
+ size: {
60
+ control: "select";
61
+ options: string[];
62
+ };
63
+ disabled: {
64
+ control: "boolean";
65
+ };
66
+ readOnly: {
67
+ control: "boolean";
68
+ };
69
+ clearable: {
70
+ control: "boolean";
71
+ };
72
+ loading: {
73
+ control: "boolean";
74
+ };
75
+ loadingMessage: {
76
+ control: "text";
77
+ };
78
+ noResultsMessage: {
79
+ control: "text";
80
+ };
81
+ retryLabel: {
82
+ control: "text";
83
+ };
84
+ groups: {
85
+ control: false;
86
+ };
87
+ resultSlot: {
88
+ control: false;
89
+ };
90
+ allResultsLink: {
91
+ control: false;
92
+ };
93
+ navigate: {
94
+ control: false;
95
+ };
96
+ };
97
+ args: {
98
+ groups: SearchSuggestionGroup<ProductDetails>[];
99
+ label: string;
100
+ placeholder: string;
101
+ resultSlot: (item: import("../../src/molecules/combobox.js").ComboboxItem<ProductDetails>) => import("react").ReactNode;
102
+ navigate: import("storybook/test").Mock<(...args: any[]) => any>;
103
+ onInputValueChange: import("storybook/test").Mock<(...args: any[]) => any>;
104
+ allResultsLink: import("react/jsx-runtime").JSX.Element;
105
+ };
106
+ };
107
+ export default meta;
108
+ type Story = StoryObj<typeof meta>;
109
+ export declare const Playground: Story;
110
+ export declare const Sizes: Story;
111
+ export declare const States: Story;
112
+ export declare const GroupedResults: Story;
113
+ export declare const WithoutGroupLabels: Story;
114
+ export declare const Loading: Story;
115
+ export declare const Empty: Story;
116
+ export declare const ErrorWithRetry: Story;
117
+ export declare const NarrowLayout: Story;
118
+ export declare const InDialog: Story;
119
+ //# sourceMappingURL=search-suggestions.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-suggestions.stories.d.ts","sourceRoot":"","sources":["../../../stories/templates/search-suggestions.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAOtD,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC5B,MAAM,wCAAwC,CAAA;AAE/C,KAAK,cAAc,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AA2D1E,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCgD,CAAA;AAE1D,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAA;AAElC,eAAO,MAAM,UAAU,EAAE,KAAU,CAAA;AAEnC,eAAO,MAAM,KAAK,EAAE,KAUnB,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAgBpB,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAE5B,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,KAYhC,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAOnB,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAgB5B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAO1B,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAMtB,CAAA"}