@purpur/library 9.0.10 → 9.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/CHANGELOG.json +57 -0
  2. package/CHANGELOG.md +26 -1
  3. package/dist/LICENSE.txt +45 -24
  4. package/dist/{autocomplete-Dy8YL7Mo.js → autocomplete-B421J7CS.js} +2 -2
  5. package/dist/{autocomplete-Dy8YL7Mo.js.map → autocomplete-B421J7CS.js.map} +1 -1
  6. package/dist/{autocomplete-Dn503hFM.mjs → autocomplete-B8L-dTmF.mjs} +3 -3
  7. package/dist/{autocomplete-Dn503hFM.mjs.map → autocomplete-B8L-dTmF.mjs.map} +1 -1
  8. package/dist/autocomplete.cjs.js +1 -1
  9. package/dist/autocomplete.es.js +1 -1
  10. package/dist/{calendar-C-F-pVCe.js → calendar-CoP1dGpQ.js} +2 -2
  11. package/dist/{calendar-C-F-pVCe.js.map → calendar-CoP1dGpQ.js.map} +1 -1
  12. package/dist/{calendar-DWpnuylk.mjs → calendar-D_sZrR92.mjs} +151 -140
  13. package/dist/{calendar-DWpnuylk.mjs.map → calendar-D_sZrR92.mjs.map} +1 -1
  14. package/dist/calendar.cjs.js +1 -1
  15. package/dist/calendar.es.js +1 -1
  16. package/dist/chat-field-CxOqk0-9.js +2 -0
  17. package/dist/chat-field-CxOqk0-9.js.map +1 -0
  18. package/dist/chat-field-yK-TwW0D.mjs +149 -0
  19. package/dist/chat-field-yK-TwW0D.mjs.map +1 -0
  20. package/dist/chat-field.cjs.js +2 -0
  21. package/dist/chat-field.cjs.js.map +1 -0
  22. package/dist/chat-field.es.js +5 -0
  23. package/dist/chat-field.es.js.map +1 -0
  24. package/dist/components/autocomplete/src/autocomplete.d.ts.map +1 -1
  25. package/dist/components/calendar/src/calendar.d.ts.map +1 -1
  26. package/dist/components/chat-field/src/chat-field.d.ts +71 -0
  27. package/dist/components/chat-field/src/chat-field.d.ts.map +1 -0
  28. package/dist/components/dismissable-chip-group/src/dismissable-chip-group-item.d.ts.map +1 -1
  29. package/dist/components/dismissable-chip-group/src/dismissable-chip-group.d.ts +6 -1
  30. package/dist/components/dismissable-chip-group/src/dismissable-chip-group.d.ts.map +1 -1
  31. package/dist/components/dropdown/src/dropdown-combobox.d.ts +34 -0
  32. package/dist/components/dropdown/src/dropdown-combobox.d.ts.map +1 -0
  33. package/dist/components/dropdown/src/dropdown-select.d.ts +34 -0
  34. package/dist/components/dropdown/src/dropdown-select.d.ts.map +1 -0
  35. package/dist/components/dropdown/src/dropdown-shared.d.ts +51 -0
  36. package/dist/components/dropdown/src/dropdown-shared.d.ts.map +1 -0
  37. package/dist/components/dropdown/src/dropdown.d.ts +6 -0
  38. package/dist/components/dropdown/src/dropdown.d.ts.map +1 -0
  39. package/dist/components/dropdown/src/dropdown.types.d.ts +94 -0
  40. package/dist/components/dropdown/src/dropdown.types.d.ts.map +1 -0
  41. package/dist/components/dropdown/src/useDropdown.d.ts +38 -0
  42. package/dist/components/dropdown/src/useDropdown.d.ts.map +1 -0
  43. package/dist/components/dropdown/src/useDropdownFilter.d.ts +9 -0
  44. package/dist/components/dropdown/src/useDropdownFilter.d.ts.map +1 -0
  45. package/dist/components/dropdown/src/useDropdownHighlight.d.ts +19 -0
  46. package/dist/components/dropdown/src/useDropdownHighlight.d.ts.map +1 -0
  47. package/dist/components/dropdown/src/useDropdownInput.d.ts +12 -0
  48. package/dist/components/dropdown/src/useDropdownInput.d.ts.map +1 -0
  49. package/dist/components/dropdown/src/useOnClickOutside.d.ts +2 -0
  50. package/dist/components/dropdown/src/useOnClickOutside.d.ts.map +1 -0
  51. package/dist/components/listbox/src/listbox-item.d.ts +2 -0
  52. package/dist/components/listbox/src/listbox-item.d.ts.map +1 -1
  53. package/dist/components/quantity-selector/src/quantity-selector-button.d.ts +2 -1
  54. package/dist/components/quantity-selector/src/quantity-selector-button.d.ts.map +1 -1
  55. package/dist/components/quantity-selector/src/quantity-selector.d.ts.map +1 -1
  56. package/dist/components/search-field/src/search-field-autocomplete.d.ts +73 -0
  57. package/dist/components/search-field/src/search-field-autocomplete.d.ts.map +1 -0
  58. package/dist/components/search-field/src/search-field-base.d.ts +97 -0
  59. package/dist/components/search-field/src/search-field-base.d.ts.map +1 -0
  60. package/dist/components/search-field/src/search-field.d.ts +123 -41
  61. package/dist/components/search-field/src/search-field.d.ts.map +1 -1
  62. package/dist/components/table/src/cell-types/button-group-cell.d.ts +6 -2
  63. package/dist/components/table/src/cell-types/button-group-cell.d.ts.map +1 -1
  64. package/dist/components/text-field/src/text-field-ai.d.ts +669 -0
  65. package/dist/components/text-field/src/text-field-ai.d.ts.map +1 -0
  66. package/dist/components/text-field/src/text-field-base.d.ts +671 -0
  67. package/dist/components/text-field/src/text-field-base.d.ts.map +1 -0
  68. package/dist/components/text-field/src/text-field.d.ts +42 -4
  69. package/dist/components/text-field/src/text-field.d.ts.map +1 -1
  70. package/dist/components/tooltip/src/tooltip.d.ts.map +1 -1
  71. package/dist/components-metadata.js +29 -1
  72. package/dist/{date-field-DACXrowI.mjs → date-field-4tYMPw89.mjs} +2 -2
  73. package/dist/{date-field-DACXrowI.mjs.map → date-field-4tYMPw89.mjs.map} +1 -1
  74. package/dist/{date-field-Z3LKO4b7.js → date-field-B7ipm5sH.js} +2 -2
  75. package/dist/{date-field-Z3LKO4b7.js.map → date-field-B7ipm5sH.js.map} +1 -1
  76. package/dist/date-field.cjs.js +1 -1
  77. package/dist/date-field.es.js +1 -1
  78. package/dist/{date-picker-5Gr_cEqA.js → date-picker-BWW4xzyc.js} +2 -2
  79. package/dist/{date-picker-5Gr_cEqA.js.map → date-picker-BWW4xzyc.js.map} +1 -1
  80. package/dist/{date-picker-CdVUA8NC.mjs → date-picker-D7EisjDG.mjs} +3 -3
  81. package/dist/{date-picker-CdVUA8NC.mjs.map → date-picker-D7EisjDG.mjs.map} +1 -1
  82. package/dist/date-picker.cjs.js +1 -1
  83. package/dist/date-picker.es.js +1 -1
  84. package/dist/dismissable-chip-group-Cd23yjBa.js +2 -0
  85. package/dist/dismissable-chip-group-Cd23yjBa.js.map +1 -0
  86. package/dist/dismissable-chip-group-D-gD93ON.mjs +89 -0
  87. package/dist/dismissable-chip-group-D-gD93ON.mjs.map +1 -0
  88. package/dist/dismissable-chip-group.cjs.js +1 -1
  89. package/dist/dismissable-chip-group.es.js +5 -2
  90. package/dist/dropdown-BC6evqyq.js +2 -0
  91. package/dist/dropdown-BC6evqyq.js.map +1 -0
  92. package/dist/dropdown-C-Ze4gvG.mjs +771 -0
  93. package/dist/dropdown-C-Ze4gvG.mjs.map +1 -0
  94. package/dist/dropdown.cjs.js +2 -0
  95. package/dist/dropdown.cjs.js.map +1 -0
  96. package/dist/dropdown.es.js +6 -0
  97. package/dist/dropdown.es.js.map +1 -0
  98. package/dist/libraries/library/src/chat-field.d.ts +6 -0
  99. package/dist/libraries/library/src/chat-field.d.ts.map +1 -0
  100. package/dist/libraries/library/src/dropdown.d.ts +6 -0
  101. package/dist/libraries/library/src/dropdown.d.ts.map +1 -0
  102. package/dist/libraries/library/src/library.d.ts +2 -0
  103. package/dist/libraries/library/src/library.d.ts.map +1 -1
  104. package/dist/library.cjs.js +1 -1
  105. package/dist/library.es.js +602 -592
  106. package/dist/library.es.js.map +1 -1
  107. package/dist/listbox-COBHLRtB.js +2 -0
  108. package/dist/listbox-COBHLRtB.js.map +1 -0
  109. package/dist/listbox-DG4KmQP_.mjs +66 -0
  110. package/dist/listbox-DG4KmQP_.mjs.map +1 -0
  111. package/dist/listbox.cjs.js +1 -1
  112. package/dist/listbox.es.js +1 -1
  113. package/dist/purpur.css +1 -1
  114. package/dist/quantity-selector-BV7QwVlT.js +2 -0
  115. package/dist/quantity-selector-BV7QwVlT.js.map +1 -0
  116. package/dist/{quantity-selector-w10wKMmT.mjs → quantity-selector-CGhJ2DjO.mjs} +60 -58
  117. package/dist/quantity-selector-CGhJ2DjO.mjs.map +1 -0
  118. package/dist/quantity-selector.cjs.js +1 -1
  119. package/dist/quantity-selector.es.js +1 -1
  120. package/dist/search-field-Caj2dKLn.mjs +151 -0
  121. package/dist/search-field-Caj2dKLn.mjs.map +1 -0
  122. package/dist/search-field-DAktzYb0.js +2 -0
  123. package/dist/search-field-DAktzYb0.js.map +1 -0
  124. package/dist/search-field.cjs.js +1 -1
  125. package/dist/search-field.es.js +3 -2
  126. package/dist/stepper-ClLQuoXr.js +2 -0
  127. package/dist/stepper-ClLQuoXr.js.map +1 -0
  128. package/dist/{stepper-B351hexi.mjs → stepper-k0bX9m4t.mjs} +4 -4
  129. package/dist/stepper-k0bX9m4t.mjs.map +1 -0
  130. package/dist/stepper.cjs.js +1 -1
  131. package/dist/stepper.es.js +1 -1
  132. package/dist/{table-YR-bpfU0.mjs → table-D_XW4smf.mjs} +3 -3
  133. package/dist/{table-YR-bpfU0.mjs.map → table-D_XW4smf.mjs.map} +1 -1
  134. package/dist/{table-CJijBJsy.js → table-Ddv6BKo9.js} +2 -2
  135. package/dist/{table-CJijBJsy.js.map → table-Ddv6BKo9.js.map} +1 -1
  136. package/dist/table.cjs.js +1 -1
  137. package/dist/table.es.js +1 -1
  138. package/dist/text-field-BQYzwIrG.mjs +322 -0
  139. package/dist/text-field-BQYzwIrG.mjs.map +1 -0
  140. package/dist/text-field-BwxGMWds.js +2 -0
  141. package/dist/text-field-BwxGMWds.js.map +1 -0
  142. package/dist/text-field.cjs.js +1 -1
  143. package/dist/text-field.es.js +4 -3
  144. package/dist/{tooltip-B_qTqtcF.js → tooltip-BatXMflw.js} +2 -2
  145. package/dist/{tooltip-B_qTqtcF.js.map → tooltip-BatXMflw.js.map} +1 -1
  146. package/dist/{tooltip-BHsVKFJ3.mjs → tooltip-CZzwHkea.mjs} +132 -132
  147. package/dist/{tooltip-BHsVKFJ3.mjs.map → tooltip-CZzwHkea.mjs.map} +1 -1
  148. package/dist/tooltip.cjs.js +1 -1
  149. package/dist/tooltip.es.js +1 -1
  150. package/dist/use-autocomplete.es-BHDgQLae.js +2 -0
  151. package/dist/use-autocomplete.es-BHDgQLae.js.map +1 -0
  152. package/dist/use-autocomplete.es-CVv3z8t6.mjs +142 -0
  153. package/dist/use-autocomplete.es-CVv3z8t6.mjs.map +1 -0
  154. package/package.json +18 -16
  155. package/src/aliases.ts +8 -0
  156. package/src/chat-field.ts +6 -0
  157. package/src/dropdown.ts +6 -0
  158. package/src/entries.js +2 -0
  159. package/src/library.ts +4 -0
  160. package/dist/dismissable-chip-group-CnziecOt.js +0 -2
  161. package/dist/dismissable-chip-group-CnziecOt.js.map +0 -1
  162. package/dist/dismissable-chip-group-ZCYOt1sB.mjs +0 -79
  163. package/dist/dismissable-chip-group-ZCYOt1sB.mjs.map +0 -1
  164. package/dist/listbox-BmjBtIv8.js +0 -2
  165. package/dist/listbox-BmjBtIv8.js.map +0 -1
  166. package/dist/listbox-oDeP8FvH.mjs +0 -65
  167. package/dist/listbox-oDeP8FvH.mjs.map +0 -1
  168. package/dist/quantity-selector-D28He6R8.js +0 -2
  169. package/dist/quantity-selector-D28He6R8.js.map +0 -1
  170. package/dist/quantity-selector-w10wKMmT.mjs.map +0 -1
  171. package/dist/search-field-CNpJp3Tg.js +0 -2
  172. package/dist/search-field-CNpJp3Tg.js.map +0 -1
  173. package/dist/search-field-CWqLnqdo.mjs +0 -91
  174. package/dist/search-field-CWqLnqdo.mjs.map +0 -1
  175. package/dist/stepper-B351hexi.mjs.map +0 -1
  176. package/dist/stepper-Cb4_9D2h.js +0 -2
  177. package/dist/stepper-Cb4_9D2h.js.map +0 -1
  178. package/dist/text-field-BMDf8j-K.mjs +0 -185
  179. package/dist/text-field-BMDf8j-K.mjs.map +0 -1
  180. package/dist/text-field-CiLEj0Fq.js +0 -2
  181. package/dist/text-field-CiLEj0Fq.js.map +0 -1
