@elliemae/ds-menu-button 3.45.1 → 3.46.0-rc.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. package/dist/cjs/config/useMenuButton.js +0 -3
  2. package/dist/cjs/config/useMenuButton.js.map +2 -2
  3. package/dist/cjs/config/useSplitInherithedProps.js +3 -15
  4. package/dist/cjs/config/useSplitInherithedProps.js.map +2 -2
  5. package/dist/cjs/parts/DSFlyoutMenu/DSFlyoutMenu.js +1 -0
  6. package/dist/cjs/parts/DSFlyoutMenu/DSFlyoutMenu.js.map +2 -2
  7. package/dist/cjs/parts/DSFlyoutMenu/config/useFlyoutMenu.js +8 -2
  8. package/dist/cjs/parts/DSFlyoutMenu/config/useFlyoutMenu.js.map +2 -2
  9. package/dist/cjs/parts/DSFlyoutMenu/react-desc-prop-types.js.map +2 -2
  10. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.js +9 -15
  11. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.js.map +2 -2
  12. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js +7 -5
  13. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js.map +2 -2
  14. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.js +7 -21
  15. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.js.map +3 -3
  16. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js +0 -1
  17. package/dist/cjs/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js.map +2 -2
  18. package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableMenuItem.js +7 -10
  19. package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableMenuItem.js.map +2 -2
  20. package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js +7 -10
  21. package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js.map +2 -2
  22. package/dist/cjs/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js +17 -3
  23. package/dist/cjs/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js.map +2 -2
  24. package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js +7 -10
  25. package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js.map +2 -2
  26. package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js +7 -10
  27. package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js.map +2 -2
  28. package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js +7 -10
  29. package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js.map +2 -2
  30. package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js +7 -10
  31. package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js.map +2 -2
  32. package/dist/cjs/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js +7 -10
  33. package/dist/cjs/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js.map +2 -2
  34. package/dist/cjs/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.js +6 -3
  35. package/dist/cjs/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.js.map +2 -2
  36. package/dist/cjs/parts/DSMenuItemRendererFactory/constants/index.js +3 -1
  37. package/dist/cjs/parts/DSMenuItemRendererFactory/constants/index.js.map +2 -2
  38. package/dist/cjs/parts/DSOpinionatedButton/config/useOpinionatedButton.js +6 -4
  39. package/dist/cjs/parts/DSOpinionatedButton/config/useOpinionatedButton.js.map +2 -2
  40. package/dist/cjs/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.js +8 -5
  41. package/dist/cjs/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.js.map +2 -2
  42. package/dist/cjs/utils/resolveRef.js +43 -0
  43. package/dist/cjs/utils/resolveRef.js.map +7 -0
  44. package/dist/esm/config/useMenuButton.js +0 -3
  45. package/dist/esm/config/useMenuButton.js.map +2 -2
  46. package/dist/esm/config/useSplitInherithedProps.js +2 -14
  47. package/dist/esm/config/useSplitInherithedProps.js.map +2 -2
  48. package/dist/esm/parts/DSFlyoutMenu/DSFlyoutMenu.js +1 -0
  49. package/dist/esm/parts/DSFlyoutMenu/DSFlyoutMenu.js.map +2 -2
  50. package/dist/esm/parts/DSFlyoutMenu/config/useFlyoutMenu.js +8 -2
  51. package/dist/esm/parts/DSFlyoutMenu/config/useFlyoutMenu.js.map +2 -2
  52. package/dist/esm/parts/DSFlyoutMenu/react-desc-prop-types.js.map +2 -2
  53. package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.js +9 -15
  54. package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.js.map +2 -2
  55. package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js +7 -5
  56. package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js.map +2 -2
  57. package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.js +7 -21
  58. package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.js.map +2 -2
  59. package/dist/esm/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js +0 -1
  60. package/dist/esm/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js.map +2 -2
  61. package/dist/esm/parts/DSMenuItemRendererFactory/ActivableMenuItem.js +7 -10
  62. package/dist/esm/parts/DSMenuItemRendererFactory/ActivableMenuItem.js.map +2 -2
  63. package/dist/esm/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js +7 -10
  64. package/dist/esm/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js.map +2 -2
  65. package/dist/esm/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js +19 -5
  66. package/dist/esm/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js.map +2 -2
  67. package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js +7 -10
  68. package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js.map +2 -2
  69. package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js +7 -10
  70. package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js.map +2 -2
  71. package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js +7 -10
  72. package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js.map +2 -2
  73. package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js +7 -10
  74. package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js.map +2 -2
  75. package/dist/esm/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js +7 -10
  76. package/dist/esm/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js.map +2 -2
  77. package/dist/esm/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.js +7 -4
  78. package/dist/esm/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.js.map +2 -2
  79. package/dist/esm/parts/DSMenuItemRendererFactory/constants/index.js +3 -1
  80. package/dist/esm/parts/DSMenuItemRendererFactory/constants/index.js.map +2 -2
  81. package/dist/esm/parts/DSOpinionatedButton/config/useOpinionatedButton.js +6 -4
  82. package/dist/esm/parts/DSOpinionatedButton/config/useOpinionatedButton.js.map +2 -2
  83. package/dist/esm/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.js +8 -5
  84. package/dist/esm/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.js.map +2 -2
  85. package/dist/esm/utils/resolveRef.js +13 -0
  86. package/dist/esm/utils/resolveRef.js.map +7 -0
  87. package/dist/types/config/useSplitInherithedProps.d.ts +3 -7
  88. package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.d.ts +1 -1
  89. package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.d.ts +0 -1
  90. package/dist/types/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.d.ts +0 -1
  91. package/dist/types/parts/DSMenuItemRendererFactory/constants/index.d.ts +2 -0
  92. package/dist/types/utils/resolveRef.d.ts +2 -0
  93. package/package.json +13 -13
