@proyecto-viviana/solidaria-components 0.4.0 → 0.4.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.
- package/dist/ActionBar.d.ts.map +1 -1
- package/dist/ActionBar.js +2 -11
- package/dist/ActionBar.js.map +1 -1
- package/dist/ActionBar.jsx +2 -11
- package/dist/ActionBar.jsx.map +1 -1
- package/dist/ActionGroup.d.ts.map +1 -1
- package/dist/ActionGroup.js +1 -1
- package/dist/ActionGroup.js.map +1 -1
- package/dist/ActionGroup.jsx +1 -1
- package/dist/ActionGroup.jsx.map +1 -1
- package/dist/Autocomplete.d.ts +2 -2
- package/dist/Autocomplete.d.ts.map +1 -1
- package/dist/Autocomplete.js +7 -7
- package/dist/Autocomplete.js.map +1 -1
- package/dist/Autocomplete.jsx +7 -7
- package/dist/Autocomplete.jsx.map +1 -1
- package/dist/Breadcrumbs.d.ts.map +1 -1
- package/dist/Breadcrumbs.js +15 -16
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Breadcrumbs.jsx +19 -24
- package/dist/Breadcrumbs.jsx.map +1 -1
- package/dist/Calendar.d.ts.map +1 -1
- package/dist/Calendar.js +100 -65
- package/dist/Calendar.js.map +1 -1
- package/dist/Calendar.jsx +10 -1
- package/dist/Calendar.jsx.map +1 -1
- package/dist/Color.d.ts.map +1 -1
- package/dist/Color.js +15 -18
- package/dist/Color.js.map +1 -1
- package/dist/Color.jsx +15 -19
- package/dist/Color.jsx.map +1 -1
- package/dist/ComboBox.d.ts +4 -0
- package/dist/ComboBox.d.ts.map +1 -1
- package/dist/ComboBox.js +21 -13
- package/dist/ComboBox.js.map +1 -1
- package/dist/ComboBox.jsx +23 -13
- package/dist/ComboBox.jsx.map +1 -1
- package/dist/DateField.d.ts +11 -2
- package/dist/DateField.d.ts.map +1 -1
- package/dist/DateField2.js +237 -234
- package/dist/DateField2.js.map +1 -1
- package/dist/DateField2.jsx +134 -97
- package/dist/DateField2.jsx.map +1 -1
- package/dist/DatePicker.d.ts +42 -3
- package/dist/DatePicker.d.ts.map +1 -1
- package/dist/DatePicker.js +6 -990
- package/dist/DatePicker.jsx +6 -681
- package/dist/DatePicker2.js +1171 -0
- package/dist/DatePicker2.js.map +1 -0
- package/dist/DatePicker2.jsx +820 -0
- package/dist/DatePicker2.jsx.map +1 -0
- package/dist/DateRangePickerContext.d.ts +2 -0
- package/dist/DateRangePickerContext.d.ts.map +1 -1
- package/dist/Disclosure.d.ts.map +1 -1
- package/dist/Disclosure.js +3 -0
- package/dist/Disclosure.js.map +1 -1
- package/dist/Disclosure.jsx +1 -1
- package/dist/Disclosure.jsx.map +1 -1
- package/dist/GridList.d.ts.map +1 -1
- package/dist/GridList.js +2 -2
- package/dist/GridList.js.map +1 -1
- package/dist/GridList.jsx +2 -2
- package/dist/GridList.jsx.map +1 -1
- package/dist/ListBox.d.ts +2 -2
- package/dist/ListBox.d.ts.map +1 -1
- package/dist/ListBox.js +327 -166
- package/dist/ListBox.js.map +1 -1
- package/dist/ListBox.jsx +161 -25
- package/dist/ListBox.jsx.map +1 -1
- package/dist/Modal.d.ts.map +1 -1
- package/dist/Modal.js +7 -5
- package/dist/Modal.js.map +1 -1
- package/dist/Modal.jsx +5 -5
- package/dist/Modal.jsx.map +1 -1
- package/dist/Popover.d.ts.map +1 -1
- package/dist/Popover.js +16 -9
- package/dist/Popover.js.map +1 -1
- package/dist/Popover.jsx +25 -4
- package/dist/Popover.jsx.map +1 -1
- package/dist/RangeCalendar.d.ts.map +1 -1
- package/dist/RangeCalendar.js +182 -46
- package/dist/RangeCalendar.js.map +1 -1
- package/dist/RangeCalendar.jsx +72 -2
- package/dist/RangeCalendar.jsx.map +1 -1
- package/dist/SearchField.d.ts.map +1 -1
- package/dist/SearchField.js +26 -2
- package/dist/SearchField.js.map +1 -1
- package/dist/SearchField.jsx +26 -2
- package/dist/SearchField.jsx.map +1 -1
- package/dist/Select.d.ts +7 -0
- package/dist/Select.d.ts.map +1 -1
- package/dist/Select.js +62 -49
- package/dist/Select.js.map +1 -1
- package/dist/Select.jsx +33 -18
- package/dist/Select.jsx.map +1 -1
- package/dist/SharedElementTransition.d.ts.map +1 -1
- package/dist/SharedElementTransition.js +35 -33
- package/dist/SharedElementTransition.js.map +1 -1
- package/dist/SharedElementTransition.jsx +35 -33
- package/dist/SharedElementTransition.jsx.map +1 -1
- package/dist/StepList.d.ts.map +1 -1
- package/dist/StepList.js +2 -9
- package/dist/StepList.js.map +1 -1
- package/dist/StepList.jsx +1 -6
- package/dist/StepList.jsx.map +1 -1
- package/dist/Table.d.ts +2 -0
- package/dist/Table.d.ts.map +1 -1
- package/dist/Table.js +10 -3
- package/dist/Table.js.map +1 -1
- package/dist/Table.jsx +10 -3
- package/dist/Table.jsx.map +1 -1
- package/dist/Tabs.d.ts.map +1 -1
- package/dist/Tabs.js +3 -0
- package/dist/Tabs.js.map +1 -1
- package/dist/Tabs.jsx +1 -1
- package/dist/Tabs.jsx.map +1 -1
- package/dist/TagGroup.d.ts +3 -1
- package/dist/TagGroup.d.ts.map +1 -1
- package/dist/TagGroup.js +12 -8
- package/dist/TagGroup.js.map +1 -1
- package/dist/TagGroup.jsx +11 -8
- package/dist/TagGroup.jsx.map +1 -1
- package/dist/TextField.js +4 -1
- package/dist/TextField.js.map +1 -1
- package/dist/TextField.jsx +4 -1
- package/dist/TextField.jsx.map +1 -1
- package/dist/TimeField.d.ts +14 -50
- package/dist/TimeField.d.ts.map +1 -1
- package/dist/TimeField.js +111 -205
- package/dist/TimeField.js.map +1 -1
- package/dist/TimeField.jsx +76 -82
- package/dist/TimeField.jsx.map +1 -1
- package/dist/Tree.d.ts.map +1 -1
- package/dist/Tree.js +3 -3
- package/dist/Tree.js.map +1 -1
- package/dist/Tree.jsx +3 -3
- package/dist/Tree.jsx.map +1 -1
- package/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -6
- package/dist/index.jsx +5 -6
- package/dist/useDragAndDrop.d.ts +0 -8
- package/dist/useDragAndDrop.d.ts.map +1 -1
- package/dist/useDragAndDrop2.js +6 -2
- package/dist/useDragAndDrop2.js.map +1 -1
- package/dist/useDragAndDrop2.jsx +6 -2
- package/dist/useDragAndDrop2.jsx.map +1 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +2 -2
- package/dist/utils.js.map +1 -1
- package/dist/utils.jsx +2 -2
- package/dist/utils.jsx.map +1 -1
- package/package.json +3 -9
- package/src/ActionBar.tsx +10 -12
- package/src/ActionGroup.tsx +5 -3
- package/src/Autocomplete.tsx +14 -9
- package/src/Breadcrumbs.tsx +55 -38
- package/src/Calendar.tsx +30 -1
- package/src/Color.tsx +42 -27
- package/src/ComboBox.tsx +49 -17
- package/src/DateField.tsx +285 -52
- package/src/DatePicker.tsx +345 -57
- package/src/DateRangePickerContext.tsx +2 -0
- package/src/Disclosure.tsx +4 -0
- package/src/GridList.tsx +8 -2
- package/src/ListBox.tsx +323 -21
- package/src/Modal.tsx +21 -5
- package/src/Popover.tsx +28 -7
- package/src/RangeCalendar.tsx +120 -1
- package/src/SearchField.tsx +53 -1
- package/src/Select.tsx +101 -20
- package/src/SharedElementTransition.tsx +92 -36
- package/src/StepList.tsx +0 -7
- package/src/Table.tsx +19 -4
- package/src/Tabs.tsx +1 -0
- package/src/TagGroup.tsx +26 -6
- package/src/TextField.tsx +1 -1
- package/src/TimeField.tsx +113 -196
- package/src/Tree.tsx +14 -4
- package/src/index.ts +1 -8
- package/src/useDragAndDrop.ts +8 -10
- package/src/utils.tsx +3 -3
- package/dist/DatePicker.js.map +0 -1
- package/dist/DatePicker.jsx.map +0 -1
- package/dist/HiddenTimeInput.d.ts +0 -25
- package/dist/HiddenTimeInput.d.ts.map +0 -1
- package/dist/HiddenTimeInput.js +0 -104
- package/dist/HiddenTimeInput.js.map +0 -1
- package/dist/HiddenTimeInput.jsx +0 -69
- package/dist/HiddenTimeInput.jsx.map +0 -1
- package/src/HiddenTimeInput.tsx +0 -133
package/dist/Breadcrumbs.js
CHANGED
|
@@ -9,7 +9,7 @@ import { createBreadcrumbItem, createBreadcrumbs, createFocusRing, createHover,
|
|
|
9
9
|
* A pre-wired headless breadcrumbs component that combines aria hooks.
|
|
10
10
|
* Port of react-aria-components Breadcrumbs.
|
|
11
11
|
*/
|
|
12
|
-
var _tmpl$ = /*#__PURE__*/ template(`<
|
|
12
|
+
var _tmpl$ = /*#__PURE__*/ template(`<ol>`), _tmpl$2 = /*#__PURE__*/ template(`<li style=display:flex;align-items:center>`);
|
|
13
13
|
function assignRef(ref, el) {
|
|
14
14
|
if (!ref) return;
|
|
15
15
|
if (typeof ref === "function") ref(el);
|
|
@@ -89,7 +89,7 @@ function Breadcrumbs(props) {
|
|
|
89
89
|
};
|
|
90
90
|
},
|
|
91
91
|
get children() {
|
|
92
|
-
var _el$ = getNextElement(_tmpl$)
|
|
92
|
+
var _el$ = getNextElement(_tmpl$);
|
|
93
93
|
use((element) => assignRef(local.ref, element), _el$);
|
|
94
94
|
spread(_el$, mergeProps(navProps, domProps, {
|
|
95
95
|
get ["class"]() {
|
|
@@ -102,7 +102,7 @@ function Breadcrumbs(props) {
|
|
|
102
102
|
return isDisabled() || void 0;
|
|
103
103
|
}
|
|
104
104
|
}), false, true);
|
|
105
|
-
insert(_el
|
|
105
|
+
insert(_el$, createComponent(Show, {
|
|
106
106
|
get when() {
|
|
107
107
|
return hasCollectionItems();
|
|
108
108
|
},
|
|
@@ -121,8 +121,8 @@ function Breadcrumbs(props) {
|
|
|
121
121
|
const isLast = () => index() === items().length - 1;
|
|
122
122
|
const renderItem = local.children;
|
|
123
123
|
return (() => {
|
|
124
|
-
var _el$
|
|
125
|
-
insert(_el$
|
|
124
|
+
var _el$2 = getNextElement(_tmpl$2);
|
|
125
|
+
insert(_el$2, createComponent(BreadcrumbItemContext.Provider, {
|
|
126
126
|
value: {
|
|
127
127
|
itemKey,
|
|
128
128
|
isLast
|
|
@@ -131,7 +131,7 @@ function Breadcrumbs(props) {
|
|
|
131
131
|
return renderItem?.(item);
|
|
132
132
|
}
|
|
133
133
|
}));
|
|
134
|
-
return _el$
|
|
134
|
+
return _el$2;
|
|
135
135
|
})();
|
|
136
136
|
}
|
|
137
137
|
});
|
|
@@ -156,9 +156,9 @@ function StaticBreadcrumbItems(props) {
|
|
|
156
156
|
return childArray();
|
|
157
157
|
},
|
|
158
158
|
children: (child) => (() => {
|
|
159
|
-
var _el$
|
|
160
|
-
insert(_el$
|
|
161
|
-
return _el$
|
|
159
|
+
var _el$3 = getNextElement(_tmpl$2);
|
|
160
|
+
insert(_el$3, child);
|
|
161
|
+
return _el$3;
|
|
162
162
|
})()
|
|
163
163
|
});
|
|
164
164
|
}
|
|
@@ -179,12 +179,14 @@ function BreadcrumbItem(props) {
|
|
|
179
179
|
const isDisabled = () => local.isDisabled ?? context?.isDisabled() ?? false;
|
|
180
180
|
const isCurrent = () => ariaProps.isCurrent ?? itemContext?.isLast() ?? (staticIndex !== null && staticIndex !== void 0 && context?.staticItemCount !== void 0 && staticIndex === context.staticItemCount() - 1);
|
|
181
181
|
const itemKey = () => itemContext?.itemKey ?? ariaProps.id ?? null;
|
|
182
|
+
const elementType = () => ariaProps.elementType ?? (ariaProps.href && !isDisabled() && !isCurrent() ? "a" : "span");
|
|
183
|
+
const linkElementType = () => isCurrent() ? "a" : elementType();
|
|
182
184
|
const handlePress = (e) => {
|
|
183
185
|
ariaProps.onPress?.(e);
|
|
184
186
|
const key = itemKey();
|
|
185
187
|
if (key !== null && !isCurrent() && !isDisabled()) context?.onAction?.(key);
|
|
186
188
|
};
|
|
187
|
-
const
|
|
189
|
+
const itemAria = createBreadcrumbItem({
|
|
188
190
|
get id() {
|
|
189
191
|
return ariaProps.id;
|
|
190
192
|
},
|
|
@@ -204,7 +206,7 @@ function BreadcrumbItem(props) {
|
|
|
204
206
|
return ariaProps.rel;
|
|
205
207
|
},
|
|
206
208
|
get elementType() {
|
|
207
|
-
return
|
|
209
|
+
return linkElementType();
|
|
208
210
|
},
|
|
209
211
|
get onPress() {
|
|
210
212
|
return handlePress;
|
|
@@ -252,12 +254,12 @@ function BreadcrumbItem(props) {
|
|
|
252
254
|
return ariaProps["aria-current"];
|
|
253
255
|
}
|
|
254
256
|
});
|
|
257
|
+
const isPressed = itemAria.isPressed;
|
|
255
258
|
const { isFocused, isFocusVisible, focusProps } = createFocusRing();
|
|
256
259
|
const { isHovered, hoverProps } = createHover({ get isDisabled() {
|
|
257
260
|
return isDisabled();
|
|
258
261
|
} });
|
|
259
|
-
const mergedItemProps = createMemo(() => mergeProps$2(itemProps, focusProps, hoverProps));
|
|
260
|
-
const elementType = () => ariaProps.elementType ?? "a";
|
|
262
|
+
const mergedItemProps = createMemo(() => mergeProps$2(itemAria.itemProps, focusProps, hoverProps));
|
|
261
263
|
const renderValues = createMemo(() => ({
|
|
262
264
|
isCurrent: isCurrent(),
|
|
263
265
|
isDisabled: isDisabled(),
|
|
@@ -289,9 +291,6 @@ function BreadcrumbItem(props) {
|
|
|
289
291
|
return elementType();
|
|
290
292
|
} }, mergedItemProps, {
|
|
291
293
|
ref: (element) => assignRef(local.ref, element),
|
|
292
|
-
get href() {
|
|
293
|
-
return memo(() => !!isCurrent())() ? void 0 : mergedItemProps().href;
|
|
294
|
-
},
|
|
295
294
|
get ["aria-current"]() {
|
|
296
295
|
return memo(() => !!isCurrent())() ? ariaProps["aria-current"] ?? "page" : void 0;
|
|
297
296
|
},
|
package/dist/Breadcrumbs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs.js","names":["Accessor","JSX","createContext","createMemo","createSignal","children","resolveChildren","splitProps","useContext","For","Show","Dynamic","createBreadcrumbs","createBreadcrumbItem","createFocusRing","createHover","mergeProps","AriaBreadcrumbsProps","AriaBreadcrumbItemProps","PressEvent","RenderChildren","ClassNameOrFunction","StyleOrFunction","SlotProps","useRenderProps","filterDOMProps","RefLike","el","T","current","assignRef","ref","BreadcrumbsRenderProps","isDisabled","BreadcrumbsProps","Omit","items","getKey","item","onAction","key","Element","class","style","HTMLElement","BreadcrumbItemRenderProps","isCurrent","isPressed","isFocused","isFocusVisible","isHovered","BreadcrumbItemProps","BreadcrumbsContextValue","registerStaticItem","staticItemCount","resetStaticItems","setStaticItemCount","count","BreadcrumbsContext","BreadcrumbItemContextValue","itemKey","isLast","BreadcrumbItemContext","defaultItemKey","index","maybeItem","id","Breadcrumbs","props","local","ariaProps","rest","hasCollectionItems","undefined","getItemKey","nextStaticIndex","navProps","aria-label","aria-labelledby","aria-describedby","renderValues","renderProps","defaultClassName","domProps","Record","global","_$createComponent","Provider","value","_el$","_$getNextElement","_tmpl$","_el$2","firstChild","_$use","element","_$spread","_$mergeProps","data-disabled","_$insert","when","fallback","StaticBreadcrumbItems","each","length","renderItem","_el$3","_tmpl$2","_$runHydrationEvents","context","staticChildren","childArray","array","toArray","child","_el$4","BreadcrumbItem","itemContext","staticIndex","handlePress","e","onPress","itemProps","href","target","rel","elementType","onPressStart","onPressEnd","onClick","onFocus","onBlur","onFocusChange","onKeyDown","onKeyUp","autoFocus","aria-details","aria-current","focusProps","hoverProps","mergedItemProps","mergedStyle","userStyle","baseStyle","display","component","_$memo","aria-disabled","data-current","data-pressed","data-focused","data-focus-visible","data-hovered","renderChildren","Item"],"sources":["../src/Breadcrumbs.tsx"],"sourcesContent":["/**\n * Breadcrumbs component for solidaria-components\n *\n * A pre-wired headless breadcrumbs component that combines aria hooks.\n * Port of react-aria-components Breadcrumbs.\n */\n\nimport {\n type Accessor,\n type JSX,\n createContext,\n createMemo,\n createSignal,\n children as resolveChildren,\n splitProps,\n useContext,\n For,\n Show,\n} from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport {\n createBreadcrumbs,\n createBreadcrumbItem,\n createFocusRing,\n createHover,\n mergeProps,\n type AriaBreadcrumbsProps,\n type AriaBreadcrumbItemProps,\n type PressEvent,\n} from \"@proyecto-viviana/solidaria\";\nimport {\n type RenderChildren,\n type ClassNameOrFunction,\n type StyleOrFunction,\n type SlotProps,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\ntype RefLike<T> = ((el: T) => void) | { current?: T | null } | undefined;\n\nfunction assignRef<T>(ref: RefLike<T>, el: T): void {\n if (!ref) {\n return;\n }\n\n if (typeof ref === \"function\") {\n ref(el);\n } else {\n ref.current = el;\n }\n}\n\nexport interface BreadcrumbsRenderProps {\n /** Whether the breadcrumbs are disabled. */\n isDisabled: boolean;\n}\n\nexport interface BreadcrumbsProps<T> extends Omit<AriaBreadcrumbsProps, \"isDisabled\">, SlotProps {\n /** The items to render in the breadcrumbs. */\n items?: T[];\n /** Function to get the key from an item. */\n getKey?: (item: T) => string | number;\n /** Whether the breadcrumbs are disabled. */\n isDisabled?: boolean;\n /** Handler called when a breadcrumb item is activated. */\n onAction?: (key: string | number) => void;\n /** The children of the component, or a render function for collection items. */\n children?: JSX.Element | ((item: T) => JSX.Element);\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<BreadcrumbsRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<BreadcrumbsRenderProps>;\n /** Ref for the navigation element. */\n ref?: RefLike<HTMLElement>;\n}\n\nexport interface BreadcrumbItemRenderProps {\n /** Whether this is the current/last item. */\n isCurrent: boolean;\n /** Whether the item is disabled. */\n isDisabled: boolean;\n /** Whether the item is pressed. */\n isPressed: boolean;\n /** Whether the item is focused. */\n isFocused: boolean;\n /** Whether the item has visible focus ring. */\n isFocusVisible: boolean;\n /** Whether the item is hovered. */\n isHovered: boolean;\n}\n\nexport interface BreadcrumbItemProps\n extends Omit<AriaBreadcrumbItemProps, \"isDisabled\">, SlotProps {\n /** The children of the breadcrumb item. */\n children?: RenderChildren<BreadcrumbItemRenderProps>;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<BreadcrumbItemRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<BreadcrumbItemRenderProps>;\n /** Whether this item is disabled. */\n isDisabled?: boolean;\n /** Ref for the breadcrumb item element. */\n ref?: RefLike<HTMLElement>;\n}\n\ninterface BreadcrumbsContextValue {\n isDisabled: Accessor<boolean>;\n onAction?: (key: string | number) => void;\n registerStaticItem?: () => number;\n staticItemCount?: Accessor<number>;\n resetStaticItems?: () => void;\n setStaticItemCount?: (count: number) => void;\n}\n\nexport const BreadcrumbsContext = createContext<BreadcrumbsContextValue | null>(null);\n\ninterface BreadcrumbItemContextValue {\n itemKey: string | number | null;\n isLast: Accessor<boolean>;\n}\n\nexport const BreadcrumbItemContext = createContext<BreadcrumbItemContextValue | null>(null);\n\nfunction defaultItemKey(item: unknown, index: number): string | number {\n const maybeItem = item as { key?: string | number; id?: string | number };\n return maybeItem.key ?? maybeItem.id ?? index;\n}\n\n/**\n * Breadcrumbs show hierarchy and navigational context for a user's location within an application.\n */\nexport function Breadcrumbs<T>(props: BreadcrumbsProps<T>): JSX.Element {\n const [local, ariaProps, rest] = splitProps(\n props,\n [\"children\", \"class\", \"style\", \"slot\", \"items\", \"getKey\", \"isDisabled\", \"onAction\", \"ref\"],\n [\"aria-label\", \"aria-labelledby\", \"aria-describedby\", \"aria-details\"],\n );\n\n const isDisabled = () => local.isDisabled ?? false;\n const items = () => local.items ?? [];\n const hasCollectionItems = () => local.items !== undefined;\n const getItemKey = (item: T, index: number): string | number =>\n local.getKey?.(item) ?? defaultItemKey(item, index);\n const [staticItemCount, setStaticItemCount] = createSignal(0);\n let nextStaticIndex = 0;\n const resetStaticItems = () => {\n nextStaticIndex = 0;\n setStaticItemCount(0);\n };\n const registerStaticItem = () => {\n const index = nextStaticIndex;\n nextStaticIndex += 1;\n return index;\n };\n\n const { navProps } = createBreadcrumbs({\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n get \"aria-describedby\"() {\n return ariaProps[\"aria-describedby\"];\n },\n get isDisabled() {\n return isDisabled();\n },\n });\n\n const renderValues = createMemo<BreadcrumbsRenderProps>(() => ({\n isDisabled: isDisabled(),\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-Breadcrumbs\",\n },\n renderValues,\n );\n\n const domProps = createMemo(() =>\n filterDOMProps(rest as Record<string, unknown>, { global: true }),\n );\n return (\n <BreadcrumbsContext.Provider\n value={{\n isDisabled,\n onAction: local.onAction,\n registerStaticItem,\n staticItemCount,\n resetStaticItems,\n setStaticItemCount,\n }}\n >\n <nav\n {...navProps}\n {...domProps()}\n ref={(element) => assignRef(local.ref, element)}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={isDisabled() || undefined}\n >\n <ol\n style={{\n display: \"flex\",\n \"align-items\": \"center\",\n \"list-style\": \"none\",\n margin: 0,\n padding: 0,\n }}\n >\n <Show\n when={hasCollectionItems()}\n fallback={\n <StaticBreadcrumbItems>{local.children as JSX.Element}</StaticBreadcrumbItems>\n }\n >\n <For each={items()}>\n {(item, index) => {\n const itemKey = getItemKey(item, index());\n const isLast = () => index() === items().length - 1;\n const renderItem = local.children as ((item: T) => JSX.Element) | undefined;\n\n return (\n <li style={{ display: \"flex\", \"align-items\": \"center\" }}>\n <BreadcrumbItemContext.Provider value={{ itemKey, isLast }}>\n {renderItem?.(item)}\n </BreadcrumbItemContext.Provider>\n </li>\n );\n }}\n </For>\n </Show>\n </ol>\n </nav>\n </BreadcrumbsContext.Provider>\n );\n}\n\nfunction StaticBreadcrumbItems(props: { children?: JSX.Element }): JSX.Element {\n const context = useContext(BreadcrumbsContext);\n const staticChildren = resolveChildren(() => props.children);\n const childArray = createMemo(() => {\n context?.resetStaticItems?.();\n const array = staticChildren.toArray();\n context?.setStaticItemCount?.(array.length);\n return array;\n });\n\n return (\n <For each={childArray()}>\n {(child) => <li style={{ display: \"flex\", \"align-items\": \"center\" }}>{child}</li>}\n </For>\n );\n}\n\n/**\n * A BreadcrumbItem represents an individual breadcrumb in the navigation trail.\n */\nexport function BreadcrumbItem(props: BreadcrumbItemProps): JSX.Element {\n const [local, ariaProps] = splitProps(props, [\"class\", \"style\", \"slot\", \"isDisabled\", \"ref\"]);\n\n const context = useContext(BreadcrumbsContext);\n const itemContext = useContext(BreadcrumbItemContext);\n const staticIndex = itemContext ? null : context?.registerStaticItem?.();\n const isDisabled = () => local.isDisabled ?? context?.isDisabled() ?? false;\n const isCurrent = () =>\n ariaProps.isCurrent ??\n itemContext?.isLast() ??\n (staticIndex !== null &&\n staticIndex !== undefined &&\n context?.staticItemCount !== undefined &&\n staticIndex === context.staticItemCount() - 1);\n const itemKey = () => itemContext?.itemKey ?? ariaProps.id ?? null;\n\n const handlePress = (e: PressEvent) => {\n ariaProps.onPress?.(e);\n const key = itemKey();\n if (key !== null && !isCurrent() && !isDisabled()) {\n context?.onAction?.(key);\n }\n };\n\n const { itemProps, isPressed } = createBreadcrumbItem({\n get id() {\n return ariaProps.id;\n },\n get isCurrent() {\n return isCurrent();\n },\n get isDisabled() {\n return isDisabled();\n },\n get href() {\n return ariaProps.href;\n },\n get target() {\n return ariaProps.target;\n },\n get rel() {\n return ariaProps.rel;\n },\n get elementType() {\n return ariaProps.elementType;\n },\n get onPress() {\n return handlePress;\n },\n get onPressStart() {\n return ariaProps.onPressStart;\n },\n get onPressEnd() {\n return ariaProps.onPressEnd;\n },\n get onClick() {\n return ariaProps.onClick;\n },\n get onFocus() {\n return ariaProps.onFocus;\n },\n get onBlur() {\n return ariaProps.onBlur;\n },\n get onFocusChange() {\n return ariaProps.onFocusChange;\n },\n get onKeyDown() {\n return ariaProps.onKeyDown;\n },\n get onKeyUp() {\n return ariaProps.onKeyUp;\n },\n get autoFocus() {\n return ariaProps.autoFocus;\n },\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n get \"aria-describedby\"() {\n return ariaProps[\"aria-describedby\"];\n },\n get \"aria-details\"() {\n return ariaProps[\"aria-details\"];\n },\n get \"aria-current\"() {\n return ariaProps[\"aria-current\"];\n },\n });\n\n const { isFocused, isFocusVisible, focusProps } = createFocusRing();\n const { isHovered, hoverProps } = createHover({\n get isDisabled() {\n return isDisabled();\n },\n });\n const mergedItemProps = createMemo(() =>\n mergeProps(\n itemProps as Record<string, unknown>,\n focusProps as Record<string, unknown>,\n hoverProps as Record<string, unknown>,\n ),\n );\n const elementType = () => ariaProps.elementType ?? \"a\";\n\n const renderValues = createMemo<BreadcrumbItemRenderProps>(() => ({\n isCurrent: isCurrent(),\n isDisabled: isDisabled(),\n isPressed: isPressed(),\n isFocused: isFocused(),\n isFocusVisible: isFocusVisible(),\n isHovered: isHovered(),\n }));\n\n const renderProps = useRenderProps(\n {\n get children() {\n return props.children;\n },\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-BreadcrumbItem\",\n },\n renderValues,\n );\n\n const mergedStyle = () => {\n const userStyle = renderProps.style();\n const baseStyle = { display: \"inline-flex\", \"align-items\": \"center\" };\n return userStyle ? { ...baseStyle, ...userStyle } : baseStyle;\n };\n\n return (\n <Dynamic\n component={elementType()}\n {...mergedItemProps()}\n ref={(element: HTMLElement) => assignRef(local.ref, element)}\n href={isCurrent() ? undefined : (mergedItemProps() as { href?: string }).href}\n aria-current={isCurrent() ? (ariaProps[\"aria-current\"] ?? \"page\") : undefined}\n aria-disabled={isDisabled() || isCurrent() || undefined}\n class={renderProps.class()}\n style={mergedStyle()}\n data-current={isCurrent() || undefined}\n data-disabled={isDisabled() || undefined}\n data-pressed={isPressed() || undefined}\n data-focused={isFocused() || undefined}\n data-focus-visible={isFocusVisible() || undefined}\n data-hovered={isHovered() || undefined}\n >\n {renderProps.renderChildren()}\n </Dynamic>\n );\n}\n\nBreadcrumbs.Item = BreadcrumbItem;\n"],"mappings":";;;;;;;;;;;;AAyCA,SAAS8B,UAAaC,KAAiBJ,IAAa;CAClD,IAAI,CAACI,KACH;CAGF,IAAI,OAAOA,QAAQ,YACjBA,IAAIJ,EAAE;MAENI,IAAIF,UAAUF;AAElB;AAgEA,MAAa+B,qBAAqBxD,cAA8C,IAAI;AAOpF,MAAa4D,wBAAwB5D,cAAiD,IAAI;AAE1F,SAAS6D,eAAezB,MAAe0B,OAAgC;CACrE,MAAMC,YAAY3B;CAClB,OAAO2B,UAAUzB,OAAOyB,UAAUC,MAAMF;AAC1C;;;;AAKA,SAAgBG,YAAeC,OAAyC;CACtE,MAAM,CAACC,OAAOC,WAAWC,QAAQhE,WAC/B6D,OACA;EAAC;EAAY;EAAS;EAAS;EAAQ;EAAS;EAAU;EAAc;EAAY;CAAK,GACzF;EAAC;EAAc;EAAmB;EAAoB;CAAc,CACtE;CAEA,MAAMnC,mBAAmBoC,MAAMpC,cAAc;CAC7C,MAAMG,cAAciC,MAAMjC,SAAS,CAAA;CACnC,MAAMoC,2BAA2BH,MAAMjC,UAAUqC,KAAAA;CACjD,MAAMC,cAAcpC,MAAS0B,UAC3BK,MAAMhC,SAASC,IAAI,KAAKyB,eAAezB,MAAM0B,KAAK;CACpD,MAAM,CAACV,iBAAiBE,sBAAsBpD,aAAa,CAAC;CAC5D,IAAIuE,kBAAkB;CACtB,MAAMpB,yBAAyB;EAC7BoB,kBAAkB;EAClBnB,mBAAmB,CAAC;CACtB;CACA,MAAMH,2BAA2B;EAC/B,MAAMW,QAAQW;EACdA,mBAAmB;EACnB,OAAOX;CACT;CAEA,MAAM,EAAEY,aAAahE,kBAAkB;EACrC,IAAI,eAAe;GACjB,OAAO0D,UAAU;EACnB;EACA,IAAI,oBAAoB;GACtB,OAAOA,UAAU;EACnB;EACA,IAAI,qBAAqB;GACvB,OAAOA,UAAU;EACnB;EACA,IAAIrC,aAAa;GACf,OAAOA,WAAW;EACpB;CACF,CAAC;CAED,MAAM+C,eAAe7E,kBAA0C,EAC7D8B,YAAYA,WAAW,EACzB,EAAE;CAEF,MAAMgD,cAAczD,eAClB;EACEkB,OAAO2B,MAAM3B;EACbC,OAAO0B,MAAM1B;EACbuC,kBAAkB;CACpB,GACAF,YACF;CAEA,MAAMG,WAAWhF,iBACfsB,eAAe8C,MAAiC,EAAEc,QAAQ,KAAK,CAAC,CAClE;CACA,OAAAC,gBACG5B,mBAAmB6B,UAAQ;EAAA,IAC1BC,QAAK;GAAA,OAAE;IACLvD;IACAM,UAAU8B,MAAM9B;IAChBc;IACAC;IACAC;IACAC;GACF;EAAC;EAAA,IAAAnD,WAAA;GAAA,IAAAoF,OAAAC,eAAAC,MAAA,GAAAC,QAAAH,KAAAI;GAAAC,KAKOC,YAAYjE,UAAUuC,MAAMtC,KAAKgE,OAAO,GAACN,IAAA;GAAAO,OAAAP,MAAAQ,WAF3CrB,UACAO,UAAQ;IAAA,KAAA,WAAA;KAAA,OAELF,YAAYvC,MAAM;IAAC;IAAA,IAC1BC,QAAK;KAAA,OAAEsC,YAAYtC,MAAM;IAAC;IAAA,KAAA,mBAAA;KAAA,OACXV,WAAW,KAAKwC,KAAAA;IAAS;GAAA,CAAA,GAAA,OAAA,IAAA;GAAA0B,OAAAP,OAAAN,gBAWrC5E,MAAI;IAAA,IACH0F,OAAI;KAAA,OAAE5B,mBAAmB;IAAC;IAAA,IAC1B6B,WAAQ;KAAA,OAAAf,gBACLgB,uBAAqB,EAAA,IAAAjG,WAAA;MAAA,OAAEgE,MAAMhE;KAAuB,EAAA,CAAA;IAAA;IAAA,IAAAA,WAAA;KAAA,OAAAiF,gBAGtD7E,KAAG;MAAA,IAAC8F,OAAI;OAAA,OAAEnE,MAAM;MAAC;MAAA/B,WACdiC,MAAM0B,UAAU;OAChB,MAAMJ,UAAUc,WAAWpC,MAAM0B,MAAM,CAAC;OACxC,MAAMH,eAAeG,MAAM,MAAM5B,MAAM,CAAC,CAACoE,SAAS;OAClD,MAAMC,aAAapC,MAAMhE;OAEzB,cAAA;QAAA,IAAAqG,QAAAhB,eAAAiB,OAAA;QAAAR,OAAAO,OAAApB,gBAEKxB,sBAAsByB,UAAQ;SAACC,OAAO;UAAE5B;UAASC;SAAO;SAAC,IAAAxD,WAAA;UAAA,OACvDoG,aAAanE,IAAI;SAAC;QAAA,CAAA,CAAA;QAAA,OAAAoE;OAAA,EAAA,CAAA;MAI3B;KAAC,CAAA;IAAA;GAAA,CAAA,CAAA;GAAAE,mBAAA;GAAA,OAAAnB;EAAA;CAAA,CAAA;AAOf;AAEA,SAASa,sBAAsBlC,OAAgD;CAC7E,MAAMyC,UAAUrG,WAAWkD,kBAAkB;CAC7C,MAAMoD,iBAAiBxG,eAAsB8D,MAAM/D,QAAQ;CAC3D,MAAM0G,aAAa5G,iBAAiB;EAClC0G,SAAStD,mBAAmB;EAC5B,MAAMyD,QAAQF,eAAeG,QAAQ;EACrCJ,SAASrD,qBAAqBwD,MAAMR,MAAM;EAC1C,OAAOQ;CACT,CAAC;CAED,OAAA1B,gBACG7E,KAAG;EAAA,IAAC8F,OAAI;GAAA,OAAEQ,WAAW;EAAC;EAAA1G,WACnB6G,iBAAK;GAAA,IAAAC,QAAAzB,eAAAiB,OAAA;GAAAR,OAAAgB,OAA+DD,KAAK;GAAA,OAAAC;EAAA,EAAA,CAAA;CAAM,CAAA;AAGvF;;;;AAKA,SAAgBC,eAAehD,OAAyC;CACtE,MAAM,CAACC,OAAOC,aAAa/D,WAAW6D,OAAO;EAAC;EAAS;EAAS;EAAQ;EAAc;CAAK,CAAC;CAE5F,MAAMyC,UAAUrG,WAAWkD,kBAAkB;CAC7C,MAAM2D,cAAc7G,WAAWsD,qBAAqB;CACpD,MAAMwD,cAAcD,cAAc,OAAOR,SAASxD,qBAAqB;CACvE,MAAMpB,mBAAmBoC,MAAMpC,cAAc4E,SAAS5E,WAAW,KAAK;CACtE,MAAMa,kBACJwB,UAAUxB,aACVuE,aAAaxD,OAAO,MACnByD,gBAAgB,QACfA,gBAAgB7C,KAAAA,KAChBoC,SAASvD,oBAAoBmB,KAAAA,KAC7B6C,gBAAgBT,QAAQvD,gBAAgB,IAAI;CAChD,MAAMM,gBAAgByD,aAAazD,WAAWU,UAAUJ,MAAM;CAE9D,MAAMqD,eAAeC,MAAkB;EACrClD,UAAUmD,UAAUD,CAAC;EACrB,MAAMhF,MAAMoB,QAAQ;EACpB,IAAIpB,QAAQ,QAAQ,CAACM,UAAU,KAAK,CAACb,WAAW,GAC9C4E,SAAStE,WAAWC,GAAG;CAE3B;CAEA,MAAM,EAAEkF,WAAW3E,cAAclC,qBAAqB;EACpD,IAAIqD,KAAK;GACP,OAAOI,UAAUJ;EACnB;EACA,IAAIpB,YAAY;GACd,OAAOA,UAAU;EACnB;EACA,IAAIb,aAAa;GACf,OAAOA,WAAW;EACpB;EACA,IAAI0F,OAAO;GACT,OAAOrD,UAAUqD;EACnB;EACA,IAAIC,SAAS;GACX,OAAOtD,UAAUsD;EACnB;EACA,IAAIC,MAAM;GACR,OAAOvD,UAAUuD;EACnB;EACA,IAAIC,cAAc;GAChB,OAAOxD,UAAUwD;EACnB;EACA,IAAIL,UAAU;GACZ,OAAOF;EACT;EACA,IAAIQ,eAAe;GACjB,OAAOzD,UAAUyD;EACnB;EACA,IAAIC,aAAa;GACf,OAAO1D,UAAU0D;EACnB;EACA,IAAIC,UAAU;GACZ,OAAO3D,UAAU2D;EACnB;EACA,IAAIC,UAAU;GACZ,OAAO5D,UAAU4D;EACnB;EACA,IAAIC,SAAS;GACX,OAAO7D,UAAU6D;EACnB;EACA,IAAIC,gBAAgB;GAClB,OAAO9D,UAAU8D;EACnB;EACA,IAAIC,YAAY;GACd,OAAO/D,UAAU+D;EACnB;EACA,IAAIC,UAAU;GACZ,OAAOhE,UAAUgE;EACnB;EACA,IAAIC,YAAY;GACd,OAAOjE,UAAUiE;EACnB;EACA,IAAI,eAAe;GACjB,OAAOjE,UAAU;EACnB;EACA,IAAI,oBAAoB;GACtB,OAAOA,UAAU;EACnB;EACA,IAAI,qBAAqB;GACvB,OAAOA,UAAU;EACnB;EACA,IAAI,iBAAiB;GACnB,OAAOA,UAAU;EACnB;EACA,IAAI,iBAAiB;GACnB,OAAOA,UAAU;EACnB;CACF,CAAC;CAED,MAAM,EAAEtB,WAAWC,gBAAgByF,eAAe5H,gBAAgB;CAClE,MAAM,EAAEoC,WAAWyF,eAAe5H,YAAY,EAC5C,IAAIkB,aAAa;EACf,OAAOA,WAAW;CACpB,EACF,CAAC;CACD,MAAM2G,kBAAkBzI,iBACtBa,aACE0G,WACAgB,YACAC,UACF,CACF;CACA,MAAMb,oBAAoBxD,UAAUwD,eAAe;CAEnD,MAAM9C,eAAe7E,kBAA6C;EAChE2C,WAAWA,UAAU;EACrBb,YAAYA,WAAW;EACvBc,WAAWA,UAAU;EACrBC,WAAWA,UAAU;EACrBC,gBAAgBA,eAAe;EAC/BC,WAAWA,UAAU;CACvB,EAAE;CAEF,MAAM+B,cAAczD,eAClB;EACE,IAAInB,WAAW;GACb,OAAO+D,MAAM/D;EACf;EACAqC,OAAO2B,MAAM3B;EACbC,OAAO0B,MAAM1B;EACbuC,kBAAkB;CACpB,GACAF,YACF;CAEA,MAAM6D,oBAAoB;EACxB,MAAMC,YAAY7D,YAAYtC,MAAM;EACpC,MAAMoG,YAAY;GAAEC,SAAS;GAAe,eAAe;EAAS;EACpE,OAAOF,YAAY;GAAE,GAAGC;GAAW,GAAGD;EAAU,IAAIC;CACtD;CAEA,OAAAzD,gBACG3E,SAAOsF,WAAA,EAAA,IACNgD,YAAS;EAAA,OAAEnB,YAAY;CAAC,EAAA,GACpBc,iBAAe;EAAA7G,MACbgE,YAAyBjE,UAAUuC,MAAMtC,KAAKgE,OAAO;EAAC,IAC5D4B,OAAI;GAAA,OAAEuB,WAAA,CAAA,CAAApG,UAAU,CAAC,CAAA,CAAA,IAAG2B,KAAAA,IAAamE,gBAAgB,CAAC,CAAuBjB;EAAI;EAAA,KAAA,kBAAA;GAAA,OAC/DuB,WAAA,CAAA,CAAApG,UAAU,CAAC,CAAA,CAAA,IAAIwB,UAAU,mBAAmB,SAAUG,KAAAA;EAAS;EAAA,KAAA,mBAAA;GAAA,OAC9DxC,WAAW,KAAKa,UAAU,KAAK2B,KAAAA;EAAS;EAAA,KAAA,WAAA;GAAA,OAChDQ,YAAYvC,MAAM;EAAC;EAAA,IAC1BC,QAAK;GAAA,OAAEkG,YAAY;EAAC;EAAA,KAAA,kBAAA;GAAA,OACN/F,UAAU,KAAK2B,KAAAA;EAAS;EAAA,KAAA,mBAAA;GAAA,OACvBxC,WAAW,KAAKwC,KAAAA;EAAS;EAAA,KAAA,kBAAA;GAAA,OAC1B1B,UAAU,KAAK0B,KAAAA;EAAS;EAAA,KAAA,kBAAA;GAAA,OACxBzB,UAAU,KAAKyB,KAAAA;EAAS;EAAA,KAAA,wBAAA;GAAA,OAClBxB,eAAe,KAAKwB,KAAAA;EAAS;EAAA,KAAA,kBAAA;GAAA,OACnCvB,UAAU,KAAKuB,KAAAA;EAAS;EAAA,IAAApE,WAAA;GAAA,OAErC4E,YAAYwE,eAAe;EAAC;CAAA,CAAA,CAAA;AAGnC;AAEAtF,YAAYuF,OAAOtC"}
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.js","names":["Accessor","JSX","createContext","createMemo","createSignal","children","resolveChildren","splitProps","useContext","For","Show","Dynamic","createBreadcrumbs","createBreadcrumbItem","createFocusRing","createHover","mergeProps","AriaBreadcrumbsProps","AriaBreadcrumbItemProps","PressEvent","RenderChildren","ClassNameOrFunction","StyleOrFunction","SlotProps","useRenderProps","filterDOMProps","RefLike","el","T","current","assignRef","ref","BreadcrumbsRenderProps","isDisabled","BreadcrumbsProps","Omit","items","getKey","item","onAction","key","Element","class","style","HTMLElement","BreadcrumbItemRenderProps","isCurrent","isPressed","isFocused","isFocusVisible","isHovered","BreadcrumbItemProps","BreadcrumbsContextValue","registerStaticItem","staticItemCount","resetStaticItems","setStaticItemCount","count","BreadcrumbsContext","BreadcrumbItemContextValue","itemKey","isLast","BreadcrumbItemContext","defaultItemKey","index","maybeItem","id","Breadcrumbs","props","local","ariaProps","rest","hasCollectionItems","undefined","getItemKey","nextStaticIndex","navProps","aria-label","aria-labelledby","aria-describedby","renderValues","renderProps","defaultClassName","domProps","Record","global","_$createComponent","Provider","value","_el$","_$getNextElement","_tmpl$","_$use","element","_$spread","_$mergeProps","data-disabled","_$insert","when","fallback","StaticBreadcrumbItems","each","length","renderItem","_el$2","_tmpl$2","_$runHydrationEvents","context","staticChildren","childArray","array","toArray","child","_el$3","BreadcrumbItem","itemContext","staticIndex","elementType","href","linkElementType","handlePress","e","onPress","itemAria","target","rel","onPressStart","onPressEnd","onClick","onFocus","onBlur","onFocusChange","onKeyDown","onKeyUp","autoFocus","aria-details","aria-current","focusProps","hoverProps","mergedItemProps","itemProps","mergedStyle","userStyle","baseStyle","display","component","_$memo","aria-disabled","data-current","data-pressed","data-focused","data-focus-visible","data-hovered","renderChildren","Item"],"sources":["../src/Breadcrumbs.tsx"],"sourcesContent":["/**\n * Breadcrumbs component for solidaria-components\n *\n * A pre-wired headless breadcrumbs component that combines aria hooks.\n * Port of react-aria-components Breadcrumbs.\n */\n\nimport {\n type Accessor,\n type JSX,\n createContext,\n createMemo,\n createSignal,\n children as resolveChildren,\n splitProps,\n useContext,\n For,\n Show,\n} from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport {\n createBreadcrumbs,\n createBreadcrumbItem,\n createFocusRing,\n createHover,\n mergeProps,\n type AriaBreadcrumbsProps,\n type AriaBreadcrumbItemProps,\n type PressEvent,\n} from \"@proyecto-viviana/solidaria\";\nimport {\n type RenderChildren,\n type ClassNameOrFunction,\n type StyleOrFunction,\n type SlotProps,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\ntype RefLike<T> = ((el: T) => void) | { current?: T | null } | undefined;\n\nfunction assignRef<T>(ref: RefLike<T>, el: T): void {\n if (!ref) {\n return;\n }\n\n if (typeof ref === \"function\") {\n ref(el);\n } else {\n ref.current = el;\n }\n}\n\nexport interface BreadcrumbsRenderProps {\n /** Whether the breadcrumbs are disabled. */\n isDisabled: boolean;\n}\n\nexport interface BreadcrumbsProps<T> extends Omit<AriaBreadcrumbsProps, \"isDisabled\">, SlotProps {\n /** The items to render in the breadcrumbs. */\n items?: T[];\n /** Function to get the key from an item. */\n getKey?: (item: T) => string | number;\n /** Whether the breadcrumbs are disabled. */\n isDisabled?: boolean;\n /** Handler called when a breadcrumb item is activated. */\n onAction?: (key: string | number) => void;\n /** The children of the component, or a render function for collection items. */\n children?: JSX.Element | ((item: T) => JSX.Element);\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<BreadcrumbsRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<BreadcrumbsRenderProps>;\n /** Ref for the navigation element. */\n ref?: RefLike<HTMLElement>;\n}\n\nexport interface BreadcrumbItemRenderProps {\n /** Whether this is the current/last item. */\n isCurrent: boolean;\n /** Whether the item is disabled. */\n isDisabled: boolean;\n /** Whether the item is pressed. */\n isPressed: boolean;\n /** Whether the item is focused. */\n isFocused: boolean;\n /** Whether the item has visible focus ring. */\n isFocusVisible: boolean;\n /** Whether the item is hovered. */\n isHovered: boolean;\n}\n\nexport interface BreadcrumbItemProps\n extends Omit<AriaBreadcrumbItemProps, \"isDisabled\">, SlotProps {\n /** The children of the breadcrumb item. */\n children?: RenderChildren<BreadcrumbItemRenderProps>;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<BreadcrumbItemRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<BreadcrumbItemRenderProps>;\n /** Whether this item is disabled. */\n isDisabled?: boolean;\n /** Ref for the breadcrumb item element. */\n ref?: RefLike<HTMLElement>;\n}\n\ninterface BreadcrumbsContextValue {\n isDisabled: Accessor<boolean>;\n onAction?: (key: string | number) => void;\n registerStaticItem?: () => number;\n staticItemCount?: Accessor<number>;\n resetStaticItems?: () => void;\n setStaticItemCount?: (count: number) => void;\n}\n\nexport const BreadcrumbsContext = createContext<BreadcrumbsContextValue | null>(null);\n\ninterface BreadcrumbItemContextValue {\n itemKey: string | number | null;\n isLast: Accessor<boolean>;\n}\n\nexport const BreadcrumbItemContext = createContext<BreadcrumbItemContextValue | null>(null);\n\nfunction defaultItemKey(item: unknown, index: number): string | number {\n const maybeItem = item as { key?: string | number; id?: string | number };\n return maybeItem.key ?? maybeItem.id ?? index;\n}\n\n/**\n * Breadcrumbs show hierarchy and navigational context for a user's location within an application.\n */\nexport function Breadcrumbs<T>(props: BreadcrumbsProps<T>): JSX.Element {\n const [local, ariaProps, rest] = splitProps(\n props,\n [\"children\", \"class\", \"style\", \"slot\", \"items\", \"getKey\", \"isDisabled\", \"onAction\", \"ref\"],\n [\"aria-label\", \"aria-labelledby\", \"aria-describedby\", \"aria-details\"],\n );\n\n const isDisabled = () => local.isDisabled ?? false;\n const items = () => local.items ?? [];\n const hasCollectionItems = () => local.items !== undefined;\n const getItemKey = (item: T, index: number): string | number =>\n local.getKey?.(item) ?? defaultItemKey(item, index);\n const [staticItemCount, setStaticItemCount] = createSignal(0);\n let nextStaticIndex = 0;\n const resetStaticItems = () => {\n nextStaticIndex = 0;\n setStaticItemCount(0);\n };\n const registerStaticItem = () => {\n const index = nextStaticIndex;\n nextStaticIndex += 1;\n return index;\n };\n\n const { navProps } = createBreadcrumbs({\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n get \"aria-describedby\"() {\n return ariaProps[\"aria-describedby\"];\n },\n get isDisabled() {\n return isDisabled();\n },\n });\n\n const renderValues = createMemo<BreadcrumbsRenderProps>(() => ({\n isDisabled: isDisabled(),\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-Breadcrumbs\",\n },\n renderValues,\n );\n\n const domProps = createMemo(() =>\n filterDOMProps(rest as Record<string, unknown>, { global: true }),\n );\n return (\n <BreadcrumbsContext.Provider\n value={{\n isDisabled,\n onAction: local.onAction,\n registerStaticItem,\n staticItemCount,\n resetStaticItems,\n setStaticItemCount,\n }}\n >\n {/*\n Faithful to react-aria-components Breadcrumbs: the accessible name (navProps'\n aria-label) sits directly on the <ol> (role=\"list\"), with NO wrapping <nav>\n landmark (react-spectrum/packages/react-aria-components/src/Breadcrumbs.tsx\n renders `<dom.ol {...mergeProps(DOMProps, navProps)} style={props.style}>`).\n The <ol> carries ONLY the consumer's class/style — no hard-coded inline\n layout reset. An inline reset would beat the styled layer's class (inline\n wins over class), which is exactly what broke S2 parity: the solid-spectrum\n `wrapperStyles` class supplies display:flex / list-style:none / padding:0 /\n marginStart and deliberately leaves align-items at its `normal` default, so\n a hard-coded inline `align-items:center` + `margin:0` clobbered the\n wrapper's margin and diverged from S2 (whose <ol> has neither).\n */}\n <ol\n {...navProps}\n {...domProps()}\n ref={(element) => assignRef(local.ref, element)}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={isDisabled() || undefined}\n >\n <Show\n when={hasCollectionItems()}\n fallback={\n <StaticBreadcrumbItems>{local.children as JSX.Element}</StaticBreadcrumbItems>\n }\n >\n <For each={items()}>\n {(item, index) => {\n const itemKey = getItemKey(item, index());\n const isLast = () => index() === items().length - 1;\n const renderItem = local.children as ((item: T) => JSX.Element) | undefined;\n\n return (\n <li style={{ display: \"flex\", \"align-items\": \"center\" }}>\n <BreadcrumbItemContext.Provider value={{ itemKey, isLast }}>\n {renderItem?.(item)}\n </BreadcrumbItemContext.Provider>\n </li>\n );\n }}\n </For>\n </Show>\n </ol>\n </BreadcrumbsContext.Provider>\n );\n}\n\nfunction StaticBreadcrumbItems(props: { children?: JSX.Element }): JSX.Element {\n const context = useContext(BreadcrumbsContext);\n const staticChildren = resolveChildren(() => props.children);\n const childArray = createMemo(() => {\n context?.resetStaticItems?.();\n const array = staticChildren.toArray();\n context?.setStaticItemCount?.(array.length);\n return array;\n });\n\n return (\n <For each={childArray()}>\n {(child) => <li style={{ display: \"flex\", \"align-items\": \"center\" }}>{child}</li>}\n </For>\n );\n}\n\n/**\n * A BreadcrumbItem represents an individual breadcrumb in the navigation trail.\n */\nexport function BreadcrumbItem(props: BreadcrumbItemProps): JSX.Element {\n const [local, ariaProps] = splitProps(props, [\"class\", \"style\", \"slot\", \"isDisabled\", \"ref\"]);\n\n const context = useContext(BreadcrumbsContext);\n const itemContext = useContext(BreadcrumbItemContext);\n const staticIndex = itemContext ? null : context?.registerStaticItem?.();\n const isDisabled = () => local.isDisabled ?? context?.isDisabled() ?? false;\n const isCurrent = () =>\n ariaProps.isCurrent ??\n itemContext?.isLast() ??\n (staticIndex !== null &&\n staticIndex !== undefined &&\n context?.staticItemCount !== undefined &&\n staticIndex === context.staticItemCount() - 1);\n const itemKey = () => itemContext?.itemKey ?? ariaProps.id ?? null;\n\n // Mirror react-aria-components' Link: render an <a> only when there is an\n // href on an enabled, non-current item; otherwise fall back to a <span\n // role=\"link\"> (via createLink). A styled layer may force the element type\n // (S2 renders the current item as a plain <div>), which takes precedence.\n const elementType = () =>\n ariaProps.elementType ?? (ariaProps.href && !isDisabled() && !isCurrent() ? \"a\" : \"span\");\n // The current breadcrumb is the current page and is non-interactive: S2\n // renders it as a plain element with no link role. createLink only omits\n // role=\"link\" for an <a>, so treat the current item as an \"a\" purely for the\n // role decision while still rendering the resolved element type above.\n const linkElementType = () => (isCurrent() ? \"a\" : elementType());\n\n const handlePress = (e: PressEvent) => {\n ariaProps.onPress?.(e);\n const key = itemKey();\n if (key !== null && !isCurrent() && !isDisabled()) {\n context?.onAction?.(key);\n }\n };\n\n const itemAria = createBreadcrumbItem({\n get id() {\n return ariaProps.id;\n },\n get isCurrent() {\n return isCurrent();\n },\n get isDisabled() {\n return isDisabled();\n },\n get href() {\n return ariaProps.href;\n },\n get target() {\n return ariaProps.target;\n },\n get rel() {\n return ariaProps.rel;\n },\n get elementType() {\n return linkElementType();\n },\n get onPress() {\n return handlePress;\n },\n get onPressStart() {\n return ariaProps.onPressStart;\n },\n get onPressEnd() {\n return ariaProps.onPressEnd;\n },\n get onClick() {\n return ariaProps.onClick;\n },\n get onFocus() {\n return ariaProps.onFocus;\n },\n get onBlur() {\n return ariaProps.onBlur;\n },\n get onFocusChange() {\n return ariaProps.onFocusChange;\n },\n get onKeyDown() {\n return ariaProps.onKeyDown;\n },\n get onKeyUp() {\n return ariaProps.onKeyUp;\n },\n get autoFocus() {\n return ariaProps.autoFocus;\n },\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n get \"aria-describedby\"() {\n return ariaProps[\"aria-describedby\"];\n },\n get \"aria-details\"() {\n return ariaProps[\"aria-details\"];\n },\n get \"aria-current\"() {\n return ariaProps[\"aria-current\"];\n },\n });\n\n const isPressed = itemAria.isPressed;\n const { isFocused, isFocusVisible, focusProps } = createFocusRing();\n const { isHovered, hoverProps } = createHover({\n get isDisabled() {\n return isDisabled();\n },\n });\n // Read itemAria.itemProps fresh inside the memo (do NOT destructure it above):\n // the reactive getter re-runs createBreadcrumbItem → createLink each time this\n // memo re-evaluates, so role/tabIndex track elementType once isCurrent settles.\n const mergedItemProps = createMemo(() =>\n mergeProps(\n itemAria.itemProps as Record<string, unknown>,\n focusProps as Record<string, unknown>,\n hoverProps as Record<string, unknown>,\n ),\n );\n\n const renderValues = createMemo<BreadcrumbItemRenderProps>(() => ({\n isCurrent: isCurrent(),\n isDisabled: isDisabled(),\n isPressed: isPressed(),\n isFocused: isFocused(),\n isFocusVisible: isFocusVisible(),\n isHovered: isHovered(),\n }));\n\n const renderProps = useRenderProps(\n {\n get children() {\n return props.children;\n },\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-BreadcrumbItem\",\n },\n renderValues,\n );\n\n const mergedStyle = () => {\n const userStyle = renderProps.style();\n const baseStyle = { display: \"inline-flex\", \"align-items\": \"center\" };\n return userStyle ? { ...baseStyle, ...userStyle } : baseStyle;\n };\n\n return (\n <Dynamic\n component={elementType()}\n {...mergedItemProps()}\n ref={(element: HTMLElement) => assignRef(local.ref, element)}\n aria-current={isCurrent() ? (ariaProps[\"aria-current\"] ?? \"page\") : undefined}\n aria-disabled={isDisabled() || isCurrent() || undefined}\n class={renderProps.class()}\n style={mergedStyle()}\n data-current={isCurrent() || undefined}\n data-disabled={isDisabled() || undefined}\n data-pressed={isPressed() || undefined}\n data-focused={isFocused() || undefined}\n data-focus-visible={isFocusVisible() || undefined}\n data-hovered={isHovered() || undefined}\n >\n {renderProps.renderChildren()}\n </Dynamic>\n );\n}\n\nBreadcrumbs.Item = BreadcrumbItem;\n"],"mappings":"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"}
|
package/dist/Breadcrumbs.jsx
CHANGED
|
@@ -84,17 +84,11 @@ function Breadcrumbs(props) {
|
|
|
84
84
|
resetStaticItems,
|
|
85
85
|
setStaticItemCount
|
|
86
86
|
}}>
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
margin: 0,
|
|
93
|
-
padding: 0
|
|
94
|
-
}}>
|
|
95
|
-
<Show when={hasCollectionItems()} fallback={<StaticBreadcrumbItems>{local.children}</StaticBreadcrumbItems>}>
|
|
96
|
-
<For each={items()}>
|
|
97
|
-
{(item, index) => {
|
|
87
|
+
{}
|
|
88
|
+
<ol {...navProps} {...domProps()} ref={(element) => assignRef(local.ref, element)} class={renderProps.class()} style={renderProps.style()} data-disabled={isDisabled() || void 0}>
|
|
89
|
+
<Show when={hasCollectionItems()} fallback={<StaticBreadcrumbItems>{local.children}</StaticBreadcrumbItems>}>
|
|
90
|
+
<For each={items()}>
|
|
91
|
+
{(item, index) => {
|
|
98
92
|
const itemKey = getItemKey(item, index());
|
|
99
93
|
const isLast = () => index() === items().length - 1;
|
|
100
94
|
const renderItem = local.children;
|
|
@@ -102,18 +96,17 @@ function Breadcrumbs(props) {
|
|
|
102
96
|
display: "flex",
|
|
103
97
|
"align-items": "center"
|
|
104
98
|
}}>
|
|
105
|
-
|
|
99
|
+
<BreadcrumbItemContext.Provider value={{
|
|
106
100
|
itemKey,
|
|
107
101
|
isLast
|
|
108
102
|
}}>
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
103
|
+
{renderItem?.(item)}
|
|
104
|
+
</BreadcrumbItemContext.Provider>
|
|
105
|
+
</li>;
|
|
112
106
|
}}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
</nav>
|
|
107
|
+
</For>
|
|
108
|
+
</Show>
|
|
109
|
+
</ol>
|
|
117
110
|
</BreadcrumbsContext.Provider>;
|
|
118
111
|
}
|
|
119
112
|
function StaticBreadcrumbItems(props) {
|
|
@@ -149,12 +142,14 @@ function BreadcrumbItem(props) {
|
|
|
149
142
|
const isDisabled = () => local.isDisabled ?? context?.isDisabled() ?? false;
|
|
150
143
|
const isCurrent = () => ariaProps.isCurrent ?? itemContext?.isLast() ?? (staticIndex !== null && staticIndex !== void 0 && context?.staticItemCount !== void 0 && staticIndex === context.staticItemCount() - 1);
|
|
151
144
|
const itemKey = () => itemContext?.itemKey ?? ariaProps.id ?? null;
|
|
145
|
+
const elementType = () => ariaProps.elementType ?? (ariaProps.href && !isDisabled() && !isCurrent() ? "a" : "span");
|
|
146
|
+
const linkElementType = () => isCurrent() ? "a" : elementType();
|
|
152
147
|
const handlePress = (e) => {
|
|
153
148
|
ariaProps.onPress?.(e);
|
|
154
149
|
const key = itemKey();
|
|
155
150
|
if (key !== null && !isCurrent() && !isDisabled()) context?.onAction?.(key);
|
|
156
151
|
};
|
|
157
|
-
const
|
|
152
|
+
const itemAria = createBreadcrumbItem({
|
|
158
153
|
get id() {
|
|
159
154
|
return ariaProps.id;
|
|
160
155
|
},
|
|
@@ -174,7 +169,7 @@ function BreadcrumbItem(props) {
|
|
|
174
169
|
return ariaProps.rel;
|
|
175
170
|
},
|
|
176
171
|
get elementType() {
|
|
177
|
-
return
|
|
172
|
+
return linkElementType();
|
|
178
173
|
},
|
|
179
174
|
get onPress() {
|
|
180
175
|
return handlePress;
|
|
@@ -222,12 +217,12 @@ function BreadcrumbItem(props) {
|
|
|
222
217
|
return ariaProps["aria-current"];
|
|
223
218
|
}
|
|
224
219
|
});
|
|
220
|
+
const isPressed = itemAria.isPressed;
|
|
225
221
|
const { isFocused, isFocusVisible, focusProps } = createFocusRing();
|
|
226
222
|
const { isHovered, hoverProps } = createHover({ get isDisabled() {
|
|
227
223
|
return isDisabled();
|
|
228
224
|
} });
|
|
229
|
-
const mergedItemProps = createMemo(() => mergeProps$1(itemProps, focusProps, hoverProps));
|
|
230
|
-
const elementType = () => ariaProps.elementType ?? "a";
|
|
225
|
+
const mergedItemProps = createMemo(() => mergeProps$1(itemAria.itemProps, focusProps, hoverProps));
|
|
231
226
|
const renderValues = createMemo(() => ({
|
|
232
227
|
isCurrent: isCurrent(),
|
|
233
228
|
isDisabled: isDisabled(),
|
|
@@ -255,7 +250,7 @@ function BreadcrumbItem(props) {
|
|
|
255
250
|
...userStyle
|
|
256
251
|
} : baseStyle;
|
|
257
252
|
};
|
|
258
|
-
return <Dynamic component={elementType()} {...mergedItemProps()} ref={(element) => assignRef(local.ref, element)}
|
|
253
|
+
return <Dynamic component={elementType()} {...mergedItemProps()} ref={(element) => assignRef(local.ref, element)} aria-current={isCurrent() ? ariaProps["aria-current"] ?? "page" : void 0} aria-disabled={isDisabled() || isCurrent() || void 0} class={renderProps.class()} style={mergedStyle()} data-current={isCurrent() || void 0} data-disabled={isDisabled() || void 0} data-pressed={isPressed() || void 0} data-focused={isFocused() || void 0} data-focus-visible={isFocusVisible() || void 0} data-hovered={isHovered() || void 0}>
|
|
259
254
|
{renderProps.renderChildren()}
|
|
260
255
|
</Dynamic>;
|
|
261
256
|
}
|
package/dist/Breadcrumbs.jsx.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs.jsx","names":["resolveChildren","mergeProps"],"sources":["../src/Breadcrumbs.tsx"],"sourcesContent":["/**\n * Breadcrumbs component for solidaria-components\n *\n * A pre-wired headless breadcrumbs component that combines aria hooks.\n * Port of react-aria-components Breadcrumbs.\n */\n\nimport {\n type Accessor,\n type JSX,\n createContext,\n createMemo,\n createSignal,\n children as resolveChildren,\n splitProps,\n useContext,\n For,\n Show,\n} from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport {\n createBreadcrumbs,\n createBreadcrumbItem,\n createFocusRing,\n createHover,\n mergeProps,\n type AriaBreadcrumbsProps,\n type AriaBreadcrumbItemProps,\n type PressEvent,\n} from \"@proyecto-viviana/solidaria\";\nimport {\n type RenderChildren,\n type ClassNameOrFunction,\n type StyleOrFunction,\n type SlotProps,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\ntype RefLike<T> = ((el: T) => void) | { current?: T | null } | undefined;\n\nfunction assignRef<T>(ref: RefLike<T>, el: T): void {\n if (!ref) {\n return;\n }\n\n if (typeof ref === \"function\") {\n ref(el);\n } else {\n ref.current = el;\n }\n}\n\nexport interface BreadcrumbsRenderProps {\n /** Whether the breadcrumbs are disabled. */\n isDisabled: boolean;\n}\n\nexport interface BreadcrumbsProps<T> extends Omit<AriaBreadcrumbsProps, \"isDisabled\">, SlotProps {\n /** The items to render in the breadcrumbs. */\n items?: T[];\n /** Function to get the key from an item. */\n getKey?: (item: T) => string | number;\n /** Whether the breadcrumbs are disabled. */\n isDisabled?: boolean;\n /** Handler called when a breadcrumb item is activated. */\n onAction?: (key: string | number) => void;\n /** The children of the component, or a render function for collection items. */\n children?: JSX.Element | ((item: T) => JSX.Element);\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<BreadcrumbsRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<BreadcrumbsRenderProps>;\n /** Ref for the navigation element. */\n ref?: RefLike<HTMLElement>;\n}\n\nexport interface BreadcrumbItemRenderProps {\n /** Whether this is the current/last item. */\n isCurrent: boolean;\n /** Whether the item is disabled. */\n isDisabled: boolean;\n /** Whether the item is pressed. */\n isPressed: boolean;\n /** Whether the item is focused. */\n isFocused: boolean;\n /** Whether the item has visible focus ring. */\n isFocusVisible: boolean;\n /** Whether the item is hovered. */\n isHovered: boolean;\n}\n\nexport interface BreadcrumbItemProps\n extends Omit<AriaBreadcrumbItemProps, \"isDisabled\">, SlotProps {\n /** The children of the breadcrumb item. */\n children?: RenderChildren<BreadcrumbItemRenderProps>;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<BreadcrumbItemRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<BreadcrumbItemRenderProps>;\n /** Whether this item is disabled. */\n isDisabled?: boolean;\n /** Ref for the breadcrumb item element. */\n ref?: RefLike<HTMLElement>;\n}\n\ninterface BreadcrumbsContextValue {\n isDisabled: Accessor<boolean>;\n onAction?: (key: string | number) => void;\n registerStaticItem?: () => number;\n staticItemCount?: Accessor<number>;\n resetStaticItems?: () => void;\n setStaticItemCount?: (count: number) => void;\n}\n\nexport const BreadcrumbsContext = createContext<BreadcrumbsContextValue | null>(null);\n\ninterface BreadcrumbItemContextValue {\n itemKey: string | number | null;\n isLast: Accessor<boolean>;\n}\n\nexport const BreadcrumbItemContext = createContext<BreadcrumbItemContextValue | null>(null);\n\nfunction defaultItemKey(item: unknown, index: number): string | number {\n const maybeItem = item as { key?: string | number; id?: string | number };\n return maybeItem.key ?? maybeItem.id ?? index;\n}\n\n/**\n * Breadcrumbs show hierarchy and navigational context for a user's location within an application.\n */\nexport function Breadcrumbs<T>(props: BreadcrumbsProps<T>): JSX.Element {\n const [local, ariaProps, rest] = splitProps(\n props,\n [\"children\", \"class\", \"style\", \"slot\", \"items\", \"getKey\", \"isDisabled\", \"onAction\", \"ref\"],\n [\"aria-label\", \"aria-labelledby\", \"aria-describedby\", \"aria-details\"],\n );\n\n const isDisabled = () => local.isDisabled ?? false;\n const items = () => local.items ?? [];\n const hasCollectionItems = () => local.items !== undefined;\n const getItemKey = (item: T, index: number): string | number =>\n local.getKey?.(item) ?? defaultItemKey(item, index);\n const [staticItemCount, setStaticItemCount] = createSignal(0);\n let nextStaticIndex = 0;\n const resetStaticItems = () => {\n nextStaticIndex = 0;\n setStaticItemCount(0);\n };\n const registerStaticItem = () => {\n const index = nextStaticIndex;\n nextStaticIndex += 1;\n return index;\n };\n\n const { navProps } = createBreadcrumbs({\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n get \"aria-describedby\"() {\n return ariaProps[\"aria-describedby\"];\n },\n get isDisabled() {\n return isDisabled();\n },\n });\n\n const renderValues = createMemo<BreadcrumbsRenderProps>(() => ({\n isDisabled: isDisabled(),\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-Breadcrumbs\",\n },\n renderValues,\n );\n\n const domProps = createMemo(() =>\n filterDOMProps(rest as Record<string, unknown>, { global: true }),\n );\n return (\n <BreadcrumbsContext.Provider\n value={{\n isDisabled,\n onAction: local.onAction,\n registerStaticItem,\n staticItemCount,\n resetStaticItems,\n setStaticItemCount,\n }}\n >\n <nav\n {...navProps}\n {...domProps()}\n ref={(element) => assignRef(local.ref, element)}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={isDisabled() || undefined}\n >\n <ol\n style={{\n display: \"flex\",\n \"align-items\": \"center\",\n \"list-style\": \"none\",\n margin: 0,\n padding: 0,\n }}\n >\n <Show\n when={hasCollectionItems()}\n fallback={\n <StaticBreadcrumbItems>{local.children as JSX.Element}</StaticBreadcrumbItems>\n }\n >\n <For each={items()}>\n {(item, index) => {\n const itemKey = getItemKey(item, index());\n const isLast = () => index() === items().length - 1;\n const renderItem = local.children as ((item: T) => JSX.Element) | undefined;\n\n return (\n <li style={{ display: \"flex\", \"align-items\": \"center\" }}>\n <BreadcrumbItemContext.Provider value={{ itemKey, isLast }}>\n {renderItem?.(item)}\n </BreadcrumbItemContext.Provider>\n </li>\n );\n }}\n </For>\n </Show>\n </ol>\n </nav>\n </BreadcrumbsContext.Provider>\n );\n}\n\nfunction StaticBreadcrumbItems(props: { children?: JSX.Element }): JSX.Element {\n const context = useContext(BreadcrumbsContext);\n const staticChildren = resolveChildren(() => props.children);\n const childArray = createMemo(() => {\n context?.resetStaticItems?.();\n const array = staticChildren.toArray();\n context?.setStaticItemCount?.(array.length);\n return array;\n });\n\n return (\n <For each={childArray()}>\n {(child) => <li style={{ display: \"flex\", \"align-items\": \"center\" }}>{child}</li>}\n </For>\n );\n}\n\n/**\n * A BreadcrumbItem represents an individual breadcrumb in the navigation trail.\n */\nexport function BreadcrumbItem(props: BreadcrumbItemProps): JSX.Element {\n const [local, ariaProps] = splitProps(props, [\"class\", \"style\", \"slot\", \"isDisabled\", \"ref\"]);\n\n const context = useContext(BreadcrumbsContext);\n const itemContext = useContext(BreadcrumbItemContext);\n const staticIndex = itemContext ? null : context?.registerStaticItem?.();\n const isDisabled = () => local.isDisabled ?? context?.isDisabled() ?? false;\n const isCurrent = () =>\n ariaProps.isCurrent ??\n itemContext?.isLast() ??\n (staticIndex !== null &&\n staticIndex !== undefined &&\n context?.staticItemCount !== undefined &&\n staticIndex === context.staticItemCount() - 1);\n const itemKey = () => itemContext?.itemKey ?? ariaProps.id ?? null;\n\n const handlePress = (e: PressEvent) => {\n ariaProps.onPress?.(e);\n const key = itemKey();\n if (key !== null && !isCurrent() && !isDisabled()) {\n context?.onAction?.(key);\n }\n };\n\n const { itemProps, isPressed } = createBreadcrumbItem({\n get id() {\n return ariaProps.id;\n },\n get isCurrent() {\n return isCurrent();\n },\n get isDisabled() {\n return isDisabled();\n },\n get href() {\n return ariaProps.href;\n },\n get target() {\n return ariaProps.target;\n },\n get rel() {\n return ariaProps.rel;\n },\n get elementType() {\n return ariaProps.elementType;\n },\n get onPress() {\n return handlePress;\n },\n get onPressStart() {\n return ariaProps.onPressStart;\n },\n get onPressEnd() {\n return ariaProps.onPressEnd;\n },\n get onClick() {\n return ariaProps.onClick;\n },\n get onFocus() {\n return ariaProps.onFocus;\n },\n get onBlur() {\n return ariaProps.onBlur;\n },\n get onFocusChange() {\n return ariaProps.onFocusChange;\n },\n get onKeyDown() {\n return ariaProps.onKeyDown;\n },\n get onKeyUp() {\n return ariaProps.onKeyUp;\n },\n get autoFocus() {\n return ariaProps.autoFocus;\n },\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n get \"aria-describedby\"() {\n return ariaProps[\"aria-describedby\"];\n },\n get \"aria-details\"() {\n return ariaProps[\"aria-details\"];\n },\n get \"aria-current\"() {\n return ariaProps[\"aria-current\"];\n },\n });\n\n const { isFocused, isFocusVisible, focusProps } = createFocusRing();\n const { isHovered, hoverProps } = createHover({\n get isDisabled() {\n return isDisabled();\n },\n });\n const mergedItemProps = createMemo(() =>\n mergeProps(\n itemProps as Record<string, unknown>,\n focusProps as Record<string, unknown>,\n hoverProps as Record<string, unknown>,\n ),\n );\n const elementType = () => ariaProps.elementType ?? \"a\";\n\n const renderValues = createMemo<BreadcrumbItemRenderProps>(() => ({\n isCurrent: isCurrent(),\n isDisabled: isDisabled(),\n isPressed: isPressed(),\n isFocused: isFocused(),\n isFocusVisible: isFocusVisible(),\n isHovered: isHovered(),\n }));\n\n const renderProps = useRenderProps(\n {\n get children() {\n return props.children;\n },\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-BreadcrumbItem\",\n },\n renderValues,\n );\n\n const mergedStyle = () => {\n const userStyle = renderProps.style();\n const baseStyle = { display: \"inline-flex\", \"align-items\": \"center\" };\n return userStyle ? { ...baseStyle, ...userStyle } : baseStyle;\n };\n\n return (\n <Dynamic\n component={elementType()}\n {...mergedItemProps()}\n ref={(element: HTMLElement) => assignRef(local.ref, element)}\n href={isCurrent() ? undefined : (mergedItemProps() as { href?: string }).href}\n aria-current={isCurrent() ? (ariaProps[\"aria-current\"] ?? \"page\") : undefined}\n aria-disabled={isDisabled() || isCurrent() || undefined}\n class={renderProps.class()}\n style={mergedStyle()}\n data-current={isCurrent() || undefined}\n data-disabled={isDisabled() || undefined}\n data-pressed={isPressed() || undefined}\n data-focused={isFocused() || undefined}\n data-focus-visible={isFocusVisible() || undefined}\n data-hovered={isHovered() || undefined}\n >\n {renderProps.renderChildren()}\n </Dynamic>\n );\n}\n\nBreadcrumbs.Item = BreadcrumbItem;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.jsx","names":["resolveChildren","mergeProps"],"sources":["../src/Breadcrumbs.tsx"],"sourcesContent":["/**\n * Breadcrumbs component for solidaria-components\n *\n * A pre-wired headless breadcrumbs component that combines aria hooks.\n * Port of react-aria-components Breadcrumbs.\n */\n\nimport {\n type Accessor,\n type JSX,\n createContext,\n createMemo,\n createSignal,\n children as resolveChildren,\n splitProps,\n useContext,\n For,\n Show,\n} from \"solid-js\";\nimport { Dynamic } from \"solid-js/web\";\nimport {\n createBreadcrumbs,\n createBreadcrumbItem,\n createFocusRing,\n createHover,\n mergeProps,\n type AriaBreadcrumbsProps,\n type AriaBreadcrumbItemProps,\n type PressEvent,\n} from \"@proyecto-viviana/solidaria\";\nimport {\n type RenderChildren,\n type ClassNameOrFunction,\n type StyleOrFunction,\n type SlotProps,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\ntype RefLike<T> = ((el: T) => void) | { current?: T | null } | undefined;\n\nfunction assignRef<T>(ref: RefLike<T>, el: T): void {\n if (!ref) {\n return;\n }\n\n if (typeof ref === \"function\") {\n ref(el);\n } else {\n ref.current = el;\n }\n}\n\nexport interface BreadcrumbsRenderProps {\n /** Whether the breadcrumbs are disabled. */\n isDisabled: boolean;\n}\n\nexport interface BreadcrumbsProps<T> extends Omit<AriaBreadcrumbsProps, \"isDisabled\">, SlotProps {\n /** The items to render in the breadcrumbs. */\n items?: T[];\n /** Function to get the key from an item. */\n getKey?: (item: T) => string | number;\n /** Whether the breadcrumbs are disabled. */\n isDisabled?: boolean;\n /** Handler called when a breadcrumb item is activated. */\n onAction?: (key: string | number) => void;\n /** The children of the component, or a render function for collection items. */\n children?: JSX.Element | ((item: T) => JSX.Element);\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<BreadcrumbsRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<BreadcrumbsRenderProps>;\n /** Ref for the navigation element. */\n ref?: RefLike<HTMLElement>;\n}\n\nexport interface BreadcrumbItemRenderProps {\n /** Whether this is the current/last item. */\n isCurrent: boolean;\n /** Whether the item is disabled. */\n isDisabled: boolean;\n /** Whether the item is pressed. */\n isPressed: boolean;\n /** Whether the item is focused. */\n isFocused: boolean;\n /** Whether the item has visible focus ring. */\n isFocusVisible: boolean;\n /** Whether the item is hovered. */\n isHovered: boolean;\n}\n\nexport interface BreadcrumbItemProps\n extends Omit<AriaBreadcrumbItemProps, \"isDisabled\">, SlotProps {\n /** The children of the breadcrumb item. */\n children?: RenderChildren<BreadcrumbItemRenderProps>;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<BreadcrumbItemRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<BreadcrumbItemRenderProps>;\n /** Whether this item is disabled. */\n isDisabled?: boolean;\n /** Ref for the breadcrumb item element. */\n ref?: RefLike<HTMLElement>;\n}\n\ninterface BreadcrumbsContextValue {\n isDisabled: Accessor<boolean>;\n onAction?: (key: string | number) => void;\n registerStaticItem?: () => number;\n staticItemCount?: Accessor<number>;\n resetStaticItems?: () => void;\n setStaticItemCount?: (count: number) => void;\n}\n\nexport const BreadcrumbsContext = createContext<BreadcrumbsContextValue | null>(null);\n\ninterface BreadcrumbItemContextValue {\n itemKey: string | number | null;\n isLast: Accessor<boolean>;\n}\n\nexport const BreadcrumbItemContext = createContext<BreadcrumbItemContextValue | null>(null);\n\nfunction defaultItemKey(item: unknown, index: number): string | number {\n const maybeItem = item as { key?: string | number; id?: string | number };\n return maybeItem.key ?? maybeItem.id ?? index;\n}\n\n/**\n * Breadcrumbs show hierarchy and navigational context for a user's location within an application.\n */\nexport function Breadcrumbs<T>(props: BreadcrumbsProps<T>): JSX.Element {\n const [local, ariaProps, rest] = splitProps(\n props,\n [\"children\", \"class\", \"style\", \"slot\", \"items\", \"getKey\", \"isDisabled\", \"onAction\", \"ref\"],\n [\"aria-label\", \"aria-labelledby\", \"aria-describedby\", \"aria-details\"],\n );\n\n const isDisabled = () => local.isDisabled ?? false;\n const items = () => local.items ?? [];\n const hasCollectionItems = () => local.items !== undefined;\n const getItemKey = (item: T, index: number): string | number =>\n local.getKey?.(item) ?? defaultItemKey(item, index);\n const [staticItemCount, setStaticItemCount] = createSignal(0);\n let nextStaticIndex = 0;\n const resetStaticItems = () => {\n nextStaticIndex = 0;\n setStaticItemCount(0);\n };\n const registerStaticItem = () => {\n const index = nextStaticIndex;\n nextStaticIndex += 1;\n return index;\n };\n\n const { navProps } = createBreadcrumbs({\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n get \"aria-describedby\"() {\n return ariaProps[\"aria-describedby\"];\n },\n get isDisabled() {\n return isDisabled();\n },\n });\n\n const renderValues = createMemo<BreadcrumbsRenderProps>(() => ({\n isDisabled: isDisabled(),\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-Breadcrumbs\",\n },\n renderValues,\n );\n\n const domProps = createMemo(() =>\n filterDOMProps(rest as Record<string, unknown>, { global: true }),\n );\n return (\n <BreadcrumbsContext.Provider\n value={{\n isDisabled,\n onAction: local.onAction,\n registerStaticItem,\n staticItemCount,\n resetStaticItems,\n setStaticItemCount,\n }}\n >\n {/*\n Faithful to react-aria-components Breadcrumbs: the accessible name (navProps'\n aria-label) sits directly on the <ol> (role=\"list\"), with NO wrapping <nav>\n landmark (react-spectrum/packages/react-aria-components/src/Breadcrumbs.tsx\n renders `<dom.ol {...mergeProps(DOMProps, navProps)} style={props.style}>`).\n The <ol> carries ONLY the consumer's class/style — no hard-coded inline\n layout reset. An inline reset would beat the styled layer's class (inline\n wins over class), which is exactly what broke S2 parity: the solid-spectrum\n `wrapperStyles` class supplies display:flex / list-style:none / padding:0 /\n marginStart and deliberately leaves align-items at its `normal` default, so\n a hard-coded inline `align-items:center` + `margin:0` clobbered the\n wrapper's margin and diverged from S2 (whose <ol> has neither).\n */}\n <ol\n {...navProps}\n {...domProps()}\n ref={(element) => assignRef(local.ref, element)}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={isDisabled() || undefined}\n >\n <Show\n when={hasCollectionItems()}\n fallback={\n <StaticBreadcrumbItems>{local.children as JSX.Element}</StaticBreadcrumbItems>\n }\n >\n <For each={items()}>\n {(item, index) => {\n const itemKey = getItemKey(item, index());\n const isLast = () => index() === items().length - 1;\n const renderItem = local.children as ((item: T) => JSX.Element) | undefined;\n\n return (\n <li style={{ display: \"flex\", \"align-items\": \"center\" }}>\n <BreadcrumbItemContext.Provider value={{ itemKey, isLast }}>\n {renderItem?.(item)}\n </BreadcrumbItemContext.Provider>\n </li>\n );\n }}\n </For>\n </Show>\n </ol>\n </BreadcrumbsContext.Provider>\n );\n}\n\nfunction StaticBreadcrumbItems(props: { children?: JSX.Element }): JSX.Element {\n const context = useContext(BreadcrumbsContext);\n const staticChildren = resolveChildren(() => props.children);\n const childArray = createMemo(() => {\n context?.resetStaticItems?.();\n const array = staticChildren.toArray();\n context?.setStaticItemCount?.(array.length);\n return array;\n });\n\n return (\n <For each={childArray()}>\n {(child) => <li style={{ display: \"flex\", \"align-items\": \"center\" }}>{child}</li>}\n </For>\n );\n}\n\n/**\n * A BreadcrumbItem represents an individual breadcrumb in the navigation trail.\n */\nexport function BreadcrumbItem(props: BreadcrumbItemProps): JSX.Element {\n const [local, ariaProps] = splitProps(props, [\"class\", \"style\", \"slot\", \"isDisabled\", \"ref\"]);\n\n const context = useContext(BreadcrumbsContext);\n const itemContext = useContext(BreadcrumbItemContext);\n const staticIndex = itemContext ? null : context?.registerStaticItem?.();\n const isDisabled = () => local.isDisabled ?? context?.isDisabled() ?? false;\n const isCurrent = () =>\n ariaProps.isCurrent ??\n itemContext?.isLast() ??\n (staticIndex !== null &&\n staticIndex !== undefined &&\n context?.staticItemCount !== undefined &&\n staticIndex === context.staticItemCount() - 1);\n const itemKey = () => itemContext?.itemKey ?? ariaProps.id ?? null;\n\n // Mirror react-aria-components' Link: render an <a> only when there is an\n // href on an enabled, non-current item; otherwise fall back to a <span\n // role=\"link\"> (via createLink). A styled layer may force the element type\n // (S2 renders the current item as a plain <div>), which takes precedence.\n const elementType = () =>\n ariaProps.elementType ?? (ariaProps.href && !isDisabled() && !isCurrent() ? \"a\" : \"span\");\n // The current breadcrumb is the current page and is non-interactive: S2\n // renders it as a plain element with no link role. createLink only omits\n // role=\"link\" for an <a>, so treat the current item as an \"a\" purely for the\n // role decision while still rendering the resolved element type above.\n const linkElementType = () => (isCurrent() ? \"a\" : elementType());\n\n const handlePress = (e: PressEvent) => {\n ariaProps.onPress?.(e);\n const key = itemKey();\n if (key !== null && !isCurrent() && !isDisabled()) {\n context?.onAction?.(key);\n }\n };\n\n const itemAria = createBreadcrumbItem({\n get id() {\n return ariaProps.id;\n },\n get isCurrent() {\n return isCurrent();\n },\n get isDisabled() {\n return isDisabled();\n },\n get href() {\n return ariaProps.href;\n },\n get target() {\n return ariaProps.target;\n },\n get rel() {\n return ariaProps.rel;\n },\n get elementType() {\n return linkElementType();\n },\n get onPress() {\n return handlePress;\n },\n get onPressStart() {\n return ariaProps.onPressStart;\n },\n get onPressEnd() {\n return ariaProps.onPressEnd;\n },\n get onClick() {\n return ariaProps.onClick;\n },\n get onFocus() {\n return ariaProps.onFocus;\n },\n get onBlur() {\n return ariaProps.onBlur;\n },\n get onFocusChange() {\n return ariaProps.onFocusChange;\n },\n get onKeyDown() {\n return ariaProps.onKeyDown;\n },\n get onKeyUp() {\n return ariaProps.onKeyUp;\n },\n get autoFocus() {\n return ariaProps.autoFocus;\n },\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n get \"aria-describedby\"() {\n return ariaProps[\"aria-describedby\"];\n },\n get \"aria-details\"() {\n return ariaProps[\"aria-details\"];\n },\n get \"aria-current\"() {\n return ariaProps[\"aria-current\"];\n },\n });\n\n const isPressed = itemAria.isPressed;\n const { isFocused, isFocusVisible, focusProps } = createFocusRing();\n const { isHovered, hoverProps } = createHover({\n get isDisabled() {\n return isDisabled();\n },\n });\n // Read itemAria.itemProps fresh inside the memo (do NOT destructure it above):\n // the reactive getter re-runs createBreadcrumbItem → createLink each time this\n // memo re-evaluates, so role/tabIndex track elementType once isCurrent settles.\n const mergedItemProps = createMemo(() =>\n mergeProps(\n itemAria.itemProps as Record<string, unknown>,\n focusProps as Record<string, unknown>,\n hoverProps as Record<string, unknown>,\n ),\n );\n\n const renderValues = createMemo<BreadcrumbItemRenderProps>(() => ({\n isCurrent: isCurrent(),\n isDisabled: isDisabled(),\n isPressed: isPressed(),\n isFocused: isFocused(),\n isFocusVisible: isFocusVisible(),\n isHovered: isHovered(),\n }));\n\n const renderProps = useRenderProps(\n {\n get children() {\n return props.children;\n },\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-BreadcrumbItem\",\n },\n renderValues,\n );\n\n const mergedStyle = () => {\n const userStyle = renderProps.style();\n const baseStyle = { display: \"inline-flex\", \"align-items\": \"center\" };\n return userStyle ? { ...baseStyle, ...userStyle } : baseStyle;\n };\n\n return (\n <Dynamic\n component={elementType()}\n {...mergedItemProps()}\n ref={(element: HTMLElement) => assignRef(local.ref, element)}\n aria-current={isCurrent() ? (ariaProps[\"aria-current\"] ?? \"page\") : undefined}\n aria-disabled={isDisabled() || isCurrent() || undefined}\n class={renderProps.class()}\n style={mergedStyle()}\n data-current={isCurrent() || undefined}\n data-disabled={isDisabled() || undefined}\n data-pressed={isPressed() || undefined}\n data-focused={isFocused() || undefined}\n data-focus-visible={isFocusVisible() || undefined}\n data-hovered={isHovered() || undefined}\n >\n {renderProps.renderChildren()}\n </Dynamic>\n );\n}\n\nBreadcrumbs.Item = BreadcrumbItem;\n"],"mappings":"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"}
|
package/dist/Calendar.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../src/Calendar.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../src/Calendar.tsx"],"names":[],"mappings":"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"}
|