@proyecto-viviana/solidaria-components 0.3.2 → 0.4.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.
- package/dist/ActionBar.js +184 -0
- package/dist/ActionBar.js.map +1 -0
- package/dist/ActionBar.jsx +128 -0
- package/dist/ActionBar.jsx.map +1 -0
- package/dist/ActionGroup.js +179 -0
- package/dist/ActionGroup.js.map +1 -0
- package/dist/ActionGroup.jsx +129 -0
- package/dist/ActionGroup.jsx.map +1 -0
- package/dist/Alert.js +111 -0
- package/dist/Alert.js.map +1 -0
- package/dist/Alert.jsx +82 -0
- package/dist/Alert.jsx.map +1 -0
- package/dist/Autocomplete.js +130 -0
- package/dist/Autocomplete.js.map +1 -0
- package/dist/Autocomplete.jsx +116 -0
- package/dist/Autocomplete.jsx.map +1 -0
- package/dist/Breadcrumbs.d.ts.map +1 -1
- package/dist/Breadcrumbs.js +334 -0
- package/dist/Breadcrumbs.js.map +1 -0
- package/dist/Breadcrumbs.jsx +266 -0
- package/dist/Breadcrumbs.jsx.map +1 -0
- package/dist/Button.d.ts.map +1 -1
- package/dist/Button.js +348 -0
- package/dist/Button.js.map +1 -0
- package/dist/Button.jsx +314 -0
- package/dist/Button.jsx.map +1 -0
- package/dist/Calendar.d.ts +4 -4
- package/dist/Calendar.d.ts.map +1 -1
- package/dist/Calendar.js +538 -0
- package/dist/Calendar.js.map +1 -0
- package/dist/Calendar.jsx +333 -0
- package/dist/Calendar.jsx.map +1 -0
- package/dist/CalendarPicker.d.ts +33 -0
- package/dist/CalendarPicker.d.ts.map +1 -0
- package/dist/CalendarPicker.js +44 -0
- package/dist/CalendarPicker.js.map +1 -0
- package/dist/CalendarPicker.jsx +44 -0
- package/dist/CalendarPicker.jsx.map +1 -0
- package/dist/Checkbox.d.ts +83 -4
- package/dist/Checkbox.d.ts.map +1 -1
- package/dist/Checkbox.js +923 -0
- package/dist/Checkbox.js.map +1 -0
- package/dist/Checkbox.jsx +707 -0
- package/dist/Checkbox.jsx.map +1 -0
- package/dist/Collection.d.ts.map +1 -1
- package/dist/Collection.js +202 -0
- package/dist/Collection.js.map +1 -0
- package/dist/Collection.jsx +152 -0
- package/dist/Collection.jsx.map +1 -0
- package/dist/Color.d.ts.map +1 -1
- package/dist/Color.js +1720 -0
- package/dist/Color.js.map +1 -0
- package/dist/Color.jsx +1344 -0
- package/dist/Color.jsx.map +1 -0
- package/dist/ColorEditor.js +208 -0
- package/dist/ColorEditor.js.map +1 -0
- package/dist/ColorEditor.jsx +120 -0
- package/dist/ColorEditor.jsx.map +1 -0
- package/dist/ComboBox.d.ts +4 -4
- package/dist/ComboBox.d.ts.map +1 -1
- package/dist/ComboBox.js +992 -0
- package/dist/ComboBox.js.map +1 -0
- package/dist/ComboBox.jsx +714 -0
- package/dist/ComboBox.jsx.map +1 -0
- package/dist/ContextualHelpTrigger.js +146 -0
- package/dist/ContextualHelpTrigger.js.map +1 -0
- package/dist/ContextualHelpTrigger.jsx +109 -0
- package/dist/ContextualHelpTrigger.jsx.map +1 -0
- package/dist/DateField.d.ts +3 -3
- package/dist/DateField.d.ts.map +1 -1
- package/dist/DateField.js +4 -0
- package/dist/DateField.jsx +4 -0
- package/dist/DateField2.js +499 -0
- package/dist/DateField2.js.map +1 -0
- package/dist/DateField2.jsx +317 -0
- package/dist/DateField2.jsx.map +1 -0
- package/dist/DatePicker.d.ts +4 -4
- package/dist/DatePicker.d.ts.map +1 -1
- package/dist/DatePicker.js +991 -0
- package/dist/DatePicker.js.map +1 -0
- package/dist/DatePicker.jsx +682 -0
- package/dist/DatePicker.jsx.map +1 -0
- package/dist/Dialog.d.ts.map +1 -1
- package/dist/Dialog.js +337 -0
- package/dist/Dialog.js.map +1 -0
- package/dist/Dialog.jsx +192 -0
- package/dist/Dialog.jsx.map +1 -0
- package/dist/Disclosure.d.ts.map +1 -1
- package/dist/Disclosure.js +328 -0
- package/dist/Disclosure.js.map +1 -0
- package/dist/Disclosure.jsx +230 -0
- package/dist/Disclosure.jsx.map +1 -0
- package/dist/DragAndDrop.d.ts.map +1 -1
- package/dist/DragAndDrop.js +176 -0
- package/dist/DragAndDrop.js.map +1 -0
- package/dist/DragAndDrop.jsx +160 -0
- package/dist/DragAndDrop.jsx.map +1 -0
- package/dist/DropZone.d.ts.map +1 -1
- package/dist/DropZone.js +189 -0
- package/dist/DropZone.js.map +1 -0
- package/dist/DropZone.jsx +144 -0
- package/dist/DropZone.jsx.map +1 -0
- package/dist/FieldError.js +66 -0
- package/dist/FieldError.js.map +1 -0
- package/dist/FieldError.jsx +47 -0
- package/dist/FieldError.jsx.map +1 -0
- package/dist/FileTrigger.js +79 -0
- package/dist/FileTrigger.js.map +1 -0
- package/dist/FileTrigger.jsx +49 -0
- package/dist/FileTrigger.jsx.map +1 -0
- package/dist/Focusable.js +70 -0
- package/dist/Focusable.js.map +1 -0
- package/dist/Focusable.jsx +69 -0
- package/dist/Focusable.jsx.map +1 -0
- package/dist/Form.js +99 -0
- package/dist/Form.js.map +1 -0
- package/dist/Form.jsx +73 -0
- package/dist/Form.jsx.map +1 -0
- package/dist/GridList.d.ts +34 -2
- package/dist/GridList.d.ts.map +1 -1
- package/dist/GridList.js +723 -0
- package/dist/GridList.js.map +1 -0
- package/dist/GridList.jsx +552 -0
- package/dist/GridList.jsx.map +1 -0
- package/dist/HiddenTimeInput.js +104 -0
- package/dist/HiddenTimeInput.js.map +1 -0
- package/dist/HiddenTimeInput.jsx +69 -0
- package/dist/HiddenTimeInput.jsx.map +1 -0
- package/dist/Icon.d.ts.map +1 -1
- package/dist/Icon.js +127 -0
- package/dist/Icon.js.map +1 -0
- package/dist/Icon.jsx +72 -0
- package/dist/Icon.jsx.map +1 -0
- package/dist/Keyboard.js +30 -0
- package/dist/Keyboard.js.map +1 -0
- package/dist/Keyboard.jsx +24 -0
- package/dist/Keyboard.jsx.map +1 -0
- package/dist/Landmark.js +134 -0
- package/dist/Landmark.js.map +1 -0
- package/dist/Landmark.jsx +118 -0
- package/dist/Landmark.jsx.map +1 -0
- package/dist/Link.d.ts.map +1 -1
- package/dist/Link.js +219 -0
- package/dist/Link.js.map +1 -0
- package/dist/Link.jsx +189 -0
- package/dist/Link.jsx.map +1 -0
- package/dist/ListBox.d.ts.map +1 -1
- package/dist/ListBox.js +670 -0
- package/dist/ListBox.js.map +1 -0
- package/dist/ListBox.jsx +508 -0
- package/dist/ListBox.jsx.map +1 -0
- package/dist/Menu.d.ts +27 -9
- package/dist/Menu.d.ts.map +1 -1
- package/dist/Menu.js +1254 -0
- package/dist/Menu.js.map +1 -0
- package/dist/Menu.jsx +1042 -0
- package/dist/Menu.jsx.map +1 -0
- package/dist/Meter.d.ts.map +1 -1
- package/dist/Meter.js +123 -0
- package/dist/Meter.js.map +1 -0
- package/dist/Meter.jsx +107 -0
- package/dist/Meter.jsx.map +1 -0
- package/dist/Modal.d.ts.map +1 -1
- package/dist/Modal.js +380 -0
- package/dist/Modal.js.map +1 -0
- package/dist/Modal.jsx +314 -0
- package/dist/Modal.jsx.map +1 -0
- package/dist/NumberField.d.ts +3 -3
- package/dist/NumberField.d.ts.map +1 -1
- package/dist/NumberField.js +573 -0
- package/dist/NumberField.js.map +1 -0
- package/dist/NumberField.jsx +443 -0
- package/dist/NumberField.jsx.map +1 -0
- package/dist/Popover.d.ts +10 -2
- package/dist/Popover.d.ts.map +1 -1
- package/dist/Popover.js +464 -0
- package/dist/Popover.js.map +1 -0
- package/dist/Popover.jsx +333 -0
- package/dist/Popover.jsx.map +1 -0
- package/dist/Pressable.js +69 -0
- package/dist/Pressable.js.map +1 -0
- package/dist/Pressable.jsx +68 -0
- package/dist/Pressable.jsx.map +1 -0
- package/dist/ProgressBar.d.ts.map +1 -1
- package/dist/ProgressBar.js +130 -0
- package/dist/ProgressBar.js.map +1 -0
- package/dist/ProgressBar.jsx +114 -0
- package/dist/ProgressBar.jsx.map +1 -0
- package/dist/RadioGroup.d.ts +82 -4
- package/dist/RadioGroup.d.ts.map +1 -1
- package/dist/RadioGroup.js +931 -0
- package/dist/RadioGroup.js.map +1 -0
- package/dist/RadioGroup.jsx +681 -0
- package/dist/RadioGroup.jsx.map +1 -0
- package/dist/RangeCalendar.d.ts.map +1 -1
- package/dist/RangeCalendar.js +410 -0
- package/dist/RangeCalendar.js.map +1 -0
- package/dist/RangeCalendar.jsx +253 -0
- package/dist/RangeCalendar.jsx.map +1 -0
- package/dist/RouterProvider.js +118 -0
- package/dist/RouterProvider.js.map +1 -0
- package/dist/RouterProvider.jsx +112 -0
- package/dist/RouterProvider.jsx.map +1 -0
- package/dist/SearchField.d.ts +2 -2
- package/dist/SearchField.d.ts.map +1 -1
- package/dist/SearchField.js +643 -0
- package/dist/SearchField.js.map +1 -0
- package/dist/SearchField.jsx +526 -0
- package/dist/SearchField.jsx.map +1 -0
- package/dist/Select.d.ts.map +1 -1
- package/dist/Select.js +1031 -0
- package/dist/Select.js.map +1 -0
- package/dist/Select.jsx +744 -0
- package/dist/Select.jsx.map +1 -0
- package/dist/SelectionIndicator.d.ts.map +1 -1
- package/dist/SelectionIndicator.js +86 -0
- package/dist/SelectionIndicator.js.map +1 -0
- package/dist/SelectionIndicator.jsx +50 -0
- package/dist/SelectionIndicator.jsx.map +1 -0
- package/dist/Separator.js +97 -0
- package/dist/Separator.js.map +1 -0
- package/dist/Separator.jsx +85 -0
- package/dist/Separator.jsx.map +1 -0
- package/dist/SharedElementTransition.d.ts.map +1 -1
- package/dist/SharedElementTransition.js +165 -0
- package/dist/SharedElementTransition.js.map +1 -0
- package/dist/SharedElementTransition.jsx +138 -0
- package/dist/SharedElementTransition.jsx.map +1 -0
- package/dist/Slider.d.ts +33 -1
- package/dist/Slider.d.ts.map +1 -1
- package/dist/Slider.js +515 -0
- package/dist/Slider.js.map +1 -0
- package/dist/Slider.jsx +403 -0
- package/dist/Slider.jsx.map +1 -0
- package/dist/StepList.js +198 -0
- package/dist/StepList.js.map +1 -0
- package/dist/StepList.jsx +141 -0
- package/dist/StepList.jsx.map +1 -0
- package/dist/Switch.d.ts +65 -2
- package/dist/Switch.d.ts.map +1 -1
- package/dist/Switch.js +534 -0
- package/dist/Switch.js.map +1 -0
- package/dist/Switch.jsx +393 -0
- package/dist/Switch.jsx.map +1 -0
- package/dist/Table.d.ts +48 -0
- package/dist/Table.d.ts.map +1 -1
- package/dist/Table.js +1759 -0
- package/dist/Table.js.map +1 -0
- package/dist/Table.jsx +1348 -0
- package/dist/Table.jsx.map +1 -0
- package/dist/Tabs.d.ts +0 -4
- package/dist/Tabs.d.ts.map +1 -1
- package/dist/Tabs.js +595 -0
- package/dist/Tabs.js.map +1 -0
- package/dist/Tabs.jsx +367 -0
- package/dist/Tabs.jsx.map +1 -0
- package/dist/TagGroup.d.ts.map +1 -1
- package/dist/TagGroup.js +378 -0
- package/dist/TagGroup.js.map +1 -0
- package/dist/TagGroup.jsx +270 -0
- package/dist/TagGroup.jsx.map +1 -0
- package/dist/Text.d.ts +18 -6
- package/dist/Text.d.ts.map +1 -1
- package/dist/Text.js +42 -0
- package/dist/Text.js.map +1 -0
- package/dist/Text.jsx +35 -0
- package/dist/Text.jsx.map +1 -0
- package/dist/TextField.d.ts +6 -6
- package/dist/TextField.d.ts.map +1 -1
- package/dist/TextField.js +436 -0
- package/dist/TextField.js.map +1 -0
- package/dist/TextField.jsx +403 -0
- package/dist/TextField.jsx.map +1 -0
- package/dist/TimeField.d.ts +3 -3
- package/dist/TimeField.d.ts.map +1 -1
- package/dist/TimeField.js +372 -0
- package/dist/TimeField.js.map +1 -0
- package/dist/TimeField.jsx +224 -0
- package/dist/TimeField.jsx.map +1 -0
- package/dist/Toast.d.ts +14 -0
- package/dist/Toast.d.ts.map +1 -1
- package/dist/Toast.js +551 -0
- package/dist/Toast.js.map +1 -0
- package/dist/Toast.jsx +361 -0
- package/dist/Toast.jsx.map +1 -0
- package/dist/ToggleButton.d.ts.map +1 -1
- package/dist/ToggleButton.js +123 -0
- package/dist/ToggleButton.js.map +1 -0
- package/dist/ToggleButton.jsx +88 -0
- package/dist/ToggleButton.jsx.map +1 -0
- package/dist/ToggleButtonGroup.d.ts.map +1 -1
- package/dist/ToggleButtonGroup.js +114 -0
- package/dist/ToggleButtonGroup.js.map +1 -0
- package/dist/ToggleButtonGroup.jsx +85 -0
- package/dist/ToggleButtonGroup.jsx.map +1 -0
- package/dist/Toolbar.js +112 -0
- package/dist/Toolbar.js.map +1 -0
- package/dist/Toolbar.jsx +92 -0
- package/dist/Toolbar.jsx.map +1 -0
- package/dist/Tooltip.d.ts.map +1 -1
- package/dist/Tooltip.js +539 -0
- package/dist/Tooltip.js.map +1 -0
- package/dist/Tooltip.jsx +465 -0
- package/dist/Tooltip.jsx.map +1 -0
- package/dist/Tree.d.ts +14 -2
- package/dist/Tree.d.ts.map +1 -1
- package/dist/Tree.js +1424 -0
- package/dist/Tree.js.map +1 -0
- package/dist/Tree.jsx +1172 -0
- package/dist/Tree.jsx.map +1 -0
- package/dist/Virtualizer.d.ts +16 -2
- package/dist/Virtualizer.d.ts.map +1 -1
- package/dist/Virtualizer.js +2 -0
- package/dist/Virtualizer.jsx +2 -0
- package/dist/Virtualizer2.js +751 -0
- package/dist/Virtualizer2.js.map +1 -0
- package/dist/Virtualizer2.jsx +730 -0
- package/dist/Virtualizer2.jsx.map +1 -0
- package/dist/VirtualizerLayouts.d.ts +18 -0
- package/dist/VirtualizerLayouts.d.ts.map +1 -1
- package/dist/VisuallyHidden.js +42 -0
- package/dist/VisuallyHidden.js.map +1 -0
- package/dist/VisuallyHidden.jsx +35 -0
- package/dist/VisuallyHidden.jsx.map +1 -0
- package/dist/contexts.js +33 -0
- package/dist/contexts.js.map +1 -0
- package/dist/contexts.jsx +33 -0
- package/dist/contexts.jsx.map +1 -0
- package/dist/index.d.ts +7 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +70 -23932
- package/dist/index.jsx +70 -18337
- package/dist/useDragAndDrop.js +2 -0
- package/dist/useDragAndDrop.jsx +2 -0
- package/dist/useDragAndDrop2.js +395 -0
- package/dist/useDragAndDrop2.js.map +1 -0
- package/dist/useDragAndDrop2.jsx +395 -0
- package/dist/useDragAndDrop2.jsx.map +1 -0
- package/dist/utils.d.ts +83 -11
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +285 -0
- package/dist/utils.js.map +1 -0
- package/dist/utils.jsx +277 -0
- package/dist/utils.jsx.map +1 -0
- package/dist/virtualizer/Layout.js +144 -0
- package/dist/virtualizer/Layout.js.map +1 -0
- package/dist/virtualizer/Layout.jsx +144 -0
- package/dist/virtualizer/Layout.jsx.map +1 -0
- package/package.json +401 -4
- package/src/Breadcrumbs.tsx +3 -1
- package/src/Button.tsx +22 -2
- package/src/Calendar.tsx +27 -10
- package/src/CalendarPicker.tsx +73 -0
- package/src/Checkbox.tsx +539 -3
- package/src/Collection.tsx +9 -3
- package/src/Color.tsx +42 -14
- package/src/ComboBox.tsx +50 -6
- package/src/DateField.tsx +20 -2
- package/src/DatePicker.tsx +57 -5
- package/src/Dialog.tsx +13 -5
- package/src/Disclosure.tsx +3 -1
- package/src/DragAndDrop.tsx +3 -1
- package/src/DropZone.tsx +3 -1
- package/src/GridList.tsx +125 -24
- package/src/Icon.tsx +3 -1
- package/src/Link.tsx +3 -1
- package/src/ListBox.tsx +31 -4
- package/src/Menu.tsx +252 -128
- package/src/Meter.tsx +3 -1
- package/src/Modal.tsx +100 -52
- package/src/NumberField.tsx +51 -8
- package/src/Popover.tsx +40 -10
- package/src/ProgressBar.tsx +3 -1
- package/src/RadioGroup.tsx +468 -4
- package/src/RangeCalendar.tsx +3 -1
- package/src/SearchField.tsx +27 -3
- package/src/Select.tsx +22 -7
- package/src/SelectionIndicator.tsx +3 -1
- package/src/SharedElementTransition.tsx +3 -1
- package/src/Slider.tsx +159 -13
- package/src/Switch.tsx +395 -2
- package/src/Table.tsx +409 -95
- package/src/Tabs.tsx +16 -45
- package/src/TagGroup.tsx +3 -1
- package/src/Text.tsx +31 -10
- package/src/TextField.tsx +43 -5
- package/src/TimeField.tsx +20 -2
- package/src/Toast.tsx +79 -14
- package/src/ToggleButton.tsx +3 -1
- package/src/ToggleButtonGroup.tsx +3 -1
- package/src/Tooltip.tsx +3 -1
- package/src/Tree.tsx +77 -9
- package/src/Virtualizer.tsx +180 -31
- package/src/VirtualizerLayouts.ts +45 -10
- package/src/index.ts +50 -0
- package/src/utils.tsx +243 -27
- package/dist/index.js.map +0 -1
- package/dist/index.jsx.map +0 -1
|
@@ -0,0 +1,643 @@
|
|
|
1
|
+
import { Provider, filterDOMProps, useRenderProps } from "./utils.js";
|
|
2
|
+
import { FieldErrorContext } from "./FieldError.js";
|
|
3
|
+
import { TextContext } from "./Text.js";
|
|
4
|
+
import { FormContext } from "./Form.js";
|
|
5
|
+
import { createComponent, getNextElement, insert, mergeProps, runHydrationEvents, spread, template, use } from "solid-js/web";
|
|
6
|
+
import { Show, createContext, createMemo, onCleanup, onMount, splitProps, useContext } from "solid-js";
|
|
7
|
+
import { createFocusRing, createHover, createPress, createSearchField, mergeProps as mergeProps$2 } from "@proyecto-viviana/solidaria";
|
|
8
|
+
import { VALID_VALIDITY_STATE, createSearchFieldState } from "@proyecto-viviana/solid-stately";
|
|
9
|
+
//#region src/SearchField.tsx
|
|
10
|
+
/**
|
|
11
|
+
* SearchField component for solidaria-components
|
|
12
|
+
*
|
|
13
|
+
* A pre-wired headless search field that combines state + aria hooks.
|
|
14
|
+
* Port of react-aria-components/src/SearchField.tsx
|
|
15
|
+
*/
|
|
16
|
+
var _tmpl$ = /*#__PURE__*/ template(`<div>`), _tmpl$2 = /*#__PURE__*/ template(`<label>`), _tmpl$3 = /*#__PURE__*/ template(`<input>`), _tmpl$4 = /*#__PURE__*/ template(`<button>`);
|
|
17
|
+
const SearchFieldContext = createContext(null);
|
|
18
|
+
function withFormValidationBehavior(props, formContext) {
|
|
19
|
+
if (!formContext?.validationBehavior) return props;
|
|
20
|
+
return new Proxy(props, {
|
|
21
|
+
get(target, property, receiver) {
|
|
22
|
+
const localValue = Reflect.get(target, property, receiver);
|
|
23
|
+
if (property === "validationBehavior" && localValue === void 0) return formContext.validationBehavior;
|
|
24
|
+
return localValue;
|
|
25
|
+
},
|
|
26
|
+
has(target, property) {
|
|
27
|
+
return Reflect.has(target, property) || property === "validationBehavior" && formContext.validationBehavior !== void 0;
|
|
28
|
+
},
|
|
29
|
+
ownKeys(target) {
|
|
30
|
+
const keys = new Set(Reflect.ownKeys(target));
|
|
31
|
+
if (formContext.validationBehavior !== void 0) keys.add("validationBehavior");
|
|
32
|
+
return Array.from(keys);
|
|
33
|
+
},
|
|
34
|
+
getOwnPropertyDescriptor(target, property) {
|
|
35
|
+
const descriptor = Reflect.getOwnPropertyDescriptor(target, property);
|
|
36
|
+
if (descriptor) return descriptor;
|
|
37
|
+
if (property === "validationBehavior" && formContext.validationBehavior !== void 0) return {
|
|
38
|
+
enumerable: true,
|
|
39
|
+
configurable: true,
|
|
40
|
+
get: () => formContext.validationBehavior
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
function eventWithCurrentTarget(event, element) {
|
|
46
|
+
return new Proxy(event, { get(target, property, receiver) {
|
|
47
|
+
if (property === "target" || property === "currentTarget") return element;
|
|
48
|
+
const value = Reflect.get(target, property, receiver);
|
|
49
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
50
|
+
} });
|
|
51
|
+
}
|
|
52
|
+
function clearDelegatedTextEntryHandlers(element) {
|
|
53
|
+
const delegatedElement = element;
|
|
54
|
+
delete delegatedElement.$$input;
|
|
55
|
+
delete delegatedElement.$$change;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* A search field allows a user to enter and clear a search query.
|
|
59
|
+
*/
|
|
60
|
+
function SearchField(props) {
|
|
61
|
+
const formContext = useContext(FormContext);
|
|
62
|
+
const contextProps = useContext(SearchFieldContext);
|
|
63
|
+
const contextSlotProps = contextProps?.slots?.[props.slot ?? "default"];
|
|
64
|
+
const contextBaseProps = createMemo(() => {
|
|
65
|
+
if (!contextProps) return {};
|
|
66
|
+
const { state: _state, inputProps: _inputProps, clearButtonProps: _clearButtonProps, labelProps: _labelProps, descriptionProps: _descriptionProps, errorMessageProps: _errorMessageProps, isDisabled: _isDisabled, isInvalid: _isInvalid, isRequired: _isRequired, isReadOnly: _isReadOnly, setInputRef: _setInputRef, slots: _slots, ...restContextProps } = contextProps;
|
|
67
|
+
return restContextProps;
|
|
68
|
+
});
|
|
69
|
+
const [local, stateProps, ariaProps, rest] = splitProps(withFormValidationBehavior(contextProps ? mergeProps$2(contextBaseProps(), contextSlotProps ?? {}, props) : props, formContext), [
|
|
70
|
+
"children",
|
|
71
|
+
"class",
|
|
72
|
+
"style",
|
|
73
|
+
"slot",
|
|
74
|
+
"ref"
|
|
75
|
+
], [
|
|
76
|
+
"value",
|
|
77
|
+
"defaultValue",
|
|
78
|
+
"onChange",
|
|
79
|
+
"onSubmit",
|
|
80
|
+
"onClear"
|
|
81
|
+
], [
|
|
82
|
+
"label",
|
|
83
|
+
"aria-label",
|
|
84
|
+
"aria-labelledby",
|
|
85
|
+
"aria-describedby",
|
|
86
|
+
"isDisabled",
|
|
87
|
+
"isReadOnly",
|
|
88
|
+
"isRequired",
|
|
89
|
+
"isInvalid",
|
|
90
|
+
"description",
|
|
91
|
+
"errorMessage",
|
|
92
|
+
"id",
|
|
93
|
+
"autoFocus",
|
|
94
|
+
"excludeFromTabOrder",
|
|
95
|
+
"name",
|
|
96
|
+
"form",
|
|
97
|
+
"validationBehavior",
|
|
98
|
+
"type",
|
|
99
|
+
"placeholder",
|
|
100
|
+
"autoComplete",
|
|
101
|
+
"inputMode",
|
|
102
|
+
"enterKeyHint",
|
|
103
|
+
"autoCorrect",
|
|
104
|
+
"autoCapitalize",
|
|
105
|
+
"spellCheck",
|
|
106
|
+
"maxLength",
|
|
107
|
+
"minLength",
|
|
108
|
+
"pattern",
|
|
109
|
+
"onFocus",
|
|
110
|
+
"onBlur",
|
|
111
|
+
"onFocusChange",
|
|
112
|
+
"onKeyDown",
|
|
113
|
+
"onKeyUp",
|
|
114
|
+
"onCopy",
|
|
115
|
+
"onCut",
|
|
116
|
+
"onPaste",
|
|
117
|
+
"onCompositionStart",
|
|
118
|
+
"onCompositionEnd",
|
|
119
|
+
"onCompositionUpdate",
|
|
120
|
+
"onSelect",
|
|
121
|
+
"onBeforeInput",
|
|
122
|
+
"onInput"
|
|
123
|
+
]);
|
|
124
|
+
const state = createSearchFieldState({
|
|
125
|
+
get value() {
|
|
126
|
+
return stateProps.value;
|
|
127
|
+
},
|
|
128
|
+
get defaultValue() {
|
|
129
|
+
return stateProps.defaultValue;
|
|
130
|
+
},
|
|
131
|
+
get onChange() {
|
|
132
|
+
return stateProps.onChange;
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
let inputRef;
|
|
136
|
+
const setInputRef = (el) => {
|
|
137
|
+
inputRef = el;
|
|
138
|
+
};
|
|
139
|
+
const searchFieldAria = createSearchField({
|
|
140
|
+
get isDisabled() {
|
|
141
|
+
return ariaProps.isDisabled;
|
|
142
|
+
},
|
|
143
|
+
get isReadOnly() {
|
|
144
|
+
return ariaProps.isReadOnly;
|
|
145
|
+
},
|
|
146
|
+
get isRequired() {
|
|
147
|
+
return ariaProps.isRequired;
|
|
148
|
+
},
|
|
149
|
+
get isInvalid() {
|
|
150
|
+
return ariaProps.isInvalid;
|
|
151
|
+
},
|
|
152
|
+
get label() {
|
|
153
|
+
return ariaProps.label;
|
|
154
|
+
},
|
|
155
|
+
get "aria-label"() {
|
|
156
|
+
return ariaProps["aria-label"];
|
|
157
|
+
},
|
|
158
|
+
get "aria-labelledby"() {
|
|
159
|
+
return ariaProps["aria-labelledby"];
|
|
160
|
+
},
|
|
161
|
+
get "aria-describedby"() {
|
|
162
|
+
return ariaProps["aria-describedby"];
|
|
163
|
+
},
|
|
164
|
+
get description() {
|
|
165
|
+
return ariaProps.description;
|
|
166
|
+
},
|
|
167
|
+
get errorMessage() {
|
|
168
|
+
return ariaProps.errorMessage;
|
|
169
|
+
},
|
|
170
|
+
get placeholder() {
|
|
171
|
+
return ariaProps.placeholder;
|
|
172
|
+
},
|
|
173
|
+
get name() {
|
|
174
|
+
return ariaProps.name;
|
|
175
|
+
},
|
|
176
|
+
get form() {
|
|
177
|
+
return ariaProps.form;
|
|
178
|
+
},
|
|
179
|
+
get validationBehavior() {
|
|
180
|
+
return ariaProps.validationBehavior;
|
|
181
|
+
},
|
|
182
|
+
get type() {
|
|
183
|
+
return ariaProps.type;
|
|
184
|
+
},
|
|
185
|
+
get autoFocus() {
|
|
186
|
+
return ariaProps.autoFocus;
|
|
187
|
+
},
|
|
188
|
+
get excludeFromTabOrder() {
|
|
189
|
+
return ariaProps.excludeFromTabOrder;
|
|
190
|
+
},
|
|
191
|
+
get autoComplete() {
|
|
192
|
+
return ariaProps.autoComplete;
|
|
193
|
+
},
|
|
194
|
+
get inputMode() {
|
|
195
|
+
return ariaProps.inputMode;
|
|
196
|
+
},
|
|
197
|
+
get enterKeyHint() {
|
|
198
|
+
return ariaProps.enterKeyHint;
|
|
199
|
+
},
|
|
200
|
+
get autoCorrect() {
|
|
201
|
+
return ariaProps.autoCorrect;
|
|
202
|
+
},
|
|
203
|
+
get autoCapitalize() {
|
|
204
|
+
return ariaProps.autoCapitalize;
|
|
205
|
+
},
|
|
206
|
+
get spellCheck() {
|
|
207
|
+
return ariaProps.spellCheck;
|
|
208
|
+
},
|
|
209
|
+
get maxLength() {
|
|
210
|
+
return ariaProps.maxLength;
|
|
211
|
+
},
|
|
212
|
+
get minLength() {
|
|
213
|
+
return ariaProps.minLength;
|
|
214
|
+
},
|
|
215
|
+
get pattern() {
|
|
216
|
+
return ariaProps.pattern;
|
|
217
|
+
},
|
|
218
|
+
get onFocus() {
|
|
219
|
+
return ariaProps.onFocus;
|
|
220
|
+
},
|
|
221
|
+
get onBlur() {
|
|
222
|
+
return ariaProps.onBlur;
|
|
223
|
+
},
|
|
224
|
+
get onFocusChange() {
|
|
225
|
+
return ariaProps.onFocusChange;
|
|
226
|
+
},
|
|
227
|
+
get onKeyDown() {
|
|
228
|
+
return ariaProps.onKeyDown;
|
|
229
|
+
},
|
|
230
|
+
get onKeyUp() {
|
|
231
|
+
return ariaProps.onKeyUp;
|
|
232
|
+
},
|
|
233
|
+
get onCopy() {
|
|
234
|
+
return ariaProps.onCopy;
|
|
235
|
+
},
|
|
236
|
+
get onCut() {
|
|
237
|
+
return ariaProps.onCut;
|
|
238
|
+
},
|
|
239
|
+
get onPaste() {
|
|
240
|
+
return ariaProps.onPaste;
|
|
241
|
+
},
|
|
242
|
+
get onCompositionStart() {
|
|
243
|
+
return ariaProps.onCompositionStart;
|
|
244
|
+
},
|
|
245
|
+
get onCompositionEnd() {
|
|
246
|
+
return ariaProps.onCompositionEnd;
|
|
247
|
+
},
|
|
248
|
+
get onCompositionUpdate() {
|
|
249
|
+
return ariaProps.onCompositionUpdate;
|
|
250
|
+
},
|
|
251
|
+
get onSelect() {
|
|
252
|
+
return ariaProps.onSelect;
|
|
253
|
+
},
|
|
254
|
+
get onBeforeInput() {
|
|
255
|
+
return ariaProps.onBeforeInput;
|
|
256
|
+
},
|
|
257
|
+
get onInput() {
|
|
258
|
+
return ariaProps.onInput;
|
|
259
|
+
},
|
|
260
|
+
get onSubmit() {
|
|
261
|
+
return stateProps.onSubmit;
|
|
262
|
+
},
|
|
263
|
+
get onClear() {
|
|
264
|
+
return stateProps.onClear;
|
|
265
|
+
}
|
|
266
|
+
}, state, () => inputRef ?? null);
|
|
267
|
+
const renderValues = createMemo(() => ({
|
|
268
|
+
isEmpty: state.value() === "",
|
|
269
|
+
isDisabled: ariaProps.isDisabled ?? false,
|
|
270
|
+
isInvalid: searchFieldAria.isInvalid ?? false,
|
|
271
|
+
isRequired: ariaProps.isRequired ?? false,
|
|
272
|
+
isReadOnly: ariaProps.isReadOnly ?? false,
|
|
273
|
+
value: state.value()
|
|
274
|
+
}));
|
|
275
|
+
const renderProps = useRenderProps({
|
|
276
|
+
get children() {
|
|
277
|
+
return local.children;
|
|
278
|
+
},
|
|
279
|
+
class: local.class,
|
|
280
|
+
style: local.style,
|
|
281
|
+
defaultClassName: "solidaria-SearchField"
|
|
282
|
+
}, renderValues);
|
|
283
|
+
const childRenderValues = {
|
|
284
|
+
get isEmpty() {
|
|
285
|
+
return state.value() === "";
|
|
286
|
+
},
|
|
287
|
+
get isDisabled() {
|
|
288
|
+
return ariaProps.isDisabled ?? false;
|
|
289
|
+
},
|
|
290
|
+
get isInvalid() {
|
|
291
|
+
return searchFieldAria.isInvalid ?? false;
|
|
292
|
+
},
|
|
293
|
+
get isRequired() {
|
|
294
|
+
return ariaProps.isRequired ?? false;
|
|
295
|
+
},
|
|
296
|
+
get isReadOnly() {
|
|
297
|
+
return ariaProps.isReadOnly ?? false;
|
|
298
|
+
},
|
|
299
|
+
get value() {
|
|
300
|
+
return state.value();
|
|
301
|
+
}
|
|
302
|
+
};
|
|
303
|
+
const domProps = createMemo(() => filterDOMProps(rest, { global: true }));
|
|
304
|
+
const fieldValidation = createMemo(() => {
|
|
305
|
+
const isInvalid = searchFieldAria.isInvalid;
|
|
306
|
+
const errorMessage = ariaProps.errorMessage;
|
|
307
|
+
return {
|
|
308
|
+
isInvalid,
|
|
309
|
+
validationErrors: isInvalid && typeof errorMessage === "string" ? [errorMessage] : [],
|
|
310
|
+
validationDetails: isInvalid ? {
|
|
311
|
+
...VALID_VALIDITY_STATE,
|
|
312
|
+
customError: true,
|
|
313
|
+
valid: false
|
|
314
|
+
} : VALID_VALIDITY_STATE
|
|
315
|
+
};
|
|
316
|
+
});
|
|
317
|
+
const fieldErrorContext = {
|
|
318
|
+
get validation() {
|
|
319
|
+
return fieldValidation();
|
|
320
|
+
},
|
|
321
|
+
get errorMessageProps() {
|
|
322
|
+
return searchFieldAria.errorMessageProps;
|
|
323
|
+
}
|
|
324
|
+
};
|
|
325
|
+
const contextValue = {
|
|
326
|
+
state,
|
|
327
|
+
get inputProps() {
|
|
328
|
+
return searchFieldAria.inputProps;
|
|
329
|
+
},
|
|
330
|
+
get clearButtonProps() {
|
|
331
|
+
return searchFieldAria.clearButtonProps;
|
|
332
|
+
},
|
|
333
|
+
get labelProps() {
|
|
334
|
+
return searchFieldAria.labelProps;
|
|
335
|
+
},
|
|
336
|
+
get descriptionProps() {
|
|
337
|
+
return searchFieldAria.descriptionProps;
|
|
338
|
+
},
|
|
339
|
+
get errorMessageProps() {
|
|
340
|
+
return searchFieldAria.errorMessageProps;
|
|
341
|
+
},
|
|
342
|
+
get isDisabled() {
|
|
343
|
+
return ariaProps.isDisabled ?? false;
|
|
344
|
+
},
|
|
345
|
+
get isInvalid() {
|
|
346
|
+
return searchFieldAria.isInvalid ?? false;
|
|
347
|
+
},
|
|
348
|
+
get isRequired() {
|
|
349
|
+
return ariaProps.isRequired ?? false;
|
|
350
|
+
},
|
|
351
|
+
get isReadOnly() {
|
|
352
|
+
return ariaProps.isReadOnly ?? false;
|
|
353
|
+
},
|
|
354
|
+
setInputRef
|
|
355
|
+
};
|
|
356
|
+
const fieldChildren = () => {
|
|
357
|
+
const children = local.children;
|
|
358
|
+
return typeof children === "function" ? children(childRenderValues) : children;
|
|
359
|
+
};
|
|
360
|
+
const textSlots = { slots: {
|
|
361
|
+
get description() {
|
|
362
|
+
return searchFieldAria.descriptionProps;
|
|
363
|
+
},
|
|
364
|
+
get errorMessage() {
|
|
365
|
+
return searchFieldAria.errorMessageProps;
|
|
366
|
+
}
|
|
367
|
+
} };
|
|
368
|
+
return createComponent(FieldErrorContext.Provider, {
|
|
369
|
+
value: fieldErrorContext,
|
|
370
|
+
get children() {
|
|
371
|
+
return createComponent(SearchFieldContext.Provider, {
|
|
372
|
+
value: contextValue,
|
|
373
|
+
get children() {
|
|
374
|
+
var _el$ = getNextElement(_tmpl$);
|
|
375
|
+
var _ref$ = local.ref;
|
|
376
|
+
typeof _ref$ === "function" ? use(_ref$, _el$) : local.ref = _el$;
|
|
377
|
+
spread(_el$, mergeProps(domProps, {
|
|
378
|
+
get ["class"]() {
|
|
379
|
+
return renderProps.class();
|
|
380
|
+
},
|
|
381
|
+
get style() {
|
|
382
|
+
return renderProps.style();
|
|
383
|
+
},
|
|
384
|
+
get ["data-empty"]() {
|
|
385
|
+
return state.value() === "" || void 0;
|
|
386
|
+
},
|
|
387
|
+
get ["data-disabled"]() {
|
|
388
|
+
return ariaProps.isDisabled || void 0;
|
|
389
|
+
},
|
|
390
|
+
get ["data-invalid"]() {
|
|
391
|
+
return searchFieldAria.isInvalid || void 0;
|
|
392
|
+
},
|
|
393
|
+
get ["data-required"]() {
|
|
394
|
+
return ariaProps.isRequired || void 0;
|
|
395
|
+
},
|
|
396
|
+
get ["data-readonly"]() {
|
|
397
|
+
return ariaProps.isReadOnly || void 0;
|
|
398
|
+
}
|
|
399
|
+
}), false, true);
|
|
400
|
+
insert(_el$, createComponent(Provider, {
|
|
401
|
+
values: [[TextContext, textSlots]],
|
|
402
|
+
get children() {
|
|
403
|
+
return fieldChildren();
|
|
404
|
+
}
|
|
405
|
+
}));
|
|
406
|
+
runHydrationEvents();
|
|
407
|
+
return _el$;
|
|
408
|
+
}
|
|
409
|
+
});
|
|
410
|
+
}
|
|
411
|
+
});
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* The label for a search field.
|
|
415
|
+
*/
|
|
416
|
+
function SearchFieldLabel(props) {
|
|
417
|
+
const context = useContext(SearchFieldContext);
|
|
418
|
+
if (!context) throw new Error("SearchFieldLabel must be used within a SearchField");
|
|
419
|
+
const cleanLabelProps = () => {
|
|
420
|
+
const { ref: _ref, ...rest } = context.labelProps;
|
|
421
|
+
return rest;
|
|
422
|
+
};
|
|
423
|
+
return (() => {
|
|
424
|
+
var _el$2 = getNextElement(_tmpl$2);
|
|
425
|
+
spread(_el$2, mergeProps(cleanLabelProps, {
|
|
426
|
+
get ["class"]() {
|
|
427
|
+
return props.class ?? "solidaria-SearchField-label";
|
|
428
|
+
},
|
|
429
|
+
get style() {
|
|
430
|
+
return props.style;
|
|
431
|
+
}
|
|
432
|
+
}), false, true);
|
|
433
|
+
insert(_el$2, () => props.children);
|
|
434
|
+
runHydrationEvents();
|
|
435
|
+
return _el$2;
|
|
436
|
+
})();
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* The input element for a search field.
|
|
440
|
+
*/
|
|
441
|
+
function SearchFieldInput(props) {
|
|
442
|
+
const [local, domProps] = splitProps(props, [
|
|
443
|
+
"class",
|
|
444
|
+
"style",
|
|
445
|
+
"slot"
|
|
446
|
+
]);
|
|
447
|
+
let inputElement;
|
|
448
|
+
const context = useContext(SearchFieldContext);
|
|
449
|
+
if (!context) throw new Error("SearchFieldInput must be used within a SearchField");
|
|
450
|
+
const { isFocused, isFocusVisible, focusProps } = createFocusRing();
|
|
451
|
+
const { isHovered, hoverProps } = createHover({ get isDisabled() {
|
|
452
|
+
return context.isDisabled;
|
|
453
|
+
} });
|
|
454
|
+
const renderValues = createMemo(() => ({
|
|
455
|
+
isFocused: isFocused(),
|
|
456
|
+
isFocusVisible: isFocusVisible(),
|
|
457
|
+
isHovered: isHovered(),
|
|
458
|
+
isDisabled: !!context.isDisabled,
|
|
459
|
+
isInvalid: !!context.isInvalid
|
|
460
|
+
}));
|
|
461
|
+
const renderProps = useRenderProps({
|
|
462
|
+
class: local.class,
|
|
463
|
+
style: local.style,
|
|
464
|
+
defaultClassName: "solidaria-SearchField-input"
|
|
465
|
+
}, renderValues);
|
|
466
|
+
const cleanInputProps = () => {
|
|
467
|
+
const { ref: _ref, ...rest } = context.inputProps;
|
|
468
|
+
return rest;
|
|
469
|
+
};
|
|
470
|
+
const cleanFocusProps = () => {
|
|
471
|
+
const { ref: _ref, ...rest } = focusProps;
|
|
472
|
+
return rest;
|
|
473
|
+
};
|
|
474
|
+
const cleanHoverProps = () => {
|
|
475
|
+
const { ref: _ref, ...rest } = hoverProps;
|
|
476
|
+
return rest;
|
|
477
|
+
};
|
|
478
|
+
const mergedInputProps = () => ({
|
|
479
|
+
...domProps,
|
|
480
|
+
...cleanInputProps(),
|
|
481
|
+
...cleanFocusProps(),
|
|
482
|
+
...cleanHoverProps()
|
|
483
|
+
});
|
|
484
|
+
onMount(() => {
|
|
485
|
+
const element = inputElement;
|
|
486
|
+
if (!element) return;
|
|
487
|
+
const inputHandler = (event) => {
|
|
488
|
+
const handler = mergedInputProps().onInput;
|
|
489
|
+
handler?.(eventWithCurrentTarget(event, element));
|
|
490
|
+
clearDelegatedTextEntryHandlers(element);
|
|
491
|
+
event.stopPropagation();
|
|
492
|
+
};
|
|
493
|
+
const changeHandler = (event) => {
|
|
494
|
+
const handler = mergedInputProps().onChange;
|
|
495
|
+
handler?.(eventWithCurrentTarget(event, element));
|
|
496
|
+
clearDelegatedTextEntryHandlers(element);
|
|
497
|
+
event.stopPropagation();
|
|
498
|
+
};
|
|
499
|
+
element.addEventListener("input", inputHandler);
|
|
500
|
+
element.addEventListener("change", changeHandler);
|
|
501
|
+
clearDelegatedTextEntryHandlers(element);
|
|
502
|
+
onCleanup(() => {
|
|
503
|
+
element.removeEventListener("input", inputHandler);
|
|
504
|
+
element.removeEventListener("change", changeHandler);
|
|
505
|
+
});
|
|
506
|
+
});
|
|
507
|
+
return (() => {
|
|
508
|
+
var _el$3 = getNextElement(_tmpl$3);
|
|
509
|
+
use((element) => {
|
|
510
|
+
inputElement = element;
|
|
511
|
+
context.setInputRef?.(element);
|
|
512
|
+
const ref = domProps.ref;
|
|
513
|
+
if (typeof ref === "function") ref(element);
|
|
514
|
+
}, _el$3);
|
|
515
|
+
spread(_el$3, mergeProps(mergedInputProps, {
|
|
516
|
+
get ["class"]() {
|
|
517
|
+
return renderProps.class();
|
|
518
|
+
},
|
|
519
|
+
get style() {
|
|
520
|
+
return renderProps.style();
|
|
521
|
+
},
|
|
522
|
+
get ["data-focused"]() {
|
|
523
|
+
return isFocused() || void 0;
|
|
524
|
+
},
|
|
525
|
+
get ["data-focus-visible"]() {
|
|
526
|
+
return isFocusVisible() || void 0;
|
|
527
|
+
},
|
|
528
|
+
get ["data-hovered"]() {
|
|
529
|
+
return isHovered() || void 0;
|
|
530
|
+
},
|
|
531
|
+
get ["data-disabled"]() {
|
|
532
|
+
return context.isDisabled || void 0;
|
|
533
|
+
},
|
|
534
|
+
get ["data-invalid"]() {
|
|
535
|
+
return context.isInvalid || void 0;
|
|
536
|
+
}
|
|
537
|
+
}), false, false);
|
|
538
|
+
runHydrationEvents();
|
|
539
|
+
return _el$3;
|
|
540
|
+
})();
|
|
541
|
+
}
|
|
542
|
+
/**
|
|
543
|
+
* The clear button for a search field.
|
|
544
|
+
*/
|
|
545
|
+
function SearchFieldClearButton(props) {
|
|
546
|
+
const [local, domProps] = splitProps(props, [
|
|
547
|
+
"class",
|
|
548
|
+
"style",
|
|
549
|
+
"slot",
|
|
550
|
+
"children"
|
|
551
|
+
]);
|
|
552
|
+
const context = useContext(SearchFieldContext);
|
|
553
|
+
if (!context) throw new Error("SearchFieldClearButton must be used within a SearchField");
|
|
554
|
+
const isDisabled = () => !!(context.isDisabled || context.isReadOnly);
|
|
555
|
+
const isEmpty = () => (context.state?.value() ?? "") === "";
|
|
556
|
+
const clear = () => {
|
|
557
|
+
if (!isDisabled() && !isEmpty()) context.clearButtonProps?.onClick();
|
|
558
|
+
};
|
|
559
|
+
const { isPressed, pressProps } = createPress({
|
|
560
|
+
get isDisabled() {
|
|
561
|
+
return context.isDisabled || context.isReadOnly;
|
|
562
|
+
},
|
|
563
|
+
onClick: clear,
|
|
564
|
+
onPress: clear
|
|
565
|
+
});
|
|
566
|
+
const { isHovered, hoverProps } = createHover({ get isDisabled() {
|
|
567
|
+
return context.isDisabled || context.isReadOnly;
|
|
568
|
+
} });
|
|
569
|
+
const renderValues = createMemo(() => ({
|
|
570
|
+
isPressed: isPressed(),
|
|
571
|
+
isHovered: isHovered(),
|
|
572
|
+
isDisabled: isDisabled()
|
|
573
|
+
}));
|
|
574
|
+
const renderProps = useRenderProps({
|
|
575
|
+
get children() {
|
|
576
|
+
return props.children;
|
|
577
|
+
},
|
|
578
|
+
class: local.class,
|
|
579
|
+
style: local.style,
|
|
580
|
+
defaultClassName: "solidaria-SearchField-clear"
|
|
581
|
+
}, renderValues);
|
|
582
|
+
const cleanPressProps = () => {
|
|
583
|
+
const { ref: _ref, ...rest } = pressProps;
|
|
584
|
+
return rest;
|
|
585
|
+
};
|
|
586
|
+
const cleanHoverProps = () => {
|
|
587
|
+
const { ref: _ref, ...rest } = hoverProps;
|
|
588
|
+
return rest;
|
|
589
|
+
};
|
|
590
|
+
return createComponent(Show, {
|
|
591
|
+
get when() {
|
|
592
|
+
return !isEmpty();
|
|
593
|
+
},
|
|
594
|
+
get children() {
|
|
595
|
+
var _el$4 = getNextElement(_tmpl$4);
|
|
596
|
+
spread(_el$4, mergeProps(domProps, {
|
|
597
|
+
"type": "button",
|
|
598
|
+
get ["aria-label"]() {
|
|
599
|
+
return context.clearButtonProps?.["aria-label"] ?? "Clear search";
|
|
600
|
+
},
|
|
601
|
+
get tabIndex() {
|
|
602
|
+
return context.clearButtonProps?.tabIndex ?? -1;
|
|
603
|
+
},
|
|
604
|
+
get disabled() {
|
|
605
|
+
return context.clearButtonProps?.disabled;
|
|
606
|
+
},
|
|
607
|
+
get onMouseDown() {
|
|
608
|
+
return context.clearButtonProps?.onMouseDown;
|
|
609
|
+
}
|
|
610
|
+
}, cleanPressProps, {
|
|
611
|
+
"onPointerUp": clear,
|
|
612
|
+
"onMouseUp": clear,
|
|
613
|
+
"onClick": clear
|
|
614
|
+
}, cleanHoverProps, {
|
|
615
|
+
get ["class"]() {
|
|
616
|
+
return renderProps.class();
|
|
617
|
+
},
|
|
618
|
+
get style() {
|
|
619
|
+
return renderProps.style();
|
|
620
|
+
},
|
|
621
|
+
get ["data-pressed"]() {
|
|
622
|
+
return isPressed() || void 0;
|
|
623
|
+
},
|
|
624
|
+
get ["data-hovered"]() {
|
|
625
|
+
return isHovered() || void 0;
|
|
626
|
+
},
|
|
627
|
+
get ["data-disabled"]() {
|
|
628
|
+
return isDisabled() || void 0;
|
|
629
|
+
}
|
|
630
|
+
}), false, true);
|
|
631
|
+
insert(_el$4, () => renderProps.renderChildren());
|
|
632
|
+
runHydrationEvents();
|
|
633
|
+
return _el$4;
|
|
634
|
+
}
|
|
635
|
+
});
|
|
636
|
+
}
|
|
637
|
+
SearchField.Label = SearchFieldLabel;
|
|
638
|
+
SearchField.Input = SearchFieldInput;
|
|
639
|
+
SearchField.ClearButton = SearchFieldClearButton;
|
|
640
|
+
//#endregion
|
|
641
|
+
export { SearchField, SearchFieldClearButton, SearchFieldContext, SearchFieldInput, SearchFieldLabel };
|
|
642
|
+
|
|
643
|
+
//# sourceMappingURL=SearchField.js.map
|