@@ -0,0 +1,13 @@
1
+ import * as React from "react";
2
+ const resolveRef = (ref, node) => {
3
+ if (typeof ref === "function") {
4
+ ref(node);
5
+ }
6
+ if ("current" in ref) {
7
+ ref.current = node;
8
+ }
9
+ };
10
+ export {
11
+ resolveRef
12
+ };
13
+ //# sourceMappingURL=resolveRef.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../src/utils/resolveRef.ts"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import type React from 'react';\n\n// react references may be functions or objects, this helpers identify the type and act accordingly\nexport const resolveRef = (\n ref: React.MutableRefObject<HTMLElement | null> | React.RefCallback<HTMLElement>,\n node: HTMLElement | null,\n) => {\n if (typeof ref === 'function') {\n ref(node);\n }\n if ('current' in ref) {\n ref.current = node;\n }\n};\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACGhB,MAAM,aAAa,CACxB,KACA,SACG;AACH,MAAI,OAAO,QAAQ,YAAY;AAC7B,QAAI,IAAI;AAAA,EACV;AACA,MAAI,aAAa,KAAK;AACpB,QAAI,UAAU;AAAA,EAChB;AACF;",
6
+ "names": []
7
+ }
@@ -1,16 +1,12 @@
1
1
  import React from 'react';
