@proyecto-viviana/solidaria-components 0.2.9 → 0.3.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/README.md +39 -272
- package/dist/ActionBar.d.ts +21 -13
- package/dist/ActionBar.d.ts.map +1 -1
- package/dist/ActionGroup.d.ts +8 -8
- package/dist/ActionGroup.d.ts.map +1 -1
- package/dist/Alert.d.ts +5 -5
- package/dist/Alert.d.ts.map +1 -1
- package/dist/Autocomplete.d.ts +5 -5
- package/dist/Autocomplete.d.ts.map +1 -1
- package/dist/Breadcrumbs.d.ts +18 -7
- package/dist/Breadcrumbs.d.ts.map +1 -1
- package/dist/Button.d.ts +24 -5
- package/dist/Button.d.ts.map +1 -1
- package/dist/Calendar.d.ts +38 -7
- package/dist/Calendar.d.ts.map +1 -1
- package/dist/Checkbox.d.ts +32 -7
- package/dist/Checkbox.d.ts.map +1 -1
- package/dist/Collection.d.ts +19 -14
- package/dist/Collection.d.ts.map +1 -1
- package/dist/Color.d.ts +103 -14
- package/dist/Color.d.ts.map +1 -1
- package/dist/ColorEditor.d.ts +6 -6
- package/dist/ColorEditor.d.ts.map +1 -1
- package/dist/ComboBox.d.ts +85 -19
- package/dist/ComboBox.d.ts.map +1 -1
- package/dist/ContextualHelpTrigger.d.ts +2 -2
- package/dist/ContextualHelpTrigger.d.ts.map +1 -1
- package/dist/DateField.d.ts +8 -6
- package/dist/DateField.d.ts.map +1 -1
- package/dist/DatePicker.d.ts +53 -22
- package/dist/DatePicker.d.ts.map +1 -1
- package/dist/DateRangePickerContext.d.ts +30 -0
- package/dist/DateRangePickerContext.d.ts.map +1 -0
- package/dist/Dialog.d.ts +5 -5
- package/dist/Dialog.d.ts.map +1 -1
- package/dist/Disclosure.d.ts +23 -5
- package/dist/Disclosure.d.ts.map +1 -1
- package/dist/DragAndDrop.d.ts +6 -6
- package/dist/DragAndDrop.d.ts.map +1 -1
- package/dist/DragPreview.d.ts +2 -2
- package/dist/DragPreview.d.ts.map +1 -1
- package/dist/DropZone.d.ts +4 -4
- package/dist/DropZone.d.ts.map +1 -1
- package/dist/FieldError.d.ts +9 -5
- package/dist/FieldError.d.ts.map +1 -1
- package/dist/FileTrigger.d.ts +3 -3
- package/dist/FileTrigger.d.ts.map +1 -1
- package/dist/Focusable.d.ts +2 -2
- package/dist/Focusable.d.ts.map +1 -1
- package/dist/Form.d.ts +18 -4
- package/dist/Form.d.ts.map +1 -1
- package/dist/GridList.d.ts +32 -12
- package/dist/GridList.d.ts.map +1 -1
- package/dist/HiddenDateInput.d.ts +26 -0
- package/dist/HiddenDateInput.d.ts.map +1 -0
- package/dist/HiddenTimeInput.d.ts +25 -0
- package/dist/HiddenTimeInput.d.ts.map +1 -0
- package/dist/Icon.d.ts +5 -5
- package/dist/Icon.d.ts.map +1 -1
- package/dist/Keyboard.d.ts +1 -1
- package/dist/Landmark.d.ts +3 -3
- package/dist/Landmark.d.ts.map +1 -1
- package/dist/Link.d.ts +10 -4
- package/dist/Link.d.ts.map +1 -1
- package/dist/ListBox.d.ts +32 -12
- package/dist/ListBox.d.ts.map +1 -1
- package/dist/ListDropTargetDelegate.d.ts +6 -6
- package/dist/ListDropTargetDelegate.d.ts.map +1 -1
- package/dist/Menu.d.ts +65 -14
- package/dist/Menu.d.ts.map +1 -1
- package/dist/Meter.d.ts +3 -3
- package/dist/Meter.d.ts.map +1 -1
- package/dist/Modal.d.ts +5 -5
- package/dist/Modal.d.ts.map +1 -1
- package/dist/NumberField.d.ts +8 -12
- package/dist/NumberField.d.ts.map +1 -1
- package/dist/Popover.d.ts +28 -5
- package/dist/Popover.d.ts.map +1 -1
- package/dist/Pressable.d.ts +2 -2
- package/dist/Pressable.d.ts.map +1 -1
- package/dist/ProgressBar.d.ts +5 -3
- package/dist/ProgressBar.d.ts.map +1 -1
- package/dist/RadioGroup.d.ts +43 -9
- package/dist/RadioGroup.d.ts.map +1 -1
- package/dist/RangeCalendar.d.ts +34 -7
- package/dist/RangeCalendar.d.ts.map +1 -1
- package/dist/RouterProvider.d.ts +2 -2
- package/dist/RouterProvider.d.ts.map +1 -1
- package/dist/SearchField.d.ts +23 -20
- package/dist/SearchField.d.ts.map +1 -1
- package/dist/Select.d.ts +41 -11
- package/dist/Select.d.ts.map +1 -1
- package/dist/SelectionIndicator.d.ts +3 -3
- package/dist/SelectionIndicator.d.ts.map +1 -1
- package/dist/Separator.d.ts +9 -3
- package/dist/Separator.d.ts.map +1 -1
- package/dist/SharedElementTransition.d.ts +6 -4
- package/dist/SharedElementTransition.d.ts.map +1 -1
- package/dist/Slider.d.ts +12 -8
- package/dist/Slider.d.ts.map +1 -1
- package/dist/StepList.d.ts +90 -0
- package/dist/StepList.d.ts.map +1 -0
- package/dist/Switch.d.ts +11 -5
- package/dist/Switch.d.ts.map +1 -1
- package/dist/Table.d.ts +187 -23
- package/dist/Table.d.ts.map +1 -1
- package/dist/Tabs.d.ts +45 -9
- package/dist/Tabs.d.ts.map +1 -1
- package/dist/TagGroup.d.ts +12 -10
- package/dist/TagGroup.d.ts.map +1 -1
- package/dist/Text.d.ts +2 -2
- package/dist/TextField.d.ts +15 -11
- package/dist/TextField.d.ts.map +1 -1
- package/dist/TimeField.d.ts +6 -6
- package/dist/TimeField.d.ts.map +1 -1
- package/dist/Toast.d.ts +29 -14
- package/dist/Toast.d.ts.map +1 -1
- package/dist/ToggleButton.d.ts +11 -5
- package/dist/ToggleButton.d.ts.map +1 -1
- package/dist/ToggleButtonGroup.d.ts +7 -7
- package/dist/ToggleButtonGroup.d.ts.map +1 -1
- package/dist/Toolbar.d.ts +7 -3
- package/dist/Toolbar.d.ts.map +1 -1
- package/dist/Tooltip.d.ts +50 -8
- package/dist/Tooltip.d.ts.map +1 -1
- package/dist/Tree.d.ts +66 -17
- package/dist/Tree.d.ts.map +1 -1
- package/dist/Virtualizer.d.ts +12 -12
- package/dist/Virtualizer.d.ts.map +1 -1
- package/dist/VirtualizerLayouts.d.ts +2 -2
- package/dist/VirtualizerLayouts.d.ts.map +1 -1
- package/dist/VisuallyHidden.d.ts +1 -1
- package/dist/VisuallyHidden.d.ts.map +1 -1
- package/dist/contexts.d.ts +5 -1
- package/dist/contexts.d.ts.map +1 -1
- package/dist/index.d.ts +73 -71
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23247 -18564
- package/dist/index.js.map +1 -1
- package/dist/index.jsx +18110 -0
- package/dist/index.jsx.map +1 -0
- package/dist/useDragAndDrop.d.ts +13 -13
- package/dist/useDragAndDrop.d.ts.map +1 -1
- package/dist/utils.d.ts +2 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/virtualizer/Layout.d.ts +1 -1
- package/dist/virtualizer/Layout.d.ts.map +1 -1
- package/package.json +31 -32
- package/src/ActionBar.tsx +75 -72
- package/src/ActionGroup.tsx +53 -61
- package/src/Alert.tsx +17 -42
- package/src/Autocomplete.tsx +39 -44
- package/src/Breadcrumbs.tsx +149 -80
- package/src/Button.tsx +267 -70
- package/src/Calendar.tsx +218 -138
- package/src/Checkbox.tsx +413 -121
- package/src/Collection.tsx +67 -58
- package/src/Color.tsx +803 -380
- package/src/ColorEditor.tsx +131 -149
- package/src/ComboBox.tsx +414 -249
- package/src/ContextualHelpTrigger.tsx +86 -74
- package/src/DateField.tsx +185 -91
- package/src/DatePicker.tsx +524 -213
- package/src/DateRangePickerContext.tsx +44 -0
- package/src/Dialog.tsx +156 -118
- package/src/Disclosure.tsx +127 -80
- package/src/DragAndDrop.tsx +60 -54
- package/src/DragPreview.tsx +13 -11
- package/src/DropZone.tsx +42 -22
- package/src/FieldError.tsx +45 -23
- package/src/FileTrigger.tsx +19 -19
- package/src/Focusable.tsx +21 -24
- package/src/Form.tsx +71 -16
- package/src/GridList.tsx +273 -197
- package/src/HiddenDateInput.tsx +153 -0
- package/src/HiddenTimeInput.tsx +133 -0
- package/src/Icon.tsx +22 -43
- package/src/Keyboard.tsx +3 -3
- package/src/Landmark.tsx +37 -63
- package/src/Link.tsx +125 -75
- package/src/ListBox.tsx +332 -233
- package/src/ListDropTargetDelegate.ts +81 -80
- package/src/Menu.tsx +1023 -274
- package/src/Meter.tsx +38 -56
- package/src/Modal.tsx +243 -175
- package/src/NumberField.tsx +139 -143
- package/src/Popover.tsx +386 -233
- package/src/Pressable.tsx +21 -21
- package/src/ProgressBar.tsx +48 -57
- package/src/RadioGroup.tsx +524 -122
- package/src/RangeCalendar.tsx +157 -90
- package/src/RouterProvider.tsx +30 -47
- package/src/SearchField.tsx +362 -143
- package/src/Select.tsx +656 -233
- package/src/SelectionIndicator.tsx +18 -15
- package/src/Separator.tsx +47 -49
- package/src/SharedElementTransition.tsx +103 -97
- package/src/Slider.tsx +138 -98
- package/src/StepList.tsx +272 -0
- package/src/Switch.tsx +93 -46
- package/src/Table.tsx +1308 -342
- package/src/Tabs.tsx +324 -103
- package/src/TagGroup.tsx +139 -126
- package/src/Text.tsx +3 -3
- package/src/TextField.tsx +389 -79
- package/src/TimeField.tsx +136 -76
- package/src/Toast.tsx +209 -157
- package/src/ToggleButton.tsx +47 -37
- package/src/ToggleButtonGroup.tsx +39 -34
- package/src/Toolbar.tsx +54 -69
- package/src/Tooltip.tsx +387 -119
- package/src/Tree.tsx +651 -368
- package/src/Virtualizer.tsx +208 -180
- package/src/VirtualizerLayouts.ts +45 -30
- package/src/VisuallyHidden.tsx +19 -19
- package/src/contexts.ts +29 -37
- package/src/index.ts +110 -195
- package/src/useDragAndDrop.ts +87 -71
- package/src/utils.tsx +40 -55
- package/src/virtualizer/Layout.ts +14 -22
- package/dist/index.ssr.js +0 -16996
- package/dist/index.ssr.js.map +0 -1
package/src/RouterProvider.tsx
CHANGED
|
@@ -6,11 +6,7 @@
|
|
|
6
6
|
* this provides API compatibility with React Aria's RouterProvider.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import { type JSX, createContext, useContext } from
|
|
10
|
-
|
|
11
|
-
// ============================================
|
|
12
|
-
// TYPES
|
|
13
|
-
// ============================================
|
|
9
|
+
import { type JSX, createContext, useContext } from "solid-js";
|
|
14
10
|
|
|
15
11
|
export interface RouterClickModifiers {
|
|
16
12
|
metaKey?: boolean;
|
|
@@ -29,7 +25,7 @@ export interface RouterContextValue {
|
|
|
29
25
|
target: Element,
|
|
30
26
|
modifiers: RouterClickModifiers,
|
|
31
27
|
href: string,
|
|
32
|
-
routerOptions?: RouterOptions
|
|
28
|
+
routerOptions?: RouterOptions,
|
|
33
29
|
) => void;
|
|
34
30
|
/** Transform an href for the router. */
|
|
35
31
|
useHref: (href: string) => string;
|
|
@@ -51,10 +47,6 @@ export interface RouterProviderProps {
|
|
|
51
47
|
children: JSX.Element;
|
|
52
48
|
}
|
|
53
49
|
|
|
54
|
-
// ============================================
|
|
55
|
-
// CONTEXT
|
|
56
|
-
// ============================================
|
|
57
|
-
|
|
58
50
|
const defaultRouter: RouterContextValue = {
|
|
59
51
|
isNative: true,
|
|
60
52
|
navigate: () => {},
|
|
@@ -66,10 +58,6 @@ const defaultRouter: RouterContextValue = {
|
|
|
66
58
|
|
|
67
59
|
export const RouterContext = createContext<RouterContextValue>(defaultRouter);
|
|
68
60
|
|
|
69
|
-
// ============================================
|
|
70
|
-
// HELPERS
|
|
71
|
-
// ============================================
|
|
72
|
-
|
|
73
61
|
export interface LinkDOMProps {
|
|
74
62
|
href?: string;
|
|
75
63
|
target?: string;
|
|
@@ -77,24 +65,27 @@ export interface LinkDOMProps {
|
|
|
77
65
|
download?: string | boolean;
|
|
78
66
|
ping?: string;
|
|
79
67
|
referrerPolicy?:
|
|
80
|
-
|
|
|
81
|
-
|
|
|
82
|
-
|
|
|
83
|
-
|
|
|
84
|
-
|
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
|
68
|
+
| ""
|
|
69
|
+
| "no-referrer"
|
|
70
|
+
| "no-referrer-when-downgrade"
|
|
71
|
+
| "origin"
|
|
72
|
+
| "origin-when-cross-origin"
|
|
73
|
+
| "same-origin"
|
|
74
|
+
| "strict-origin"
|
|
75
|
+
| "strict-origin-when-cross-origin"
|
|
76
|
+
| "unsafe-url";
|
|
89
77
|
}
|
|
90
78
|
|
|
91
|
-
export function shouldClientNavigate(
|
|
92
|
-
|
|
93
|
-
|
|
79
|
+
export function shouldClientNavigate(
|
|
80
|
+
link: HTMLAnchorElement,
|
|
81
|
+
modifiers: RouterClickModifiers,
|
|
82
|
+
): boolean {
|
|
83
|
+
const target = link.getAttribute("target");
|
|
84
|
+
const sameOrigin = typeof location === "undefined" ? true : link.origin === location.origin;
|
|
94
85
|
return (
|
|
95
|
-
(!target || target ===
|
|
86
|
+
(!target || target === "_self") &&
|
|
96
87
|
sameOrigin &&
|
|
97
|
-
!link.hasAttribute(
|
|
88
|
+
!link.hasAttribute("download") &&
|
|
98
89
|
!modifiers.metaKey &&
|
|
99
90
|
!modifiers.ctrlKey &&
|
|
100
91
|
!modifiers.altKey &&
|
|
@@ -103,7 +94,7 @@ export function shouldClientNavigate(link: HTMLAnchorElement, modifiers: RouterC
|
|
|
103
94
|
}
|
|
104
95
|
|
|
105
96
|
export function openLink(target: HTMLAnchorElement, modifiers: RouterClickModifiers): void {
|
|
106
|
-
const event = new MouseEvent(
|
|
97
|
+
const event = new MouseEvent("click", {
|
|
107
98
|
metaKey: modifiers.metaKey,
|
|
108
99
|
ctrlKey: modifiers.ctrlKey,
|
|
109
100
|
altKey: modifiers.altKey,
|
|
@@ -121,27 +112,27 @@ function getSyntheticLink(target: Element, open: (link: HTMLAnchorElement) => vo
|
|
|
121
112
|
return;
|
|
122
113
|
}
|
|
123
114
|
|
|
124
|
-
const href = target.getAttribute(
|
|
115
|
+
const href = target.getAttribute("data-href");
|
|
125
116
|
if (!href) {
|
|
126
117
|
return;
|
|
127
118
|
}
|
|
128
119
|
|
|
129
|
-
const link = document.createElement(
|
|
120
|
+
const link = document.createElement("a");
|
|
130
121
|
link.href = href;
|
|
131
122
|
|
|
132
|
-
const targetValue = target.getAttribute(
|
|
123
|
+
const targetValue = target.getAttribute("data-target");
|
|
133
124
|
if (targetValue) link.target = targetValue;
|
|
134
125
|
|
|
135
|
-
const rel = target.getAttribute(
|
|
126
|
+
const rel = target.getAttribute("data-rel");
|
|
136
127
|
if (rel) link.rel = rel;
|
|
137
128
|
|
|
138
|
-
const download = target.getAttribute(
|
|
129
|
+
const download = target.getAttribute("data-download");
|
|
139
130
|
if (download) link.download = download;
|
|
140
131
|
|
|
141
|
-
const ping = target.getAttribute(
|
|
132
|
+
const ping = target.getAttribute("data-ping");
|
|
142
133
|
if (ping) link.ping = ping;
|
|
143
134
|
|
|
144
|
-
const referrerPolicy = target.getAttribute(
|
|
135
|
+
const referrerPolicy = target.getAttribute("data-referrer-policy");
|
|
145
136
|
if (referrerPolicy) {
|
|
146
137
|
link.referrerPolicy = referrerPolicy;
|
|
147
138
|
}
|
|
@@ -157,7 +148,7 @@ function openSyntheticLink(target: Element, modifiers: RouterClickModifiers): vo
|
|
|
157
148
|
|
|
158
149
|
export function useLinkProps(props?: LinkDOMProps): LinkDOMProps {
|
|
159
150
|
const router = useRouter();
|
|
160
|
-
const href = props?.href ??
|
|
151
|
+
const href = props?.href ?? "";
|
|
161
152
|
return {
|
|
162
153
|
href: props?.href ? router.useHref(href) : undefined,
|
|
163
154
|
target: props?.target,
|
|
@@ -172,7 +163,7 @@ export function handleLinkClick(
|
|
|
172
163
|
event: MouseEvent,
|
|
173
164
|
router: RouterContextValue,
|
|
174
165
|
href: string | undefined,
|
|
175
|
-
routerOptions?: RouterOptions
|
|
166
|
+
routerOptions?: RouterOptions,
|
|
176
167
|
): void {
|
|
177
168
|
if (
|
|
178
169
|
!router.isNative &&
|
|
@@ -187,10 +178,6 @@ export function handleLinkClick(
|
|
|
187
178
|
}
|
|
188
179
|
}
|
|
189
180
|
|
|
190
|
-
// ============================================
|
|
191
|
-
// COMPONENT
|
|
192
|
-
// ============================================
|
|
193
|
-
|
|
194
181
|
/**
|
|
195
182
|
* A RouterProvider accepts a `navigate` function from a client-side router,
|
|
196
183
|
* and provides it to all nested solidaria links to enable client-side navigation.
|
|
@@ -225,11 +212,7 @@ export function RouterProvider(props: RouterProviderProps): JSX.Element {
|
|
|
225
212
|
useHref: props.useHref ?? ((href: string) => href),
|
|
226
213
|
};
|
|
227
214
|
|
|
228
|
-
return
|
|
229
|
-
<RouterContext.Provider value={ctx}>
|
|
230
|
-
{props.children}
|
|
231
|
-
</RouterContext.Provider>
|
|
232
|
-
);
|
|
215
|
+
return <RouterContext.Provider value={ctx}>{props.children}</RouterContext.Provider>;
|
|
233
216
|
}
|
|
234
217
|
|
|
235
218
|
/**
|