@elliemae/ds-legacy-left-navigation 1.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/LeftNavigation.js +51 -0
- package/dist/cjs/LeftNavigation.js.map +7 -0
- package/dist/cjs/LeftNavigationContext.js +70 -0
- package/dist/cjs/LeftNavigationContext.js.map +7 -0
- package/dist/cjs/common/getItemBackgroundStyle.js +57 -0
- package/dist/cjs/common/getItemBackgroundStyle.js.map +7 -0
- package/dist/cjs/common/getLeftBorderStyle.js +59 -0
- package/dist/cjs/common/getLeftBorderStyle.js.map +7 -0
- package/dist/cjs/common/getScrollbarStyle.js +59 -0
- package/dist/cjs/common/getScrollbarStyle.js.map +7 -0
- package/dist/cjs/common/index.js +32 -0
- package/dist/cjs/common/index.js.map +7 -0
- package/dist/cjs/configs/index.js +39 -0
- package/dist/cjs/configs/index.js.map +7 -0
- package/dist/cjs/configs/useLeftNavConfig.js +127 -0
- package/dist/cjs/configs/useLeftNavConfig.js.map +7 -0
- package/dist/cjs/configs/useLeftNavItems.js +85 -0
- package/dist/cjs/configs/useLeftNavItems.js.map +7 -0
- package/dist/cjs/configs/useLeftNavSmoothExpand.js +57 -0
- package/dist/cjs/configs/useLeftNavSmoothExpand.js.map +7 -0
- package/dist/cjs/constants/constants.js +68 -0
- package/dist/cjs/constants/constants.js.map +7 -0
- package/dist/cjs/constants/index.js +30 -0
- package/dist/cjs/constants/index.js.map +7 -0
- package/dist/cjs/exported-related/ChevronItem/index.js +40 -0
- package/dist/cjs/exported-related/ChevronItem/index.js.map +7 -0
- package/dist/cjs/exported-related/Icon/index.js +50 -0
- package/dist/cjs/exported-related/Icon/index.js.map +7 -0
- package/dist/cjs/exported-related/ItemRenderer/index.js +133 -0
- package/dist/cjs/exported-related/ItemRenderer/index.js.map +7 -0
- package/dist/cjs/exported-related/ItemRenderer/styled.js +107 -0
- package/dist/cjs/exported-related/ItemRenderer/styled.js.map +7 -0
- package/dist/cjs/exported-related/ItemRenderer/usePropsWithDefaults.js +69 -0
- package/dist/cjs/exported-related/ItemRenderer/usePropsWithDefaults.js.map +7 -0
- package/dist/cjs/exported-related/Notifications/index.js +62 -0
- package/dist/cjs/exported-related/Notifications/index.js.map +7 -0
- package/dist/cjs/exported-related/OpenWindowItem/index.js +47 -0
- package/dist/cjs/exported-related/OpenWindowItem/index.js.map +7 -0
- package/dist/cjs/exported-related/constants.js +71 -0
- package/dist/cjs/exported-related/constants.js.map +7 -0
- package/dist/cjs/exported-related/index.js +35 -0
- package/dist/cjs/exported-related/index.js.map +7 -0
- package/dist/cjs/hooks/index.js +32 -0
- package/dist/cjs/hooks/index.js.map +7 -0
- package/dist/cjs/hooks/useExpandableOnClickHandler.js +74 -0
- package/dist/cjs/hooks/useExpandableOnClickHandler.js.map +7 -0
- package/dist/cjs/hooks/useKeyboardNavigation.js +128 -0
- package/dist/cjs/hooks/useKeyboardNavigation.js.map +7 -0
- package/dist/cjs/hooks/useOpenableOnClickHandler.js +82 -0
- package/dist/cjs/hooks/useOpenableOnClickHandler.js.map +7 -0
- package/dist/cjs/hooks/useSelectFirstBodyItem.js +53 -0
- package/dist/cjs/hooks/useSelectFirstBodyItem.js.map +7 -0
- package/dist/cjs/index.js +46 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemControlledDrilldown/index.js +147 -0
- package/dist/cjs/outOfTheBox/ItemControlledDrilldown/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemHeader/index.js +169 -0
- package/dist/cjs/outOfTheBox/ItemHeader/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemLink/index.js +102 -0
- package/dist/cjs/outOfTheBox/ItemLink/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemSection/index.js +83 -0
- package/dist/cjs/outOfTheBox/ItemSection/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemSeparator/index.js +68 -0
- package/dist/cjs/outOfTheBox/ItemSeparator/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemSkeleton/index.js +78 -0
- package/dist/cjs/outOfTheBox/ItemSkeleton/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemSubmenu/index.js +173 -0
- package/dist/cjs/outOfTheBox/ItemSubmenu/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemTextLabel/index.js +79 -0
- package/dist/cjs/outOfTheBox/ItemTextLabel/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/index.js +162 -0
- package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/ItemWithDate/index.js +101 -0
- package/dist/cjs/outOfTheBox/ItemWithDate/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/index.js +83 -0
- package/dist/cjs/outOfTheBox/index.js.map +7 -0
- package/dist/cjs/outOfTheBox/styled.js +126 -0
- package/dist/cjs/outOfTheBox/styled.js.map +7 -0
- package/dist/cjs/package.json +4 -0
- package/dist/cjs/parts/LeftNavContent/index.js +158 -0
- package/dist/cjs/parts/LeftNavContent/index.js.map +7 -0
- package/dist/cjs/parts/LeftNavContent/styled.js +107 -0
- package/dist/cjs/parts/LeftNavContent/styled.js.map +7 -0
- package/dist/cjs/parts/LeftNavFooterItem/index.js +138 -0
- package/dist/cjs/parts/LeftNavFooterItem/index.js.map +7 -0
- package/dist/cjs/parts/LeftNavFooterItem/styled.js +102 -0
- package/dist/cjs/parts/LeftNavFooterItem/styled.js.map +7 -0
- package/dist/cjs/parts/LeftNavLoading/index.js +55 -0
- package/dist/cjs/parts/LeftNavLoading/index.js.map +7 -0
- package/dist/cjs/parts/OutOfTheBoxMapItem.js +59 -0
- package/dist/cjs/parts/OutOfTheBoxMapItem.js.map +7 -0
- package/dist/cjs/react-desc-prop-types.js +74 -0
- package/dist/cjs/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/typescript-testing/typescript-left-navigation-valid.js +186 -0
- package/dist/cjs/typescript-testing/typescript-left-navigation-valid.js.map +7 -0
- package/dist/esm/LeftNavigation.js +21 -0
- package/dist/esm/LeftNavigation.js.map +7 -0
- package/dist/esm/LeftNavigationContext.js +40 -0
- package/dist/esm/LeftNavigationContext.js.map +7 -0
- package/dist/esm/common/getItemBackgroundStyle.js +27 -0
- package/dist/esm/common/getItemBackgroundStyle.js.map +7 -0
- package/dist/esm/common/getLeftBorderStyle.js +29 -0
- package/dist/esm/common/getLeftBorderStyle.js.map +7 -0
- package/dist/esm/common/getScrollbarStyle.js +29 -0
- package/dist/esm/common/getScrollbarStyle.js.map +7 -0
- package/dist/esm/common/index.js +5 -0
- package/dist/esm/common/index.js.map +7 -0
- package/dist/esm/configs/index.js +9 -0
- package/dist/esm/configs/index.js.map +7 -0
- package/dist/esm/configs/useLeftNavConfig.js +97 -0
- package/dist/esm/configs/useLeftNavConfig.js.map +7 -0
- package/dist/esm/configs/useLeftNavItems.js +55 -0
- package/dist/esm/configs/useLeftNavItems.js.map +7 -0
- package/dist/esm/configs/useLeftNavSmoothExpand.js +27 -0
- package/dist/esm/configs/useLeftNavSmoothExpand.js.map +7 -0
- package/dist/esm/constants/constants.js +38 -0
- package/dist/esm/constants/constants.js.map +7 -0
- package/dist/esm/constants/index.js +3 -0
- package/dist/esm/constants/index.js.map +7 -0
- package/dist/esm/exported-related/ChevronItem/index.js +10 -0
- package/dist/esm/exported-related/ChevronItem/index.js.map +7 -0
- package/dist/esm/exported-related/Icon/index.js +20 -0
- package/dist/esm/exported-related/Icon/index.js.map +7 -0
- package/dist/esm/exported-related/ItemRenderer/index.js +103 -0
- package/dist/esm/exported-related/ItemRenderer/index.js.map +7 -0
- package/dist/esm/exported-related/ItemRenderer/styled.js +77 -0
- package/dist/esm/exported-related/ItemRenderer/styled.js.map +7 -0
- package/dist/esm/exported-related/ItemRenderer/usePropsWithDefaults.js +39 -0
- package/dist/esm/exported-related/ItemRenderer/usePropsWithDefaults.js.map +7 -0
- package/dist/esm/exported-related/Notifications/index.js +37 -0
- package/dist/esm/exported-related/Notifications/index.js.map +7 -0
- package/dist/esm/exported-related/OpenWindowItem/index.js +17 -0
- package/dist/esm/exported-related/OpenWindowItem/index.js.map +7 -0
- package/dist/esm/exported-related/constants.js +41 -0
- package/dist/esm/exported-related/constants.js.map +7 -0
- package/dist/esm/exported-related/index.js +8 -0
- package/dist/esm/exported-related/index.js.map +7 -0
- package/dist/esm/hooks/index.js +5 -0
- package/dist/esm/hooks/index.js.map +7 -0
- package/dist/esm/hooks/useExpandableOnClickHandler.js +44 -0
- package/dist/esm/hooks/useExpandableOnClickHandler.js.map +7 -0
- package/dist/esm/hooks/useKeyboardNavigation.js +98 -0
- package/dist/esm/hooks/useKeyboardNavigation.js.map +7 -0
- package/dist/esm/hooks/useOpenableOnClickHandler.js +52 -0
- package/dist/esm/hooks/useOpenableOnClickHandler.js.map +7 -0
- package/dist/esm/hooks/useSelectFirstBodyItem.js +23 -0
- package/dist/esm/hooks/useSelectFirstBodyItem.js.map +7 -0
- package/dist/esm/index.js +15 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemControlledDrilldown/index.js +117 -0
- package/dist/esm/outOfTheBox/ItemControlledDrilldown/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemHeader/index.js +145 -0
- package/dist/esm/outOfTheBox/ItemHeader/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemLink/index.js +72 -0
- package/dist/esm/outOfTheBox/ItemLink/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemSection/index.js +59 -0
- package/dist/esm/outOfTheBox/ItemSection/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemSeparator/index.js +38 -0
- package/dist/esm/outOfTheBox/ItemSeparator/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemSkeleton/index.js +48 -0
- package/dist/esm/outOfTheBox/ItemSkeleton/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemSubmenu/index.js +149 -0
- package/dist/esm/outOfTheBox/ItemSubmenu/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemTextLabel/index.js +49 -0
- package/dist/esm/outOfTheBox/ItemTextLabel/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/index.js +132 -0
- package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/index.js.map +7 -0
- package/dist/esm/outOfTheBox/ItemWithDate/index.js +71 -0
- package/dist/esm/outOfTheBox/ItemWithDate/index.js.map +7 -0
- package/dist/esm/outOfTheBox/index.js +52 -0
- package/dist/esm/outOfTheBox/index.js.map +7 -0
- package/dist/esm/outOfTheBox/styled.js +96 -0
- package/dist/esm/outOfTheBox/styled.js.map +7 -0
- package/dist/esm/package.json +4 -0
- package/dist/esm/parts/LeftNavContent/index.js +135 -0
- package/dist/esm/parts/LeftNavContent/index.js.map +7 -0
- package/dist/esm/parts/LeftNavContent/styled.js +77 -0
- package/dist/esm/parts/LeftNavContent/styled.js.map +7 -0
- package/dist/esm/parts/LeftNavFooterItem/index.js +114 -0
- package/dist/esm/parts/LeftNavFooterItem/index.js.map +7 -0
- package/dist/esm/parts/LeftNavFooterItem/styled.js +72 -0
- package/dist/esm/parts/LeftNavFooterItem/styled.js.map +7 -0
- package/dist/esm/parts/LeftNavLoading/index.js +25 -0
- package/dist/esm/parts/LeftNavLoading/index.js.map +7 -0
- package/dist/esm/parts/OutOfTheBoxMapItem.js +29 -0
- package/dist/esm/parts/OutOfTheBoxMapItem.js.map +7 -0
- package/dist/esm/react-desc-prop-types.js +44 -0
- package/dist/esm/react-desc-prop-types.js.map +7 -0
- package/dist/esm/typescript-testing/typescript-left-navigation-valid.js +163 -0
- package/dist/esm/typescript-testing/typescript-left-navigation-valid.js.map +7 -0
- package/dist/types/LeftNavigation.d.ts +9 -0
- package/dist/types/LeftNavigationContext.d.ts +21 -0
- package/dist/types/common/getItemBackgroundStyle.d.ts +6 -0
- package/dist/types/common/getLeftBorderStyle.d.ts +6 -0
- package/dist/types/common/getScrollbarStyle.d.ts +1 -0
- package/dist/types/common/index.d.ts +3 -0
- package/dist/types/configs/index.d.ts +3 -0
- package/dist/types/configs/useLeftNavConfig.d.ts +17 -0
- package/dist/types/configs/useLeftNavItems.d.ts +12 -0
- package/dist/types/configs/useLeftNavSmoothExpand.d.ts +10 -0
- package/dist/types/constants/constants.d.ts +32 -0
- package/dist/types/constants/index.d.ts +1 -0
- package/dist/types/exported-related/ChevronItem/index.d.ts +4 -0
- package/dist/types/exported-related/Icon/index.d.ts +6 -0
- package/dist/types/exported-related/ItemRenderer/index.d.ts +3 -0
- package/dist/types/exported-related/ItemRenderer/styled.d.ts +20 -0
- package/dist/types/exported-related/ItemRenderer/usePropsWithDefaults.d.ts +2 -0
- package/dist/types/exported-related/Notifications/index.d.ts +8 -0
- package/dist/types/exported-related/OpenWindowItem/index.d.ts +4 -0
- package/dist/types/exported-related/constants.d.ts +31 -0
- package/dist/types/exported-related/index.d.ts +6 -0
- package/dist/types/hooks/index.d.ts +3 -0
- package/dist/types/hooks/useExpandableOnClickHandler.d.ts +9 -0
- package/dist/types/hooks/useKeyboardNavigation.d.ts +8 -0
- package/dist/types/hooks/useOpenableOnClickHandler.d.ts +10 -0
- package/dist/types/hooks/useSelectFirstBodyItem.d.ts +3 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/outOfTheBox/ItemControlledDrilldown/index.d.ts +3 -0
- package/dist/types/outOfTheBox/ItemHeader/index.d.ts +3 -0
- package/dist/types/outOfTheBox/ItemLink/index.d.ts +3 -0
- package/dist/types/outOfTheBox/ItemSection/index.d.ts +3 -0
- package/dist/types/outOfTheBox/ItemSeparator/index.d.ts +3 -0
- package/dist/types/outOfTheBox/ItemSkeleton/index.d.ts +8 -0
- package/dist/types/outOfTheBox/ItemSubmenu/index.d.ts +3 -0
- package/dist/types/outOfTheBox/ItemTextLabel/index.d.ts +3 -0
- package/dist/types/outOfTheBox/ItemUncontrolledDrilldown/index.d.ts +3 -0
- package/dist/types/outOfTheBox/ItemWithDate/index.d.ts +3 -0
- package/dist/types/outOfTheBox/index.d.ts +14 -0
- package/dist/types/outOfTheBox/styled.d.ts +24 -0
- package/dist/types/parts/LeftNavContent/index.d.ts +3 -0
- package/dist/types/parts/LeftNavContent/styled.d.ts +23 -0
- package/dist/types/parts/LeftNavFooterItem/index.d.ts +9 -0
- package/dist/types/parts/LeftNavFooterItem/styled.d.ts +14 -0
- package/dist/types/parts/LeftNavLoading/index.d.ts +4 -0
- package/dist/types/parts/OutOfTheBoxMapItem.d.ts +3 -0
- package/dist/types/react-desc-prop-types.d.ts +101 -0
- package/dist/types/tests/LeftNavigation.collapsed.test.d.ts +1 -0
- package/dist/types/tests/LeftNavigation.expanded.test.d.ts +1 -0
- package/dist/types/tests/LeftNavigation.opened.test.d.ts +1 -0
- package/dist/types/tests/a11y/axe-collapsed.test.d.ts +1 -0
- package/dist/types/tests/a11y/axe-expanded.test.d.ts +1 -0
- package/dist/types/tests/a11y/axe-opened.test.d.ts +1 -0
- package/dist/types/tests/events/LeftNavigation.events.keyboard.test.d.ts +1 -0
- package/dist/types/tests/events/LeftNavigation.events.subitems.test.d.ts +1 -0
- package/dist/types/tests/events/LeftNavigation.events.test.d.ts +1 -0
- package/dist/types/tests/events/LeftNavigation.focus.events.test.d.ts +1 -0
- package/dist/types/typescript-testing/typescript-left-navigation-valid.d.ts +1 -0
- package/package.json +269 -0
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var ItemSubmenu_exports = {};
|
|
30
|
+
__export(ItemSubmenu_exports, {
|
|
31
|
+
ItemSubmenu: () => ItemSubmenu
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(ItemSubmenu_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_react = require("react");
|
|
37
|
+
var import_ds_legacy_icons = require("@elliemae/ds-legacy-icons");
|
|
38
|
+
var import_ds_legacy_truncated_tooltip_text = require("@elliemae/ds-legacy-truncated-tooltip-text");
|
|
39
|
+
var import_exported_related = require("../../exported-related/index.js");
|
|
40
|
+
var import_constants = require("../../exported-related/constants.js");
|
|
41
|
+
var import_styled = require("../styled.js");
|
|
42
|
+
const notOpenedShadowStyle = (isSelected) => (theme) => `
|
|
43
|
+
box-shadow: inset 4px 0 0 0 ${isSelected ? theme.colors.brand[400] : "transparent"};
|
|
44
|
+
|
|
45
|
+
:hover {
|
|
46
|
+
box-shadow: inset 4px 0 0 0 ${isSelected ? theme.colors.brand[400] : theme.colors.brand[300]};
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
:active {
|
|
50
|
+
box-shadow: inset 4px 0 0 0 ${theme.colors.brand[400]};
|
|
51
|
+
}
|
|
52
|
+
`;
|
|
53
|
+
const ItemSubmenu = (props) => {
|
|
54
|
+
const {
|
|
55
|
+
item,
|
|
56
|
+
item: {
|
|
57
|
+
dsId,
|
|
58
|
+
itemOpts: { label, RightComponent, BottomComponent, labelDataTestId, labelOverflow: itemLabelOverflow },
|
|
59
|
+
CollapsedComponent = () => null
|
|
60
|
+
},
|
|
61
|
+
ctx,
|
|
62
|
+
ctx: {
|
|
63
|
+
leftNavProps: { openedItem, labelOverflow: leftNavLabelOverflow, onItemClick },
|
|
64
|
+
expandedForAnimation,
|
|
65
|
+
selectedItem,
|
|
66
|
+
selectedParent,
|
|
67
|
+
setFocusedItem
|
|
68
|
+
}
|
|
69
|
+
} = props;
|
|
70
|
+
const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;
|
|
71
|
+
const opened = openedItem === dsId;
|
|
72
|
+
const isSelected = selectedItem === dsId;
|
|
73
|
+
const shadowStyle = (0, import_react.useCallback)(
|
|
74
|
+
(opened_) => (theme) => !opened_ ? notOpenedShadowStyle(isSelected || selectedParent === dsId)(theme) : `box-shadow: inset 4px 0 0 0 #52A6EC`,
|
|
75
|
+
[dsId, isSelected, selectedParent]
|
|
76
|
+
);
|
|
77
|
+
const ariaLabel = item.itemOpts.ariaLabel ?? (typeof label === "string" ? `${label}, category` : "category");
|
|
78
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
79
|
+
import_exported_related.ItemRenderer,
|
|
80
|
+
{
|
|
81
|
+
item: {
|
|
82
|
+
...item,
|
|
83
|
+
itemOpts: {
|
|
84
|
+
...item.itemOpts,
|
|
85
|
+
ariaLabel,
|
|
86
|
+
ariaExpanded: opened,
|
|
87
|
+
openable: expandedForAnimation && !opened,
|
|
88
|
+
closable: expandedForAnimation && opened,
|
|
89
|
+
selectable: !opened
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
shadowStyle,
|
|
93
|
+
hasBorderBottom: opened,
|
|
94
|
+
borderBottomMr: "12px",
|
|
95
|
+
children: [
|
|
96
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
97
|
+
import_styled.StyledLeftContainer,
|
|
98
|
+
{
|
|
99
|
+
cols: opened ? ["auto", "auto"] : ["38px"],
|
|
100
|
+
gutter: "1px",
|
|
101
|
+
pl: opened ? "xxs" : 0,
|
|
102
|
+
justifyItems: "center",
|
|
103
|
+
"data-testid": "leftnav-leftcomponent",
|
|
104
|
+
children: [
|
|
105
|
+
opened && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
106
|
+
import_styled.StyledChevronLeft,
|
|
107
|
+
{
|
|
108
|
+
buttonType: "raw",
|
|
109
|
+
onClick: (e) => {
|
|
110
|
+
if (onItemClick)
|
|
111
|
+
onItemClick(item, e);
|
|
112
|
+
},
|
|
113
|
+
"data-testid": "leftnav-leftcomponent-chevron",
|
|
114
|
+
tabIndex: 0,
|
|
115
|
+
onFocus: (e) => {
|
|
116
|
+
e.stopPropagation();
|
|
117
|
+
setFocusedItem(import_constants.CHEVRON_BACK_DS_ID);
|
|
118
|
+
},
|
|
119
|
+
"aria-label": `Close ${ariaLabel}`,
|
|
120
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_icons.ChevronSmallLeft, { size: "m", color: ["brand-primary", "800"] })
|
|
121
|
+
}
|
|
122
|
+
),
|
|
123
|
+
CollapsedComponent && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CollapsedComponent, { item, ctx })
|
|
124
|
+
]
|
|
125
|
+
}
|
|
126
|
+
),
|
|
127
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
128
|
+
import_styled.StyledItemLabel,
|
|
129
|
+
{
|
|
130
|
+
ml: opened ? "xxs" : "1px",
|
|
131
|
+
mt: "xxxs",
|
|
132
|
+
mb: "15px",
|
|
133
|
+
"data-testid": labelDataTestId || "leftnav-itemlabel",
|
|
134
|
+
labelOverflow,
|
|
135
|
+
children: labelOverflow === "truncate" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_truncated_tooltip_text.SimpleTruncatedTooltipText, { value: label, placement: "bottom-start" }) : label
|
|
136
|
+
}
|
|
137
|
+
),
|
|
138
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
139
|
+
import_styled.StyledRightContainer,
|
|
140
|
+
{
|
|
141
|
+
pl: "xs",
|
|
142
|
+
pr: opened ? "xxs2" : "xxs",
|
|
143
|
+
onFocus: (e) => {
|
|
144
|
+
e.stopPropagation();
|
|
145
|
+
setFocusedItem(null);
|
|
146
|
+
},
|
|
147
|
+
onKeyDown: (e) => e.stopPropagation(),
|
|
148
|
+
onClick: (e) => openedItem === dsId && e.stopPropagation(),
|
|
149
|
+
"data-testid": "leftnav-right-component",
|
|
150
|
+
children: RightComponent && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RightComponent, { ctx, item })
|
|
151
|
+
}
|
|
152
|
+
),
|
|
153
|
+
BottomComponent && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
154
|
+
import_styled.StyledBottomContainer,
|
|
155
|
+
{
|
|
156
|
+
style: { gridColumn: "span 3" },
|
|
157
|
+
pb: "xxxs",
|
|
158
|
+
pl: "xxs",
|
|
159
|
+
pr: "xxs",
|
|
160
|
+
onFocus: (e) => {
|
|
161
|
+
e.stopPropagation();
|
|
162
|
+
setFocusedItem(null);
|
|
163
|
+
},
|
|
164
|
+
onKeyDown: (e) => e.stopPropagation(),
|
|
165
|
+
onClick: (e) => openedItem && e.stopPropagation(),
|
|
166
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BottomComponent, { ctx, item })
|
|
167
|
+
}
|
|
168
|
+
)
|
|
169
|
+
]
|
|
170
|
+
}
|
|
171
|
+
);
|
|
172
|
+
};
|
|
173
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/outOfTheBox/ItemSubmenu/index.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\n/* eslint-disable indent */\nimport React, { useCallback } from 'react';\nimport { ChevronSmallLeft } from '@elliemae/ds-legacy-icons';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-legacy-truncated-tooltip-text';\nimport type { Theme } from '@elliemae/ds-legacy-system';\nimport { ItemRenderer } from '../../exported-related/index.js';\nimport type { DSLeftNavigationT } from '../../react-desc-prop-types.js';\nimport { CHEVRON_BACK_DS_ID } from '../../exported-related/constants.js';\nimport {\n StyledLeftContainer,\n StyledItemLabel,\n StyledBottomContainer,\n StyledRightContainer,\n StyledChevronLeft,\n} from '../styled.js';\n\nconst notOpenedShadowStyle = (isSelected: boolean) => (theme: Theme) =>\n `\n box-shadow: inset 4px 0 0 0 ${isSelected ? theme.colors.brand[400] : 'transparent'};\n\n :hover {\n box-shadow: inset 4px 0 0 0 ${isSelected ? theme.colors.brand[400] : theme.colors.brand[300]};\n }\n\n :active {\n box-shadow: inset 4px 0 0 0 ${theme.colors.brand[400]};\n }\n`;\n\nexport const ItemSubmenu = (props: DSLeftNavigationT.ComponentProps): JSX.Element => {\n const {\n item,\n item: {\n dsId,\n itemOpts: { label, RightComponent, BottomComponent, labelDataTestId, labelOverflow: itemLabelOverflow },\n CollapsedComponent = () => null,\n },\n ctx,\n ctx: {\n leftNavProps: { openedItem, labelOverflow: leftNavLabelOverflow, onItemClick },\n expandedForAnimation,\n selectedItem,\n selectedParent,\n setFocusedItem,\n },\n } = props;\n\n const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;\n\n const opened = openedItem === dsId;\n\n const isSelected = selectedItem === dsId;\n\n const shadowStyle = useCallback(\n (opened_: boolean) => (theme: Theme) =>\n !opened_\n ? notOpenedShadowStyle(isSelected || selectedParent === dsId)(theme)\n : `box-shadow: inset 4px 0 0 0 #52A6EC`,\n [dsId, isSelected, selectedParent],\n );\n\n const ariaLabel = item.itemOpts.ariaLabel ?? (typeof label === 'string' ? `${label}, category` : 'category');\n\n return (\n <ItemRenderer\n item={{\n ...item,\n itemOpts: {\n ...item.itemOpts,\n ariaLabel,\n ariaExpanded: opened,\n openable: expandedForAnimation && !opened,\n closable: expandedForAnimation && opened,\n selectable: !opened,\n },\n }}\n shadowStyle={shadowStyle}\n hasBorderBottom={opened}\n borderBottomMr=\"12px\"\n >\n <StyledLeftContainer\n cols={opened ? ['auto', 'auto'] : ['38px']}\n gutter=\"1px\"\n pl={opened ? 'xxs' : 0}\n justifyItems=\"center\"\n data-testid=\"leftnav-leftcomponent\"\n >\n {opened && (\n <StyledChevronLeft\n buttonType=\"raw\"\n onClick={(e: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => {\n if (onItemClick) onItemClick(item, e as React.MouseEvent<HTMLElement>);\n }}\n data-testid=\"leftnav-leftcomponent-chevron\"\n tabIndex={0}\n onFocus={(e: React.FocusEvent) => {\n e.stopPropagation();\n setFocusedItem(CHEVRON_BACK_DS_ID);\n }}\n aria-label={`Close ${ariaLabel}`}\n >\n <ChevronSmallLeft size=\"m\" color={['brand-primary', '800']} />\n </StyledChevronLeft>\n )}\n {CollapsedComponent && <CollapsedComponent item={item} ctx={ctx} />}\n </StyledLeftContainer>\n <StyledItemLabel\n ml={opened ? 'xxs' : '1px'}\n mt=\"xxxs\"\n mb=\"15px\"\n data-testid={labelDataTestId || 'leftnav-itemlabel'}\n labelOverflow={labelOverflow}\n >\n {labelOverflow === 'truncate' ? <SimpleTruncatedTooltipText value={label} placement=\"bottom-start\" /> : label}\n </StyledItemLabel>\n <StyledRightContainer\n pl=\"xs\"\n pr={opened ? 'xxs2' : 'xxs'}\n onFocus={(e: React.FocusEvent) => {\n e.stopPropagation();\n setFocusedItem(null);\n }}\n onKeyDown={(e: React.KeyboardEvent) => e.stopPropagation()}\n onClick={(e: React.MouseEvent) => openedItem === dsId && e.stopPropagation()}\n data-testid=\"leftnav-right-component\"\n >\n {RightComponent && <RightComponent ctx={ctx} item={item} />}\n </StyledRightContainer>\n {BottomComponent && (\n <StyledBottomContainer\n style={{ gridColumn: 'span 3' }}\n pb=\"xxxs\"\n pl=\"xxs\"\n pr=\"xxs\"\n onFocus={(e: React.FocusEvent) => {\n e.stopPropagation();\n setFocusedItem(null);\n }}\n onKeyDown={(e: React.KeyboardEvent) => e.stopPropagation()}\n onClick={(e: React.MouseEvent) => openedItem && e.stopPropagation()}\n >\n <BottomComponent ctx={ctx} item={item} />\n </StyledBottomContainer>\n )}\n </ItemRenderer>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var ItemTextLabel_exports = {};
|
|
30
|
+
__export(ItemTextLabel_exports, {
|
|
31
|
+
ItemTextLabel: () => ItemTextLabel
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(ItemTextLabel_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_ds_legacy_truncated_tooltip_text = require("@elliemae/ds-legacy-truncated-tooltip-text");
|
|
37
|
+
var import_exported_related = require("../../exported-related/index.js");
|
|
38
|
+
var import_styled = require("../styled.js");
|
|
39
|
+
const ItemTextLabel = (props) => {
|
|
40
|
+
const {
|
|
41
|
+
item,
|
|
42
|
+
item: {
|
|
43
|
+
itemOpts: { label, labelOverflow: itemLabelOverflow, labelBold, labelColor, labelDataTestId }
|
|
44
|
+
},
|
|
45
|
+
ctx: {
|
|
46
|
+
leftNavProps: { labelOverflow: leftNavLabelOverflow }
|
|
47
|
+
}
|
|
48
|
+
} = props;
|
|
49
|
+
const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;
|
|
50
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
51
|
+
import_exported_related.ItemRenderer,
|
|
52
|
+
{
|
|
53
|
+
item: {
|
|
54
|
+
...item,
|
|
55
|
+
CollapsedComponent: null
|
|
56
|
+
},
|
|
57
|
+
minHeight: "32px",
|
|
58
|
+
paddingTop: "8px",
|
|
59
|
+
children: [
|
|
60
|
+
" ",
|
|
61
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {}),
|
|
62
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
63
|
+
import_styled.StyledLabel,
|
|
64
|
+
{
|
|
65
|
+
"data-testid": labelDataTestId || "leftnav-list-item-label",
|
|
66
|
+
pl: "24px",
|
|
67
|
+
labelOverflow,
|
|
68
|
+
labelBold,
|
|
69
|
+
labelColor,
|
|
70
|
+
mr: "xxs2",
|
|
71
|
+
pb: "xxxs",
|
|
72
|
+
children: labelOverflow === "truncate" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_truncated_tooltip_text.SimpleTruncatedTooltipText, { value: label, placement: "bottom-start" }) : label
|
|
73
|
+
}
|
|
74
|
+
)
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
);
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/outOfTheBox/ItemTextLabel/index.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-legacy-truncated-tooltip-text';\nimport { ItemRenderer } from '../../exported-related/index.js';\nimport type { DSLeftNavigationT } from '../../react-desc-prop-types.js';\nimport { StyledLabel } from '../styled.js';\n\nexport const ItemTextLabel = (props: DSLeftNavigationT.ComponentProps): JSX.Element => {\n const {\n item,\n item: {\n itemOpts: { label, labelOverflow: itemLabelOverflow, labelBold, labelColor, labelDataTestId },\n },\n ctx: {\n leftNavProps: { labelOverflow: leftNavLabelOverflow },\n },\n } = props;\n\n const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;\n return (\n <ItemRenderer\n item={{\n ...item,\n CollapsedComponent: null,\n }}\n minHeight=\"32px\"\n paddingTop=\"8px\"\n >\n {/* Empty LeftComponent */} <div />\n <StyledLabel\n data-testid={labelDataTestId || 'leftnav-list-item-label'}\n pl=\"24px\"\n labelOverflow={labelOverflow}\n labelBold={labelBold}\n labelColor={labelColor}\n mr=\"xxs2\"\n pb=\"xxxs\"\n >\n {labelOverflow === 'truncate' ? <SimpleTruncatedTooltipText value={label} placement=\"bottom-start\" /> : label}\n </StyledLabel>\n </ItemRenderer>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADmBnB;AAlBJ,8CAA2C;AAC3C,8BAA6B;AAE7B,oBAA4B;AAErB,MAAM,gBAAgB,CAAC,UAAyD;AACrF,QAAM;AAAA,IACJ;AAAA,IACA,MAAM;AAAA,MACJ,UAAU,EAAE,OAAO,eAAe,mBAAmB,WAAW,YAAY,gBAAgB;AAAA,IAC9F;AAAA,IACA,KAAK;AAAA,MACH,cAAc,EAAE,eAAe,qBAAqB;AAAA,IACtD;AAAA,EACF,IAAI;AAEJ,QAAM,gBAAgB,qBAAqB;AAC3C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAM;AAAA,QACJ,GAAG;AAAA,QACH,oBAAoB;AAAA,MACtB;AAAA,MACA,WAAU;AAAA,MACV,YAAW;AAAA,MAEgB;AAAA;AAAA,QAAC,4CAAC,SAAI;AAAA,QACjC;AAAA,UAAC;AAAA;AAAA,YACC,eAAa,mBAAmB;AAAA,YAChC,IAAG;AAAA,YACH;AAAA,YACA;AAAA,YACA;AAAA,YACA,IAAG;AAAA,YACH,IAAG;AAAA,YAEF,4BAAkB,aAAa,4CAAC,sEAA2B,OAAO,OAAO,WAAU,gBAAe,IAAK;AAAA;AAAA,QAC1G;AAAA;AAAA;AAAA,EACF;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var ItemUncontrolledDrilldown_exports = {};
|
|
30
|
+
__export(ItemUncontrolledDrilldown_exports, {
|
|
31
|
+
ItemUncontrolledDrilldown: () => ItemUncontrolledDrilldown
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(ItemUncontrolledDrilldown_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_react = require("react");
|
|
37
|
+
var import_ds_legacy_truncated_tooltip_text = require("@elliemae/ds-legacy-truncated-tooltip-text");
|
|
38
|
+
var import_ds_legacy_icons = require("@elliemae/ds-legacy-icons");
|
|
39
|
+
var import_exported_related = require("../../exported-related/index.js");
|
|
40
|
+
var import_styled = require("../styled.js");
|
|
41
|
+
var import_ItemSeparator = require("../ItemSeparator/index.js");
|
|
42
|
+
var import_ItemWithDate = require("../ItemWithDate/index.js");
|
|
43
|
+
var import_ItemTextLabel = require("../ItemTextLabel/index.js");
|
|
44
|
+
const outOfTheBoxSubitemsComponents = {
|
|
45
|
+
[import_exported_related.ITEM_TYPES.LEFT_NAV_ITEM_SEPARATOR]: import_ItemSeparator.ItemSeparator,
|
|
46
|
+
[import_exported_related.ITEM_TYPES.LEFT_NAV_ITEM_WITH_DATE]: import_ItemWithDate.ItemWithDate,
|
|
47
|
+
[import_exported_related.ITEM_TYPES.LEFT_NAV_ITEM_TEXT_LABEL]: import_ItemTextLabel.ItemTextLabel
|
|
48
|
+
};
|
|
49
|
+
const OutOfTheBoxMapSubitem = (props) => {
|
|
50
|
+
const {
|
|
51
|
+
item,
|
|
52
|
+
item: { type, Component },
|
|
53
|
+
ctx
|
|
54
|
+
} = props;
|
|
55
|
+
if (typeof type === "string" && !!outOfTheBoxSubitemsComponents[type]) {
|
|
56
|
+
const OutOfTheBoxComponent = outOfTheBoxSubitemsComponents[type];
|
|
57
|
+
const currentIndent = item.itemOpts?.indent ?? 0;
|
|
58
|
+
const newItem = {
|
|
59
|
+
...item,
|
|
60
|
+
itemOpts: { ...item.itemOpts, indent: currentIndent + 44 }
|
|
61
|
+
};
|
|
62
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(OutOfTheBoxComponent, { item: newItem, ctx });
|
|
63
|
+
}
|
|
64
|
+
if (!Component)
|
|
65
|
+
return null;
|
|
66
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { item, ctx });
|
|
67
|
+
};
|
|
68
|
+
const ItemUncontrolledDrilldown = (props) => {
|
|
69
|
+
const {
|
|
70
|
+
item,
|
|
71
|
+
item: {
|
|
72
|
+
dsId,
|
|
73
|
+
itemOpts: {
|
|
74
|
+
label,
|
|
75
|
+
RightComponent,
|
|
76
|
+
labelRightSection,
|
|
77
|
+
labelOverflow: itemLabelOverflow,
|
|
78
|
+
labelBold,
|
|
79
|
+
labelColor,
|
|
80
|
+
startOpened,
|
|
81
|
+
items,
|
|
82
|
+
labelDataTestId
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
ctx,
|
|
86
|
+
ctx: {
|
|
87
|
+
leftNavProps: { labelOverflow: leftNavLabelOverflow },
|
|
88
|
+
openedDrilldowns,
|
|
89
|
+
setOpenedDrilldowns
|
|
90
|
+
}
|
|
91
|
+
} = props;
|
|
92
|
+
(0, import_react.useEffect)(() => {
|
|
93
|
+
if (startOpened)
|
|
94
|
+
setOpenedDrilldowns([...openedDrilldowns, dsId]);
|
|
95
|
+
}, []);
|
|
96
|
+
const opened = openedDrilldowns.includes(dsId);
|
|
97
|
+
const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;
|
|
98
|
+
const arrowIcon = (0, import_react.useMemo)(() => {
|
|
99
|
+
const Component = opened ? import_ds_legacy_icons.ArrowheadDown : import_ds_legacy_icons.ArrowheadRight;
|
|
100
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { width: "24px", height: "18px", color: ["brand-primary", "800"] });
|
|
101
|
+
}, [opened]);
|
|
102
|
+
const subitems = (0, import_react.useMemo)(() => {
|
|
103
|
+
if (!opened || !items)
|
|
104
|
+
return [];
|
|
105
|
+
return items.map((subitem) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(OutOfTheBoxMapSubitem, { item: subitem, ctx }, subitem.dsId));
|
|
106
|
+
}, [ctx, items, opened]);
|
|
107
|
+
const handleOnClick = (0, import_react.useCallback)(() => {
|
|
108
|
+
if (opened)
|
|
109
|
+
setOpenedDrilldowns(openedDrilldowns.filter((openedDrilldown) => openedDrilldown !== dsId));
|
|
110
|
+
else
|
|
111
|
+
setOpenedDrilldowns([...openedDrilldowns, dsId]);
|
|
112
|
+
}, [opened, setOpenedDrilldowns, openedDrilldowns, dsId]);
|
|
113
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
114
|
+
import_exported_related.ItemRenderer,
|
|
115
|
+
{
|
|
116
|
+
item: {
|
|
117
|
+
...item,
|
|
118
|
+
itemOpts: {
|
|
119
|
+
ariaExpanded: opened,
|
|
120
|
+
ariaRole: "menuitem",
|
|
121
|
+
...item.itemOpts,
|
|
122
|
+
openable: !opened,
|
|
123
|
+
closable: opened
|
|
124
|
+
},
|
|
125
|
+
CollapsedComponent: null
|
|
126
|
+
},
|
|
127
|
+
subitems,
|
|
128
|
+
minHeight: "32px",
|
|
129
|
+
paddingTop: "8px",
|
|
130
|
+
onClick: handleOnClick,
|
|
131
|
+
children: [
|
|
132
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledArrowContainer, { pl: "xxs", mt: "-2px", children: arrowIcon }),
|
|
133
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
134
|
+
import_styled.StyledLabel,
|
|
135
|
+
{
|
|
136
|
+
pb: "xxxs",
|
|
137
|
+
"data-testid": labelDataTestId || "leftnav-list-item-label",
|
|
138
|
+
labelOverflow,
|
|
139
|
+
labelBold,
|
|
140
|
+
labelColor,
|
|
141
|
+
children: labelOverflow === "truncate" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_truncated_tooltip_text.SimpleTruncatedTooltipText, { value: label, placement: "bottom-start" }) : label
|
|
142
|
+
}
|
|
143
|
+
),
|
|
144
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
145
|
+
import_styled.StyledRightContainer,
|
|
146
|
+
{
|
|
147
|
+
pr: "xxs2",
|
|
148
|
+
cols: ["auto", "auto"],
|
|
149
|
+
alignItems: "center",
|
|
150
|
+
gutter: "xxs",
|
|
151
|
+
"data-testid": "leftnav-right-component",
|
|
152
|
+
children: [
|
|
153
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledDate, { ml: "xxs", "data-testid": "leftnav-list-item-date", children: labelRightSection }),
|
|
154
|
+
RightComponent && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RightComponent, { ctx, item })
|
|
155
|
+
]
|
|
156
|
+
}
|
|
157
|
+
)
|
|
158
|
+
]
|
|
159
|
+
}
|
|
160
|
+
);
|
|
161
|
+
};
|
|
162
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/outOfTheBox/ItemUncontrolledDrilldown/index.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useMemo, useCallback, useEffect } from 'react';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-legacy-truncated-tooltip-text';\nimport { ArrowheadDown, ArrowheadRight } from '@elliemae/ds-legacy-icons';\nimport { ItemRenderer, ITEM_TYPES } from '../../exported-related/index.js';\nimport { StyledLabel, StyledDate, StyledRightContainer, StyledArrowContainer } from '../styled.js';\nimport { ItemSeparator } from '../ItemSeparator/index.js';\nimport { ItemWithDate } from '../ItemWithDate/index.js';\nimport { ItemTextLabel } from '../ItemTextLabel/index.js';\nimport type { DSLeftNavigationT } from '../../react-desc-prop-types.js';\n\n// Subitem mapping\nconst outOfTheBoxSubitemsComponents: Record<string, React.ComponentType<DSLeftNavigationT.ComponentProps>> = {\n [ITEM_TYPES.LEFT_NAV_ITEM_SEPARATOR]: ItemSeparator,\n [ITEM_TYPES.LEFT_NAV_ITEM_WITH_DATE]: ItemWithDate,\n [ITEM_TYPES.LEFT_NAV_ITEM_TEXT_LABEL]: ItemTextLabel,\n};\n\nconst OutOfTheBoxMapSubitem: React.ComponentType<DSLeftNavigationT.ComponentProps> = (props) => {\n const {\n item,\n item: { type, Component },\n ctx,\n } = props;\n\n if (typeof type === 'string' && !!outOfTheBoxSubitemsComponents[type]) {\n const OutOfTheBoxComponent = outOfTheBoxSubitemsComponents[type];\n const currentIndent = item.itemOpts?.indent ?? 0;\n const newItem = {\n ...item,\n itemOpts: { ...item.itemOpts, indent: currentIndent + 44 },\n };\n return <OutOfTheBoxComponent item={newItem} ctx={ctx} />;\n }\n if (!Component) return null;\n // we expect an error to be threw if Component is not defined and type is not a valid out-of-the-box...\n return <Component item={item} ctx={ctx} />;\n};\n\nexport const ItemUncontrolledDrilldown = (props: DSLeftNavigationT.ComponentProps): JSX.Element => {\n const {\n item,\n item: {\n dsId,\n itemOpts: {\n label,\n RightComponent,\n labelRightSection,\n labelOverflow: itemLabelOverflow,\n labelBold,\n labelColor,\n startOpened,\n items,\n labelDataTestId,\n },\n },\n ctx,\n ctx: {\n leftNavProps: { labelOverflow: leftNavLabelOverflow },\n openedDrilldowns,\n setOpenedDrilldowns,\n },\n } = props;\n\n // Start opened functionality\n useEffect(() => {\n if (startOpened) setOpenedDrilldowns([...openedDrilldowns, dsId as string]);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const opened = openedDrilldowns.includes(dsId as string);\n\n const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;\n\n const arrowIcon = useMemo(() => {\n const Component = opened ? ArrowheadDown : ArrowheadRight;\n return <Component width=\"24px\" height=\"18px\" color={['brand-primary', '800']} />;\n }, [opened]);\n\n // Array of subitems\n const subitems = useMemo(() => {\n if (!opened || !items) return [];\n return items.map((subitem) => <OutOfTheBoxMapSubitem item={subitem} ctx={ctx} key={subitem.dsId} />);\n }, [ctx, items, opened]);\n\n const handleOnClick = useCallback(() => {\n if (opened) setOpenedDrilldowns(openedDrilldowns.filter((openedDrilldown) => openedDrilldown !== dsId));\n else setOpenedDrilldowns([...openedDrilldowns, dsId as string]);\n }, [opened, setOpenedDrilldowns, openedDrilldowns, dsId]);\n\n return (\n <ItemRenderer\n item={{\n ...item,\n itemOpts: {\n ariaExpanded: opened,\n ariaRole: 'menuitem',\n ...item.itemOpts,\n openable: !opened,\n closable: opened,\n },\n CollapsedComponent: null,\n }}\n subitems={subitems}\n minHeight=\"32px\"\n paddingTop=\"8px\"\n onClick={handleOnClick}\n >\n <StyledArrowContainer pl=\"xxs\" mt=\"-2px\">\n {arrowIcon}\n </StyledArrowContainer>\n <StyledLabel\n pb=\"xxxs\"\n data-testid={labelDataTestId || 'leftnav-list-item-label'}\n labelOverflow={labelOverflow}\n labelBold={labelBold}\n labelColor={labelColor}\n >\n {labelOverflow === 'truncate' ? <SimpleTruncatedTooltipText value={label} placement=\"bottom-start\" /> : label}\n </StyledLabel>\n <StyledRightContainer\n pr=\"xxs2\"\n cols={['auto', 'auto']}\n alignItems=\"center\"\n gutter=\"xxs\"\n data-testid=\"leftnav-right-component\"\n >\n <StyledDate ml=\"xxs\" data-testid=\"leftnav-list-item-date\">\n {labelRightSection}\n </StyledDate>\n {RightComponent && <RightComponent ctx={ctx} item={item} />}\n </StyledRightContainer>\n </ItemRenderer>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var ItemWithDate_exports = {};
|
|
30
|
+
__export(ItemWithDate_exports, {
|
|
31
|
+
ItemWithDate: () => ItemWithDate
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(ItemWithDate_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_ds_legacy_truncated_tooltip_text = require("@elliemae/ds-legacy-truncated-tooltip-text");
|
|
37
|
+
var import_exported_related = require("../../exported-related/index.js");
|
|
38
|
+
var import_styled = require("../styled.js");
|
|
39
|
+
const ItemWithDate = (props) => {
|
|
40
|
+
const {
|
|
41
|
+
item,
|
|
42
|
+
item: {
|
|
43
|
+
itemOpts: {
|
|
44
|
+
label,
|
|
45
|
+
RightComponent,
|
|
46
|
+
labelRightSection,
|
|
47
|
+
labelOverflow: itemLabelOverflow,
|
|
48
|
+
labelBold,
|
|
49
|
+
labelColor,
|
|
50
|
+
labelDataTestId
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
ctx,
|
|
54
|
+
ctx: {
|
|
55
|
+
leftNavProps: { labelOverflow: leftNavLabelOverflow }
|
|
56
|
+
}
|
|
57
|
+
} = props;
|
|
58
|
+
const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;
|
|
59
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
60
|
+
import_exported_related.ItemRenderer,
|
|
61
|
+
{
|
|
62
|
+
item: {
|
|
63
|
+
...item,
|
|
64
|
+
CollapsedComponent: null
|
|
65
|
+
},
|
|
66
|
+
minHeight: "32px",
|
|
67
|
+
paddingTop: "8px",
|
|
68
|
+
children: [
|
|
69
|
+
" ",
|
|
70
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {}),
|
|
71
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
72
|
+
import_styled.StyledLabel,
|
|
73
|
+
{
|
|
74
|
+
pl: "xxs",
|
|
75
|
+
pb: "xxxs",
|
|
76
|
+
"data-testid": labelDataTestId || "leftnav-list-item-label",
|
|
77
|
+
labelOverflow,
|
|
78
|
+
labelBold,
|
|
79
|
+
labelColor,
|
|
80
|
+
children: labelOverflow === "truncate" && label ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_truncated_tooltip_text.SimpleTruncatedTooltipText, { value: label, placement: "bottom-start" }) : label
|
|
81
|
+
}
|
|
82
|
+
),
|
|
83
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
84
|
+
import_styled.StyledRightContainer,
|
|
85
|
+
{
|
|
86
|
+
pr: "xxs2",
|
|
87
|
+
cols: ["auto", "auto"],
|
|
88
|
+
alignItems: "center",
|
|
89
|
+
gutter: "xxs",
|
|
90
|
+
"data-testid": "leftnav-right-component",
|
|
91
|
+
children: [
|
|
92
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledDate, { ml: "xxs", "data-testid": "leftnav-list-item-date", children: labelRightSection }),
|
|
93
|
+
RightComponent && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RightComponent, { ctx, item })
|
|
94
|
+
]
|
|
95
|
+
}
|
|
96
|
+
)
|
|
97
|
+
]
|
|
98
|
+
}
|
|
99
|
+
);
|
|
100
|
+
};
|
|
101
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/outOfTheBox/ItemWithDate/index.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-legacy-truncated-tooltip-text';\nimport { ItemRenderer } from '../../exported-related/index.js';\nimport type { DSLeftNavigationT } from '../../react-desc-prop-types.js';\nimport { StyledRightContainer, StyledLabel, StyledDate } from '../styled.js';\n\nexport const ItemWithDate = (props: DSLeftNavigationT.ComponentProps): JSX.Element => {\n const {\n item,\n item: {\n itemOpts: {\n label,\n RightComponent,\n labelRightSection,\n labelOverflow: itemLabelOverflow,\n labelBold,\n labelColor,\n labelDataTestId,\n },\n },\n ctx,\n ctx: {\n leftNavProps: { labelOverflow: leftNavLabelOverflow },\n },\n } = props;\n\n const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;\n return (\n <ItemRenderer\n item={{\n ...item,\n CollapsedComponent: null,\n }}\n minHeight=\"32px\"\n paddingTop=\"8px\"\n >\n {/* Empty LeftComponent */} <div />\n <StyledLabel\n pl=\"xxs\"\n pb=\"xxxs\"\n data-testid={labelDataTestId || 'leftnav-list-item-label'}\n labelOverflow={labelOverflow}\n labelBold={labelBold}\n labelColor={labelColor}\n >\n {labelOverflow === 'truncate' && label ? (\n <SimpleTruncatedTooltipText value={label} placement=\"bottom-start\" />\n ) : (\n label\n )}\n </StyledLabel>\n <StyledRightContainer\n pr=\"xxs2\"\n cols={['auto', 'auto']}\n alignItems=\"center\"\n gutter=\"xxs\"\n data-testid=\"leftnav-right-component\"\n >\n <StyledDate ml=\"xxs\" data-testid=\"leftnav-list-item-date\">\n {labelRightSection}\n </StyledDate>\n {RightComponent && <RightComponent ctx={ctx} item={item} />}\n </StyledRightContainer>\n </ItemRenderer>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADoCW;AAnClC,8CAA2C;AAC3C,8BAA6B;AAE7B,oBAA8D;AAEvD,MAAM,eAAe,CAAC,UAAyD;AACpF,QAAM;AAAA,IACJ;AAAA,IACA,MAAM;AAAA,MACJ,UAAU;AAAA,QACR;AAAA,QACA;AAAA,QACA;AAAA,QACA,eAAe;AAAA,QACf;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,IACA,KAAK;AAAA,MACH,cAAc,EAAE,eAAe,qBAAqB;AAAA,IACtD;AAAA,EACF,IAAI;AAEJ,QAAM,gBAAgB,qBAAqB;AAC3C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAM;AAAA,QACJ,GAAG;AAAA,QACH,oBAAoB;AAAA,MACtB;AAAA,MACA,WAAU;AAAA,MACV,YAAW;AAAA,MAEgB;AAAA;AAAA,QAAC,4CAAC,SAAI;AAAA,QACjC;AAAA,UAAC;AAAA;AAAA,YACC,IAAG;AAAA,YACH,IAAG;AAAA,YACH,eAAa,mBAAmB;AAAA,YAChC;AAAA,YACA;AAAA,YACA;AAAA,YAEC,4BAAkB,cAAc,QAC/B,4CAAC,sEAA2B,OAAO,OAAO,WAAU,gBAAe,IAEnE;AAAA;AAAA,QAEJ;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,IAAG;AAAA,YACH,MAAM,CAAC,QAAQ,MAAM;AAAA,YACrB,YAAW;AAAA,YACX,QAAO;AAAA,YACP,eAAY;AAAA,YAEZ;AAAA,0DAAC,4BAAW,IAAG,OAAM,eAAY,0BAC9B,6BACH;AAAA,cACC,kBAAkB,4CAAC,kBAAe,KAAU,MAAY;AAAA;AAAA;AAAA,QAC3D;AAAA;AAAA;AAAA,EACF;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|