@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
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { filterDOMProps, useRenderProps } from "./utils.jsx";
|
|
2
|
-
import { Show, createContext, createEffect, createMemo, createSignal, on, onCleanup, splitProps, useContext } from "solid-js";
|
|
2
|
+
import { Show, createContext, createEffect, createMemo, createRenderEffect, createSignal, on, onCleanup, splitProps, untrack, useContext } from "solid-js";
|
|
3
3
|
//#region src/SharedElementTransition.tsx
|
|
4
4
|
/**
|
|
5
5
|
* SharedElementTransition primitives for solidaria-components.
|
|
@@ -41,41 +41,61 @@ function SharedElement(props) {
|
|
|
41
41
|
"ref"
|
|
42
42
|
]);
|
|
43
43
|
const [lifecycle, setLifecycle] = createSignal(local.isVisible === false ? "hidden" : "visible");
|
|
44
|
-
|
|
44
|
+
const [element, setElement] = createSignal();
|
|
45
45
|
let frame;
|
|
46
46
|
const setRef = (el) => {
|
|
47
|
-
|
|
47
|
+
setElement(el);
|
|
48
48
|
const userRef = local.ref;
|
|
49
49
|
if (typeof userRef === "function") userRef(el);
|
|
50
50
|
else if (userRef !== void 0) userRef.current = el;
|
|
51
51
|
};
|
|
52
|
-
|
|
52
|
+
const storeSnapshot = () => {
|
|
53
|
+
const el = untrack(element);
|
|
54
|
+
if (el && el.isConnected && !el.hasAttribute("data-exiting")) {
|
|
55
|
+
const style = window.getComputedStyle(el);
|
|
56
|
+
if (style.transitionProperty !== "none") {
|
|
57
|
+
const transitionProperty = style.transitionProperty.split(/\s*,\s*/);
|
|
58
|
+
scope.snapshots[local.name] = {
|
|
59
|
+
rect: el.getBoundingClientRect(),
|
|
60
|
+
style: transitionProperty.map((property) => [property, style.getPropertyValue(property)])
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
createRenderEffect(on(() => local.isVisible !== false, (isVisible) => {
|
|
66
|
+
if (isVisible && untrack(lifecycle) === "hidden") setLifecycle("visible");
|
|
67
|
+
}));
|
|
68
|
+
createRenderEffect(on(() => local.isVisible !== false, (isVisible) => {
|
|
69
|
+
onCleanup(() => {
|
|
70
|
+
if (isVisible) storeSnapshot();
|
|
71
|
+
});
|
|
72
|
+
}));
|
|
73
|
+
createEffect(on([() => local.isVisible !== false, element], ([isVisible, el]) => {
|
|
53
74
|
const name = local.name;
|
|
54
|
-
const element = elementRef;
|
|
55
75
|
if (frame != null) {
|
|
56
76
|
cancelAnimationFrame(frame);
|
|
57
77
|
frame = void 0;
|
|
58
78
|
}
|
|
59
|
-
if (isVisible &&
|
|
79
|
+
if (isVisible && el) {
|
|
60
80
|
const prevSnapshot = scope.snapshots[name];
|
|
61
81
|
if (prevSnapshot) {
|
|
62
82
|
setLifecycle("visible");
|
|
63
|
-
const animations = getAnimations(
|
|
83
|
+
const animations = getAnimations(el);
|
|
64
84
|
const values = prevSnapshot.style.map(([property, prevValue]) => {
|
|
65
|
-
const value =
|
|
85
|
+
const value = el.style.getPropertyValue(property);
|
|
66
86
|
if (property === "translate") {
|
|
67
87
|
const prevRect = prevSnapshot.rect;
|
|
68
|
-
const currentRect =
|
|
88
|
+
const currentRect = el.getBoundingClientRect();
|
|
69
89
|
const deltaX = prevRect.left - currentRect.left;
|
|
70
90
|
const deltaY = prevRect.top - currentRect.top;
|
|
71
|
-
|
|
72
|
-
} else
|
|
91
|
+
el.style.setProperty("translate", `${deltaX}px ${deltaY}px`);
|
|
92
|
+
} else el.style.setProperty(property, prevValue);
|
|
73
93
|
return [property, value];
|
|
74
94
|
});
|
|
75
|
-
for (const a of getAnimations(
|
|
95
|
+
for (const a of getAnimations(el)) if (!animations.includes(a)) a.cancel();
|
|
76
96
|
frame = requestAnimationFrame(() => {
|
|
77
97
|
frame = void 0;
|
|
78
|
-
for (const [property, value] of values)
|
|
98
|
+
for (const [property, value] of values) el.style.setProperty(property, value);
|
|
79
99
|
});
|
|
80
100
|
delete scope.snapshots[name];
|
|
81
101
|
} else {
|
|
@@ -85,34 +105,16 @@ function SharedElement(props) {
|
|
|
85
105
|
setLifecycle("visible");
|
|
86
106
|
});
|
|
87
107
|
}
|
|
88
|
-
} else if (!isVisible &&
|
|
108
|
+
} else if (!isVisible && el) queueMicrotask(() => {
|
|
89
109
|
if (scope.snapshots[name]) {
|
|
90
110
|
delete scope.snapshots[name];
|
|
91
111
|
setLifecycle("exiting");
|
|
92
|
-
Promise.all(getAnimations(
|
|
112
|
+
Promise.all(getAnimations(el).map((a) => a.finished)).then(() => setLifecycle("hidden")).catch(() => {});
|
|
93
113
|
} else setLifecycle("hidden");
|
|
94
114
|
});
|
|
95
|
-
else if (isVisible) {
|
|
96
|
-
setLifecycle("entering");
|
|
97
|
-
frame = requestAnimationFrame(() => {
|
|
98
|
-
frame = void 0;
|
|
99
|
-
setLifecycle("visible");
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
115
|
}));
|
|
103
116
|
onCleanup(() => {
|
|
104
117
|
if (frame != null) cancelAnimationFrame(frame);
|
|
105
|
-
const element = elementRef;
|
|
106
|
-
if (element && element.isConnected && !element.hasAttribute("data-exiting")) {
|
|
107
|
-
const style = window.getComputedStyle(element);
|
|
108
|
-
if (style.transitionProperty !== "none") {
|
|
109
|
-
const transitionProperty = style.transitionProperty.split(/\s*,\s*/);
|
|
110
|
-
scope.snapshots[local.name] = {
|
|
111
|
-
rect: element.getBoundingClientRect(),
|
|
112
|
-
style: transitionProperty.map((property) => [property, style.getPropertyValue(property)])
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
118
|
});
|
|
117
119
|
const renderProps = useRenderProps({
|
|
118
120
|
get children() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SharedElementTransition.jsx","names":[],"sources":["../src/SharedElementTransition.tsx"],"sourcesContent":["/**\n * SharedElementTransition primitives for solidaria-components.\n *\n * Provides FLIP-based shared element animations when elements move between\n * parents within a scope. Captures geometry snapshots on unmount and applies\n * transition animations on mount.\n *\n * Parity target: react-aria-components/src/SharedElementTransition.tsx\n */\n\nimport {\n type JSX,\n createContext,\n createEffect,\n createMemo,\n createSignal,\n onCleanup,\n splitProps,\n useContext,\n Show,\n on,\n} from \"solid-js\";\nimport {\n type ClassNameOrFunction,\n type StyleOrFunction,\n type RenderChildren,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\ntype SharedElementLifecycle = \"hidden\" | \"entering\" | \"visible\" | \"exiting\";\n\n/** Safe wrapper — jsdom doesn't implement the Web Animations API. */\nfunction getAnimations(el: HTMLElement): Animation[] {\n return typeof el.getAnimations === \"function\" ? el.getAnimations() : [];\n}\n\ninterface Snapshot {\n rect: DOMRect;\n style: [string, string][];\n}\n\ninterface SharedElementScope {\n snapshots: { [name: string]: Snapshot };\n}\n\nconst SharedElementContext = createContext<SharedElementScope | null>(null);\n\nexport function useHasSharedElementTransitionScope(): boolean {\n return useContext(SharedElementContext) != null;\n}\n\nexport interface SharedElementTransitionProps {\n children?: JSX.Element;\n}\n\n/**\n * A scope for SharedElements, which animate between parents.\n */\nexport function SharedElementTransition(props: SharedElementTransitionProps): JSX.Element {\n const scope: SharedElementScope = {\n snapshots: {},\n };\n\n return (\n <SharedElementContext.Provider value={scope}>{props.children}</SharedElementContext.Provider>\n );\n}\n\nexport interface SharedElementRenderProps {\n isEntering: boolean;\n isExiting: boolean;\n}\n\nexport interface SharedElementPropsBase extends Omit<\n JSX.HTMLAttributes<HTMLDivElement>,\n \"children\" | \"class\" | \"style\" | \"ref\"\n> {\n children?: RenderChildren<SharedElementRenderProps>;\n class?: ClassNameOrFunction<SharedElementRenderProps>;\n style?: StyleOrFunction<SharedElementRenderProps>;\n}\n\nexport interface SharedElementProps extends SharedElementPropsBase {\n name: string;\n isVisible?: boolean;\n ref?: ((el: HTMLDivElement) => void) | { current?: HTMLDivElement };\n}\n\n/**\n * An element that animates between its old and new position when moving\n * between parents within a SharedElementTransition scope.\n */\nexport function SharedElement(props: SharedElementProps): JSX.Element | null {\n const scope = useContext(SharedElementContext);\n if (!scope) {\n throw new Error(\"<SharedElement> must be rendered inside a <SharedElementTransition>\");\n }\n\n const [local, domProps] = splitProps(props, [\n \"name\",\n \"isVisible\",\n \"children\",\n \"class\",\n \"style\",\n \"ref\",\n ]);\n\n const [lifecycle, setLifecycle] = createSignal<SharedElementLifecycle>(\n local.isVisible === false ? \"hidden\" : \"visible\",\n );\n\n let elementRef: HTMLDivElement | undefined;\n let frame: number | undefined;\n\n const setRef = (el: HTMLDivElement) => {\n elementRef = el;\n // Forward ref to consumer\n const userRef = local.ref;\n if (typeof userRef === \"function\") {\n userRef(el);\n } else if (userRef !== undefined) {\n userRef.current = el;\n }\n };\n\n // Handle visibility transitions with FLIP animation\n createEffect(\n on(\n () => local.isVisible !== false,\n (isVisible) => {\n const name = local.name;\n const element = elementRef;\n\n if (frame != null) {\n cancelAnimationFrame(frame);\n frame = undefined;\n }\n\n if (isVisible && element) {\n const prevSnapshot = scope.snapshots[name];\n\n if (prevSnapshot) {\n // FLIP: Element is transitioning from a previous instance.\n setLifecycle(\"visible\");\n const animations = getAnimations(element);\n\n // Set properties to animate from.\n const values = prevSnapshot.style.map(([property, prevValue]) => {\n const value = element.style.getPropertyValue(property);\n if (property === \"translate\") {\n const prevRect = prevSnapshot.rect;\n const currentRect = element.getBoundingClientRect();\n const deltaX = prevRect.left - currentRect.left;\n const deltaY = prevRect.top - currentRect.top;\n element.style.setProperty(\"translate\", `${deltaX}px ${deltaY}px`);\n } else {\n element.style.setProperty(property, prevValue);\n }\n return [property, value] as [string, string];\n });\n\n // Cancel any new animations triggered by these properties.\n for (const a of getAnimations(element)) {\n if (!animations.includes(a)) {\n a.cancel();\n }\n }\n\n // Remove overrides after one frame to animate to the current values.\n frame = requestAnimationFrame(() => {\n frame = undefined;\n for (const [property, value] of values) {\n element.style.setProperty(property, value);\n }\n });\n\n delete scope.snapshots[name];\n } else {\n // No previous instance exists, apply the entering state.\n queueMicrotask(() => setLifecycle(\"entering\"));\n frame = requestAnimationFrame(() => {\n frame = undefined;\n setLifecycle(\"visible\");\n });\n }\n } else if (!isVisible && element) {\n // Wait a microtask to check if a snapshot still exists (meaning no new\n // SharedElement consumed it), then enter exiting state.\n queueMicrotask(() => {\n if (scope.snapshots[name]) {\n delete scope.snapshots[name];\n setLifecycle(\"exiting\");\n // Wait for animations to finish before hiding.\n Promise.all(getAnimations(element).map((a) => a.finished))\n .then(() => setLifecycle(\"hidden\"))\n .catch(() => {});\n } else {\n // Snapshot was consumed by another instance, unmount immediately.\n setLifecycle(\"hidden\");\n }\n });\n } else if (isVisible) {\n // Element not yet in DOM, entering fresh\n setLifecycle(\"entering\");\n frame = requestAnimationFrame(() => {\n frame = undefined;\n setLifecycle(\"visible\");\n });\n }\n },\n ),\n );\n\n // Capture snapshot on cleanup (unmount)\n onCleanup(() => {\n if (frame != null) {\n cancelAnimationFrame(frame);\n }\n\n const element = elementRef;\n if (element && element.isConnected && !element.hasAttribute(\"data-exiting\")) {\n // Store a snapshot of the rectangle and computed style for transitioning properties.\n const style = window.getComputedStyle(element);\n if (style.transitionProperty !== \"none\") {\n const transitionProperty = style.transitionProperty.split(/\\s*,\\s*/);\n scope.snapshots[local.name] = {\n rect: element.getBoundingClientRect(),\n style: transitionProperty.map((property) => [property, style.getPropertyValue(property)]),\n };\n }\n }\n });\n\n const renderProps = useRenderProps(\n {\n get children() {\n return local.children;\n },\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-SharedElement\",\n },\n () => ({\n isEntering: lifecycle() === \"entering\",\n isExiting: lifecycle() === \"exiting\",\n }),\n );\n\n const filteredDomProps = createMemo(() => filterDOMProps(domProps, { global: true }));\n\n return (\n <Show when={lifecycle() !== \"hidden\"}>\n <div\n ref={setRef}\n {...filteredDomProps()}\n class={renderProps.class()}\n style={renderProps.style()}\n data-entering={lifecycle() === \"entering\" || undefined}\n data-exiting={lifecycle() === \"exiting\" || undefined}\n >\n {renderProps.renderChildren()}\n </div>\n </Show>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SharedElementTransition.jsx","names":[],"sources":["../src/SharedElementTransition.tsx"],"sourcesContent":["/**\n * SharedElementTransition primitives for solidaria-components.\n *\n * Provides FLIP-based shared element animations when elements move between\n * parents within a scope. Captures geometry snapshots on unmount and applies\n * transition animations on mount.\n *\n * Parity target: react-aria-components/src/SharedElementTransition.tsx\n */\n\nimport {\n type JSX,\n createContext,\n createEffect,\n createMemo,\n createRenderEffect,\n createSignal,\n onCleanup,\n splitProps,\n untrack,\n useContext,\n Show,\n on,\n} from \"solid-js\";\nimport {\n type ClassNameOrFunction,\n type StyleOrFunction,\n type RenderChildren,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\ntype SharedElementLifecycle = \"hidden\" | \"entering\" | \"visible\" | \"exiting\";\n\n/** Safe wrapper — jsdom doesn't implement the Web Animations API. */\nfunction getAnimations(el: HTMLElement): Animation[] {\n return typeof el.getAnimations === \"function\" ? el.getAnimations() : [];\n}\n\ninterface Snapshot {\n rect: DOMRect;\n style: [string, string][];\n}\n\ninterface SharedElementScope {\n snapshots: { [name: string]: Snapshot };\n}\n\nconst SharedElementContext = createContext<SharedElementScope | null>(null);\n\nexport function useHasSharedElementTransitionScope(): boolean {\n return useContext(SharedElementContext) != null;\n}\n\nexport interface SharedElementTransitionProps {\n children?: JSX.Element;\n}\n\n/**\n * A scope for SharedElements, which animate between parents.\n */\nexport function SharedElementTransition(props: SharedElementTransitionProps): JSX.Element {\n const scope: SharedElementScope = {\n snapshots: {},\n };\n\n return (\n <SharedElementContext.Provider value={scope}>{props.children}</SharedElementContext.Provider>\n );\n}\n\nexport interface SharedElementRenderProps {\n isEntering: boolean;\n isExiting: boolean;\n}\n\nexport interface SharedElementPropsBase extends Omit<\n JSX.HTMLAttributes<HTMLDivElement>,\n \"children\" | \"class\" | \"style\" | \"ref\"\n> {\n children?: RenderChildren<SharedElementRenderProps>;\n class?: ClassNameOrFunction<SharedElementRenderProps>;\n style?: StyleOrFunction<SharedElementRenderProps>;\n}\n\nexport interface SharedElementProps extends SharedElementPropsBase {\n name: string;\n isVisible?: boolean;\n ref?: ((el: HTMLDivElement) => void) | { current?: HTMLDivElement };\n}\n\n/**\n * An element that animates between its old and new position when moving\n * between parents within a SharedElementTransition scope.\n */\nexport function SharedElement(props: SharedElementProps): JSX.Element | null {\n const scope = useContext(SharedElementContext);\n if (!scope) {\n throw new Error(\"<SharedElement> must be rendered inside a <SharedElementTransition>\");\n }\n\n const [local, domProps] = splitProps(props, [\n \"name\",\n \"isVisible\",\n \"children\",\n \"class\",\n \"style\",\n \"ref\",\n ]);\n\n const [lifecycle, setLifecycle] = createSignal<SharedElementLifecycle>(\n local.isVisible === false ? \"hidden\" : \"visible\",\n );\n\n // The mounted div, tracked as a signal so the FLIP-read effect below REACTS to\n // it appearing. React guarantees `ref.current` is committed before the layout\n // effect body runs; Solid gives no such ordering between the `<Show>`'s\n // insertion render-effect and a plain createEffect, so we make the read depend\n // on the element instead of racing its mount (see READ PHASE).\n const [element, setElement] = createSignal<HTMLDivElement | undefined>();\n let frame: number | undefined;\n\n const setRef = (el: HTMLDivElement) => {\n setElement(el);\n // Forward ref to consumer\n const userRef = local.ref;\n if (typeof userRef === \"function\") {\n userRef(el);\n } else if (userRef !== undefined) {\n userRef.current = el;\n }\n };\n\n // Store a geometry + transition-style snapshot of the currently-mounted\n // element, so a sibling SharedElement with the same `name` can FLIP from it.\n // Mirrors upstream's layout-effect *cleanup*\n // (react-aria-components/src/SharedElementTransition.tsx), which runs for\n // every `isVisible` flip — not only on unmount.\n const storeSnapshot = () => {\n const el = untrack(element);\n if (el && el.isConnected && !el.hasAttribute(\"data-exiting\")) {\n // Store a snapshot of the rectangle and computed style for transitioning properties.\n const style = window.getComputedStyle(el);\n if (style.transitionProperty !== \"none\") {\n const transitionProperty = style.transitionProperty.split(/\\s*,\\s*/);\n scope.snapshots[local.name] = {\n rect: el.getBoundingClientRect(),\n style: transitionProperty.map((property) => [property, style.getPropertyValue(property)]),\n };\n }\n }\n };\n\n // MOUNT-IN-RENDER — mirrors upstream's render-phase\n // `if (isVisible && state === 'hidden') setState('visible')`. Promoting a\n // hidden element to visible in the render phase mounts its div (via the\n // `<Show>` below) BEFORE the FLIP-read createEffect runs, so the incoming\n // element is in the DOM to be measured and translated. Without this the\n // incoming element's ref is still null when the read effect fires and it can\n // only enter fresh — never FLIP. Keyed on `isVisible` (untracked lifecycle\n // read) so it cannot loop.\n createRenderEffect(\n on(\n () => local.isVisible !== false,\n (isVisible) => {\n if (isVisible && untrack(lifecycle) === \"hidden\") {\n setLifecycle(\"visible\");\n }\n },\n ),\n );\n\n // STORE PHASE — a render effect runs before user effects within a Solid\n // batch, exactly as React runs all layout-effect destroys before any create.\n // The cleanup registered here fires on the *next* `isVisible` change (and on\n // disposal), capturing the outgoing snapshot BEFORE any sibling's FLIP-read\n // createEffect below runs — React's two-phase commit. Only the cleanup\n // registered while VISIBLE stores (an outgoing element); an incoming\n // element's prior cleanup was registered while hidden and must not clobber\n // the outgoing snapshot. This mirrors React closing over `element =\n // ref.current`, which is null while hidden.\n createRenderEffect(\n on(\n () => local.isVisible !== false,\n (isVisible) => {\n onCleanup(() => {\n if (isVisible) {\n storeSnapshot();\n }\n });\n },\n ),\n );\n\n // READ PHASE — mirrors upstream's layout-effect body, which reads the freshly\n // committed `ref.current`. Keying on the `element` signal (not just isVisible)\n // makes this run only once the incoming div is actually mounted: when isVisible\n // flips true the mount-in-render effect above mounts the div, `setRef` sets the\n // signal, and this effect runs with `el` present — never against a null ref.\n // (Solid batches, so an isVisible flip + the resulting mount coalesce into one\n // run with the mounted element.) There is therefore no \"element not yet in DOM\"\n // fresh-enter branch: with no committed div there is nothing to measure, so we\n // wait — exactly as React never runs the body before commit.\n createEffect(\n on(\n [() => local.isVisible !== false, element] as const,\n ([isVisible, el]) => {\n const name = local.name;\n\n if (frame != null) {\n cancelAnimationFrame(frame);\n frame = undefined;\n }\n\n if (isVisible && el) {\n const prevSnapshot = scope.snapshots[name];\n\n if (prevSnapshot) {\n // FLIP: Element is transitioning from a previous instance.\n setLifecycle(\"visible\");\n const animations = getAnimations(el);\n\n // Set properties to animate from.\n const values = prevSnapshot.style.map(([property, prevValue]) => {\n const value = el.style.getPropertyValue(property);\n if (property === \"translate\") {\n const prevRect = prevSnapshot.rect;\n const currentRect = el.getBoundingClientRect();\n const deltaX = prevRect.left - currentRect.left;\n const deltaY = prevRect.top - currentRect.top;\n el.style.setProperty(\"translate\", `${deltaX}px ${deltaY}px`);\n } else {\n el.style.setProperty(property, prevValue);\n }\n return [property, value] as [string, string];\n });\n\n // Cancel any new animations triggered by these properties.\n for (const a of getAnimations(el)) {\n if (!animations.includes(a)) {\n a.cancel();\n }\n }\n\n // Remove overrides after one frame to animate to the current values.\n frame = requestAnimationFrame(() => {\n frame = undefined;\n for (const [property, value] of values) {\n el.style.setProperty(property, value);\n }\n });\n\n delete scope.snapshots[name];\n } else {\n // No previous instance exists, apply the entering state.\n queueMicrotask(() => setLifecycle(\"entering\"));\n frame = requestAnimationFrame(() => {\n frame = undefined;\n setLifecycle(\"visible\");\n });\n }\n } else if (!isVisible && el) {\n // Wait a microtask to check if a snapshot still exists (meaning no new\n // SharedElement consumed it), then enter exiting state.\n queueMicrotask(() => {\n if (scope.snapshots[name]) {\n delete scope.snapshots[name];\n setLifecycle(\"exiting\");\n // Wait for animations to finish before hiding.\n Promise.all(getAnimations(el).map((a) => a.finished))\n .then(() => setLifecycle(\"hidden\"))\n .catch(() => {});\n } else {\n // Snapshot was consumed by another instance, unmount immediately.\n setLifecycle(\"hidden\");\n }\n });\n }\n },\n ),\n );\n\n // Cancel any pending FLIP frame on disposal. The snapshot store lives in the\n // render-effect cleanup above, which also fires on disposal.\n onCleanup(() => {\n if (frame != null) {\n cancelAnimationFrame(frame);\n }\n });\n\n const renderProps = useRenderProps(\n {\n get children() {\n return local.children;\n },\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-SharedElement\",\n },\n () => ({\n isEntering: lifecycle() === \"entering\",\n isExiting: lifecycle() === \"exiting\",\n }),\n );\n\n const filteredDomProps = createMemo(() => filterDOMProps(domProps, { global: true }));\n\n return (\n <Show when={lifecycle() !== \"hidden\"}>\n <div\n ref={setRef}\n {...filteredDomProps()}\n class={renderProps.class()}\n style={renderProps.style()}\n data-entering={lifecycle() === \"entering\" || undefined}\n data-exiting={lifecycle() === \"exiting\" || undefined}\n >\n {renderProps.renderChildren()}\n </div>\n </Show>\n );\n}\n"],"mappings":"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"}
|
package/dist/StepList.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepList.d.ts","sourceRoot":"","sources":["../src/StepList.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"StepList.d.ts","sourceRoot":"","sources":["../src/StepList.tsx"],"names":[],"mappings":"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"}
|
package/dist/StepList.js
CHANGED
|
@@ -144,11 +144,6 @@ function Step(props) {
|
|
|
144
144
|
if (selectable()) state.setSelectedKey(local.item.key);
|
|
145
145
|
}
|
|
146
146
|
};
|
|
147
|
-
const stepStateText = () => {
|
|
148
|
-
if (isSelected()) return "Current";
|
|
149
|
-
if (isCompleted()) return "Completed";
|
|
150
|
-
return "Not completed";
|
|
151
|
-
};
|
|
152
147
|
return (() => {
|
|
153
148
|
var _el$2 = getNextElement(_tmpl$2), _el$3 = _el$2.firstChild;
|
|
154
149
|
spread(_el$2, mergeProps(domProps, {
|
|
@@ -175,17 +170,15 @@ function Step(props) {
|
|
|
175
170
|
_el$3.$$click = handleClick;
|
|
176
171
|
insert(_el$3, () => local.children);
|
|
177
172
|
effect((_p$) => {
|
|
178
|
-
var _v$ = isSelected() ? "step" : void 0, _v$2 = !selectable() ? true : void 0, _v$3 = selectable() ? 0 : void 0
|
|
173
|
+
var _v$ = isSelected() ? "step" : void 0, _v$2 = !selectable() ? true : void 0, _v$3 = selectable() ? 0 : void 0;
|
|
179
174
|
_v$ !== _p$.e && setAttribute(_el$3, "aria-current", _p$.e = _v$);
|
|
180
175
|
_v$2 !== _p$.t && setAttribute(_el$3, "aria-disabled", _p$.t = _v$2);
|
|
181
176
|
_v$3 !== _p$.a && setAttribute(_el$3, "tabindex", _p$.a = _v$3);
|
|
182
|
-
_v$4 !== _p$.o && setAttribute(_el$3, "aria-label", _p$.o = _v$4);
|
|
183
177
|
return _p$;
|
|
184
178
|
}, {
|
|
185
179
|
e: void 0,
|
|
186
180
|
t: void 0,
|
|
187
|
-
a: void 0
|
|
188
|
-
o: void 0
|
|
181
|
+
a: void 0
|
|
189
182
|
});
|
|
190
183
|
runHydrationEvents();
|
|
191
184
|
return _el$2;
|
package/dist/StepList.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepList.js","names":["JSX","createContext","createMemo","splitProps","useContext","For","createStepListState","StepListState","StepListStateProps","Key","createStepList","AriaStepListProps","ClassNameOrFunction","StyleOrFunction","useRenderProps","filterDOMProps","StepListItemRenderProps","isSelected","isCompleted","isDisabled","isSelectable","stepNumber","stepStateText","StepListRenderProps","StepListProps","key","label","items","T","selectedKey","defaultSelectedKey","onSelectionChange","lastCompletedStep","defaultLastCompletedStep","onLastCompletedStepChange","isReadOnly","disabledKeys","Iterable","children","item","state","Element","class","style","StepProps","CSSProperties","StepListStateContext","StepListContext","useStepListState","ctx","Error","StepList","props","local","ariaProps","domRest","stateProps","stepListProps","aria-label","aria-labelledby","renderValues","renderProps","defaultClassName","domProps","Record","global","_$createComponent","Provider","value","_el$","_$getNextElement","_tmpl$","_$spread","_$mergeProps","data-disabled","undefined","_$insert","each","index","_$runHydrationEvents","Step","selectable","handleClick","e","MouseEvent","preventDefault","setSelectedKey","handleKeyDown","KeyboardEvent","_el$2","_tmpl$2","_el$3","firstChild","data-selected","data-completed","data-selectable","_$addEventListener","$$click","_$effect","_p$","_v$","_v$2","_v$3","_v$4","_$setAttribute","t","a","o","_$delegateEvents"],"sources":["../src/StepList.tsx"],"sourcesContent":["/**\n * StepList component for solidaria-components\n *\n * A pre-wired headless step list component that combines state + aria hooks.\n * Renders an ordered list of steps with completion tracking.\n */\n\nimport { type JSX, createContext, createMemo, splitProps, useContext, For } from \"solid-js\";\nimport {\n createStepListState,\n type StepListState,\n type StepListStateProps,\n type Key,\n} from \"@proyecto-viviana/solid-stately\";\nimport { createStepList, type AriaStepListProps } from \"@proyecto-viviana/solidaria\";\nimport {\n type ClassNameOrFunction,\n type StyleOrFunction,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\nexport interface StepListItemRenderProps {\n /** Whether this step is currently selected. */\n isSelected: boolean;\n /** Whether this step is completed. */\n isCompleted: boolean;\n /** Whether this step is disabled. */\n isDisabled: boolean;\n /** Whether this step can be selected. */\n isSelectable: boolean;\n /** The 1-based step number. */\n stepNumber: number;\n /** Accessible text describing the step state. */\n stepStateText: string;\n}\n\nexport interface StepListRenderProps {\n /** Whether the step list is disabled. */\n isDisabled: boolean;\n}\n\nexport interface StepListProps<T extends { key: Key; label: string }> extends AriaStepListProps {\n /** The step items. */\n items: T[];\n /** The currently selected step key (controlled). */\n selectedKey?: Key;\n /** The default selected step key (uncontrolled). */\n defaultSelectedKey?: Key;\n /** Called when the selected step changes. */\n onSelectionChange?: (key: Key) => void;\n /** The last completed step key (controlled). */\n lastCompletedStep?: Key;\n /** The default last completed step key (uncontrolled). */\n defaultLastCompletedStep?: Key;\n /** Called when last completed step changes. */\n onLastCompletedStepChange?: (key: Key | null) => void;\n /** Whether all steps are disabled. */\n isDisabled?: boolean;\n /** Whether all steps are read-only. */\n isReadOnly?: boolean;\n /** Keys of individually disabled steps. */\n disabledKeys?: Iterable<Key>;\n /** Render function for each step item. */\n children: (item: T, state: StepListItemRenderProps) => JSX.Element;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<StepListRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<StepListRenderProps>;\n}\n\nexport interface StepProps {\n /** The step item. */\n item: { key: Key; label: string };\n /** The 1-based step number. */\n stepNumber: number;\n /** The children to render inside the step. */\n children?: JSX.Element;\n /** The CSS className for the element. */\n class?: string;\n /** The inline style for the element. */\n style?: JSX.CSSProperties;\n}\n\nexport const StepListStateContext = createContext<StepListState | null>(null);\nexport const StepListContext = createContext<{} | null>(null);\n\nexport function useStepListState(): StepListState {\n const ctx = useContext(StepListStateContext);\n if (!ctx) throw new Error(\"useStepListState must be used within a StepList\");\n return ctx;\n}\n\n/**\n * StepList displays a sequence of steps with completion tracking and selection.\n */\nexport function StepList<T extends { key: Key; label: string }>(\n props: StepListProps<T>,\n): JSX.Element {\n const [local, ariaProps, domRest] = splitProps(\n props,\n [\n \"items\",\n \"selectedKey\",\n \"defaultSelectedKey\",\n \"onSelectionChange\",\n \"lastCompletedStep\",\n \"defaultLastCompletedStep\",\n \"onLastCompletedStepChange\",\n \"isDisabled\",\n \"isReadOnly\",\n \"disabledKeys\",\n \"children\",\n \"class\",\n \"style\",\n ],\n [\"aria-label\", \"aria-labelledby\"],\n );\n\n const stateProps = createMemo<StepListStateProps>(() => ({\n items: local.items,\n selectedKey: local.selectedKey,\n defaultSelectedKey: local.defaultSelectedKey,\n onSelectionChange: local.onSelectionChange,\n lastCompletedStep: local.lastCompletedStep,\n defaultLastCompletedStep: local.defaultLastCompletedStep,\n onLastCompletedStepChange: local.onLastCompletedStepChange,\n isDisabled: local.isDisabled,\n isReadOnly: local.isReadOnly,\n disabledKeys: local.disabledKeys,\n }));\n\n const state = createStepListState(stateProps());\n\n // Create ARIA props\n const { stepListProps } = createStepList(\n {\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n },\n state,\n );\n\n const renderValues = createMemo<StepListRenderProps>(() => ({\n isDisabled: state.isDisabled(),\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-StepList\",\n },\n renderValues,\n );\n\n const domProps = createMemo(() =>\n filterDOMProps(domRest as Record<string, unknown>, { global: true }),\n );\n\n return (\n <StepListStateContext.Provider value={state}>\n <ol\n {...stepListProps}\n {...domProps()}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={state.isDisabled() || undefined}\n >\n <For each={local.items}>\n {(item, index) => {\n const stepNumber = () => index() + 1;\n\n // Build render props as a static snapshot for the initial render.\n const renderProps: StepListItemRenderProps = {\n get isSelected() {\n return state.selectedKey() === item.key;\n },\n get isCompleted() {\n return state.isCompleted(item.key);\n },\n get isDisabled() {\n return state.isDisabled() || !state.isSelectable(item.key);\n },\n get isSelectable() {\n return state.isSelectable(item.key);\n },\n get stepNumber() {\n return stepNumber();\n },\n get stepStateText() {\n if (state.selectedKey() === item.key) return \"Current\";\n if (state.isCompleted(item.key)) return \"Completed\";\n return \"Not completed\";\n },\n };\n\n return local.children(item, renderProps);\n }}\n </For>\n </ol>\n </StepListStateContext.Provider>\n );\n}\n\n/**\n * Step represents an individual step within a StepList.\n * Renders as an `<li>` wrapping an `<a>` with accessible step props.\n */\nexport function Step(props: StepProps): JSX.Element {\n const [local, domProps] = splitProps(props, [\"item\", \"stepNumber\", \"children\", \"class\", \"style\"]);\n\n const state = useStepListState();\n\n const isSelected = () => state.selectedKey() === local.item.key;\n const isCompleted = () => state.isCompleted(local.item.key);\n const selectable = () => state.isSelectable(local.item.key);\n\n const handleClick = (e: MouseEvent) => {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(local.item.key);\n }\n };\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === \"ArrowUp\" || e.key === \"ArrowDown\") {\n e.preventDefault();\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(local.item.key);\n }\n }\n };\n\n const stepStateText = () => {\n if (isSelected()) return \"Current\";\n if (isCompleted()) return \"Completed\";\n return \"Not completed\";\n };\n\n return (\n <li\n {...domProps}\n class={local.class}\n style={local.style}\n data-selected={isSelected() || undefined}\n data-completed={isCompleted() || undefined}\n data-disabled={!selectable() || undefined}\n data-selectable={selectable() || undefined}\n >\n <a\n role=\"link\"\n aria-current={isSelected() ? \"step\" : undefined}\n aria-disabled={!selectable() ? true : undefined}\n tabIndex={selectable() ? 0 : undefined}\n onClick={handleClick}\n on:keydown={handleKeyDown}\n aria-label={`Step ${local.stepNumber}: ${local.item.label}, ${stepStateText()}`}\n >\n {local.children}\n </a>\n </li>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StepList.js","names":["JSX","createContext","createMemo","splitProps","useContext","For","createStepListState","StepListState","StepListStateProps","Key","createStepList","AriaStepListProps","ClassNameOrFunction","StyleOrFunction","useRenderProps","filterDOMProps","StepListItemRenderProps","isSelected","isCompleted","isDisabled","isSelectable","stepNumber","stepStateText","StepListRenderProps","StepListProps","key","label","items","T","selectedKey","defaultSelectedKey","onSelectionChange","lastCompletedStep","defaultLastCompletedStep","onLastCompletedStepChange","isReadOnly","disabledKeys","Iterable","children","item","state","Element","class","style","StepProps","CSSProperties","StepListStateContext","StepListContext","useStepListState","ctx","Error","StepList","props","local","ariaProps","domRest","stateProps","stepListProps","aria-label","aria-labelledby","renderValues","renderProps","defaultClassName","domProps","Record","global","_$createComponent","Provider","value","_el$","_$getNextElement","_tmpl$","_$spread","_$mergeProps","data-disabled","undefined","_$insert","each","index","_$runHydrationEvents","Step","selectable","handleClick","e","MouseEvent","preventDefault","setSelectedKey","handleKeyDown","KeyboardEvent","_el$2","_tmpl$2","_el$3","firstChild","data-selected","data-completed","data-selectable","_$addEventListener","$$click","_$effect","_p$","_v$","_v$2","_v$3","_$setAttribute","t","a","_$delegateEvents"],"sources":["../src/StepList.tsx"],"sourcesContent":["/**\n * StepList component for solidaria-components\n *\n * A pre-wired headless step list component that combines state + aria hooks.\n * Renders an ordered list of steps with completion tracking.\n */\n\nimport { type JSX, createContext, createMemo, splitProps, useContext, For } from \"solid-js\";\nimport {\n createStepListState,\n type StepListState,\n type StepListStateProps,\n type Key,\n} from \"@proyecto-viviana/solid-stately\";\nimport { createStepList, type AriaStepListProps } from \"@proyecto-viviana/solidaria\";\nimport {\n type ClassNameOrFunction,\n type StyleOrFunction,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\nexport interface StepListItemRenderProps {\n /** Whether this step is currently selected. */\n isSelected: boolean;\n /** Whether this step is completed. */\n isCompleted: boolean;\n /** Whether this step is disabled. */\n isDisabled: boolean;\n /** Whether this step can be selected. */\n isSelectable: boolean;\n /** The 1-based step number. */\n stepNumber: number;\n /** Accessible text describing the step state. */\n stepStateText: string;\n}\n\nexport interface StepListRenderProps {\n /** Whether the step list is disabled. */\n isDisabled: boolean;\n}\n\nexport interface StepListProps<T extends { key: Key; label: string }> extends AriaStepListProps {\n /** The step items. */\n items: T[];\n /** The currently selected step key (controlled). */\n selectedKey?: Key;\n /** The default selected step key (uncontrolled). */\n defaultSelectedKey?: Key;\n /** Called when the selected step changes. */\n onSelectionChange?: (key: Key) => void;\n /** The last completed step key (controlled). */\n lastCompletedStep?: Key;\n /** The default last completed step key (uncontrolled). */\n defaultLastCompletedStep?: Key;\n /** Called when last completed step changes. */\n onLastCompletedStepChange?: (key: Key | null) => void;\n /** Whether all steps are disabled. */\n isDisabled?: boolean;\n /** Whether all steps are read-only. */\n isReadOnly?: boolean;\n /** Keys of individually disabled steps. */\n disabledKeys?: Iterable<Key>;\n /** Render function for each step item. */\n children: (item: T, state: StepListItemRenderProps) => JSX.Element;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<StepListRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<StepListRenderProps>;\n}\n\nexport interface StepProps {\n /** The step item. */\n item: { key: Key; label: string };\n /** The 1-based step number. */\n stepNumber: number;\n /** The children to render inside the step. */\n children?: JSX.Element;\n /** The CSS className for the element. */\n class?: string;\n /** The inline style for the element. */\n style?: JSX.CSSProperties;\n}\n\nexport const StepListStateContext = createContext<StepListState | null>(null);\nexport const StepListContext = createContext<{} | null>(null);\n\nexport function useStepListState(): StepListState {\n const ctx = useContext(StepListStateContext);\n if (!ctx) throw new Error(\"useStepListState must be used within a StepList\");\n return ctx;\n}\n\n/**\n * StepList displays a sequence of steps with completion tracking and selection.\n */\nexport function StepList<T extends { key: Key; label: string }>(\n props: StepListProps<T>,\n): JSX.Element {\n const [local, ariaProps, domRest] = splitProps(\n props,\n [\n \"items\",\n \"selectedKey\",\n \"defaultSelectedKey\",\n \"onSelectionChange\",\n \"lastCompletedStep\",\n \"defaultLastCompletedStep\",\n \"onLastCompletedStepChange\",\n \"isDisabled\",\n \"isReadOnly\",\n \"disabledKeys\",\n \"children\",\n \"class\",\n \"style\",\n ],\n [\"aria-label\", \"aria-labelledby\"],\n );\n\n const stateProps = createMemo<StepListStateProps>(() => ({\n items: local.items,\n selectedKey: local.selectedKey,\n defaultSelectedKey: local.defaultSelectedKey,\n onSelectionChange: local.onSelectionChange,\n lastCompletedStep: local.lastCompletedStep,\n defaultLastCompletedStep: local.defaultLastCompletedStep,\n onLastCompletedStepChange: local.onLastCompletedStepChange,\n isDisabled: local.isDisabled,\n isReadOnly: local.isReadOnly,\n disabledKeys: local.disabledKeys,\n }));\n\n const state = createStepListState(stateProps());\n\n // Create ARIA props\n const { stepListProps } = createStepList(\n {\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n },\n state,\n );\n\n const renderValues = createMemo<StepListRenderProps>(() => ({\n isDisabled: state.isDisabled(),\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-StepList\",\n },\n renderValues,\n );\n\n const domProps = createMemo(() =>\n filterDOMProps(domRest as Record<string, unknown>, { global: true }),\n );\n\n return (\n <StepListStateContext.Provider value={state}>\n <ol\n {...stepListProps}\n {...domProps()}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={state.isDisabled() || undefined}\n >\n <For each={local.items}>\n {(item, index) => {\n const stepNumber = () => index() + 1;\n\n // Build render props as a static snapshot for the initial render.\n const renderProps: StepListItemRenderProps = {\n get isSelected() {\n return state.selectedKey() === item.key;\n },\n get isCompleted() {\n return state.isCompleted(item.key);\n },\n get isDisabled() {\n return state.isDisabled() || !state.isSelectable(item.key);\n },\n get isSelectable() {\n return state.isSelectable(item.key);\n },\n get stepNumber() {\n return stepNumber();\n },\n get stepStateText() {\n if (state.selectedKey() === item.key) return \"Current\";\n if (state.isCompleted(item.key)) return \"Completed\";\n return \"Not completed\";\n },\n };\n\n return local.children(item, renderProps);\n }}\n </For>\n </ol>\n </StepListStateContext.Provider>\n );\n}\n\n/**\n * Step represents an individual step within a StepList.\n * Renders as an `<li>` wrapping an `<a>` with accessible step props.\n */\nexport function Step(props: StepProps): JSX.Element {\n const [local, domProps] = splitProps(props, [\"item\", \"stepNumber\", \"children\", \"class\", \"style\"]);\n\n const state = useStepListState();\n\n const isSelected = () => state.selectedKey() === local.item.key;\n const isCompleted = () => state.isCompleted(local.item.key);\n const selectable = () => state.isSelectable(local.item.key);\n\n const handleClick = (e: MouseEvent) => {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(local.item.key);\n }\n };\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === \"ArrowUp\" || e.key === \"ArrowDown\") {\n e.preventDefault();\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(local.item.key);\n }\n }\n };\n\n return (\n <li\n {...domProps}\n class={local.class}\n style={local.style}\n data-selected={isSelected() || undefined}\n data-completed={isCompleted() || undefined}\n data-disabled={!selectable() || undefined}\n data-selectable={selectable() || undefined}\n >\n <a\n role=\"link\"\n aria-current={isSelected() ? \"step\" : undefined}\n aria-disabled={!selectable() ? true : undefined}\n tabIndex={selectable() ? 0 : undefined}\n onClick={handleClick}\n on:keydown={handleKeyDown}\n >\n {local.children}\n </a>\n </li>\n );\n}\n"],"mappings":"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"}
|
package/dist/StepList.jsx
CHANGED
|
@@ -124,13 +124,8 @@ function Step(props) {
|
|
|
124
124
|
if (selectable()) state.setSelectedKey(local.item.key);
|
|
125
125
|
}
|
|
126
126
|
};
|
|
127
|
-
const stepStateText = () => {
|
|
128
|
-
if (isSelected()) return "Current";
|
|
129
|
-
if (isCompleted()) return "Completed";
|
|
130
|
-
return "Not completed";
|
|
131
|
-
};
|
|
132
127
|
return <li {...domProps} class={local.class} style={local.style} data-selected={isSelected() || void 0} data-completed={isCompleted() || void 0} data-disabled={!selectable() || void 0} data-selectable={selectable() || void 0}>
|
|
133
|
-
<a role="link" aria-current={isSelected() ? "step" : void 0} aria-disabled={!selectable() ? true : void 0} tabIndex={selectable() ? 0 : void 0} onClick={handleClick} on:keydown={handleKeyDown}
|
|
128
|
+
<a role="link" aria-current={isSelected() ? "step" : void 0} aria-disabled={!selectable() ? true : void 0} tabIndex={selectable() ? 0 : void 0} onClick={handleClick} on:keydown={handleKeyDown}>
|
|
134
129
|
{local.children}
|
|
135
130
|
</a>
|
|
136
131
|
</li>;
|
package/dist/StepList.jsx.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepList.jsx","names":[],"sources":["../src/StepList.tsx"],"sourcesContent":["/**\n * StepList component for solidaria-components\n *\n * A pre-wired headless step list component that combines state + aria hooks.\n * Renders an ordered list of steps with completion tracking.\n */\n\nimport { type JSX, createContext, createMemo, splitProps, useContext, For } from \"solid-js\";\nimport {\n createStepListState,\n type StepListState,\n type StepListStateProps,\n type Key,\n} from \"@proyecto-viviana/solid-stately\";\nimport { createStepList, type AriaStepListProps } from \"@proyecto-viviana/solidaria\";\nimport {\n type ClassNameOrFunction,\n type StyleOrFunction,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\nexport interface StepListItemRenderProps {\n /** Whether this step is currently selected. */\n isSelected: boolean;\n /** Whether this step is completed. */\n isCompleted: boolean;\n /** Whether this step is disabled. */\n isDisabled: boolean;\n /** Whether this step can be selected. */\n isSelectable: boolean;\n /** The 1-based step number. */\n stepNumber: number;\n /** Accessible text describing the step state. */\n stepStateText: string;\n}\n\nexport interface StepListRenderProps {\n /** Whether the step list is disabled. */\n isDisabled: boolean;\n}\n\nexport interface StepListProps<T extends { key: Key; label: string }> extends AriaStepListProps {\n /** The step items. */\n items: T[];\n /** The currently selected step key (controlled). */\n selectedKey?: Key;\n /** The default selected step key (uncontrolled). */\n defaultSelectedKey?: Key;\n /** Called when the selected step changes. */\n onSelectionChange?: (key: Key) => void;\n /** The last completed step key (controlled). */\n lastCompletedStep?: Key;\n /** The default last completed step key (uncontrolled). */\n defaultLastCompletedStep?: Key;\n /** Called when last completed step changes. */\n onLastCompletedStepChange?: (key: Key | null) => void;\n /** Whether all steps are disabled. */\n isDisabled?: boolean;\n /** Whether all steps are read-only. */\n isReadOnly?: boolean;\n /** Keys of individually disabled steps. */\n disabledKeys?: Iterable<Key>;\n /** Render function for each step item. */\n children: (item: T, state: StepListItemRenderProps) => JSX.Element;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<StepListRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<StepListRenderProps>;\n}\n\nexport interface StepProps {\n /** The step item. */\n item: { key: Key; label: string };\n /** The 1-based step number. */\n stepNumber: number;\n /** The children to render inside the step. */\n children?: JSX.Element;\n /** The CSS className for the element. */\n class?: string;\n /** The inline style for the element. */\n style?: JSX.CSSProperties;\n}\n\nexport const StepListStateContext = createContext<StepListState | null>(null);\nexport const StepListContext = createContext<{} | null>(null);\n\nexport function useStepListState(): StepListState {\n const ctx = useContext(StepListStateContext);\n if (!ctx) throw new Error(\"useStepListState must be used within a StepList\");\n return ctx;\n}\n\n/**\n * StepList displays a sequence of steps with completion tracking and selection.\n */\nexport function StepList<T extends { key: Key; label: string }>(\n props: StepListProps<T>,\n): JSX.Element {\n const [local, ariaProps, domRest] = splitProps(\n props,\n [\n \"items\",\n \"selectedKey\",\n \"defaultSelectedKey\",\n \"onSelectionChange\",\n \"lastCompletedStep\",\n \"defaultLastCompletedStep\",\n \"onLastCompletedStepChange\",\n \"isDisabled\",\n \"isReadOnly\",\n \"disabledKeys\",\n \"children\",\n \"class\",\n \"style\",\n ],\n [\"aria-label\", \"aria-labelledby\"],\n );\n\n const stateProps = createMemo<StepListStateProps>(() => ({\n items: local.items,\n selectedKey: local.selectedKey,\n defaultSelectedKey: local.defaultSelectedKey,\n onSelectionChange: local.onSelectionChange,\n lastCompletedStep: local.lastCompletedStep,\n defaultLastCompletedStep: local.defaultLastCompletedStep,\n onLastCompletedStepChange: local.onLastCompletedStepChange,\n isDisabled: local.isDisabled,\n isReadOnly: local.isReadOnly,\n disabledKeys: local.disabledKeys,\n }));\n\n const state = createStepListState(stateProps());\n\n // Create ARIA props\n const { stepListProps } = createStepList(\n {\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n },\n state,\n );\n\n const renderValues = createMemo<StepListRenderProps>(() => ({\n isDisabled: state.isDisabled(),\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-StepList\",\n },\n renderValues,\n );\n\n const domProps = createMemo(() =>\n filterDOMProps(domRest as Record<string, unknown>, { global: true }),\n );\n\n return (\n <StepListStateContext.Provider value={state}>\n <ol\n {...stepListProps}\n {...domProps()}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={state.isDisabled() || undefined}\n >\n <For each={local.items}>\n {(item, index) => {\n const stepNumber = () => index() + 1;\n\n // Build render props as a static snapshot for the initial render.\n const renderProps: StepListItemRenderProps = {\n get isSelected() {\n return state.selectedKey() === item.key;\n },\n get isCompleted() {\n return state.isCompleted(item.key);\n },\n get isDisabled() {\n return state.isDisabled() || !state.isSelectable(item.key);\n },\n get isSelectable() {\n return state.isSelectable(item.key);\n },\n get stepNumber() {\n return stepNumber();\n },\n get stepStateText() {\n if (state.selectedKey() === item.key) return \"Current\";\n if (state.isCompleted(item.key)) return \"Completed\";\n return \"Not completed\";\n },\n };\n\n return local.children(item, renderProps);\n }}\n </For>\n </ol>\n </StepListStateContext.Provider>\n );\n}\n\n/**\n * Step represents an individual step within a StepList.\n * Renders as an `<li>` wrapping an `<a>` with accessible step props.\n */\nexport function Step(props: StepProps): JSX.Element {\n const [local, domProps] = splitProps(props, [\"item\", \"stepNumber\", \"children\", \"class\", \"style\"]);\n\n const state = useStepListState();\n\n const isSelected = () => state.selectedKey() === local.item.key;\n const isCompleted = () => state.isCompleted(local.item.key);\n const selectable = () => state.isSelectable(local.item.key);\n\n const handleClick = (e: MouseEvent) => {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(local.item.key);\n }\n };\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === \"ArrowUp\" || e.key === \"ArrowDown\") {\n e.preventDefault();\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(local.item.key);\n }\n }\n };\n\n const stepStateText = () => {\n if (isSelected()) return \"Current\";\n if (isCompleted()) return \"Completed\";\n return \"Not completed\";\n };\n\n return (\n <li\n {...domProps}\n class={local.class}\n style={local.style}\n data-selected={isSelected() || undefined}\n data-completed={isCompleted() || undefined}\n data-disabled={!selectable() || undefined}\n data-selectable={selectable() || undefined}\n >\n <a\n role=\"link\"\n aria-current={isSelected() ? \"step\" : undefined}\n aria-disabled={!selectable() ? true : undefined}\n tabIndex={selectable() ? 0 : undefined}\n onClick={handleClick}\n on:keydown={handleKeyDown}\n aria-label={`Step ${local.stepNumber}: ${local.item.label}, ${stepStateText()}`}\n >\n {local.children}\n </a>\n </li>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StepList.jsx","names":[],"sources":["../src/StepList.tsx"],"sourcesContent":["/**\n * StepList component for solidaria-components\n *\n * A pre-wired headless step list component that combines state + aria hooks.\n * Renders an ordered list of steps with completion tracking.\n */\n\nimport { type JSX, createContext, createMemo, splitProps, useContext, For } from \"solid-js\";\nimport {\n createStepListState,\n type StepListState,\n type StepListStateProps,\n type Key,\n} from \"@proyecto-viviana/solid-stately\";\nimport { createStepList, type AriaStepListProps } from \"@proyecto-viviana/solidaria\";\nimport {\n type ClassNameOrFunction,\n type StyleOrFunction,\n useRenderProps,\n filterDOMProps,\n} from \"./utils\";\n\nexport interface StepListItemRenderProps {\n /** Whether this step is currently selected. */\n isSelected: boolean;\n /** Whether this step is completed. */\n isCompleted: boolean;\n /** Whether this step is disabled. */\n isDisabled: boolean;\n /** Whether this step can be selected. */\n isSelectable: boolean;\n /** The 1-based step number. */\n stepNumber: number;\n /** Accessible text describing the step state. */\n stepStateText: string;\n}\n\nexport interface StepListRenderProps {\n /** Whether the step list is disabled. */\n isDisabled: boolean;\n}\n\nexport interface StepListProps<T extends { key: Key; label: string }> extends AriaStepListProps {\n /** The step items. */\n items: T[];\n /** The currently selected step key (controlled). */\n selectedKey?: Key;\n /** The default selected step key (uncontrolled). */\n defaultSelectedKey?: Key;\n /** Called when the selected step changes. */\n onSelectionChange?: (key: Key) => void;\n /** The last completed step key (controlled). */\n lastCompletedStep?: Key;\n /** The default last completed step key (uncontrolled). */\n defaultLastCompletedStep?: Key;\n /** Called when last completed step changes. */\n onLastCompletedStepChange?: (key: Key | null) => void;\n /** Whether all steps are disabled. */\n isDisabled?: boolean;\n /** Whether all steps are read-only. */\n isReadOnly?: boolean;\n /** Keys of individually disabled steps. */\n disabledKeys?: Iterable<Key>;\n /** Render function for each step item. */\n children: (item: T, state: StepListItemRenderProps) => JSX.Element;\n /** The CSS className for the element. */\n class?: ClassNameOrFunction<StepListRenderProps>;\n /** The inline style for the element. */\n style?: StyleOrFunction<StepListRenderProps>;\n}\n\nexport interface StepProps {\n /** The step item. */\n item: { key: Key; label: string };\n /** The 1-based step number. */\n stepNumber: number;\n /** The children to render inside the step. */\n children?: JSX.Element;\n /** The CSS className for the element. */\n class?: string;\n /** The inline style for the element. */\n style?: JSX.CSSProperties;\n}\n\nexport const StepListStateContext = createContext<StepListState | null>(null);\nexport const StepListContext = createContext<{} | null>(null);\n\nexport function useStepListState(): StepListState {\n const ctx = useContext(StepListStateContext);\n if (!ctx) throw new Error(\"useStepListState must be used within a StepList\");\n return ctx;\n}\n\n/**\n * StepList displays a sequence of steps with completion tracking and selection.\n */\nexport function StepList<T extends { key: Key; label: string }>(\n props: StepListProps<T>,\n): JSX.Element {\n const [local, ariaProps, domRest] = splitProps(\n props,\n [\n \"items\",\n \"selectedKey\",\n \"defaultSelectedKey\",\n \"onSelectionChange\",\n \"lastCompletedStep\",\n \"defaultLastCompletedStep\",\n \"onLastCompletedStepChange\",\n \"isDisabled\",\n \"isReadOnly\",\n \"disabledKeys\",\n \"children\",\n \"class\",\n \"style\",\n ],\n [\"aria-label\", \"aria-labelledby\"],\n );\n\n const stateProps = createMemo<StepListStateProps>(() => ({\n items: local.items,\n selectedKey: local.selectedKey,\n defaultSelectedKey: local.defaultSelectedKey,\n onSelectionChange: local.onSelectionChange,\n lastCompletedStep: local.lastCompletedStep,\n defaultLastCompletedStep: local.defaultLastCompletedStep,\n onLastCompletedStepChange: local.onLastCompletedStepChange,\n isDisabled: local.isDisabled,\n isReadOnly: local.isReadOnly,\n disabledKeys: local.disabledKeys,\n }));\n\n const state = createStepListState(stateProps());\n\n // Create ARIA props\n const { stepListProps } = createStepList(\n {\n get \"aria-label\"() {\n return ariaProps[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return ariaProps[\"aria-labelledby\"];\n },\n },\n state,\n );\n\n const renderValues = createMemo<StepListRenderProps>(() => ({\n isDisabled: state.isDisabled(),\n }));\n\n const renderProps = useRenderProps(\n {\n class: local.class,\n style: local.style,\n defaultClassName: \"solidaria-StepList\",\n },\n renderValues,\n );\n\n const domProps = createMemo(() =>\n filterDOMProps(domRest as Record<string, unknown>, { global: true }),\n );\n\n return (\n <StepListStateContext.Provider value={state}>\n <ol\n {...stepListProps}\n {...domProps()}\n class={renderProps.class()}\n style={renderProps.style()}\n data-disabled={state.isDisabled() || undefined}\n >\n <For each={local.items}>\n {(item, index) => {\n const stepNumber = () => index() + 1;\n\n // Build render props as a static snapshot for the initial render.\n const renderProps: StepListItemRenderProps = {\n get isSelected() {\n return state.selectedKey() === item.key;\n },\n get isCompleted() {\n return state.isCompleted(item.key);\n },\n get isDisabled() {\n return state.isDisabled() || !state.isSelectable(item.key);\n },\n get isSelectable() {\n return state.isSelectable(item.key);\n },\n get stepNumber() {\n return stepNumber();\n },\n get stepStateText() {\n if (state.selectedKey() === item.key) return \"Current\";\n if (state.isCompleted(item.key)) return \"Completed\";\n return \"Not completed\";\n },\n };\n\n return local.children(item, renderProps);\n }}\n </For>\n </ol>\n </StepListStateContext.Provider>\n );\n}\n\n/**\n * Step represents an individual step within a StepList.\n * Renders as an `<li>` wrapping an `<a>` with accessible step props.\n */\nexport function Step(props: StepProps): JSX.Element {\n const [local, domProps] = splitProps(props, [\"item\", \"stepNumber\", \"children\", \"class\", \"style\"]);\n\n const state = useStepListState();\n\n const isSelected = () => state.selectedKey() === local.item.key;\n const isCompleted = () => state.isCompleted(local.item.key);\n const selectable = () => state.isSelectable(local.item.key);\n\n const handleClick = (e: MouseEvent) => {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(local.item.key);\n }\n };\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === \"ArrowUp\" || e.key === \"ArrowDown\") {\n e.preventDefault();\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(local.item.key);\n }\n }\n };\n\n return (\n <li\n {...domProps}\n class={local.class}\n style={local.style}\n data-selected={isSelected() || undefined}\n data-completed={isCompleted() || undefined}\n data-disabled={!selectable() || undefined}\n data-selectable={selectable() || undefined}\n >\n <a\n role=\"link\"\n aria-current={isSelected() ? \"step\" : undefined}\n aria-disabled={!selectable() ? true : undefined}\n tabIndex={selectable() ? 0 : undefined}\n onClick={handleClick}\n on:keydown={handleKeyDown}\n >\n {local.children}\n </a>\n </li>\n );\n}\n"],"mappings":"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"}
|
package/dist/Table.d.ts
CHANGED
|
@@ -343,6 +343,8 @@ export declare const TableColumnResizeStateContext: import("solid-js").Context<{
|
|
|
343
343
|
interface TableRowContextValue {
|
|
344
344
|
rowKey: Key;
|
|
345
345
|
rowNode: GridNode<unknown>;
|
|
346
|
+
/** The row's resolved disabled state, so a child selection checkbox can gate on it. */
|
|
347
|
+
isRowDisabled: boolean;
|
|
346
348
|
getCellColumnKey(cellId: string, explicitId?: Key): Key | undefined;
|
|
347
349
|
}
|
|
348
350
|
export declare const TableRowContext: import("solid-js").Context<TableRowContextValue | null>;
|
package/dist/Table.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../src/Table.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../src/Table.tsx"],"names":[],"mappings":"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"}
|
package/dist/Table.js
CHANGED
|
@@ -148,7 +148,7 @@ function Table(props) {
|
|
|
148
148
|
}));
|
|
149
149
|
const collection = () => state.collection;
|
|
150
150
|
const parentCollectionRenderer = useCollectionRenderer();
|
|
151
|
-
const
|
|
151
|
+
const tableAria = createTable(() => ({
|
|
152
152
|
id: ariaProps.id,
|
|
153
153
|
"aria-label": ariaProps["aria-label"],
|
|
154
154
|
"aria-labelledby": ariaProps["aria-labelledby"],
|
|
@@ -176,7 +176,7 @@ function Table(props) {
|
|
|
176
176
|
return filterDOMProps(ariaProps, { global: true });
|
|
177
177
|
});
|
|
178
178
|
const cleanGridProps = () => {
|
|
179
|
-
const { ref: _ref1, ...rest } = gridProps;
|
|
179
|
+
const { ref: _ref1, ...rest } = tableAria.gridProps;
|
|
180
180
|
return rest;
|
|
181
181
|
};
|
|
182
182
|
const cleanFocusProps = () => {
|
|
@@ -1118,6 +1118,9 @@ function TableRow(props) {
|
|
|
1118
1118
|
const rowContextValue = {
|
|
1119
1119
|
rowKey: rowKey(),
|
|
1120
1120
|
rowNode: rowNode(),
|
|
1121
|
+
get isRowDisabled() {
|
|
1122
|
+
return isDisabled();
|
|
1123
|
+
},
|
|
1121
1124
|
getCellColumnKey(cellId, explicitId) {
|
|
1122
1125
|
if (explicitId === "__selection__") return explicitId;
|
|
1123
1126
|
let index = registeredCellIds.indexOf(cellId);
|
|
@@ -1493,7 +1496,11 @@ function TableSelectionCheckbox(props) {
|
|
|
1493
1496
|
const context = useContext(TableContext);
|
|
1494
1497
|
if (!context) throw new Error("TableSelectionCheckbox must be used within a Table");
|
|
1495
1498
|
const { state } = context;
|
|
1496
|
-
const
|
|
1499
|
+
const rowContext = useContext(TableRowContext);
|
|
1500
|
+
const selectionCheckboxAria = createTableSelectionCheckbox(() => ({
|
|
1501
|
+
key: props.rowKey,
|
|
1502
|
+
isRowDisabled: rowContext?.isRowDisabled
|
|
1503
|
+
}), () => state);
|
|
1497
1504
|
return (() => {
|
|
1498
1505
|
var _el$30 = getNextElement(_tmpl$13);
|
|
1499
1506
|
spread(_el$30, mergeProps(() => selectionCheckboxAria.checkboxProps, {
|