@elliemae/ds-menu-button 3.70.0-next.9 → 3.70.0-rc.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.
Files changed (107) hide show
  1. package/dist/cjs/package.json +1 -4
  2. package/dist/cjs/parts/DSFlyoutMenu/DSFlyoutMenu.js +19 -9
  3. package/dist/cjs/parts/DSFlyoutMenu/DSFlyoutMenu.js.map +2 -2
  4. package/dist/cjs/parts/DSFlyoutMenu/react-desc-prop-types.js +0 -1
  5. package/dist/cjs/parts/DSFlyoutMenu/react-desc-prop-types.js.map +2 -2
  6. package/dist/cjs/parts/DSFlyoutMenu/typescript-testing/slot-props.js +36 -0
  7. package/dist/cjs/parts/DSFlyoutMenu/typescript-testing/slot-props.js.map +7 -0
  8. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js.map +2 -2
  9. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js.map +2 -2
  10. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/utils/nodeGettersByCriterias.js.map +2 -2
  11. package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableMenuItem.js +13 -4
  12. package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableMenuItem.js.map +2 -2
  13. package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js +13 -2
  14. package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js.map +2 -2
  15. package/dist/cjs/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js +66 -18
  16. package/dist/cjs/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js.map +3 -3
  17. package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js +13 -2
  18. package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js.map +2 -2
  19. package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js +13 -2
  20. package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js.map +2 -2
  21. package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js +18 -5
  22. package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js.map +3 -3
  23. package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js +18 -3
  24. package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js.map +3 -3
  25. package/dist/cjs/parts/DSMenuItemRendererFactory/SkeletonMenuItem.js +5 -5
  26. package/dist/cjs/parts/DSMenuItemRendererFactory/SkeletonMenuItem.js.map +2 -2
  27. package/dist/cjs/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js +13 -2
  28. package/dist/cjs/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js.map +2 -2
  29. package/dist/cjs/parts/DSMenuItemRendererFactory/constants/index.js +5 -1
  30. package/dist/cjs/parts/DSMenuItemRendererFactory/constants/index.js.map +2 -2
  31. package/dist/cjs/parts/DSMenuItemRendererFactory/react-desc-prop-types.js.map +2 -2
  32. package/dist/cjs/parts/DSMenuItemRendererFactory/typescript-testing/slot-props.js +38 -0
  33. package/dist/cjs/parts/DSMenuItemRendererFactory/typescript-testing/slot-props.js.map +7 -0
  34. package/dist/cjs/parts/DSOpinionatedButton/react-desc-prop-types.js.map +2 -2
  35. package/dist/cjs/parts/DSOpinionatedButton/typescript-testing/slot-props.js +32 -0
  36. package/dist/cjs/parts/DSOpinionatedButton/typescript-testing/slot-props.js.map +7 -0
  37. package/dist/cjs/react-desc-prop-types.js.map +2 -2
  38. package/dist/cjs/typescript-testing/slot-props.js +32 -0
  39. package/dist/cjs/typescript-testing/slot-props.js.map +7 -0
  40. package/dist/cjs/utils/nodesTypeguardsAndGetters.js +6 -0
  41. package/dist/cjs/utils/nodesTypeguardsAndGetters.js.map +2 -2
  42. package/dist/esm/package.json +1 -4
  43. package/dist/esm/parts/DSFlyoutMenu/DSFlyoutMenu.js +20 -10
  44. package/dist/esm/parts/DSFlyoutMenu/DSFlyoutMenu.js.map +2 -2
  45. package/dist/esm/parts/DSFlyoutMenu/react-desc-prop-types.js +0 -1
  46. package/dist/esm/parts/DSFlyoutMenu/react-desc-prop-types.js.map +2 -2
  47. package/dist/esm/parts/DSFlyoutMenu/typescript-testing/slot-props.js +13 -0
  48. package/dist/esm/parts/DSFlyoutMenu/typescript-testing/slot-props.js.map +7 -0
  49. package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js.map +2 -2
  50. package/dist/esm/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js.map +2 -2
  51. package/dist/esm/parts/DSMenuBehaviouralContextProvider/utils/nodeGettersByCriterias.js.map +2 -2
  52. package/dist/esm/parts/DSMenuItemRendererFactory/ActivableMenuItem.js +13 -4
  53. package/dist/esm/parts/DSMenuItemRendererFactory/ActivableMenuItem.js.map +2 -2
  54. package/dist/esm/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js +13 -2
  55. package/dist/esm/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js.map +2 -2
  56. package/dist/esm/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js +67 -18
  57. package/dist/esm/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js.map +3 -3
  58. package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js +13 -2
  59. package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js.map +2 -2
  60. package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js +13 -2
  61. package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js.map +2 -2
  62. package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js +18 -5
  63. package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js.map +2 -2
  64. package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js +18 -3
  65. package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js.map +2 -2
  66. package/dist/esm/parts/DSMenuItemRendererFactory/SkeletonMenuItem.js +5 -5
  67. package/dist/esm/parts/DSMenuItemRendererFactory/SkeletonMenuItem.js.map +2 -2
  68. package/dist/esm/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js +13 -2
  69. package/dist/esm/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js.map +2 -2
  70. package/dist/esm/parts/DSMenuItemRendererFactory/constants/index.js +5 -1
  71. package/dist/esm/parts/DSMenuItemRendererFactory/constants/index.js.map +2 -2
  72. package/dist/esm/parts/DSMenuItemRendererFactory/react-desc-prop-types.js.map +2 -2
  73. package/dist/esm/parts/DSMenuItemRendererFactory/typescript-testing/slot-props.js +15 -0
  74. package/dist/esm/parts/DSMenuItemRendererFactory/typescript-testing/slot-props.js.map +7 -0
  75. package/dist/esm/parts/DSOpinionatedButton/react-desc-prop-types.js.map +2 -2
  76. package/dist/esm/parts/DSOpinionatedButton/typescript-testing/slot-props.js +9 -0
  77. package/dist/esm/parts/DSOpinionatedButton/typescript-testing/slot-props.js.map +7 -0
  78. package/dist/esm/react-desc-prop-types.js.map +2 -2
  79. package/dist/esm/typescript-testing/slot-props.js +9 -0
  80. package/dist/esm/typescript-testing/slot-props.js.map +7 -0
  81. package/dist/esm/utils/nodesTypeguardsAndGetters.js +6 -0
  82. package/dist/esm/utils/nodesTypeguardsAndGetters.js.map +2 -2
  83. package/dist/types/config/useSplitInherithedProps.d.ts +13 -13
  84. package/dist/types/constants/index.d.ts +2 -1
  85. package/dist/types/parts/DSFlyoutMenu/react-desc-prop-types.d.ts +5 -0
  86. package/dist/types/parts/DSMenuItemRendererFactory/ActivableMenuItem.d.ts +2 -0
  87. package/dist/types/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.d.ts +2 -0
  88. package/dist/types/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.d.ts +2 -0
  89. package/dist/types/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.d.ts +2 -0
  90. package/dist/types/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.d.ts +2 -0
  91. package/dist/types/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.d.ts +2 -0
  92. package/dist/types/parts/DSMenuItemRendererFactory/SkeletonMenuItem.d.ts +2 -0
  93. package/dist/types/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.d.ts +2 -0
  94. package/dist/types/parts/DSMenuItemRendererFactory/constants/index.d.ts +4 -2
  95. package/dist/types/parts/DSMenuItemRendererFactory/react-desc-prop-types.d.ts +6 -0
  96. package/dist/types/parts/DSOpinionatedButton/config/useOpinionatedButton.d.ts +7 -7
  97. package/dist/types/parts/DSOpinionatedButton/react-desc-prop-types.d.ts +3 -0
  98. package/dist/types/react-desc-prop-types.d.ts +3 -0
  99. package/dist/types/utils/nodesTypeguardsAndGetters.d.ts +15 -0
  100. package/package.json +16 -16
  101. package/dist/types/tests/config/ControlledTestRender.d.ts +0 -3
  102. package/dist/types/tests/menu-button.keyboard.test.d.ts +0 -1
  103. package/dist/types/tests/playwright/DSMenuButton.ControlledTestRenderer.d.ts +0 -2
  104. package/dist/types/tests/playwright/DSMenuButton.test.playwright.d.ts +0 -1
  105. /package/dist/types/{tests/menu-button.exports.test.d.ts → parts/DSFlyoutMenu/typescript-testing/slot-props.d.ts} +0 -0
  106. /package/dist/types/{tests/menu-button.floating-config.test.d.ts → parts/DSMenuItemRendererFactory/typescript-testing/slot-props.d.ts} +0 -0
  107. /package/dist/types/{tests/menu-button.get-owner-props.test.d.ts → parts/DSOpinionatedButton/typescript-testing/slot-props.d.ts} +0 -0