2
- import type { TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';
3
2
  import { type DSMenuButtonT } from '../react-desc-prop-types.js';
4
3
  type UseSplitInherithedPropsConfig = {
5
4
  propsWithDefault: DSMenuButtonT.InternalProps;
6
- buttonDOMNode: HTMLElement | null;
7
- setButtonDOMNode: TypescriptHelpersT.StateSetter<HTMLElement | null>;
8
5
  focusableNodes: DSMenuButtonT.PseudoFocusableMenuNodes[];
9
6
  treeRootNode: DSMenuButtonT.MenuNode;
10
7
  };
11
- export declare const useSplitInherithedProps: ({ propsWithDefault, setButtonDOMNode, buttonDOMNode, focusableNodes, treeRootNode, }: UseSplitInherithedPropsConfig) => {
8
+ export declare const useSplitInherithedProps: ({ propsWithDefault, focusableNodes, treeRootNode, }: UseSplitInherithedPropsConfig) => {
12
9
  menuBehaviouralLayerProps: {
13
- buttonDOMNode: HTMLElement | null;
14
10
  buttonDOMNodeRef: React.MutableRefObject<HTMLElement | null>;
15
11
  selectedItems: DSMenuButtonT.SelectionableMenuNodes[];
16
12
  focusableNodes: DSMenuButtonT.PseudoFocusableMenuNodes[];
@@ -18,11 +14,11 @@ export declare const useSplitInherithedProps: ({ propsWithDefault, setButtonDOMN
18
14
  onDisplayedSubmenuChange: ((newOpenedItems: DSMenuButtonT.WithSubmenuMenuNodes[], metainfo: {
19
15
  itemNode: DSMenuButtonT.PseudoFocusableMenuNodes | null;
20
16
  event?: React.SyntheticEvent<Element, Event> | TouchEvent | FocusEvent | undefined;
21
- }) => void | TypescriptHelpersT.StateSetter<DSMenuButtonT.WithSubmenuMenuNodes[]>) | undefined;
17
+ }) => void | import("@elliemae/ds-typescript-helpers").TypescriptHelpersT.StateSetter<DSMenuButtonT.WithSubmenuMenuNodes[]>) | undefined;
22
18
  onItemSelected: (newSelection: DSMenuButtonT.SelectionableMenuNodes[], metainfo: {
23
19
  itemNode: DSMenuButtonT.SelectionableMenuNodes;
24
20
  event?: React.SyntheticEvent<Element, Event> | undefined;
25
- }) => void | TypescriptHelpersT.StateSetter<DSMenuButtonT.SelectionableMenuNodes[]>;
21
+ }) => void | import("@elliemae/ds-typescript-helpers").TypescriptHelpersT.StateSetter<DSMenuButtonT.SelectionableMenuNodes[]>;
26
22
  onActivateItem: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes, metainfo: {
27
23
  itemNode: DSMenuButtonT.PseudoFocusableMenuNodes;
28
24
  event?: React.SyntheticEvent<Element, Event> | undefined;
@@ -1,9 +1,9 @@
1
1
  import type { DSMenuButtonT } from '../../../react-desc-prop-types.js';
2
2
  import { type DSMenuBehaviouralContextProviderT } from '../react-desc-prop-types.js';
3
3
  import { useFocusTracker } from './useFocusTracker.js';
4
+ import { useGlobalEvents } from './useGlobalEvents.js';
4
5
  import { useMenuItemEventsHandlers } from './useMenuItemEventsHandlers.js';
5
6
  import { useMenuOpenStatus } from './useMenuOpenStatus.js';
6
- import { useGlobalEvents } from './useGlobalEvents.js';
7
7
  export interface MenuBehaviouralContextProviderCTX extends ReturnType<typeof useFocusTracker>, ReturnType<typeof useMenuOpenStatus> {
8
8
  propsWithDefault: DSMenuBehaviouralContextProviderT.InternalProps;
9
9
  instanceUid: string;
@@ -13,6 +13,5 @@ export declare const useMenuItemEventsHandlers: ({ propsWithDefault, focusTracke
13
13
  handleFocusableMenuItemKeyDown: React.KeyboardEventHandler<HTMLDivElement>;
14
14
  handleFocusableMenuItemClick: (event: React.MouseEvent<HTMLDivElement>) => void;
15
15
  handleFocusableMenuItemOnMouseEnter: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes, event: React.MouseEvent) => void;
16
- handleMenuItemFocusReconciliation: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes) => void;
17
16
  };
18
17
  export {};
@@ -4,7 +4,6 @@ import { type TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';
4
4
  import { type DSMenuButtonT } from '../../react-desc-prop-types.js';
5
5
  export declare namespace DSMenuBehaviouralContextProviderT {
6
6
  interface RequiredProps extends DSMenuButtonT.MenuBehaviouralLayerRequiredProps {
7
- buttonDOMNode: HTMLElement | null;
8
7
  buttonDOMNodeRef: React.MutableRefObject<HTMLElement | null>;
9
8
  optionsTree: DSMenuButtonT.MenuNode;
10
9
  children: TypescriptHelpersT.ReactChildrenComplete;
@@ -2,5 +2,7 @@ export declare const DSMenuItemRendererFactoryName = "DSMenuItemRendererFactory"
2
2
  export declare const EXAMPLE_CONSTANTS: {};
3
3
  export declare const MENU_ITEM_RENDERER_FACTORY_SLOTS: {
4
4
  readonly ROOT: "root";
5
+ readonly GROUP_LABEL_WRAPPER: "group-label-wrapper";
6
+ readonly LABEL_WITH_LEFT_DEC_WRAPPER: "group-label-wrapper";
5
7
  };
6
8
  export declare const MENU_ITEM_RENDERER_FACTORY_DATA_TESTID: Record<string, string>;
@@ -0,0 +1,2 @@
1
+ import type React from 'react';
2
+ export declare const resolveRef: (ref: React.MutableRefObject<HTMLElement | null> | React.RefCallback<HTMLElement>, node: HTMLElement | null) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-menu-button",
3
- "version": "3.45.1",
3
+ "version": "3.46.0-rc.0",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Menu Button",
6
6
  "files": [
@@ -37,22 +37,22 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@xstyled/styled-components": "~3.6.0",
40
- "@elliemae/ds-button-v2": "3.45.1",
41
- "@elliemae/ds-floating-context": "3.45.1",
42
- "@elliemae/ds-grid": "3.45.1",
43
- "@elliemae/ds-hooks-on-blur-out": "3.45.1",
44
- "@elliemae/ds-props-helpers": "3.45.1",
45
- "@elliemae/ds-icons": "3.45.1",
46
- "@elliemae/ds-menu-items-commons": "3.45.1",
47
- "@elliemae/ds-system": "3.45.1",
48
- "@elliemae/ds-tree-model": "3.45.1"
40
+ "@elliemae/ds-button-v2": "3.46.0-rc.0",
41
+ "@elliemae/ds-icons": "3.46.0-rc.0",
42
+ "@elliemae/ds-props-helpers": "3.46.0-rc.0",
43
+ "@elliemae/ds-system": "3.46.0-rc.0",
44
+ "@elliemae/ds-menu-items-commons": "3.46.0-rc.0",
45
+ "@elliemae/ds-hooks-on-blur-out": "3.46.0-rc.0",
46
+ "@elliemae/ds-grid": "3.46.0-rc.0",
47
+ "@elliemae/ds-floating-context": "3.46.0-rc.0",
48
+ "@elliemae/ds-tree-model": "3.46.0-rc.0"
49
49
  },
50
50
  "devDependencies": {
51
51
  "@elliemae/pui-cli": "9.0.0-next.50",
52
52
  "styled-components": "~5.3.9",
53
- "@elliemae/ds-dropdownmenu-v2": "3.45.1",
54
- "@elliemae/ds-monorepo-devops": "3.45.1",
55
- "@elliemae/ds-typescript-helpers": "3.45.1"
53
+ "@elliemae/ds-monorepo-devops": "3.46.0-rc.0",
54
+ "@elliemae/ds-typescript-helpers": "3.46.0-rc.0",
55
+ "@elliemae/ds-dropdownmenu-v2": "3.46.0-rc.0"
56
56
  },
57
57
  "peerDependencies": {
58
58
  "@testing-library/jest-dom": "~5.16.4",