@@ -0,0 +1,94 @@
1
+ export type DropdownOption = {
2
+ label: string;
3
+ id: string;
4
+ value?: string;
5
+ disabled?: boolean;
6
+ };
7
+ /** Shared props across all variants */
8
+ type DropdownBaseProps = {
9
+ /** Unique id used to prefix all sub-element ids. */
10
+ id?: string;
11
+ /** Visible label rendered above the field. */
12
+ label?: string;
13
+ /** Accessible label for the listbox popup (required for select/combobox). */
14
+ listboxLabel?: string;
15
+ /** Placeholder text shown when no value is selected. */
16
+ placeholder?: string;
17
+ /** Helper text rendered below the field. */
18
+ helperText?: string;
19
+ /** Error text rendered below the field. Puts the field in an error state. */
20
+ errorText?: string;
21
+ /** Render the field with a valid (success) appearance. */
22
+ valid?: boolean;
23
+ /** Show a loading spinner inside the field. */
24
+ loading?: boolean;
25
+ /** Render on dark backgrounds. */
26
+ negative?: boolean;
27
+ /** Mark the field as required. */
28
+ required?: boolean;
29
+ /** Disable the field. */
30
+ disabled?: boolean;
31
+ /** Make the field read-only. */
32
+ readOnly?: boolean;
33
+ className?: string;
34
+ ["data-testid"]?: string;
35
+ };
36
+ export type SelectProps = DropdownBaseProps & {
37
+ combobox?: false;
38
+ options: DropdownOption[];
39
+ /** Enable multi-select mode. */
40
+ multiple?: boolean;
41
+ /** Currently selected option (single-select, controlled). */
42
+ selectedOption?: DropdownOption;
43
+ /** Currently selected options (multi-select, controlled). */
44
+ selectedOptions?: DropdownOption[];
45
+ /** Fired when an option is selected or deselected. */
46
+ onSelect?: (option: DropdownOption | undefined, selectedOptions: DropdownOption[]) => void;
47
+ /** Open the listbox when the trigger receives focus. */
48
+ openOnFocus?: boolean;
49
+ /** Maximum height of the listbox popup. */
50
+ listboxMaxHeight?: string | number;
51
+ /** Not applicable. */
52
+ filterOption?: never;
53
+ /** Not applicable. */
54
+ onInputChange?: never;
55
+ /** Not applicable. */
56
+ inputValue?: never;
57
+ /** Not applicable. */
58
+ defaultInputValue?: never;
59
+ /** Not applicable. */
60
+ noOptionsText?: never;
61
+ /** Not applicable. */
62
+ highlightFirstOption?: never;
63
+ };
64
+ export type ComboboxProps = DropdownBaseProps & {
65
+ combobox: true;
66
+ options: DropdownOption[];
67
+ /** Enable multi-select mode. */
68
+ multiple?: boolean;
69
+ /** Currently selected option (single-select, controlled). */
70
+ selectedOption?: DropdownOption;
71
+ /** Currently selected options (multi-select, controlled). */
72
+ selectedOptions?: DropdownOption[];
73
+ /** Fired when an option is selected or deselected. */
74
+ onSelect?: (option: DropdownOption | undefined, selectedOptions: DropdownOption[]) => void;
75
+ /** Custom filter for autocomplete results. */
76
+ filterOption?: (inputValue: string | undefined, option: DropdownOption) => boolean;
77
+ /** Controlled input value. */
78
+ inputValue?: string;
79
+ /** Default input value (uncontrolled). */
80
+ defaultInputValue?: string;
81
+ /** Fired when the text-input value changes. */
82
+ onInputChange?: (value: string) => void;
83
+ /** Text shown when filtering yields no results. */
84
+ noOptionsText?: React.ReactNode;
85
+ /** Highlight the first option automatically. */
86
+ highlightFirstOption?: boolean;
87
+ /** Open the listbox when the input receives focus. */
88
+ openOnFocus?: boolean;
89
+ /** Maximum height of the listbox popup. */
90
+ listboxMaxHeight?: string | number;
91
+ };
92
+ export type DropdownProps = SelectProps | ComboboxProps;
93
+ export {};
94
+ //# sourceMappingURL=dropdown.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown.types.d.ts","sourceRoot":"","sources":["../../../../../../components/dropdown/src/dropdown.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { CSSProperties } from 'react';
2
+ import { ListboxItemProps, ListboxProps } from '../../listbox/src/listbox';
3
+ import { DropdownOption } from './dropdown.types';
4
+ export type UseDropdownParams = {
5
+ id: string;
6
+ variant: "select" | "combobox";
7
+ options: DropdownOption[];
8
+ listboxLabel: string;
9
+ multiple?: boolean;
10
+ selectedOption?: DropdownOption;
11
+ selectedOptions?: DropdownOption[];
12
+ onSelect?: (option: DropdownOption | undefined, selectedOptions: DropdownOption[]) => void;
13
+ filterOption?: (inputValue: string | undefined, option: DropdownOption) => boolean;
14
+ inputValue?: string;
15
+ defaultInputValue?: string;
16
+ onInputChange?: (value: string) => void;
17
+ noOptionsText?: React.ReactNode;
18
+ highlightFirstOption?: boolean;
19
+ openOnFocus?: boolean;
20
+ listboxMaxHeight?: string | number;
21
+ disabled?: boolean;
22
+ readOnly?: boolean;
23
+ ["data-testid"]?: string;
24
+ };
25
+ export type UseDropdownReturn = {
26
+ rootRef: React.RefObject<HTMLDivElement | null>;
27
+ triggerProps: Record<string, unknown>;
28
+ inputProps: Record<string, unknown> | null;
29
+ listboxProps: ListboxProps;
30
+ getListboxItemProps: (option: DropdownOption, index: number) => ListboxItemProps;
31
+ optionsToShow: DropdownOption[];
32
+ isOpen: boolean;
33
+ highlightedOption: DropdownOption | undefined;
34
+ selectedItems: DropdownOption[];
35
+ anchorStyle: CSSProperties;
36
+ };
37
+ export declare const useDropdown: ({ id, variant, options, listboxLabel, multiple, selectedOption, selectedOptions, onSelect, filterOption, inputValue: controlledInputValue, defaultInputValue, onInputChange, noOptionsText, highlightFirstOption, openOnFocus, listboxMaxHeight, disabled, readOnly, ["data-testid"]: dataTestId, }: UseDropdownParams) => UseDropdownReturn;
38
+ //# sourceMappingURL=useDropdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDropdown.d.ts","sourceRoot":"","sources":["../../../../../../components/dropdown/src/useDropdown.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAQvD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC/B,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IAG3F,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC;IACnF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAG/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAIF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAChD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3C,YAAY,EAAE,YAAY,CAAC;IAC3B,mBAAmB,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,KAAK,gBAAgB,CAAC;IACjF,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,iBAAiB,EAAE,cAAc,GAAG,SAAS,CAAC;IAC9C,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,WAAW,EAAE,aAAa,CAAC;CAC5B,CAAC;AAIF,eAAO,MAAM,WAAW,GAAI,qSAoBzB,iBAAiB,KAAG,iBAiTtB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { DropdownOption } from './dropdown.types';
2
+ export declare const getFilteredOptions: ({ options, searchTerm, filterOption, selectedOption, multiple, }: {
3
+ options: DropdownOption[];
4
+ searchTerm: string | undefined;
5
+ filterOption?: (inputValue: string | undefined, option: DropdownOption) => boolean;
6
+ selectedOption?: DropdownOption;
7
+ multiple: boolean;
8
+ }) => DropdownOption[];
9
+ //# sourceMappingURL=useDropdownFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDropdownFilter.d.ts","sourceRoot":"","sources":["../../../../../../components/dropdown/src/useDropdownFilter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAiBvD,eAAO,MAAM,kBAAkB,GAAI,kEAMhC;IACD,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC;IACnF,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;CACnB,KAAG,cAAc,EAKjB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { DropdownOption } from './dropdown.types';
2
+ export type HighlightedOption = DropdownOption & {
3
+ isSetByClickEvent?: boolean;
4
+ };
5
+ export type UseDropdownHighlightParams = {
6
+ options: DropdownOption[];
7
+ highlightFirstOption: boolean;
8
+ };
9
+ export declare const useDropdownHighlight: ({ options, highlightFirstOption, }: UseDropdownHighlightParams) => {
10
+ highlightedOption: HighlightedOption | undefined;
11
+ listboxRef: import('react').RefObject<HTMLUListElement | null>;
12
+ optionRefs: import('react').RefObject<Record<string, HTMLLIElement>>;
13
+ findNextOption: (direction: "ArrowUp" | "ArrowDown", optionsToShow: DropdownOption[]) => DropdownOption | undefined;
14
+ highlightOption: (option: DropdownOption | undefined) => void;
15
+ highlightByClick: (option: DropdownOption) => void;
16
+ highlightSelected: (option: DropdownOption, eventType: "CLICK" | "KEYBOARD") => void;
17
+ resetHighlight: () => void;
18
+ };
19
+ //# sourceMappingURL=useDropdownHighlight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDropdownHighlight.d.ts","sourceRoot":"","sources":["../../../../../../components/dropdown/src/useDropdownHighlight.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEjF,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,oCAGlC,0BAA0B;;;;gCAoBd,SAAS,GAAG,WAAW,iBACnB,cAAc,EAAE,KAC9B,cAAc,GAAG,SAAS;8BAcI,cAAc,GAAG,SAAS;+BAKzB,cAAc;gCAMb,cAAc,aAAa,OAAO,GAAG,UAAU;;CAsBnF,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { DropdownOption } from './dropdown.types';
2
+ export type UseDropdownInputParams = {
3
+ controlledInputValue?: string;
4
+ defaultInputValue?: string;
5
+ selectedOption?: DropdownOption;
6
+ onInputChange?: (value: string) => void;
7
+ };
8
+ export declare const useDropdownInput: ({ controlledInputValue, defaultInputValue, selectedOption, onInputChange, }: UseDropdownInputParams) => {
9
+ displayInputValue: string;
10
+ populateInputField: (value: string) => void;
11
+ };
12
+ //# sourceMappingURL=useDropdownInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDropdownInput.d.ts","sourceRoot":"","sources":["../../../../../../components/dropdown/src/useDropdownInput.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,MAAM,sBAAsB,GAAG;IACnC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,6EAK9B,sBAAsB;;gCAUY,MAAM;CAS1C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const useOnClickOutside: (element: HTMLElement | null, callback: () => void) => void;
2
+ //# sourceMappingURL=useOnClickOutside.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOnClickOutside.d.ts","sourceRoot":"","sources":["../../../../../../components/dropdown/src/useOnClickOutside.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,GAAI,SAAS,WAAW,GAAG,IAAI,EAAE,UAAU,MAAM,IAAI,SAgBlF,CAAC"}
@@ -7,6 +7,8 @@ export type ListboxItemProps = Omit<BaseProps<"li">, "role"> & {
7
7
  selected?: boolean;
8
8
  disabled?: boolean;
9
9
  noninteractive?: boolean;
10
+ /** When true, hides the built-in checkmark icon while preserving `aria-selected`. */
11
+ hideSelectedIcon?: boolean;
10
12
  };
