@elliemae/ds-menu-button 3.45.0-rc.0 → 3.45.0-rc.2
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/DSMenuButton.js +16 -5
- package/dist/cjs/DSMenuButton.js.map +2 -2
- package/dist/cjs/config/useMenuButton.js +49 -18
- package/dist/cjs/config/useMenuButton.js.map +3 -3
- package/dist/cjs/config/useSplitInherithedProps.js +141 -0
- package/dist/cjs/config/useSplitInherithedProps.js.map +7 -0
- package/dist/cjs/config/useValidateProps.js.map +2 -2
- package/dist/cjs/constants/index.js +17 -4
- package/dist/cjs/constants/index.js.map +2 -2
- package/dist/cjs/index.js +7 -3
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/parts/DSFlyoutMenu/DSFlyoutMenu.js +96 -0
- package/dist/cjs/parts/DSFlyoutMenu/DSFlyoutMenu.js.map +7 -0
- package/dist/cjs/parts/DSFlyoutMenu/config/useFlyoutMenu.js +54 -0
- package/dist/cjs/parts/DSFlyoutMenu/config/useFlyoutMenu.js.map +7 -0
- package/dist/cjs/parts/{ItemFactory.js → DSFlyoutMenu/config/useValidateProps.js} +9 -35
- package/dist/cjs/parts/DSFlyoutMenu/config/useValidateProps.js.map +7 -0
- package/dist/cjs/parts/DSFlyoutMenu/constants/index.js +46 -0
- package/dist/cjs/parts/DSFlyoutMenu/constants/index.js.map +7 -0
- package/dist/cjs/{DSMenuButtonCTX.js → parts/DSFlyoutMenu/index.js} +7 -8
- package/dist/cjs/parts/DSFlyoutMenu/index.js.map +7 -0
- package/dist/cjs/parts/DSFlyoutMenu/react-desc-prop-types.js +62 -0
- package/dist/cjs/parts/DSFlyoutMenu/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/DSMenuBehaviouralContextProvider.js +70 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/DSMenuBehaviouralContextProvider.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/MenuBehaviouralContextProviderCTX.js +40 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/MenuBehaviouralContextProviderCTX.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.js +186 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useGlobalEvents.js +89 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useGlobalEvents.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js +92 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.js +315 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuOpenStatus.js +66 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useMenuOpenStatus.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useValidateProps.js +40 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/config/useValidateProps.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/constants/Errors.js +58 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/constants/Errors.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/constants/index.js +44 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/constants/index.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/index.js +37 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/index.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js +53 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/utils/multipleSelectionHelpers.js +139 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/utils/multipleSelectionHelpers.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/utils/nodeGettersByCriterias.js +144 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/utils/nodeGettersByCriterias.js.map +7 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/utils/singleSelectionHelpers.js +44 -0
- package/dist/cjs/parts/DSMenuBehaviouralContextProvider/utils/singleSelectionHelpers.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableMenuItem.js +116 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableMenuItem.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js +159 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js +97 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js +122 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js +173 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js +130 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js +176 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js +162 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.js +57 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/config/useValidateProps.js +40 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/config/useValidateProps.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/constants/index.js +48 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/constants/index.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/index.js +37 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/index.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/react-desc-prop-types.js +51 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/useMenuItemHighlightState.js +62 -0
- package/dist/cjs/parts/DSMenuItemRendererFactory/useMenuItemHighlightState.js.map +7 -0
- package/dist/cjs/parts/DSOpinionatedButton/DSOpinionatedButton.js +100 -0
- package/dist/cjs/parts/DSOpinionatedButton/DSOpinionatedButton.js.map +7 -0
- package/dist/cjs/parts/DSOpinionatedButton/config/useOpinionatedButton.js +80 -0
- package/dist/cjs/parts/DSOpinionatedButton/config/useOpinionatedButton.js.map +7 -0
- package/dist/cjs/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.js +98 -0
- package/dist/cjs/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.js.map +7 -0
- package/dist/cjs/parts/DSOpinionatedButton/config/useValidateProps.js +40 -0
- package/dist/cjs/parts/DSOpinionatedButton/config/useValidateProps.js.map +7 -0
- package/dist/cjs/parts/DSOpinionatedButton/constants/index.js +48 -0
- package/dist/cjs/parts/DSOpinionatedButton/constants/index.js.map +7 -0
- package/dist/cjs/parts/DSOpinionatedButton/index.js +37 -0
- package/dist/cjs/parts/DSOpinionatedButton/index.js.map +7 -0
- package/dist/cjs/parts/DSOpinionatedButton/react-desc-prop-types.js +53 -0
- package/dist/cjs/parts/DSOpinionatedButton/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/react-desc-prop-types.js +61 -25
- package/dist/cjs/react-desc-prop-types.js.map +2 -2
- package/dist/cjs/utils/nodesTypeguardsAndGetters.js +123 -0
- package/dist/cjs/utils/nodesTypeguardsAndGetters.js.map +7 -0
- package/dist/cjs/utils/useOptionsArrayToDsTree.js +55 -0
- package/dist/cjs/utils/useOptionsArrayToDsTree.js.map +7 -0
- package/dist/esm/DSMenuButton.js +19 -8
- package/dist/esm/DSMenuButton.js.map +2 -2
- package/dist/esm/config/useMenuButton.js +51 -20
- package/dist/esm/config/useMenuButton.js.map +3 -3
- package/dist/esm/config/useSplitInherithedProps.js +111 -0
- package/dist/esm/config/useSplitInherithedProps.js.map +7 -0
- package/dist/esm/config/useValidateProps.js.map +2 -2
- package/dist/esm/constants/index.js +17 -4
- package/dist/esm/constants/index.js.map +2 -2
- package/dist/esm/index.js +8 -4
- package/dist/esm/index.js.map +3 -3
- package/dist/esm/parts/DSFlyoutMenu/DSFlyoutMenu.js +66 -0
- package/dist/esm/parts/DSFlyoutMenu/DSFlyoutMenu.js.map +7 -0
- package/dist/esm/parts/DSFlyoutMenu/config/useFlyoutMenu.js +24 -0
- package/dist/esm/parts/DSFlyoutMenu/config/useFlyoutMenu.js.map +7 -0
- package/dist/esm/parts/DSFlyoutMenu/config/useValidateProps.js +10 -0
- package/dist/esm/parts/DSFlyoutMenu/config/useValidateProps.js.map +7 -0
- package/dist/esm/parts/DSFlyoutMenu/constants/index.js +16 -0
- package/dist/esm/parts/DSFlyoutMenu/constants/index.js.map +7 -0
- package/dist/esm/parts/DSFlyoutMenu/index.js +7 -0
- package/dist/esm/parts/DSFlyoutMenu/index.js.map +7 -0
- package/dist/esm/parts/DSFlyoutMenu/react-desc-prop-types.js +40 -0
- package/dist/esm/parts/DSFlyoutMenu/react-desc-prop-types.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/DSMenuBehaviouralContextProvider.js +42 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/DSMenuBehaviouralContextProvider.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/MenuBehaviouralContextProviderCTX.js +10 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/MenuBehaviouralContextProviderCTX.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.js +161 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useGlobalEvents.js +59 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useGlobalEvents.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js +65 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.js +292 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuOpenStatus.js +36 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useMenuOpenStatus.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useValidateProps.js +10 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/config/useValidateProps.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/constants/Errors.js +28 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/constants/Errors.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/constants/index.js +14 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/constants/index.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/index.js +10 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/index.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js +23 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/utils/multipleSelectionHelpers.js +113 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/utils/multipleSelectionHelpers.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/utils/nodeGettersByCriterias.js +123 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/utils/nodeGettersByCriterias.js.map +7 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/utils/singleSelectionHelpers.js +14 -0
- package/dist/esm/parts/DSMenuBehaviouralContextProvider/utils/singleSelectionHelpers.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/ActivableMenuItem.js +91 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/ActivableMenuItem.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js +134 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js +78 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js +97 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js +148 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js +105 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js +151 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js +137 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.js +30 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/config/useValidateProps.js +10 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/config/useValidateProps.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/constants/index.js +18 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/constants/index.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/index.js +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/index.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/react-desc-prop-types.js +26 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/react-desc-prop-types.js.map +7 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/useMenuItemHighlightState.js +32 -0
- package/dist/esm/parts/DSMenuItemRendererFactory/useMenuItemHighlightState.js.map +7 -0
- package/dist/esm/parts/DSOpinionatedButton/DSOpinionatedButton.js +70 -0
- package/dist/esm/parts/DSOpinionatedButton/DSOpinionatedButton.js.map +7 -0
- package/dist/esm/parts/DSOpinionatedButton/config/useOpinionatedButton.js +53 -0
- package/dist/esm/parts/DSOpinionatedButton/config/useOpinionatedButton.js.map +7 -0
- package/dist/esm/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.js +68 -0
- package/dist/esm/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.js.map +7 -0
- package/dist/esm/parts/DSOpinionatedButton/config/useValidateProps.js +10 -0
- package/dist/esm/parts/DSOpinionatedButton/config/useValidateProps.js.map +7 -0
- package/dist/esm/parts/DSOpinionatedButton/constants/index.js +18 -0
- package/dist/esm/parts/DSOpinionatedButton/constants/index.js.map +7 -0
- package/dist/esm/parts/DSOpinionatedButton/index.js +10 -0
- package/dist/esm/parts/DSOpinionatedButton/index.js.map +7 -0
- package/dist/esm/parts/DSOpinionatedButton/react-desc-prop-types.js +23 -0
- package/dist/esm/parts/DSOpinionatedButton/react-desc-prop-types.js.map +7 -0
- package/dist/esm/react-desc-prop-types.js +62 -26
- package/dist/esm/react-desc-prop-types.js.map +2 -2
- package/dist/esm/utils/nodesTypeguardsAndGetters.js +93 -0
- package/dist/esm/utils/nodesTypeguardsAndGetters.js.map +7 -0
- package/dist/esm/utils/useOptionsArrayToDsTree.js +25 -0
- package/dist/esm/utils/useOptionsArrayToDsTree.js.map +7 -0
- package/dist/types/DSMenuButton.d.ts +4 -6
- package/dist/types/config/useMenuButton.d.ts +9 -13
- package/dist/types/config/useSplitInherithedProps.d.ts +495 -0
- package/dist/types/config/useValidateProps.d.ts +3 -3
- package/dist/types/constants/index.d.ts +14 -2
- package/dist/types/index.d.ts +4 -2
- package/dist/types/parts/DSFlyoutMenu/DSFlyoutMenu.d.ts +5 -0
- package/dist/types/parts/DSFlyoutMenu/config/useFlyoutMenu.d.ts +8 -0
- package/dist/types/parts/DSFlyoutMenu/config/useValidateProps.d.ts +3 -0
- package/dist/types/parts/DSFlyoutMenu/constants/index.d.ts +7 -0
- package/dist/types/parts/DSFlyoutMenu/index.d.ts +1 -0
- package/dist/types/parts/DSFlyoutMenu/react-desc-prop-types.d.ts +25 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/DSMenuBehaviouralContextProvider.d.ts +5 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/MenuBehaviouralContextProviderCTX.d.ts +5 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useFocusTracker.d.ts +15 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useGlobalEvents.d.ts +15 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useMenuBehaviouralContextProvider.d.ts +15 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.d.ts +18 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useMenuOpenStatus.d.ts +17 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useValidateProps.d.ts +3 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/constants/Errors.d.ts +15 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/constants/index.d.ts +7 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/index.d.ts +1 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/react-desc-prop-types.d.ts +24 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/utils/multipleSelectionHelpers.d.ts +6 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/utils/nodeGettersByCriterias.d.ts +35 -0
- package/dist/types/parts/DSMenuBehaviouralContextProvider/utils/singleSelectionHelpers.d.ts +13 -0
- package/dist/types/parts/DSMenuItemRendererFactory/ActivableMenuItem.d.ts +5 -0
- package/dist/types/parts/DSMenuItemRendererFactory/ActivableWithSubmenuMenuItem.d.ts +7 -0
- package/dist/types/parts/DSMenuItemRendererFactory/DSMenuItemRendererFactory.d.ts +5 -0
- package/dist/types/parts/DSMenuItemRendererFactory/MultipleSelectMenuItem.d.ts +5 -0
- package/dist/types/parts/DSMenuItemRendererFactory/MultipleSelectWithSubmenuMenuItem.d.ts +7 -0
- package/dist/types/parts/DSMenuItemRendererFactory/SingleSelectMenuItem.d.ts +5 -0
- package/dist/types/parts/DSMenuItemRendererFactory/SingleSelectWithSubmenuMenuItem.d.ts +7 -0
- package/dist/types/parts/DSMenuItemRendererFactory/WithSubmenuMenuItem.d.ts +7 -0
- package/dist/types/parts/DSMenuItemRendererFactory/config/useMenuItemRendererFactory.d.ts +6 -0
- package/dist/types/parts/DSMenuItemRendererFactory/config/useValidateProps.d.ts +3 -0
- package/dist/types/parts/DSMenuItemRendererFactory/constants/index.d.ts +6 -0
- package/dist/types/parts/DSMenuItemRendererFactory/index.d.ts +1 -0
- package/dist/types/parts/DSMenuItemRendererFactory/react-desc-prop-types.d.ts +24 -0
- package/dist/types/parts/DSMenuItemRendererFactory/useMenuItemHighlightState.d.ts +12 -0
- package/dist/types/parts/DSOpinionatedButton/DSOpinionatedButton.d.ts +5 -0
- package/dist/types/parts/DSOpinionatedButton/config/useOpinionatedButton.d.ts +38 -0
- package/dist/types/parts/DSOpinionatedButton/config/useTriggerEventsHandlers.d.ts +14 -0
- package/dist/types/parts/DSOpinionatedButton/config/useValidateProps.d.ts +3 -0
- package/dist/types/parts/DSOpinionatedButton/constants/index.d.ts +6 -0
- package/dist/types/parts/DSOpinionatedButton/index.d.ts +1 -0
- package/dist/types/parts/DSOpinionatedButton/react-desc-prop-types.d.ts +23 -0
- package/dist/types/react-desc-prop-types.d.ts +206 -41
- package/dist/types/utils/nodesTypeguardsAndGetters.d.ts +22 -0
- package/dist/types/utils/useOptionsArrayToDsTree.d.ts +8 -0
- package/package.json +18 -16
- package/dist/cjs/DSMenuButtonCTX.js.map +0 -7
- package/dist/cjs/parts/ItemFactory.js.map +0 -7
- package/dist/cjs/parts/Menu.js +0 -125
- package/dist/cjs/parts/Menu.js.map +0 -7
- package/dist/cjs/parts/MenuButtonContent.js +0 -156
- package/dist/cjs/parts/MenuButtonContent.js.map +0 -7
- package/dist/cjs/parts/MenuItem.js +0 -252
- package/dist/cjs/parts/MenuItem.js.map +0 -7
- package/dist/cjs/styled.js +0 -132
- package/dist/cjs/styled.js.map +0 -7
- package/dist/esm/DSMenuButtonCTX.js +0 -8
- package/dist/esm/DSMenuButtonCTX.js.map +0 -7
- package/dist/esm/parts/ItemFactory.js +0 -36
- package/dist/esm/parts/ItemFactory.js.map +0 -7
- package/dist/esm/parts/Menu.js +0 -95
- package/dist/esm/parts/Menu.js.map +0 -7
- package/dist/esm/parts/MenuButtonContent.js +0 -126
- package/dist/esm/parts/MenuButtonContent.js.map +0 -7
- package/dist/esm/parts/MenuItem.js +0 -229
- package/dist/esm/parts/MenuItem.js.map +0 -7
- package/dist/esm/styled.js +0 -102
- package/dist/esm/styled.js.map +0 -7
- package/dist/types/DSMenuButtonCTX.d.ts +0 -15
- package/dist/types/parts/ItemFactory.d.ts +0 -14
- package/dist/types/parts/Menu.d.ts +0 -14
- package/dist/types/parts/MenuButtonContent.d.ts +0 -1
- package/dist/types/parts/MenuItem.d.ts +0 -21
- package/dist/types/styled.d.ts +0 -16
package/dist/types/parts/DSMenuBehaviouralContextProvider/DSMenuBehaviouralContextProvider.d.ts
ADDED
@@ -0,0 +1,5 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DSMenuBehaviouralContextProviderT } from './react-desc-prop-types.js';
|
3
|
+
declare const DSMenuBehaviouralContextProvider: React.ComponentType<DSMenuBehaviouralContextProviderT.Props>;
|
4
|
+
declare const DSMenuBehaviouralContextProviderWithSchema: import("@elliemae/ds-props-helpers/dist/types/propTypes/types.js").DocumentedReactComponent<DSMenuBehaviouralContextProviderT.Props>;
|
5
|
+
export { DSMenuBehaviouralContextProvider, DSMenuBehaviouralContextProviderWithSchema };
|
package/dist/types/parts/DSMenuBehaviouralContextProvider/MenuBehaviouralContextProviderCTX.d.ts
ADDED
@@ -0,0 +1,5 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { MenuBehaviouralContextProviderCTX } from './config/useMenuBehaviouralContextProvider.js';
|
3
|
+
/** Context for cross component communication */
|
4
|
+
export declare const MenuBehaviouralContextProviderContext: import("react").Context<MenuBehaviouralContextProviderCTX>;
|
5
|
+
export default MenuBehaviouralContextProviderContext;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { DSMenuButtonT } from '../../../react-desc-prop-types.js';
|
3
|
+
export declare const useFocusTracker: () => {
|
4
|
+
preventBlurReset: React.MutableRefObject<boolean>;
|
5
|
+
focusRegion: "" | "trigger" | `item-dsid-${string}` | `item-dsid-${number}`;
|
6
|
+
focusedElementItemNode: React.MutableRefObject<DSMenuButtonT.PseudoFocusableMenuNodes | null>;
|
7
|
+
trackFocusTrigger: () => null;
|
8
|
+
trackFocusNode: (nodeToFocus: DSMenuButtonT.PseudoFocusableMenuNodes) => void;
|
9
|
+
trackFocusRegionReset: () => null;
|
10
|
+
trackFocusFirstChildItem: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes) => DSMenuButtonT.PseudoFocusableMenuNodes;
|
11
|
+
trackFocusLastChildItem: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes) => DSMenuButtonT.PseudoFocusableMenuNodes;
|
12
|
+
trackFocusNextItem: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes) => DSMenuButtonT.PseudoFocusableMenuNodes;
|
13
|
+
trackFocusPreviousItem: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes) => DSMenuButtonT.PseudoFocusableMenuNodes;
|
14
|
+
trackFocusParentItem: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes) => DSMenuButtonT.PseudoFocusableMenuNodes | null;
|
15
|
+
};
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { DSMenuButtonT } from '../../../react-desc-prop-types.js';
|
3
|
+
import type { useMenuOpenStatus } from './useMenuOpenStatus.js';
|
4
|
+
import type { DSMenuBehaviouralContextProviderT } from '../react-desc-prop-types.js';
|
5
|
+
type UseGlobalEventsConfig = {
|
6
|
+
menuOpenStatus: ReturnType<typeof useMenuOpenStatus>;
|
7
|
+
handleChangeOpenedSubItems: Required<DSMenuButtonT.MenuBehaviouralLayerOptionalProps>['onDisplayedSubmenuChange'];
|
8
|
+
propsWithDefault: DSMenuBehaviouralContextProviderT.InternalProps;
|
9
|
+
};
|
10
|
+
export declare const useGlobalEvents: ({ menuOpenStatus, handleChangeOpenedSubItems, propsWithDefault, }: UseGlobalEventsConfig) => {
|
11
|
+
mainMenuRef: React.MutableRefObject<HTMLDivElement | null>;
|
12
|
+
submenusRefs: React.MutableRefObject<Record<string | number, HTMLElement>>;
|
13
|
+
handleSubmenusRefChange: (htmlNode: HTMLElement | null, dsId: DSMenuButtonT.WithSubmenuMenuNodes['dsId']) => void;
|
14
|
+
};
|
15
|
+
export {};
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import type { DSMenuButtonT } from '../../../react-desc-prop-types.js';
|
2
|
+
import { type DSMenuBehaviouralContextProviderT } from '../react-desc-prop-types.js';
|
3
|
+
import { useFocusTracker } from './useFocusTracker.js';
|
4
|
+
import { useMenuItemEventsHandlers } from './useMenuItemEventsHandlers.js';
|
5
|
+
import { useMenuOpenStatus } from './useMenuOpenStatus.js';
|
6
|
+
import { useGlobalEvents } from './useGlobalEvents.js';
|
7
|
+
export interface MenuBehaviouralContextProviderCTX extends ReturnType<typeof useFocusTracker>, ReturnType<typeof useMenuOpenStatus> {
|
8
|
+
propsWithDefault: DSMenuBehaviouralContextProviderT.InternalProps;
|
9
|
+
instanceUid: string;
|
10
|
+
menuItemEventsHandlers: ReturnType<typeof useMenuItemEventsHandlers>;
|
11
|
+
openedSubItems: DSMenuButtonT.WithSubmenuMenuNodes[];
|
12
|
+
handleChangeOpenedSubItems: Required<DSMenuButtonT.MenuBehaviouralLayerOptionalProps>['onDisplayedSubmenuChange'];
|
13
|
+
globalEventsHelpers: ReturnType<typeof useGlobalEvents>;
|
14
|
+
}
|
15
|
+
export declare const useMenuBehaviouralContextProvider: (propsFromUser: DSMenuBehaviouralContextProviderT.Props) => MenuBehaviouralContextProviderCTX;
|
package/dist/types/parts/DSMenuBehaviouralContextProvider/config/useMenuItemEventsHandlers.d.ts
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DSMenuButtonT } from '../../../react-desc-prop-types.js';
|
3
|
+
import { type DSMenuBehaviouralContextProviderT } from '../react-desc-prop-types.js';
|
4
|
+
import type { useFocusTracker } from './useFocusTracker.js';
|
5
|
+
import type { useMenuOpenStatus } from './useMenuOpenStatus.js';
|
6
|
+
type UseMenuItemEventsHandlersConfig = {
|
7
|
+
propsWithDefault: DSMenuBehaviouralContextProviderT.InternalProps;
|
8
|
+
focusTrackers: ReturnType<typeof useFocusTracker>;
|
9
|
+
menuOpenStatus: ReturnType<typeof useMenuOpenStatus>;
|
10
|
+
handleChangeOpenedSubItems: Required<DSMenuButtonT.MenuBehaviouralLayerOptionalProps>['onDisplayedSubmenuChange'];
|
11
|
+
};
|
12
|
+
export declare const useMenuItemEventsHandlers: ({ propsWithDefault, focusTrackers, menuOpenStatus, handleChangeOpenedSubItems, }: UseMenuItemEventsHandlersConfig) => {
|
13
|
+
handleFocusableMenuItemKeyDown: React.KeyboardEventHandler<HTMLDivElement>;
|
14
|
+
handleFocusableMenuItemClick: (event: React.MouseEvent<HTMLDivElement>) => void;
|
15
|
+
handleFocusableMenuItemOnMouseEnter: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes, event: React.MouseEvent) => void;
|
16
|
+
handleMenuItemFocusReconciliation: (itemNode: DSMenuButtonT.PseudoFocusableMenuNodes) => void;
|
17
|
+
};
|
18
|
+
export {};
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { type DSMenuBehaviouralContextProviderT } from '../react-desc-prop-types.js';
|
2
|
+
import type { useFocusTracker } from './useFocusTracker.js';
|
3
|
+
type UseMenuOpenStatusConfig = {
|
4
|
+
propsWithDefault: DSMenuBehaviouralContextProviderT.InternalProps;
|
5
|
+
focusTrackers: ReturnType<typeof useFocusTracker>;
|
6
|
+
};
|
7
|
+
type OnOpinionatedOpenConfig = {
|
8
|
+
focusLastChild?: boolean;
|
9
|
+
};
|
10
|
+
export declare const useMenuOpenStatus: ({ propsWithDefault, focusTrackers }: UseMenuOpenStatusConfig) => {
|
11
|
+
isMenuOpen: boolean;
|
12
|
+
onOpinionatedClose: ({ skipFocus }?: {
|
13
|
+
skipFocus: boolean;
|
14
|
+
}) => void;
|
15
|
+
onOpinionatedOpen: (config?: OnOpinionatedOpenConfig) => void;
|
16
|
+
};
|
17
|
+
export {};
|
@@ -0,0 +1,3 @@
|
|
1
|
+
import type { ValidationMap } from '@elliemae/ds-props-helpers';
|
2
|
+
import { type DSMenuBehaviouralContextProviderT } from '../react-desc-prop-types.js';
|
3
|
+
export declare const useValidateProps: (props: DSMenuBehaviouralContextProviderT.InternalProps, propTypes: ValidationMap<DSMenuBehaviouralContextProviderT.Props>) => void;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
export declare const TREE_STRUCTURE_ERRORS: {
|
2
|
+
PARENT_NOT_GROUP: Error;
|
3
|
+
GROUP_WITHOUT_PARENT: Error;
|
4
|
+
NODE_CANNOT_HAVE_CHILDREN: Error;
|
5
|
+
};
|
6
|
+
export declare const FORBIDDEN_BEHAVIOURS: {
|
7
|
+
TRYING_TO_FOCUS_NON_FOCUSABLE_NODE: Error;
|
8
|
+
TRYING_TO_OPEN_SUBMENU_OF_NODE_WITHOUT_SUBMENU: Error;
|
9
|
+
};
|
10
|
+
export declare const UNEXPECTED_INTERNAL_ERRORS: {
|
11
|
+
FOCUSED_ITEM_NODE_NOT_SET: Error;
|
12
|
+
FOCUSED_ITEM_HAS_NO_PARENT: Error;
|
13
|
+
NODE_WITHOUT_PARENT: Error;
|
14
|
+
CALCULATING_MULTI_SELECTION_OF_NON_MULTI_SELECTION_NODE: Error;
|
15
|
+
};
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import type { DSMenuButtonT } from '../../../react-desc-prop-types.js';
|
2
|
+
export declare const DSMenuBehaviouralContextProviderName = "DSMenuBehaviouralContextProvider";
|
3
|
+
export declare const MENU_FOCUS_REGIONS: {
|
4
|
+
readonly TRIGGER: "trigger";
|
5
|
+
readonly ITEM_BY_DSID: (dsId: DSMenuButtonT.MenuNode['dsId']) => `item-dsid-${string}` | `item-dsid-${number}`;
|
6
|
+
readonly RESET: "";
|
7
|
+
};
|
@@ -0,0 +1 @@
|
|
1
|
+
export { DSMenuBehaviouralContextProvider, DSMenuBehaviouralContextProviderWithSchema, } from './DSMenuBehaviouralContextProvider.js';
|
@@ -0,0 +1,24 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { DSPropTypesSchema, ValidationMap } from '@elliemae/ds-props-helpers';
|
3
|
+
import { type TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';
|
4
|
+
import { type DSMenuButtonT } from '../../react-desc-prop-types.js';
|
5
|
+
export declare namespace DSMenuBehaviouralContextProviderT {
|
6
|
+
interface RequiredProps extends DSMenuButtonT.MenuBehaviouralLayerRequiredProps {
|
7
|
+
buttonDOMNode: HTMLElement | null;
|
8
|
+
buttonDOMNodeRef: React.MutableRefObject<HTMLElement | null>;
|
9
|
+
optionsTree: DSMenuButtonT.MenuNode;
|
10
|
+
children: TypescriptHelpersT.ReactChildrenComplete;
|
11
|
+
focusableNodes: DSMenuButtonT.PseudoFocusableMenuNodes[];
|
12
|
+
}
|
13
|
+
interface DefaultProps extends DSMenuButtonT.MenuBehaviouralLayerDefaultProps {
|
14
|
+
}
|
15
|
+
interface OptionalProps extends DSMenuButtonT.MenuBehaviouralLayerOptionalProps {
|
16
|
+
}
|
17
|
+
interface Props extends Partial<DefaultProps>, OptionalProps, RequiredProps {
|
18
|
+
}
|
19
|
+
interface InternalProps extends DefaultProps, OptionalProps, RequiredProps {
|
20
|
+
}
|
21
|
+
}
|
22
|
+
export declare const defaultProps: DSMenuBehaviouralContextProviderT.DefaultProps;
|
23
|
+
export declare const DSMenuBehaviouralContextProviderPropTypes: DSPropTypesSchema<DSMenuBehaviouralContextProviderT.Props>;
|
24
|
+
export declare const DSMenuBehaviouralContextProviderPropTypesSchema: ValidationMap<DSMenuBehaviouralContextProviderT.Props>;
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { type DSMenuButtonT } from '../../../react-desc-prop-types.js';
|
2
|
+
export declare const getIsMultipleSelectNodeWithSubmenuSelected: ({ itemNode, selectedItems, }: {
|
3
|
+
itemNode: DSMenuButtonT.MenuNodeMultipleSelectWithSubmenuItem;
|
4
|
+
selectedItems: DSMenuButtonT.SelectionableMenuNodes[];
|
5
|
+
}) => boolean | "mixed";
|
6
|
+
export declare const getNewSelectionMultipleSelect: (selectedItems: DSMenuButtonT.SelectionableMenuNodes[], selectedItem: DSMenuButtonT.MultipleSelectionableMenuNodes) => DSMenuButtonT.SelectionableMenuNodes[];
|
@@ -0,0 +1,35 @@
|
|
1
|
+
import type { DSMenuButtonT } from '../../../react-desc-prop-types.js';
|
2
|
+
export declare const getSubMenusPath: (itemNode: DSMenuButtonT.MenuNode) => DSMenuButtonT.WithSubmenuMenuNodes[];
|
3
|
+
export declare const getFocusableSiblingsList: (itemNode: DSMenuButtonT.MenuNode) => DSMenuButtonT.PseudoFocusableMenuNodes[];
|
4
|
+
/**
|
5
|
+
* This functions walks the tree downwards starting from the oldest shared parent and returns all the single-selectable items ids
|
6
|
+
* @param oldestParent - the oldest parent to start the walk from
|
7
|
+
* @returns string | number[] - the list of all the single-selectable items ids starting from the oldest shared group
|
8
|
+
*/
|
9
|
+
export declare const getAllSingleSelectIdsFromParent: (oldestParent: DSMenuButtonT.MenuNodesAllowedToHaveChildren) => (string | number)[];
|
10
|
+
/**
|
11
|
+
* walk all parents from a given node and gives back multiple supporting datastructures by different criterias
|
12
|
+
*
|
13
|
+
* @param menuNode
|
14
|
+
* @returns {object} - an object holding different datastructures and information about the parents
|
15
|
+
* @property {Object} oldestGroup - the oldest shared group
|
16
|
+
* @property {Object[]} selectionableParentsWithSubmenu - the single/multiple selection parents with submenu
|
17
|
+
* @property {Object[]} groupParents - all the 'groups' encountered while traversing the tree upwards
|
18
|
+
*/
|
19
|
+
export declare const getParentsByCriterias: (menuNode: DSMenuButtonT.MenuNode) => {
|
20
|
+
oldestGroup: DSMenuButtonT.MenuNodeGroupItem;
|
21
|
+
selectionableParentsWithSubmenu: DSMenuButtonT.SelectionablesWithSubmenuMenuNodes[];
|
22
|
+
groupParents: DSMenuButtonT.MenuNodeGroupItem[];
|
23
|
+
};
|
24
|
+
/**
|
25
|
+
* walk all childrens from a given node and gives back multiple supporting datastructures by different criterias
|
26
|
+
*
|
27
|
+
* @param menuNode
|
28
|
+
* @returns {object} - an object holding different datastructures and information about the children
|
29
|
+
* @property {Object[]} selectionableChilrens - the single/multiple selection children (regardless of the presence of a submenu)
|
30
|
+
* @property {Object[]} multiSelectionableChilrens - the multiple selection children (regardless of the presence of a submenu)
|
31
|
+
*/
|
32
|
+
export declare const getChildrenByCriterias: (menuNode: DSMenuButtonT.MenuNode) => {
|
33
|
+
selectionableChilrens: DSMenuButtonT.SelectionableMenuNodes[];
|
34
|
+
multiSelectionableChilrens: DSMenuButtonT.MultipleSelectionableMenuNodes[];
|
35
|
+
};
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { type DSMenuButtonT } from '../../../react-desc-prop-types.js';
|
2
|
+
/**
|
3
|
+
* When a single-selectable item is selected, all other single-selectable items in the same group are deselected;
|
4
|
+
*
|
5
|
+
* If the (visual) parent is a single-select-with-submenu,
|
6
|
+
* the selection must be propagated because
|
7
|
+
* a single-select within a single-select-with-submenu can't be selected without implying the selection of the parent single-select-with-submenu
|
8
|
+
*
|
9
|
+
* @param selectedItems - the current selected items
|
10
|
+
* @param selectedItem - the newly selected item
|
11
|
+
* @returns DSMenuButtonT.SelectionableMenuNodes[] - the new selection
|
12
|
+
*/
|
13
|
+
export declare const getNewSelectionSingleSelect: (selectedItems: DSMenuButtonT.SelectionableMenuNodes[], selectedItem: DSMenuButtonT.MenuNodeSingleSelectItem | DSMenuButtonT.MenuNodeSingleSelectWithSubmenuItem) => DSMenuButtonT.SelectionableMenuNodes[];
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
|
3
|
+
import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
|
4
|
+
export declare const ActivableWithSubmenuMenuItem: React.ComponentType<{
|
5
|
+
itemNode: DSMenuButtonT.MenuNodeActivableWithSubmenuItem;
|
6
|
+
FlyoutMenuCircularDepInject: DSMenuItemRendererFactoryT.RequiredProps['FlyoutMenuCircularDepInject'];
|
7
|
+
}>;
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
|
3
|
+
declare const DSMenuItemRendererFactory: React.ComponentType<DSMenuItemRendererFactoryT.Props>;
|
4
|
+
declare const DSMenuItemRendererFactoryWithSchema: import("@elliemae/ds-props-helpers/dist/types/propTypes/types.js").DocumentedReactComponent<DSMenuItemRendererFactoryT.Props>;
|
5
|
+
export { DSMenuItemRendererFactory, DSMenuItemRendererFactoryWithSchema };
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
|
3
|
+
import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
|
4
|
+
export declare const MultipleSelectWithSubmenuMenuItem: React.ComponentType<{
|
5
|
+
itemNode: DSMenuButtonT.MenuNodeMultipleSelectWithSubmenuItem;
|
6
|
+
FlyoutMenuCircularDepInject: DSMenuItemRendererFactoryT.RequiredProps['FlyoutMenuCircularDepInject'];
|
7
|
+
}>;
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
|
3
|
+
import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
|
4
|
+
export declare const SingleSelectWithSubmenuMenuItem: React.ComponentType<{
|
5
|
+
itemNode: DSMenuButtonT.MenuNodeSingleSelectWithSubmenuItem;
|
6
|
+
FlyoutMenuCircularDepInject: DSMenuItemRendererFactoryT.RequiredProps['FlyoutMenuCircularDepInject'];
|
7
|
+
}>;
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
|
3
|
+
import { type DSMenuItemRendererFactoryT } from './react-desc-prop-types.js';
|
4
|
+
export declare const WithSubmenuMenuItem: React.ComponentType<{
|
5
|
+
itemNode: DSMenuButtonT.MenuNodeWithSubmenuItem;
|
6
|
+
FlyoutMenuCircularDepInject: DSMenuItemRendererFactoryT.RequiredProps['FlyoutMenuCircularDepInject'];
|
7
|
+
}>;
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { type DSMenuItemRendererFactoryT } from '../react-desc-prop-types.js';
|
2
|
+
export declare const useMenuItemRendererFactory: (propsFromUser: DSMenuItemRendererFactoryT.Props) => {
|
3
|
+
propsWithDefault: DSMenuItemRendererFactoryT.InternalProps;
|
4
|
+
xstyledProps: import("@elliemae/ds-props-helpers").XstyledProps;
|
5
|
+
instanceUid: string;
|
6
|
+
};
|
@@ -0,0 +1,3 @@
|
|
1
|
+
import type { ValidationMap } from '@elliemae/ds-props-helpers';
|
2
|
+
import { type DSMenuItemRendererFactoryT } from '../react-desc-prop-types.js';
|
3
|
+
export declare const useValidateProps: (props: DSMenuItemRendererFactoryT.InternalProps, propTypes: ValidationMap<DSMenuItemRendererFactoryT.Props>) => void;
|
@@ -0,0 +1,6 @@
|
|
1
|
+
export declare const DSMenuItemRendererFactoryName = "DSMenuItemRendererFactory";
|
2
|
+
export declare const EXAMPLE_CONSTANTS: {};
|
3
|
+
export declare const MENU_ITEM_RENDERER_FACTORY_SLOTS: {
|
4
|
+
readonly ROOT: "root";
|
5
|
+
};
|
6
|
+
export declare const MENU_ITEM_RENDERER_FACTORY_DATA_TESTID: Record<string, string>;
|
@@ -0,0 +1 @@
|
|
1
|
+
export { DSMenuItemRendererFactory, DSMenuItemRendererFactoryWithSchema } from './DSMenuItemRendererFactory.js';
|
@@ -0,0 +1,24 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { GlobalAttributesT, XstyledProps, DSPropTypesSchema, ValidationMap } from '@elliemae/ds-props-helpers';
|
3
|
+
import { type TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';
|
4
|
+
import { DSMenuItemRendererFactoryName, MENU_ITEM_RENDERER_FACTORY_SLOTS } from './constants/index.js';
|
5
|
+
import type { DSMenuButtonT } from '../../react-desc-prop-types.js';
|
6
|
+
import type { DSFlyoutMenuT } from '../DSFlyoutMenu/react-desc-prop-types.js';
|
7
|
+
export declare namespace DSMenuItemRendererFactoryT {
|
8
|
+
interface RequiredProps {
|
9
|
+
itemNode: DSMenuButtonT.MenuNode;
|
10
|
+
FlyoutMenuCircularDepInject: React.ComponentType<DSFlyoutMenuT.Props>;
|
11
|
+
}
|
12
|
+
interface DefaultProps {
|
13
|
+
}
|
14
|
+
interface OptionalProps extends TypescriptHelpersT.PropsForGlobalOnSlots<typeof DSMenuItemRendererFactoryName, typeof MENU_ITEM_RENDERER_FACTORY_SLOTS> {
|
15
|
+
ItemRenderer?: DSMenuButtonT.ItemRendererT;
|
16
|
+
}
|
17
|
+
interface Props extends Partial<DefaultProps>, OptionalProps, Omit<GlobalAttributesT<HTMLLIElement>, keyof OptionalProps | keyof XstyledProps>, XstyledProps, RequiredProps {
|
18
|
+
}
|
19
|
+
interface InternalProps extends DefaultProps, OptionalProps, Omit<GlobalAttributesT<HTMLLIElement>, keyof OptionalProps | keyof XstyledProps>, XstyledProps, RequiredProps {
|
20
|
+
}
|
21
|
+
}
|
22
|
+
export declare const defaultProps: DSMenuItemRendererFactoryT.DefaultProps;
|
23
|
+
export declare const DSMenuItemRendererFactoryPropTypes: DSPropTypesSchema<DSMenuItemRendererFactoryT.Props>;
|
24
|
+
export declare const DSMenuItemRendererFactoryPropTypesSchema: ValidationMap<DSMenuItemRendererFactoryT.Props>;
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
export declare const useMenuItemHighlightState: ({ focusableItemEl, onMouseLeave, onMouseEnter, }: {
|
3
|
+
focusableItemEl: HTMLElement | null;
|
4
|
+
onMouseLeave?: React.MouseEventHandler<HTMLElement>;
|
5
|
+
onMouseEnter?: React.MouseEventHandler<HTMLElement>;
|
6
|
+
}) => {
|
7
|
+
isFocused: boolean;
|
8
|
+
isHovered: boolean;
|
9
|
+
handleMouseEnter: (e: React.MouseEvent<HTMLElement>) => void;
|
10
|
+
handleMouseLeave: (e: React.MouseEvent<HTMLElement>) => void;
|
11
|
+
shouldHighlight: boolean;
|
12
|
+
};
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DSOpinionatedButtonT } from './react-desc-prop-types.js';
|
3
|
+
declare const DSOpinionatedButton: React.ComponentType<DSOpinionatedButtonT.Props>;
|
4
|
+
declare const DSOpinionatedButtonWithSchema: import("@elliemae/ds-props-helpers/dist/types/propTypes/types.js").DocumentedReactComponent<DSOpinionatedButtonT.Props>;
|
5
|
+
export { DSOpinionatedButton, DSOpinionatedButtonWithSchema };
|
@@ -0,0 +1,38 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import { type DSOpinionatedButtonT } from '../react-desc-prop-types.js';
|
3
|
+
export declare const useOpinionatedButton: (propsFromUser: DSOpinionatedButtonT.Props) => {
|
4
|
+
propsWithDefault: DSOpinionatedButtonT.InternalProps;
|
5
|
+
instanceUid: string;
|
6
|
+
eventsHandlers: {
|
7
|
+
handleTriggerKeyDown: React.KeyboardEventHandler<HTMLButtonElement>;
|
8
|
+
handleOnClick: (e: React.KeyboardEvent<HTMLButtonElement> | React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
|
9
|
+
handleOnFocus: React.FocusEventHandler<HTMLButtonElement>;
|
10
|
+
handleFocusIfTriggerIsFocusRegion: (instance: HTMLButtonElement | null) => void;
|
11
|
+
};
|
12
|
+
floatingContext: {
|
13
|
+
refs: {
|
14
|
+
setReference: (node: HTMLElement | null) => void;
|
15
|
+
setFloating: React.Dispatch<React.SetStateAction<HTMLElement | null>>;
|
16
|
+
};
|
17
|
+
floatingStyles: import("styled-components").CSSProperties;
|
18
|
+
handlers: {
|
19
|
+
onMouseEnter: () => void;
|
20
|
+
onMouseLeave: () => void;
|
21
|
+
onFocus: () => void;
|
22
|
+
onBlur: () => void;
|
23
|
+
};
|
24
|
+
isOpen: boolean;
|
25
|
+
arrowStyles: {
|
26
|
+
style: import("styled-components").CSSProperties;
|
27
|
+
placement: string;
|
28
|
+
};
|
29
|
+
hideTooltip: () => void;
|
30
|
+
showTooltip: () => void;
|
31
|
+
context: {
|
32
|
+
withoutPortal: boolean;
|
33
|
+
withoutAnimation: boolean;
|
34
|
+
portalDOMContainer: HTMLElement;
|
35
|
+
animationDuration: number;
|
36
|
+
};
|
37
|
+
};
|
38
|
+
};
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { type useFloatingContext } from '@elliemae/ds-floating-context';
|
2
|
+
import React from 'react';
|
3
|
+
import { type DSOpinionatedButtonT } from '../react-desc-prop-types.js';
|
4
|
+
type UseTriggerEventsHandlersConfig = {
|
5
|
+
propsWithDefault: DSOpinionatedButtonT.InternalProps;
|
6
|
+
floatingContext: ReturnType<typeof useFloatingContext>;
|
7
|
+
};
|
8
|
+
export declare const useTriggerEventsHandlers: ({ propsWithDefault, floatingContext }: UseTriggerEventsHandlersConfig) => {
|
9
|
+
handleTriggerKeyDown: React.KeyboardEventHandler<HTMLButtonElement>;
|
10
|
+
handleOnClick: (e: React.KeyboardEvent<HTMLButtonElement> | React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
|
11
|
+
handleOnFocus: React.FocusEventHandler<HTMLButtonElement>;
|
12
|
+
handleFocusIfTriggerIsFocusRegion: (instance: HTMLButtonElement | null) => void;
|
13
|
+
};
|
14
|
+
export {};
|
@@ -0,0 +1,3 @@
|
|
1
|
+
import type { ValidationMap } from '@elliemae/ds-props-helpers';
|
2
|
+
import { type DSOpinionatedButtonT } from '../react-desc-prop-types.js';
|
3
|
+
export declare const useValidateProps: (props: DSOpinionatedButtonT.InternalProps, propTypes: ValidationMap<DSOpinionatedButtonT.Props>) => void;
|
@@ -0,0 +1,6 @@
|
|
1
|
+
export declare const DSOpinionatedButtonName = "DSOpinionatedButton";
|
2
|
+
export declare const EXAMPLE_CONSTANTS: {};
|
3
|
+
export declare const OPINIONATED_BUTTON_SLOTS: {
|
4
|
+
readonly ROOT: "root";
|
5
|
+
};
|
6
|
+
export declare const OPINIONATED_BUTTON_DATA_TESTID: Record<string, string>;
|
@@ -0,0 +1 @@
|
|
1
|
+
export { DSOpinionatedButton, DSOpinionatedButtonWithSchema } from './DSOpinionatedButton.js';
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { DSPropTypesSchema, ValidationMap } from '@elliemae/ds-props-helpers';
|
3
|
+
import { type TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';
|
4
|
+
import { type DSMenuButtonT } from '../../react-desc-prop-types.js';
|
5
|
+
import { DSOpinionatedButtonName, OPINIONATED_BUTTON_SLOTS } from './constants/index.js';
|
6
|
+
export declare namespace DSOpinionatedButtonT {
|
7
|
+
interface RequiredProps extends DSMenuButtonT.ButtonInheritedRequiredProps {
|
8
|
+
menuSpecificProps: DSMenuButtonT.MenuSpecificProps;
|
9
|
+
}
|
10
|
+
interface DefaultProps extends DSMenuButtonT.ButtonInheiredDefaultProps {
|
11
|
+
}
|
12
|
+
interface OptionalProps extends TypescriptHelpersT.PropsForGlobalOnSlots<typeof DSOpinionatedButtonName, typeof OPINIONATED_BUTTON_SLOTS>, DSMenuButtonT.ButtonInheritedOptionalProps {
|
13
|
+
}
|
14
|
+
interface Props extends RequiredProps, Partial<DefaultProps>, OptionalProps, DSMenuButtonT.ButtonInheritedProps {
|
15
|
+
innerRef: React.RefCallback<HTMLButtonElement>;
|
16
|
+
}
|
17
|
+
interface InternalProps extends RequiredProps, DefaultProps, OptionalProps, DSMenuButtonT.ButtonInheritedInternalProps {
|
18
|
+
innerRef: React.RefCallback<HTMLButtonElement>;
|
19
|
+
}
|
20
|
+
}
|
21
|
+
export declare const defaultProps: DSOpinionatedButtonT.DefaultProps;
|
22
|
+
export declare const DSOpinionatedButtonPropTypes: DSPropTypesSchema<DSOpinionatedButtonT.Props>;
|
23
|
+
export declare const DSOpinionatedButtonPropTypesSchema: ValidationMap<DSOpinionatedButtonT.Props>;
|