@hjmds/react 1.35.0 → 1.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/collection-editing.d.ts +3 -1
- package/dist/collection-editing.d.ts.map +1 -1
- package/dist/collection-editing.js +5 -5
- package/dist/collection-editing.js.map +1 -1
- package/dist/evidence.d.ts +1 -1
- package/dist/evidence.js +1 -1
- package/dist/evidence.js.map +1 -1
- package/dist/forms.js +1 -1
- package/dist/forms.js.map +1 -1
- package/dist/internal/photo-source-icon.d.ts +5 -0
- package/dist/internal/photo-source-icon.d.ts.map +1 -0
- package/dist/internal/photo-source-icon.js +13 -0
- package/dist/internal/photo-source-icon.js.map +1 -0
- package/dist/overlays.d.ts +5 -2
- package/dist/overlays.d.ts.map +1 -1
- package/dist/overlays.js +35 -29
- package/dist/overlays.js.map +1 -1
- package/dist/screen-flows.d.ts +5 -0
- package/dist/screen-flows.d.ts.map +1 -1
- package/dist/screen-flows.js +5 -3
- package/dist/screen-flows.js.map +1 -1
- package/dist/styles.css +34 -8
- package/dist/styles.layered.css +34 -8
- package/dist/supplemental-navigation.d.ts +4 -0
- package/dist/supplemental-navigation.d.ts.map +1 -1
- package/dist/supplemental-navigation.js +7 -5
- package/dist/supplemental-navigation.js.map +1 -1
- package/dist/task-controls.js +1 -1
- package/dist/task-controls.js.map +1 -1
- package/package.json +3 -3
package/dist/overlays.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { TransitionRect } from "@hjmds/design-contracts/content-transition"
|
|
|
3
3
|
import { type AlertDialogOpenChangeReason, type AlertDialogRequest } from "@hjmds/design-contracts/components/alert-dialog";
|
|
4
4
|
import { type SheetDetent, type SheetDismissPolicy, type SheetDismissReason, type SheetOpenChangeDetails } from "@hjmds/design-contracts/components/sheet";
|
|
5
5
|
import { type TooltipAlign, type TooltipOpenChangeDetails, type TooltipPlacement } from "@hjmds/design-contracts/components/tooltip";
|
|
6
|
-
import { sheetRecipe, type DialogSize, type MenuDensity, type MenuItemTone } from "@hjmds/design-contracts/recipes";
|
|
6
|
+
import { sheetRecipe, type DialogSize, type MenuDensity, type MenuPresentation, type MenuItemTone } from "@hjmds/design-contracts/recipes";
|
|
7
7
|
import type { MenuSectionDescriptor } from "@hjmds/design-contracts/behaviors";
|
|
8
8
|
import { type ReactNode } from "react";
|
|
9
9
|
import { type ModalOpenState, type OpenState, type OverlayTrigger } from "./modal.js";
|
|
@@ -155,7 +155,7 @@ export type MenuItem = Readonly<{
|
|
|
155
155
|
export type MenuSection = Omit<MenuSectionDescriptor<string, string>, "items"> & Readonly<{
|
|
156
156
|
items: readonly MenuItem[];
|
|
157
157
|
}>;
|
|
158
|
-
export type MenuOpenChangeReason = "trigger" | "selection" | "escape" | "outside" | "tab";
|
|
158
|
+
export type MenuOpenChangeReason = "trigger" | "selection" | "escape" | "outside" | "tab" | "programmatic";
|
|
159
159
|
export type MenuAsyncState = Readonly<{
|
|
160
160
|
status: "idle";
|
|
161
161
|
}> | Readonly<{
|
|
@@ -201,6 +201,9 @@ type MenuBaseProps = Readonly<{
|
|
|
201
201
|
trigger: OverlayTrigger;
|
|
202
202
|
label: string;
|
|
203
203
|
density?: MenuDensity;
|
|
204
|
+
presentation?: MenuPresentation;
|
|
205
|
+
/** Required for grouped/bottom; accessible and visible dismiss label. */
|
|
206
|
+
dismissLabel?: string;
|
|
204
207
|
/** Logical alignment against the trigger; automatically mirrors in RTL. */
|
|
205
208
|
align?: "start" | "end";
|
|
206
209
|
disabled?: boolean;
|
package/dist/overlays.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlays.d.ts","sourceRoot":"","sources":["../src/overlays.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"overlays.d.ts","sourceRoot":"","sources":["../src/overlays.tsx"],"names":[],"mappings":"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"}
|
package/dist/overlays.js
CHANGED
|
@@ -583,8 +583,10 @@ export const Menu = forwardRef(function Menu(props, ref) {
|
|
|
583
583
|
comfortable: menuRecipe.defaults.density,
|
|
584
584
|
compact: "compact",
|
|
585
585
|
});
|
|
586
|
-
const { trigger, label, density: densityProp, align = "start", disabled = false, asyncState = { status: "idle" }, onAction, onActionAfterDismiss, portalContainer, open: openProp, defaultOpen, onOpenChange, className, layoutStyle, } = props;
|
|
586
|
+
const { trigger, label, density: densityProp, presentation = "anchored", dismissLabel, align = "start", disabled = false, asyncState = { status: "idle" }, onAction, onActionAfterDismiss, portalContainer, open: openProp, defaultOpen, onOpenChange, className, layoutStyle, } = props;
|
|
587
587
|
const density = densityProp ?? densityDefault;
|
|
588
|
+
if (presentation !== "anchored" && !dismissLabel?.trim())
|
|
589
|
+
throw new TypeError("Modal Menu requires dismissLabel");
|
|
588
590
|
const sections = props.sections;
|
|
589
591
|
const items = sections === undefined ? props.items : sections.flatMap((section) => section.items);
|
|
590
592
|
if (label.trim().length === 0)
|
|
@@ -646,7 +648,7 @@ export const Menu = forwardRef(function Menu(props, ref) {
|
|
|
646
648
|
const typeaheadRef = useRef({ value: "", time: 0 });
|
|
647
649
|
const id = `${useId().replaceAll(":", "")}-menu`;
|
|
648
650
|
// menuRecipe offset/edge padding (2026-10-06 follow-up; helper default edge padding was 16).
|
|
649
|
-
const popupPosition = useAnchoredPopup(triggerRef, contentNode, {
|
|
651
|
+
const popupPosition = useAnchoredPopup(triggerRef, presentation === "anchored" ? contentNode : null, {
|
|
650
652
|
align, gap: menuRecipe.sideOffset, viewportPadding: menuRecipe.collisionPadding, zIndex: layer.dropdown,
|
|
651
653
|
});
|
|
652
654
|
const setMenuContentRef = useCallback((node) => {
|
|
@@ -805,7 +807,7 @@ export const Menu = forwardRef(function Menu(props, ref) {
|
|
|
805
807
|
event.preventDefault();
|
|
806
808
|
close("escape", true);
|
|
807
809
|
}
|
|
808
|
-
else if (event.key === "Tab") {
|
|
810
|
+
else if (event.key === "Tab" && presentation === "anchored") {
|
|
809
811
|
close("tab", false);
|
|
810
812
|
}
|
|
811
813
|
else if (event.key.length === 1 &&
|
|
@@ -817,33 +819,37 @@ export const Menu = forwardRef(function Menu(props, ref) {
|
|
|
817
819
|
runTypeahead(event.key);
|
|
818
820
|
}
|
|
819
821
|
};
|
|
822
|
+
useModalFocus({ active: open && presentation !== "anchored", contentRef,
|
|
823
|
+
fallbackReturnRef: triggerRef, onEscape: () => close("escape", true) });
|
|
820
824
|
const showItems = asyncState.status !== "empty" && asyncState.status !== "error";
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
825
|
+
const content = (_jsxs("div", { ref: setMenuContentRef, id: id, role: "menu", "aria-label": label, className: classNames("hjm-menu__content", className), "data-presentation": presentation, "data-density": density, "data-async-state": asyncState.status, "data-placement": popupPosition.placement, "data-align": popupPosition.align, "aria-busy": asyncState.status === "loading" || asyncState.status === "loadingMore" || undefined, style: presentation === "anchored" ? popupPosition.style : undefined, tabIndex: -1, onKeyDown: handleMenuKeyDown, children: [asyncState.status !== "idle" ? (_jsx("div", { className: "hjm-menu__state-message", role: asyncState.status === "error" ? "alert" : "status", children: asyncState.message })) : null, _jsx("div", { className: "hjm-menu__viewport", children: showItems ? (sections === undefined ? items.map((item, index) => {
|
|
826
|
+
const selected = itemSelected(item.id);
|
|
827
|
+
const itemDisabled = itemIsDisabled(item);
|
|
828
|
+
const role = selectionMode === "single"
|
|
829
|
+
? "menuitemradio"
|
|
830
|
+
: selectionMode === "multiple"
|
|
831
|
+
? "menuitemcheckbox"
|
|
832
|
+
: "menuitem";
|
|
833
|
+
return renderMenuItem(item, index, role, selected, itemDisabled);
|
|
834
|
+
}) : sections.map((section, sectionIndex) => {
|
|
835
|
+
const sectionLabelId = `${id}-section-${sectionIndex}`;
|
|
836
|
+
const firstIndex = sections
|
|
837
|
+
.slice(0, sectionIndex)
|
|
838
|
+
.reduce((total, current) => total + current.items.length, 0);
|
|
839
|
+
return (_jsxs("div", { className: "hjm-menu__section-boundary", children: [sectionIndex > 0 ? _jsx("div", { role: "separator", className: "hjm-menu__separator" }) : null, _jsxs("div", { role: "group", "aria-labelledby": section.label ? sectionLabelId : undefined, "aria-label": section.label ? undefined : section.accessibilityLabel, className: "hjm-menu__section", children: [section.label ? (_jsx("div", { id: sectionLabelId, className: "hjm-menu__section-label", children: section.label })) : null, section.items.map((item, itemIndex) => {
|
|
840
|
+
const index = firstIndex + itemIndex;
|
|
841
|
+
const selected = itemSelected(item.id);
|
|
842
|
+
const itemDisabled = itemIsDisabled(item);
|
|
843
|
+
const role = selectionMode === "single"
|
|
844
|
+
? "menuitemradio"
|
|
845
|
+
: selectionMode === "multiple"
|
|
846
|
+
? "menuitemcheckbox"
|
|
847
|
+
: "menuitem";
|
|
848
|
+
return renderMenuItem(item, index, role, selected, itemDisabled);
|
|
849
|
+
})] })] }, section.id));
|
|
850
|
+
})) : null }), presentation !== "anchored" ? _jsx(Button, { tone: "secondary", role: "menuitem", onClick: () => close("programmatic", true), children: dismissLabel }) : null] }));
|
|
851
|
+
return (_jsxs("span", { ref: wrapperRef, className: "hjm-menu", style: layoutStyle, "data-state": open ? "open" : "closed", children: [renderedTrigger, open ? presentation === "anchored" ? (_jsx(AnchoredPortal, { anchorRef: triggerRef, ssrFallback: "inline", ...(portalContainer === undefined ? {} : { container: portalContainer }), children: content })) : (_jsx(HjmPortal, { ...(portalContainer === undefined ? {} : { container: portalContainer }), children: _jsx("div", { className: "hjm-overlay hjm-menu-positioner", "data-presentation": presentation, style: { zIndex: getModalLayer(0) }, onPointerDown: event => { if (event.target === event.currentTarget)
|
|
852
|
+
close("outside", true); }, children: content }) })) : null] }));
|
|
847
853
|
function renderMenuItem(item, index, role, selected, itemDisabled) {
|
|
848
854
|
return (_jsxs("button", { ref: (node) => {
|
|
849
855
|
if (node) {
|