11
13
  export declare const ListboxItem: React.ForwardRefExoticComponent<Omit<ListboxItemProps, "ref"> & React.RefAttributes<HTMLLIElement>>;
12
14
  export declare const isListboxItem: (child?: ReactNode) => child is ReactElement<ListboxItemProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"listbox-item.d.ts","sourceRoot":"","sources":["../../../../../../components/listbox/src/listbox-item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA8B,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAWtD,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,GAAG;IAC7D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,WAAW,qGAiCtB,CAAC;AAEH,eAAO,MAAM,aAAa,GAAI,QAAQ,SAAS,KAAG,KAAK,IAAI,YAAY,CAAC,gBAAgB,CAChB,CAAC"}
1
+ {"version":3,"file":"listbox-item.d.ts","sourceRoot":"","sources":["../../../../../../components/listbox/src/listbox-item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA8B,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAWtD,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,GAAG;IAC7D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,WAAW,qGAoCtB,CAAC;AAEH,eAAO,MAAM,aAAa,GAAI,QAAQ,SAAS,KAAG,KAAK,IAAI,YAAY,CAAC,gBAAgB,CAChB,CAAC"}
@@ -3,12 +3,13 @@ type variant = "primary" | "secondary";
3
3
  type buttonType = "increment" | "decrement";
4
4
  type QuantitySelectorButtonProps = {
5
5
  ["data-testid"]?: string;
6
+ ["aria-label"]?: string;
6
7
  disabled?: boolean;
7
8
  hasGap: boolean;
8
9
  variant: variant;
9
10
  buttonType: buttonType;
10
11
  onClick: (buttonType: buttonType) => void;
11
12
  };
12
- export declare const QuantitySelectorButton: ({ ["data-testid"]: dataTestid, disabled, hasGap, variant, buttonType, onClick, }: QuantitySelectorButtonProps) => React.JSX.Element;
13
+ export declare const QuantitySelectorButton: ({ ["data-testid"]: dataTestid, ["aria-label"]: ariaLabel, disabled, hasGap, variant, buttonType, onClick, }: QuantitySelectorButtonProps) => React.JSX.Element;
13
14
  export {};
14
15
  //# sourceMappingURL=quantity-selector-button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"quantity-selector-button.d.ts","sourceRoot":"","sources":["../../../../../../components/quantity-selector/src/quantity-selector-button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,KAAK,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;AACvC,KAAK,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC;AAE5C,KAAK,2BAA2B,GAAG;IACjC,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;CAC3C,CAAC;AAKF,eAAO,MAAM,sBAAsB,GAAI,kFAOpC,2BAA2B,sBAuB7B,CAAC"}
1
+ {"version":3,"file":"quantity-selector-button.d.ts","sourceRoot":"","sources":["../../../../../../components/quantity-selector/src/quantity-selector-button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,KAAK,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;AACvC,KAAK,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC;AAE5C,KAAK,2BAA2B,GAAG;IACjC,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC;IACzB,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;CAC3C,CAAC;AAKF,eAAO,MAAM,sBAAsB,GAAI,6GAQpC,2BAA2B,sBAwB7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"quantity-selector.d.ts","sourceRoot":"","sources":["../../../../../../components/quantity-selector/src/quantity-selector.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAUtD,eAAO,MAAM,wBAAwB,oCAAqC,CAAC;AAC3E,eAAO,MAAM,8BAA8B,mCAAoC,CAAC;AAEhF,KAAK,OAAO,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,KAAK,aAAa,GAAG,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG;IAClF,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAIF,eAAO,MAAM,gBAAgB,6GAsJ5B,CAAC"}
1
+ {"version":3,"file":"quantity-selector.d.ts","sourceRoot":"","sources":["../../../../../../components/quantity-selector/src/quantity-selector.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAUtD,eAAO,MAAM,wBAAwB,oCAAqC,CAAC;AAC3E,eAAO,MAAM,8BAA8B,mCAAoC,CAAC;AAEhF,KAAK,OAAO,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,KAAK,aAAa,GAAG,CAAC,OAAO,8BAA8B,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG;IAClF,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAIF,eAAO,MAAM,gBAAgB,6GAuJ5B,CAAC"}
@@ -0,0 +1,73 @@
1
+ import { default as React } from 'react';
2
+ import { AutocompleteOption } from '@purpur/use-autocomplete';
3
+ import { SearchFieldAutocompleteEnhancements, SearchFieldBaseProps } from './search-field-base';
4
+ export type SearchFieldAutocompleteProps = SearchFieldBaseProps & Extract<SearchFieldAutocompleteEnhancements, {
5
+ suggestions: AutocompleteOption[];
6
+ }>;
7
+ export declare const SearchFieldAutocomplete: React.ForwardRefExoticComponent<(Omit<{
8
+ "data-testid"?: string;
9
+ clearButtonAriaLabel: string;
10
+ disabled?: boolean;
11
+ iconOnlySearchButton?: boolean;
12
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
13
+ onClear: () => void;
14
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
15
+ searchButtonLabel?: string;
16
+ variant: "button-attached" | "no-button";
17
+ formRef?: React.RefObject<HTMLFormElement>;
18
+ } & {
19
+ iconOnlySearchButton?: false;
20
+ searchButtonLabel: string;
21
+ variant: "button-attached";
22
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
23
+ onSelectSuggestion?: (option: AutocompleteOption) => void;
24
+ openSuggestionsOnFocus?: boolean;
25
+ suggestionsMaxHeight?: string | number;
26
+ } & {
27
+ suggestions: AutocompleteOption[];
28
+ suggestionsLabel: string;
29
+ }, "ref"> | Omit<{
30
+ "data-testid"?: string;
31
+ clearButtonAriaLabel: string;
32
+ disabled?: boolean;
33
+ iconOnlySearchButton?: boolean;
34
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
35
+ onClear: () => void;
36
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
37
+ searchButtonLabel?: string;
38
+ variant: "button-attached" | "no-button";
39
+ formRef?: React.RefObject<HTMLFormElement>;
40
+ } & {
41
+ iconOnlySearchButton: true;
42
+ searchButtonLabel: string;
43
+ variant: "button-attached";
44
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
45
+ onSelectSuggestion?: (option: AutocompleteOption) => void;
46
+ openSuggestionsOnFocus?: boolean;
47
+ suggestionsMaxHeight?: string | number;
48
+ } & {
49
+ suggestions: AutocompleteOption[];
50
+ suggestionsLabel: string;
51
+ }, "ref"> | Omit<{
52
+ "data-testid"?: string;
53
+ clearButtonAriaLabel: string;
54
+ disabled?: boolean;
55
+ iconOnlySearchButton?: boolean;
56
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
57
+ onClear: () => void;
58
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
59
+ searchButtonLabel?: string;
60
+ variant: "button-attached" | "no-button";
61
+ formRef?: React.RefObject<HTMLFormElement>;
62
+ } & {
63
+ searchButtonLabel?: never;
64
+ variant: "no-button";
65
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
66
+ onSelectSuggestion?: (option: AutocompleteOption) => void;
67
+ openSuggestionsOnFocus?: boolean;
68
+ suggestionsMaxHeight?: string | number;
69
+ } & {
70
+ suggestions: AutocompleteOption[];
71
+ suggestionsLabel: string;
72
+ }, "ref">) & React.RefAttributes<HTMLInputElement>>;
73
+ //# sourceMappingURL=search-field-autocomplete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-field-autocomplete.d.ts","sourceRoot":"","sources":["../../../../../../components/search-field/src/search-field-autocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAEjD,OAAO,EAAE,KAAK,kBAAkB,EAAmB,MAAM,0BAA0B,CAAC;AAIpF,OAAO,EACL,KAAK,mCAAmC,EAExC,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAK7B,MAAM,MAAM,4BAA4B,GAAG,oBAAoB,GAC7D,OAAO,CAAC,mCAAmC,EAAE;IAAE,WAAW,EAAE,kBAAkB,EAAE,CAAA;CAAE,CAAC,CAAC;AAEtF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDAqEnC,CAAC"}
@@ -0,0 +1,97 @@
1
+ import { default as React, ChangeEvent, CSSProperties, FormEvent, RefObject } from 'react';
2
+ import { TextFieldProps } from '../../text-field/src/text-field';
3
+ import { AutocompleteOption } from '@purpur/use-autocomplete';
4
+ export declare const searchFieldVariants: readonly ["button-attached", "no-button"];
5
+ type Variant = (typeof searchFieldVariants)[number];
6
+ type DefaultProps = {
7
+ ["data-testid"]?: string;
8
+ /**
9
+ * An accessible label for the clear button.
10
+ * */
11
+ clearButtonAriaLabel: string;
12
+ /**
13
+ * Disables both the input field and submit button if `true`.
14
+ * */
15
+ disabled?: boolean;
16
+ /**
17
+ * Will display only a search icon in the search button if `true`.
18
+ * */
19
+ iconOnlySearchButton?: boolean;
20
+ /**
21
+ * Event handler called when the value of the search field changes.
22
+ * */
23
+ onChange?: (e: ChangeEvent<HTMLInputElement>) => void;
24
+ /**
25
+ * Event handler called when the clear button is clicked.
26
+ * */
27
+ onClear: () => void;
28
+ /**
29
+ * Event handler called when the search form is submitted.
30
+ * */
31
+ onSearch?: (e: FormEvent<HTMLFormElement>) => void;
32
+ /**
33
+ * The label text (or `aria-label` if `iconOnlySearchButton` is `true`) of the search button.
34
+ * */
35
+ searchButtonLabel?: string;
36
+ variant: Variant;
37
+ formRef?: RefObject<HTMLFormElement>;
38
+ };
39
+ type TextSearchButton = {
40
+ iconOnlySearchButton?: false;
41
+ searchButtonLabel: string;
42
+ variant: "button-attached";
43
+ };
44
+ type IconOnlySearchButton = {
45
+ iconOnlySearchButton: true;
46
+ searchButtonLabel: string;
47
+ variant: "button-attached";
48
+ };
49
+ type NoButton = {
50
+ searchButtonLabel?: never;
51
+ variant: "no-button";
52
+ };
53
+ export type SearchFieldBaseProps = DefaultProps & (TextSearchButton | IconOnlySearchButton | NoButton) & Omit<TextFieldProps, "startAdornment" | "endAdornment" | "afterField" | "onChange" | "variant">;
54
+ type SearchFieldAutocompleteSharedProps = {
55
+ /**
56
+ * Called when the user selects a suggestion.
57
+ */
58
+ onSelectSuggestion?: (option: AutocompleteOption) => void;
59
+ /**
60
+ * Open the suggestions listbox when the input receives focus.
61
+ */
62
+ openSuggestionsOnFocus?: boolean;
63
+ /**
64
+ * Maximum height of the suggestions listbox. A number is interpreted as px.
65
+ */
66
+ suggestionsMaxHeight?: string | number;
67
+ };
68
+ type SearchFieldWithoutAutocomplete = SearchFieldAutocompleteSharedProps & {
69
+ suggestions?: never;
70
+ suggestionsLabel?: never;
71
+ };
72
+ type SearchFieldWithAutocomplete = SearchFieldAutocompleteSharedProps & {
73
+ /**
74
+ * The list of suggestions to display in a listbox below the field.
75
+ * No filtering is applied — pass the already-correct (pre-filtered) list.
76
+ * If autocomplete should stay enabled while there are temporarily no matches,
77
+ * pass an empty array instead of `undefined` or `null`. Changing this prop
78
+ * from an absent value to an array switches between the regular and
79
+ * autocomplete variants, which causes a re-render, drops input focus, and
80
+ * hides the listbox.
81
+ */
82
+ suggestions: AutocompleteOption[];
83
+ /**
84
+ * Accessible label for the suggestions listbox.
85
+ */
86
+ suggestionsLabel: string;
87
+ };
88
+ export type SearchFieldAutocompleteEnhancements = SearchFieldWithoutAutocomplete | SearchFieldWithAutocomplete;
89
+ export declare const SearchFieldBase: React.ForwardRefExoticComponent<(Omit<DefaultProps & TextSearchButton & Omit<TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
90
+ wrapperStyle?: CSSProperties;
91
+ }, "ref"> | Omit<DefaultProps & IconOnlySearchButton & Omit<TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
92
+ wrapperStyle?: CSSProperties;
93
+ }, "ref"> | Omit<DefaultProps & NoButton & Omit<TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
94
+ wrapperStyle?: CSSProperties;
95
+ }, "ref">) & React.RefAttributes<HTMLInputElement>>;
96
+ export {};
97
+ //# sourceMappingURL=search-field-base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-field-base.d.ts","sourceRoot":"","sources":["../../../../../../components/search-field/src/search-field-base.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,SAAS,EAEd,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAMnE,eAAO,MAAM,mBAAmB,2CAA4C,CAAC;AAE7E,KAAK,OAAO,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD,KAAK,YAAY,GAAG;IAClB,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC;IACzB;;SAEK;IACL,oBAAoB,EAAE,MAAM,CAAC;IAC7B;;SAEK;IACL,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;SAEK;IACL,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;SAEK;IACL,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACtD;;SAEK;IACL,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;SAEK;IACL,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IACnD;;SAEK;IACL,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC;CACtC,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,oBAAoB,CAAC,EAAE,KAAK,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;CAC5B,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,oBAAoB,EAAE,IAAI,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;CAC5B,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,iBAAiB,CAAC,EAAE,KAAK,CAAC;IAC1B,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAC7C,CAAC,gBAAgB,GAAG,oBAAoB,GAAG,QAAQ,CAAC,GACpD,IAAI,CAAC,cAAc,EAAE,gBAAgB,GAAG,cAAc,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;AAMlG,KAAK,kCAAkC,GAAG;IACxC;;OAEG;IACH,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC1D;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxC,CAAC;AAEF,KAAK,8BAA8B,GAAG,kCAAkC,GAAG;IACzE,WAAW,CAAC,EAAE,KAAK,CAAC;IACpB,gBAAgB,CAAC,EAAE,KAAK,CAAC;CAC1B,CAAC;AAEF,KAAK,2BAA2B,GAAG,kCAAkC,GAAG;IACtE;;;;;;;;OAQG;IACH,WAAW,EAAE,kBAAkB,EAAE,CAAC;IAClC;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAC3C,8BAA8B,GAC9B,2BAA2B,CAAC;AAKhC,eAAO,MAAM,eAAe;mBA/CX,aAAa;;mBAAb,aAAa;;mBAAb,aAAa;mDAkH7B,CAAC"}
@@ -1,55 +1,137 @@
1
- import { default as React, ChangeEvent, FormEvent, RefObject } from 'react';
2
- import { TextFieldProps } from '../../text-field/src/text-field';
3
- export declare const searchFieldVariants: readonly ["button-attached", "no-button"];
4
- type Variant = (typeof searchFieldVariants)[number];
5
- type DefaultProps = {
6
- ["data-testid"]?: string;
7
- /**
8
- * An accessible label for the clear button.
9
- * */
1
+ import { default as React } from 'react';
2
+ import { SearchFieldAutocompleteEnhancements, SearchFieldBaseProps, searchFieldVariants } from './search-field-base';
3
+ export { searchFieldVariants };
4
+ export type SearchFieldProps = SearchFieldBaseProps & SearchFieldAutocompleteEnhancements;
5
+ export declare const SearchField: React.ForwardRefExoticComponent<(Omit<{
6
+ "data-testid"?: string;
10
7
  clearButtonAriaLabel: string;
11
- /**
12
- * Disables both the input field and submit button if `true`.
13
- * */
14
8
  disabled?: boolean;
15
- /**
16
- * Will display only a search icon in the search button if `true`.
17
- * */
18
9
  iconOnlySearchButton?: boolean;
19
- /**
20
- * Event handler called when the value of the search field changes.
21
- * */
22
- onChange?: (e: ChangeEvent<HTMLInputElement>) => void;
23
- /**
24
- * Event handler called when the clear button is clicked.
25
- * */
10
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
26
11
  onClear: () => void;
27
- /**
28
- * Event handler called when the search form is submitted.
29
- * */
30
- onSearch?: (e: FormEvent<HTMLFormElement>) => void;
31
- /**
32
- * The label text (or `aria-label` if `iconOnlySearchButton` is `true`) of the search button.
33
- * */
12
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
34
13
  searchButtonLabel?: string;
35
- variant: Variant;
36
- formRef?: RefObject<HTMLFormElement>;
37
- };
38
- type TextSearchButton = {
14
+ variant: "button-attached" | "no-button";
15
+ formRef?: React.RefObject<HTMLFormElement>;
16
+ } & {
39
17
  iconOnlySearchButton?: false;
40
18
  searchButtonLabel: string;
41
19
  variant: "button-attached";
42
- };
43
- type IconOnlySearchButton = {
20
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
21
+ onSelectSuggestion?: (option: import('@purpur/use-autocomplete').AutocompleteOption) => void;
22
+ openSuggestionsOnFocus?: boolean;
23
+ suggestionsMaxHeight?: string | number;
24
+ } & {
25
+ suggestions: import('@purpur/use-autocomplete').AutocompleteOption[];
26
+ suggestionsLabel: string;
27
+ }, "ref"> | Omit<{
28
+ "data-testid"?: string;
29
+ clearButtonAriaLabel: string;
30
+ disabled?: boolean;
31
+ iconOnlySearchButton?: boolean;
32
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
33
+ onClear: () => void;
34
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
35
+ searchButtonLabel?: string;
36
+ variant: "button-attached" | "no-button";
37
+ formRef?: React.RefObject<HTMLFormElement>;
38
+ } & {
44
39
  iconOnlySearchButton: true;
45
40
  searchButtonLabel: string;
46
41
  variant: "button-attached";
47
- };
48
- type NoButton = {
42
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
43
+ onSelectSuggestion?: (option: import('@purpur/use-autocomplete').AutocompleteOption) => void;
44
+ openSuggestionsOnFocus?: boolean;
45
+ suggestionsMaxHeight?: string | number;
46
+ } & {
47
+ suggestions: import('@purpur/use-autocomplete').AutocompleteOption[];
48
+ suggestionsLabel: string;
49
+ }, "ref"> | Omit<{
50
+ "data-testid"?: string;
51
+ clearButtonAriaLabel: string;
52
+ disabled?: boolean;
53
+ iconOnlySearchButton?: boolean;
54
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
55
+ onClear: () => void;
56
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
57
+ searchButtonLabel?: string;
58
+ variant: "button-attached" | "no-button";
59
+ formRef?: React.RefObject<HTMLFormElement>;
60
+ } & {
61
+ searchButtonLabel?: never;
62
+ variant: "no-button";
63
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
64
+ onSelectSuggestion?: (option: import('@purpur/use-autocomplete').AutocompleteOption) => void;
65
+ openSuggestionsOnFocus?: boolean;
66
+ suggestionsMaxHeight?: string | number;
67
+ } & {
68
+ suggestions: import('@purpur/use-autocomplete').AutocompleteOption[];
69
+ suggestionsLabel: string;
70
+ }, "ref"> | Omit<{
71
+ "data-testid"?: string;
72
+ clearButtonAriaLabel: string;
73
+ disabled?: boolean;
74
+ iconOnlySearchButton?: boolean;
75
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
76
+ onClear: () => void;
77
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
78
+ searchButtonLabel?: string;
79
+ variant: "button-attached" | "no-button";
80
+ formRef?: React.RefObject<HTMLFormElement>;
81
+ } & {
82
+ iconOnlySearchButton?: false;
83
+ searchButtonLabel: string;
84
+ variant: "button-attached";
85
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
86
+ onSelectSuggestion?: (option: import('@purpur/use-autocomplete').AutocompleteOption) => void;
87
+ openSuggestionsOnFocus?: boolean;
88
+ suggestionsMaxHeight?: string | number;
89
+ } & {
90
+ suggestions?: never;
91
+ suggestionsLabel?: never;
92
+ }, "ref"> | Omit<{
93
+ "data-testid"?: string;
94
+ clearButtonAriaLabel: string;
95
+ disabled?: boolean;
96
+ iconOnlySearchButton?: boolean;
97
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
98
+ onClear: () => void;
99
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
100
+ searchButtonLabel?: string;
101
+ variant: "button-attached" | "no-button";
102
+ formRef?: React.RefObject<HTMLFormElement>;
103
+ } & {
104
+ iconOnlySearchButton: true;
105
+ searchButtonLabel: string;
106
+ variant: "button-attached";
107
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
108
+ onSelectSuggestion?: (option: import('@purpur/use-autocomplete').AutocompleteOption) => void;
109
+ openSuggestionsOnFocus?: boolean;
110
+ suggestionsMaxHeight?: string | number;
111
+ } & {
112
+ suggestions?: never;
113
+ suggestionsLabel?: never;
114
+ }, "ref"> | Omit<{
115
+ "data-testid"?: string;
116
+ clearButtonAriaLabel: string;
117
+ disabled?: boolean;
118
+ iconOnlySearchButton?: boolean;
119
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
120
+ onClear: () => void;
121
+ onSearch?: (e: React.FormEvent<HTMLFormElement>) => void;
122
+ searchButtonLabel?: string;
123
+ variant: "button-attached" | "no-button";
124
+ formRef?: React.RefObject<HTMLFormElement>;
125
+ } & {
49
126
  searchButtonLabel?: never;
50
127
  variant: "no-button";
51
- };
52
- export type SearchFieldProps = DefaultProps & (TextSearchButton | IconOnlySearchButton | NoButton) & Omit<TextFieldProps, "startAdornment" | "endAdornment" | "afterField" | "onChange">;
53
- export declare const SearchField: React.ForwardRefExoticComponent<(Omit<DefaultProps & TextSearchButton & Omit<TextFieldProps, "onChange" | "afterField" | "endAdornment" | "startAdornment">, "ref"> | Omit<DefaultProps & IconOnlySearchButton & Omit<TextFieldProps, "onChange" | "afterField" | "endAdornment" | "startAdornment">, "ref"> | Omit<DefaultProps & NoButton & Omit<TextFieldProps, "onChange" | "afterField" | "endAdornment" | "startAdornment">, "ref">) & React.RefAttributes<HTMLInputElement>>;
54
- export {};
128
+ } & Omit<import('../../text-field/src/text-field').TextFieldProps, "onChange" | "variant" | "afterField" | "endAdornment" | "startAdornment"> & {
129
+ onSelectSuggestion?: (option: import('@purpur/use-autocomplete').AutocompleteOption) => void;
130
+ openSuggestionsOnFocus?: boolean;
131
+ suggestionsMaxHeight?: string | number;
132
+ } & {
133
+ suggestions?: never;
134
+ suggestionsLabel?: never;
135
+ }, "ref">) & React.RefAttributes<HTMLInputElement>>;
136
+ export { SearchFieldAutocomplete, type SearchFieldAutocompleteProps, } from './search-field-autocomplete';
55
137
  //# sourceMappingURL=search-field.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-field.d.ts","sourceRoot":"","sources":["../../../../../../components/search-field/src/search-field.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAc,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE5F,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAMpE,eAAO,MAAM,mBAAmB,2CAA4C,CAAC;AAE7E,KAAK,OAAO,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD,KAAK,YAAY,GAAG;IAClB,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC;IACzB;;SAEK;IACL,oBAAoB,EAAE,MAAM,CAAC;IAC7B;;SAEK;IACL,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;SAEK;IACL,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;SAEK;IACL,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACtD;;SAEK;IACL,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;SAEK;IACL,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IACnD;;SAEK;IACL,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC;CACtC,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,oBAAoB,CAAC,EAAE,KAAK,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;CAC5B,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,oBAAoB,EAAE,IAAI,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;CAC5B,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,iBAAiB,CAAC,EAAE,KAAK,CAAC;IAC1B,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,YAAY,GACzC,CAAC,gBAAgB,GAAG,oBAAoB,GAAG,QAAQ,CAAC,GACpD,IAAI,CAAC,cAAc,EAAE,gBAAgB,GAAG,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC,CAAC;AAKtF,eAAO,MAAM,WAAW,qdAiEvB,CAAC"}
1
+ {"version":3,"file":"search-field.d.ts","sourceRoot":"","sources":["../../../../../../components/search-field/src/search-field.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAG1C,OAAO,EACL,KAAK,mCAAmC,EAExC,KAAK,oBAAoB,EACzB,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAE/B,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG,mCAAmC,CAAC;AAE1F,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDAMtB,CAAC;AAIH,OAAO,EACL,uBAAuB,EACvB,KAAK,4BAA4B,GAClC,MAAM,6BAA6B,CAAC"}