@@ -52,6 +52,7 @@ export declare const useSplitInherithedProps: ({ propsWithDefault, focusableNode
52
52
  buttonType?: import("@elliemae/ds-button-v2").DSButtonT.ButtonTypesT | undefined;
53
53
  shape?: import("@elliemae/ds-button-v2").DSButtonT.ButtonShapesT | undefined;
54
54
  applyAriaDisabled?: boolean | undefined;
55
+ readOnly?: boolean | undefined;
55
56
  dsButtonRoot?: object | import("@elliemae/ds-typescript-helpers").TypescriptHelpersT.GenericFunc<unknown, object> | undefined;
56
57
  form?: string | undefined | undefined;
57
58
  "aria-activedescendant"?: string | undefined | undefined;
@@ -382,7 +383,6 @@ export declare const useSplitInherithedProps: ({ propsWithDefault, focusableNode
382
383
  playsInline?: boolean | undefined | undefined;
383
384
  poster?: string | undefined | undefined;
384
385
  preload?: string | undefined | undefined;
385
- readOnly?: boolean | undefined | undefined;
386
386
  required?: boolean | undefined | undefined;
387
387
  reversed?: boolean | undefined | undefined;
388
388
  rows?: number | undefined | undefined;
@@ -466,24 +466,24 @@ export declare const useSplitInherithedProps: ({ propsWithDefault, focusableNode
466
466
  borderBottom?: string | undefined;
467
467
  borderRight?: string | undefined;
468
468
  borderLeft?: string | undefined;
469
- borderColor?: (keyof import("@elliemae/ds-system").DummyColorTheme | `neutral-100-${string}` | `neutral-200-${string}` | `neutral-300-${string}` | `neutral-400-${string}` | `neutral-500-${string}` | `neutral-600-${string}` | `neutral-700-${string}` | `neutral-800-${string}` | `neutral-000-${string}` | `neutral-050-${string}` | `neutral-080-${string}` | `brand-100-${string}` | `brand-200-${string}` | `brand-300-${string}` | `brand-400-${string}` | `brand-500-${string}` | `brand-600-${string}` | `brand-700-${string}` | `brand-800-${string}` | `success-300-${string}` | `success-900-${string}` | `warning-400-${string}` | `warning-600-${string}` | `warning-900-${string}` | `danger-200-${string}` | `danger-900-${string}` | `#${string}` | `rgba(${string})` | `rgb(${string})`) | undefined;
470
- borderTopColor?: (keyof import("@elliemae/ds-system").DummyColorTheme | `neutral-100-${string}` | `neutral-200-${string}` | `neutral-300-${string}` | `neutral-400-${string}` | `neutral-500-${string}` | `neutral-600-${string}` | `neutral-700-${string}` | `neutral-800-${string}` | `neutral-000-${string}` | `neutral-050-${string}` | `neutral-080-${string}` | `brand-100-${string}` | `brand-200-${string}` | `brand-300-${string}` | `brand-400-${string}` | `brand-500-${string}` | `brand-600-${string}` | `brand-700-${string}` | `brand-800-${string}` | `success-300-${string}` | `success-900-${string}` | `warning-400-${string}` | `warning-600-${string}` | `warning-900-${string}` | `danger-200-${string}` | `danger-900-${string}` | `#${string}` | `rgba(${string})` | `rgb(${string})`) | undefined;
471
- borderBottomColor?: (keyof import("@elliemae/ds-system").DummyColorTheme | `neutral-100-${string}` | `neutral-200-${string}` | `neutral-300-${string}` | `neutral-400-${string}` | `neutral-500-${string}` | `neutral-600-${string}` | `neutral-700-${string}` | `neutral-800-${string}` | `neutral-000-${string}` | `neutral-050-${string}` | `neutral-080-${string}` | `brand-100-${string}` | `brand-200-${string}` | `brand-300-${string}` | `brand-400-${string}` | `brand-500-${string}` | `brand-600-${string}` | `brand-700-${string}` | `brand-800-${string}` | `success-300-${string}` | `success-900-${string}` | `warning-400-${string}` | `warning-600-${string}` | `warning-900-${string}` | `danger-200-${string}` | `danger-900-${string}` | `#${string}` | `rgba(${string})` | `rgb(${string})`) | undefined;
472
- borderRightColor?: (keyof import("@elliemae/ds-system").DummyColorTheme | `neutral-100-${string}` | `neutral-200-${string}` | `neutral-300-${string}` | `neutral-400-${string}` | `neutral-500-${string}` | `neutral-600-${string}` | `neutral-700-${string}` | `neutral-800-${string}` | `neutral-000-${string}` | `neutral-050-${string}` | `neutral-080-${string}` | `brand-100-${string}` | `brand-200-${string}` | `brand-300-${string}` | `brand-400-${string}` | `brand-500-${string}` | `brand-600-${string}` | `brand-700-${string}` | `brand-800-${string}` | `success-300-${string}` | `success-900-${string}` | `warning-400-${string}` | `warning-600-${string}` | `warning-900-${string}` | `danger-200-${string}` | `danger-900-${string}` | `#${string}` | `rgba(${string})` | `rgb(${string})`) | undefined;
473
- borderLeftColor?: (keyof import("@elliemae/ds-system").DummyColorTheme | `neutral-100-${string}` | `neutral-200-${string}` | `neutral-300-${string}` | `neutral-400-${string}` | `neutral-500-${string}` | `neutral-600-${string}` | `neutral-700-${string}` | `neutral-800-${string}` | `neutral-000-${string}` | `neutral-050-${string}` | `neutral-080-${string}` | `brand-100-${string}` | `brand-200-${string}` | `brand-300-${string}` | `brand-400-${string}` | `brand-500-${string}` | `brand-600-${string}` | `brand-700-${string}` | `brand-800-${string}` | `success-300-${string}` | `success-900-${string}` | `warning-400-${string}` | `warning-600-${string}` | `warning-900-${string}` | `danger-200-${string}` | `danger-900-${string}` | `#${string}` | `rgba(${string})` | `rgb(${string})`) | undefined;
469
+ borderColor?: string | undefined;
470
+ borderTopColor?: string | undefined;
471
+ borderBottomColor?: string | undefined;
472
+ borderRightColor?: string | undefined;
473
+ borderLeftColor?: string | undefined;
474
474
  borderStyle?: string | undefined;
475
475
  borderTopStyle?: string | undefined;
476
476
  borderBottomStyle?: string | undefined;
477
477
  borderRightStyle?: string | undefined;
478
478
  borderLeftStyle?: string | undefined;
479
- borderWidth?: (keyof import("@elliemae/pui-theme/dist/types/lib/theme-type.js").Space | `${number}%` | `${number}em` | `${number}px` | `${number}rem` | `${number}vh` | `${number}vw` | `${number}vmin` | `${number}vmax`) | undefined;
480
- borderTopWidth?: (keyof import("@elliemae/pui-theme/dist/types/lib/theme-type.js").Space | `${number}%` | `${number}em` | `${number}px` | `${number}rem` | `${number}vh` | `${number}vw` | `${number}vmin` | `${number}vmax`) | undefined;
481
- borderBottomWidth?: (keyof import("@elliemae/pui-theme/dist/types/lib/theme-type.js").Space | `${number}%` | `${number}em` | `${number}px` | `${number}rem` | `${number}vh` | `${number}vw` | `${number}vmin` | `${number}vmax`) | undefined;
482
- borderRightWidth?: (keyof import("@elliemae/pui-theme/dist/types/lib/theme-type.js").Space | `${number}%` | `${number}em` | `${number}px` | `${number}rem` | `${number}vh` | `${number}vw` | `${number}vmin` | `${number}vmax`) | undefined;
483
- borderLeftWidth?: (keyof import("@elliemae/pui-theme/dist/types/lib/theme-type.js").Space | `${number}%` | `${number}em` | `${number}px` | `${number}rem` | `${number}vh` | `${number}vw` | `${number}vmin` | `${number}vmax`) | undefined;
479
+ borderWidth?: import("@elliemae/ds-system").AllMeasures | undefined;
480
+ borderTopWidth?: import("@elliemae/ds-system").AllMeasures | undefined;
481
+ borderBottomWidth?: import("@elliemae/ds-system").AllMeasures | undefined;
482
+ borderRightWidth?: import("@elliemae/ds-system").AllMeasures | undefined;
483
+ borderLeftWidth?: import("@elliemae/ds-system").AllMeasures | undefined;
484
484
  borderRadius?: string | undefined;
485
- backgroundColor?: (keyof import("@elliemae/ds-system").DummyColorTheme | `neutral-100-${string}` | `neutral-200-${string}` | `neutral-300-${string}` | `neutral-400-${string}` | `neutral-500-${string}` | `neutral-600-${string}` | `neutral-700-${string}` | `neutral-800-${string}` | `neutral-000-${string}` | `neutral-050-${string}` | `neutral-080-${string}` | `brand-100-${string}` | `brand-200-${string}` | `brand-300-${string}` | `brand-400-${string}` | `brand-500-${string}` | `brand-600-${string}` | `brand-700-${string}` | `brand-800-${string}` | `success-300-${string}` | `success-900-${string}` | `warning-400-${string}` | `warning-600-${string}` | `warning-900-${string}` | `danger-200-${string}` | `danger-900-${string}` | `#${string}` | `rgba(${string})` | `rgb(${string})`) | undefined;
486
- bg?: (keyof import("@elliemae/ds-system").DummyColorTheme | `neutral-100-${string}` | `neutral-200-${string}` | `neutral-300-${string}` | `neutral-400-${string}` | `neutral-500-${string}` | `neutral-600-${string}` | `neutral-700-${string}` | `neutral-800-${string}` | `neutral-000-${string}` | `neutral-050-${string}` | `neutral-080-${string}` | `brand-100-${string}` | `brand-200-${string}` | `brand-300-${string}` | `brand-400-${string}` | `brand-500-${string}` | `brand-600-${string}` | `brand-700-${string}` | `brand-800-${string}` | `success-300-${string}` | `success-900-${string}` | `warning-400-${string}` | `warning-600-${string}` | `warning-900-${string}` | `danger-200-${string}` | `danger-900-${string}` | `#${string}` | `rgba(${string})` | `rgb(${string})`) | undefined;
485
+ backgroundColor?: string | undefined;
486
+ bg?: string | undefined;
487
487
  fontWeight?: import("@xstyled/system").SystemProp<{} | (string & {}) | "inherit" | (number & {}) | "-moz-initial" | "initial" | "revert" | "revert-layer" | "unset" | "bold" | "normal" | "bolder" | "lighter" | "thin" | "light" | "regular" | "semibold", import("@xstyled/system").Theme> | undefined;
488
488
  textAlign?: import("@xstyled/system").SystemProp<import("csstype").Property.TextAlign, import("@xstyled/system").Theme> | undefined;
489
489
  };
@@ -19,7 +19,8 @@ export declare const MENU_BUTTON_DATA_TESTID: {
19
19
  };
20
20
  export declare const MENU_BUTTON_WITH_PARTS_SLOTS: {
21
21
  GROUP_LABEL_WRAPPER: "group-label-wrapper";
22
- LABEL_WITH_LEFT_DEC_WRAPPER: "group-label-wrapper";
22
+ LABEL_WITH_LEFT_DEC_WRAPPER: "label-with-left-dec-wrapper";
23
+ RADIO_DOT_INDICATOR: "radio-dot-indicator";
23
24
  FLOATING_WRAPPER: "floating-wrapper";
24
25
  LIST_WRAPPER: "list-wrapper";
25
26
  FLYOUT_MENU_ROOT: "root";
@@ -4,6 +4,11 @@ import { type TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';
4
4
  import { type DSMenuButtonT } from '../../react-desc-prop-types.js';
5
5
  import { DSFlyoutMenuName, FLYOUT_MENU_SLOTS } from './constants/index.js';
6
6
  export declare namespace DSFlyoutMenuT {
7
+ type SlotFunctionArguments = {
8
+ dsFlyoutmenuFloatingWrapper: () => object;
9
+ dsFlyoutmenuRoot: () => object;
10
+ dsFlyoutmenuListWrapper: () => object;
11
+ };
7
12
  interface RequiredProps extends DSMenuButtonT.MenuSpecificRequiredProps {
8
13
  isMenuOpen: boolean;
9
14
  itemNode: DSMenuButtonT.MenuNodeWithSubmenuItem | DSMenuButtonT.MenuNodeSingleSelectWithSubmenuItem | DSMenuButtonT.MenuNodeMultipleSelectWithSubmenuItem | DSMenuButtonT.MenuNodeActivableWithSubmenuItem | DSMenuButtonT.MenuNodeRootItem;
@@ -2,4 +2,6 @@ import React from 'react';
2
2
  import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
3
3
  export declare const ActivableMenuItem: React.ComponentType<{
4
4
  itemNode: DSMenuButtonT.MenuNodeActivableItem;
5
+ ariaPosInSet?: number;
6
+ ariaSetSize?: number;
5
7
  }>;
@@ -4,4 +4,6 @@ import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
4
4
  export declare const ActivableWithSubmenuMenuItem: React.ComponentType<{
5
5
  itemNode: DSMenuButtonT.MenuNodeActivableWithSubmenuItem;
6
6
  FlyoutMenuCircularDepInject: DSMenuItemRendererFactoryT.RequiredProps['FlyoutMenuCircularDepInject'];
7
+ ariaPosInSet?: number;
8
+ ariaSetSize?: number;
7
9
  }>;
@@ -2,4 +2,6 @@ import React from 'react';
2
2
  import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
3
3
  export declare const MultipleSelectMenuItem: React.ComponentType<{
4
4
  itemNode: DSMenuButtonT.MenuNodeMultipleSelectItem;
5
+ ariaPosInSet?: number;
6
+ ariaSetSize?: number;
5
7
  }>;
@@ -4,4 +4,6 @@ import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
4
4
  export declare const MultipleSelectWithSubmenuMenuItem: React.ComponentType<{
5
5
  itemNode: DSMenuButtonT.MenuNodeMultipleSelectWithSubmenuItem;
6
6
  FlyoutMenuCircularDepInject: DSMenuItemRendererFactoryT.RequiredProps['FlyoutMenuCircularDepInject'];
7
+ ariaPosInSet?: number;
8
+ ariaSetSize?: number;
7
9
  }>;
@@ -2,4 +2,6 @@ import React from 'react';
2
2
  import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
3
3
  export declare const SingleSelectMenuItem: React.ComponentType<{
4
4
  itemNode: DSMenuButtonT.MenuNodeSingleSelectItem;
5
+ ariaPosInSet?: number;
6
+ ariaSetSize?: number;
5
7
  }>;
@@ -4,4 +4,6 @@ import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
4
4
  export declare const SingleSelectWithSubmenuMenuItem: React.ComponentType<{
5
5
  itemNode: DSMenuButtonT.MenuNodeSingleSelectWithSubmenuItem;
6
6
  FlyoutMenuCircularDepInject: DSMenuItemRendererFactoryT.RequiredProps['FlyoutMenuCircularDepInject'];
7
+ ariaPosInSet?: number;
8
+ ariaSetSize?: number;
7
9
  }>;
@@ -2,4 +2,6 @@ import React from 'react';
2
2
  import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
3
3
  export declare const SkeletonMenuItem: React.ComponentType<{
4
4
  itemNode: DSMenuButtonT.MenuNodeSkeletonItem;
5
+ ariaPosInSet?: number;
6
+ ariaSetSize?: number;
5
7
  }>;
@@ -4,4 +4,6 @@ import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
4
4
  export declare const WithSubmenuMenuItem: React.ComponentType<{
5
5
  itemNode: DSMenuButtonT.MenuNodeWithSubmenuItem;
6
6
  FlyoutMenuCircularDepInject: DSMenuItemRendererFactoryT.RequiredProps['FlyoutMenuCircularDepInject'];
7
+ ariaPosInSet?: number;
8
+ ariaSetSize?: number;
7
9
  }>;
@@ -3,10 +3,12 @@ export declare const EXAMPLE_CONSTANTS: {};
3
3
  export declare const MENU_ITEM_RENDERER_FACTORY_SLOTS: {
4
4
  readonly ROOT: "root";
5
5
  readonly GROUP_LABEL_WRAPPER: "group-label-wrapper";
6
- readonly LABEL_WITH_LEFT_DEC_WRAPPER: "group-label-wrapper";
6
+ readonly LABEL_WITH_LEFT_DEC_WRAPPER: "label-with-left-dec-wrapper";
7
+ readonly RADIO_DOT_INDICATOR: "radio-dot-indicator";
7
8
  };
8
9
  export declare const MENU_ITEM_RENDERER_FACTORY_DATA_TESTID: {
9
10
  readonly ROOT: "ds-menuitemrendererfactory-root";
10
11
  readonly GROUP_LABEL_WRAPPER: "ds-menuitemrendererfactory-group-label-wrapper";
11
- readonly LABEL_WITH_LEFT_DEC_WRAPPER: "ds-menuitemrendererfactory-group-label-wrapper";
12
+ readonly LABEL_WITH_LEFT_DEC_WRAPPER: "ds-menuitemrendererfactory-label-with-left-dec-wrapper";
13
+ readonly RADIO_DOT_INDICATOR: "ds-menuitemrendererfactory-radio-dot-indicator";
12
14
  };
@@ -4,6 +4,12 @@ import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
4
4
  import type { DSFlyoutMenuT } from '../DSFlyoutMenu/react-desc-prop-types.js';
5
5
  import { DSMenuItemRendererFactoryName, MENU_ITEM_RENDERER_FACTORY_SLOTS } from './constants/index.js';
6
6
  export declare namespace DSMenuItemRendererFactoryT {
7
+ type SlotFunctionArguments = {
8
+ dsMenuitemrendererfactoryRoot: () => object;
9
+ dsMenuitemrendererfactoryGroupLabelWrapper: () => object;
10
+ dsMenuitemrendererfactoryLabelWithLeftDecWrapper: () => object;
11
+ dsMenuitemrendererfactoryRadioDotIndicator: () => object;
12
+ };
7
13
  interface RequiredProps {
8
14
  itemNode: DSMenuButtonT.MenuNode;
9
15
  FlyoutMenuCircularDepInject: React.ComponentType<DSFlyoutMenuT.Props>;
@@ -19,22 +19,22 @@ export declare const useOpinionatedButton: (propsFromUser: DSOpinionatedButtonT.
19
19
  };
20
20
  floatingStyles: React.CSSProperties;
21
21
  handlers: {
22
- onMouseEnter: () => void;
23
- onMouseLeave: () => void;
24
- onFocus: () => void;
25
- onBlur: () => void;
22
+ onMouseEnter: React.MouseEventHandler<Element>;
23
+ onMouseLeave: React.MouseEventHandler<Element>;
24
+ onFocus: React.FocusEventHandler<Element>;
25
+ onBlur: React.FocusEventHandler<Element>;
26
26
  };
27
27
  isOpen: boolean;
28
28
  arrowStyles: import("@elliemae/ds-floating-context/dist/types/parts/PopoverArrow.js").PopoverArrowT;
29
- hideTooltip: () => void;
30
- showTooltip: () => void;
29
+ hideTooltip: (event?: React.FocusEvent | React.MouseEvent | KeyboardEvent) => void;
30
+ showTooltip: (event?: React.FocusEvent | React.MouseEvent | React.KeyboardEvent) => void;
31
31
  context: {
32
32
  withoutPortal: boolean;
33
33
  withoutAnimation: boolean;
34
34
  portalDOMContainer: HTMLElement | undefined;
35
35
  animationDuration: number;
36
36
  };
37
- mutableUpdateStyles: React.MutableRefObject<() => void>;
37
+ mutableUpdateStyles: React.MutableRefObject<import("lodash").DebouncedFunc<() => void>>;
38
38
  forceUpdatePosition: () => void;
39
39
  };
40
40
  };
@@ -4,6 +4,9 @@ import type React from 'react';
4
4
  import { type DSMenuButtonT } from '../../react-desc-prop-types.js';
5
5
  import { DSOpinionatedButtonName, OPINIONATED_BUTTON_SLOTS } from './constants/index.js';
6
6
  export declare namespace DSOpinionatedButtonT {
7
+ type SlotFunctionArguments = {
8
+ dsOpinionatedbuttonRoot: () => object;
9
+ };
7
10
  interface RequiredProps extends DSMenuButtonT.ButtonInheritedRequiredProps {
8
11
  menuSpecificProps: DSMenuButtonT.MenuSpecificProps;
9
12
  }
@@ -5,6 +5,9 @@ import type { UseDSTreeT } from '@elliemae/ds-tree-model';
5
5
  import type { DSHookFloatingContextT } from '@elliemae/ds-floating-context';
6
6
  import { DSMenuButtonName, MENU_BUTTON_SLOTS, type MENU_ITEMS_TYPES } from './constants/index.js';
7
7
  export declare namespace DSMenuButtonT {
8
+ type SlotFunctionArguments = {
9
+ dsMenubuttonRoot: () => object;
10
+ };
8
11
  interface RootItem extends UseDSTreeT.AnyObjectWithoutReservedKeys {
9
12
  type: 'ROOT_ITEM';
10
13
  dsId: string;
@@ -131,4 +131,19 @@ export declare const isGroup: (item: unknown) => item is DSMenuButtonT.MenuNodeG
131
131
  * This function uses a hardcoded string to identify the root item.
132
132
  */
133
133
  export declare const isRootNode: (item: unknown) => item is DSMenuButtonT.MenuNodeRootItem;
134
+ /**
135
+ * Computes aria-posinset/aria-setsize for the focusable nodes within a single sibling
136
+ * list — either the flyout menu's top-level children, or one group's subitems.
137
+ * @param {DSMenuButtonT.MenuNode[]} siblingNodes - Immediate sibling nodes sharing one list level.
138
+ * @returns {Map<DSMenuButtonT.MenuNode['dsId'], { ariaPosInSet: number; ariaSetSize: number }>} keyed by dsId.
139
+ * @remarks
140
+ * PUI-18614: the browser/AT native inference of a menu's item count and an item's position
141
+ * breaks once a `role="group"` wrapper has no accessible name (a supported, label-less GROUP
142
+ * usage). Making both values explicit removes the dependency on that inference. Separators and
143
+ * nested groups are excluded — they are not part of the ARIA "set of items".
144
+ */
145
+ export declare const getAriaSetSizeAndPosInSetBySiblingList: (siblingNodes: DSMenuButtonT.MenuNode[]) => Map<DSMenuButtonT.MenuNode["dsId"], {
146
+ ariaPosInSet: number;
147
+ ariaSetSize: number;
148
+ }>;
134
149
  export declare const isMenuNodeAllowedToHaveChildren: (item: unknown) => item is DSMenuButtonT.MenuNodesAllowedToHaveChildren;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-menu-button",
3
- "version": "3.70.0-next.9",
3
+ "version": "3.70.0-rc.0",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Menu Button",
6
6
  "files": [
@@ -22,7 +22,7 @@
22
22
  ],
23
23
  "repository": {
24
24
  "type": "git",
25
- "url": "https://git.elliemae.io/platform-ui/dimsum.git"
25
+ "url": "https://github.com/intcx/PLATFORM-UI.dimsum.git"
26
26
  },
27
27
  "engines": {
28
28
  "pnpm": ">=9",
@@ -36,22 +36,22 @@
36
36
  "indent": 4
37
37
  },
38
38
  "dependencies": {
39
- "@elliemae/ds-button-v2": "3.70.0-next.9",
40
- "@elliemae/ds-floating-context": "3.70.0-next.9",
41
- "@elliemae/ds-grid": "3.70.0-next.9",
42
- "@elliemae/ds-hooks-on-blur-out": "3.70.0-next.9",
43
- "@elliemae/ds-menu-items-commons": "3.70.0-next.9",
44
- "@elliemae/ds-icons": "3.70.0-next.9",
45
- "@elliemae/ds-props-helpers": "3.70.0-next.9",
46
- "@elliemae/ds-tree-model": "3.70.0-next.9",
47
- "@elliemae/ds-system": "3.70.0-next.9"
39
+ "@elliemae/ds-button-v2": "3.70.0-rc.0",
40
+ "@elliemae/ds-floating-context": "3.70.0-rc.0",
41
+ "@elliemae/ds-grid": "3.70.0-rc.0",
42
+ "@elliemae/ds-hooks-on-blur-out": "3.70.0-rc.0",
43
+ "@elliemae/ds-icons": "3.70.0-rc.0",
44
+ "@elliemae/ds-menu-items-commons": "3.70.0-rc.0",
45
+ "@elliemae/ds-props-helpers": "3.70.0-rc.0",
46
+ "@elliemae/ds-system": "3.70.0-rc.0",
47
+ "@elliemae/ds-tree-model": "3.70.0-rc.0"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@elliemae/pui-theme": "~2.13.0",
51
51
  "jest": "^30.0.0",
52
- "styled-components": "~5.3.9",
53
- "@elliemae/ds-monorepo-devops": "3.70.0-next.9",
54
- "@elliemae/ds-typescript-helpers": "3.70.0-next.9"
52
+ "styled-components": "~5.3.11",
53
+ "@elliemae/ds-typescript-helpers": "3.70.0-rc.0",
54
+ "@elliemae/ds-monorepo-devops": "3.70.0-rc.0"
55
55
  },
56
56
  "peerDependencies": {
57
57
  "@testing-library/jest-dom": "^6.6.3",
@@ -59,7 +59,7 @@
59
59
  "@testing-library/user-event": "~14.6.1",
60
60
  "react": "^18.3.1",
61
61
  "react-dom": "^18.3.1",
62
- "styled-components": "~5.3.9"
62
+ "styled-components": "~5.3.11"
63
63
  },
64
64
  "publishConfig": {
65
65
  "access": "public",
@@ -74,4 +74,4 @@
74
74
  "build": "cross-env NODE_ENV=production node ../../../scripts/build/build.mjs",
75
75
  "checkDeps": "npx -yes ../../util/ds-codemods check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
76
76
  }
77
- }
77
+ }
@@ -1,3 +0,0 @@
1
- export function ControlledTestRender({ mockActionOnActivateItem }: {
2
- mockActionOnActivateItem: any;
3
- }): import("react/jsx-runtime").JSX.Element;
@@ -1 +0,0 @@
1
- export {};
@@ -1,2 +0,0 @@
1
- export const DSMenuButtonControlledTestRenderer: React.FunctionComponent<React.JSX.IntrinsicAttributes>;
2
- import React from 'react';