@elliemae/ds-left-navigation 3.11.0-next.2 → 3.11.0-next.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/dist/cjs/LeftNavigationContext.js +2 -1
  2. package/dist/cjs/LeftNavigationContext.js.map +2 -2
  3. package/dist/cjs/common/getItemBackgroundStyle.js.map +2 -2
  4. package/dist/cjs/common/getLeftBorderStyle.js +1 -5
  5. package/dist/cjs/common/getLeftBorderStyle.js.map +2 -2
  6. package/dist/cjs/constants/constants.js +65 -0
  7. package/dist/cjs/constants/constants.js.map +7 -0
  8. package/dist/cjs/{outOfTheBox/ItemLink/styled.js → constants/index.js} +5 -17
  9. package/dist/cjs/constants/index.js.map +7 -0
  10. package/dist/cjs/exported-related/ItemRenderer/index.js +36 -44
  11. package/dist/cjs/exported-related/ItemRenderer/index.js.map +3 -3
  12. package/dist/cjs/exported-related/ItemRenderer/styled.js +24 -9
  13. package/dist/cjs/exported-related/ItemRenderer/styled.js.map +2 -2
  14. package/dist/cjs/exported-related/ItemRenderer/usePropsWithDefaults.js +1 -1
  15. package/dist/cjs/exported-related/ItemRenderer/usePropsWithDefaults.js.map +2 -2
  16. package/dist/cjs/exported-related/Notifications/index.js +9 -5
  17. package/dist/cjs/exported-related/Notifications/index.js.map +2 -2
  18. package/dist/cjs/index.d.js.map +1 -1
  19. package/dist/cjs/index.js +7 -4
  20. package/dist/cjs/index.js.map +3 -3
  21. package/dist/cjs/outOfTheBox/ItemControlledDrilldown/index.js +11 -12
  22. package/dist/cjs/outOfTheBox/ItemControlledDrilldown/index.js.map +3 -3
  23. package/dist/cjs/outOfTheBox/ItemHeader/index.js +8 -10
  24. package/dist/cjs/outOfTheBox/ItemHeader/index.js.map +3 -3
  25. package/dist/cjs/outOfTheBox/ItemLink/index.js +8 -10
  26. package/dist/cjs/outOfTheBox/ItemLink/index.js.map +3 -3
  27. package/dist/cjs/outOfTheBox/ItemSection/index.js +4 -5
  28. package/dist/cjs/outOfTheBox/ItemSection/index.js.map +3 -3
  29. package/dist/cjs/outOfTheBox/ItemSeparator/index.js +2 -1
  30. package/dist/cjs/outOfTheBox/ItemSeparator/index.js.map +2 -2
  31. package/dist/cjs/outOfTheBox/ItemSubmenu/index.js +8 -9
  32. package/dist/cjs/outOfTheBox/ItemSubmenu/index.js.map +3 -3
  33. package/dist/cjs/outOfTheBox/ItemTextLabel/index.js +1 -1
  34. package/dist/cjs/outOfTheBox/ItemTextLabel/index.js.map +1 -1
  35. package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/index.js +12 -12
  36. package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/index.js.map +3 -3
  37. package/dist/cjs/outOfTheBox/ItemWithDate/index.js +7 -10
  38. package/dist/cjs/outOfTheBox/ItemWithDate/index.js.map +3 -3
  39. package/dist/cjs/outOfTheBox/styled.js +122 -0
  40. package/dist/cjs/outOfTheBox/styled.js.map +7 -0
  41. package/dist/cjs/parts/LeftNavContent/index.js +14 -7
  42. package/dist/cjs/parts/LeftNavContent/index.js.map +2 -2
  43. package/dist/cjs/parts/LeftNavContent/styled.js +32 -43
  44. package/dist/cjs/parts/LeftNavContent/styled.js.map +2 -2
  45. package/dist/cjs/parts/LeftNavFooterItem/index.js +54 -67
  46. package/dist/cjs/parts/LeftNavFooterItem/index.js.map +3 -3
  47. package/dist/cjs/parts/LeftNavFooterItem/styled.js +22 -15
  48. package/dist/cjs/parts/LeftNavFooterItem/styled.js.map +2 -2
  49. package/dist/cjs/parts/LeftNavLoading/index.js +2 -1
  50. package/dist/cjs/parts/LeftNavLoading/index.js.map +2 -2
  51. package/dist/cjs/parts/OutOfTheBoxMapItem.js +2 -0
  52. package/dist/cjs/parts/OutOfTheBoxMapItem.js.map +2 -2
  53. package/dist/cjs/prop-types.js +0 -1
  54. package/dist/cjs/prop-types.js.map +2 -2
  55. package/dist/esm/LeftNavigationContext.js +2 -1
  56. package/dist/esm/LeftNavigationContext.js.map +2 -2
  57. package/dist/esm/common/getItemBackgroundStyle.js.map +2 -2
  58. package/dist/esm/common/getLeftBorderStyle.js +1 -5
  59. package/dist/esm/common/getLeftBorderStyle.js.map +2 -2
  60. package/dist/esm/constants/constants.js +39 -0
  61. package/dist/esm/constants/constants.js.map +7 -0
  62. package/dist/esm/constants/index.js +3 -0
  63. package/dist/esm/constants/index.js.map +7 -0
  64. package/dist/esm/exported-related/ItemRenderer/index.js +37 -45
  65. package/dist/esm/exported-related/ItemRenderer/index.js.map +2 -2
  66. package/dist/esm/exported-related/ItemRenderer/styled.js +24 -9
  67. package/dist/esm/exported-related/ItemRenderer/styled.js.map +2 -2
  68. package/dist/esm/exported-related/ItemRenderer/usePropsWithDefaults.js +1 -1
  69. package/dist/esm/exported-related/ItemRenderer/usePropsWithDefaults.js.map +2 -2
  70. package/dist/esm/exported-related/Notifications/index.js +9 -5
  71. package/dist/esm/exported-related/Notifications/index.js.map +2 -2
  72. package/dist/esm/index.js +6 -3
  73. package/dist/esm/index.js.map +2 -2
  74. package/dist/esm/outOfTheBox/ItemControlledDrilldown/index.js +11 -12
  75. package/dist/esm/outOfTheBox/ItemControlledDrilldown/index.js.map +2 -2
  76. package/dist/esm/outOfTheBox/ItemHeader/index.js +14 -10
  77. package/dist/esm/outOfTheBox/ItemHeader/index.js.map +3 -3
  78. package/dist/esm/outOfTheBox/ItemLink/index.js +8 -10
  79. package/dist/esm/outOfTheBox/ItemLink/index.js.map +2 -2
  80. package/dist/esm/outOfTheBox/ItemSection/index.js +10 -5
  81. package/dist/esm/outOfTheBox/ItemSection/index.js.map +2 -2
  82. package/dist/esm/outOfTheBox/ItemSeparator/index.js +2 -1
  83. package/dist/esm/outOfTheBox/ItemSeparator/index.js.map +2 -2
  84. package/dist/esm/outOfTheBox/ItemSubmenu/index.js +14 -9
  85. package/dist/esm/outOfTheBox/ItemSubmenu/index.js.map +3 -3
  86. package/dist/esm/outOfTheBox/ItemTextLabel/index.js +1 -1
  87. package/dist/esm/outOfTheBox/ItemTextLabel/index.js.map +1 -1
  88. package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/index.js +12 -12
  89. package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/index.js.map +2 -2
  90. package/dist/esm/outOfTheBox/ItemWithDate/index.js +7 -10
  91. package/dist/esm/outOfTheBox/ItemWithDate/index.js.map +2 -2
  92. package/dist/esm/outOfTheBox/styled.js +96 -0
  93. package/dist/esm/outOfTheBox/styled.js.map +7 -0
  94. package/dist/esm/parts/LeftNavContent/index.js +14 -8
  95. package/dist/esm/parts/LeftNavContent/index.js.map +2 -2
  96. package/dist/esm/parts/LeftNavContent/styled.js +33 -48
  97. package/dist/esm/parts/LeftNavContent/styled.js.map +2 -2
  98. package/dist/esm/parts/LeftNavFooterItem/index.js +57 -71
  99. package/dist/esm/parts/LeftNavFooterItem/index.js.map +2 -2
  100. package/dist/esm/parts/LeftNavFooterItem/styled.js +22 -15
  101. package/dist/esm/parts/LeftNavFooterItem/styled.js.map +2 -2
  102. package/dist/esm/parts/LeftNavLoading/index.js +2 -1
  103. package/dist/esm/parts/LeftNavLoading/index.js.map +2 -2
  104. package/dist/esm/parts/OutOfTheBoxMapItem.js +2 -0
  105. package/dist/esm/parts/OutOfTheBoxMapItem.js.map +2 -2
  106. package/dist/esm/prop-types.js +0 -1
  107. package/dist/esm/prop-types.js.map +2 -2
  108. package/package.json +8 -8
  109. package/dist/cjs/outOfTheBox/ItemControlledDrilldown/styled.js +0 -46
  110. package/dist/cjs/outOfTheBox/ItemControlledDrilldown/styled.js.map +0 -7
  111. package/dist/cjs/outOfTheBox/ItemHeader/styled.js +0 -46
  112. package/dist/cjs/outOfTheBox/ItemHeader/styled.js.map +0 -7
  113. package/dist/cjs/outOfTheBox/ItemLink/styled.js.map +0 -7
  114. package/dist/cjs/outOfTheBox/ItemSection/styled.js +0 -50
  115. package/dist/cjs/outOfTheBox/ItemSection/styled.js.map +0 -7
  116. package/dist/cjs/outOfTheBox/ItemSubmenu/styled.js +0 -46
  117. package/dist/cjs/outOfTheBox/ItemSubmenu/styled.js.map +0 -7
  118. package/dist/cjs/outOfTheBox/ItemTextLabel/styled.js +0 -40
  119. package/dist/cjs/outOfTheBox/ItemTextLabel/styled.js.map +0 -7
  120. package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/styled.js +0 -46
  121. package/dist/cjs/outOfTheBox/ItemUncontrolledDrilldown/styled.js.map +0 -7
  122. package/dist/cjs/outOfTheBox/ItemWithDate/styled.js +0 -46
  123. package/dist/cjs/outOfTheBox/ItemWithDate/styled.js.map +0 -7
  124. package/dist/esm/outOfTheBox/ItemControlledDrilldown/styled.js +0 -20
  125. package/dist/esm/outOfTheBox/ItemControlledDrilldown/styled.js.map +0 -7
  126. package/dist/esm/outOfTheBox/ItemHeader/styled.js +0 -20
  127. package/dist/esm/outOfTheBox/ItemHeader/styled.js.map +0 -7
  128. package/dist/esm/outOfTheBox/ItemLink/styled.js +0 -12
  129. package/dist/esm/outOfTheBox/ItemLink/styled.js.map +0 -7
  130. package/dist/esm/outOfTheBox/ItemSection/styled.js +0 -24
  131. package/dist/esm/outOfTheBox/ItemSection/styled.js.map +0 -7
  132. package/dist/esm/outOfTheBox/ItemSubmenu/styled.js +0 -20
  133. package/dist/esm/outOfTheBox/ItemSubmenu/styled.js.map +0 -7
  134. package/dist/esm/outOfTheBox/ItemTextLabel/styled.js +0 -14
  135. package/dist/esm/outOfTheBox/ItemTextLabel/styled.js.map +0 -7
  136. package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/styled.js +0 -20
  137. package/dist/esm/outOfTheBox/ItemUncontrolledDrilldown/styled.js.map +0 -7
  138. package/dist/esm/outOfTheBox/ItemWithDate/styled.js +0 -20
  139. package/dist/esm/outOfTheBox/ItemWithDate/styled.js.map +0 -7
@@ -32,8 +32,6 @@ var React = __toESM(require("react"));
32
32
  var import_jsx_runtime = require("react/jsx-runtime");
33
33
  var import_react = require("react");
34
34
  var import_ds_icons = require("@elliemae/ds-icons");
35
- var import_ds_utilities = require("@elliemae/ds-utilities");
36
- var import_ds_grid = __toESM(require("@elliemae/ds-grid"));
37
35
  var import_ds_truncated_tooltip_text = require("@elliemae/ds-truncated-tooltip-text");
38
36
  var import_styled = require("./styled");
39
37
  var import_hooks = require("../../hooks");
@@ -42,9 +40,8 @@ var import_constants = require("../../exported-related/constants");
42
40
  const LeftNavFooterItem = (props) => {
43
41
  const { footerLabel, onFooterExpand = () => null, onFooterClose = () => null } = props;
44
42
  const {
45
- leftNavProps: { labelOverflow, openedItem },
43
+ leftNavProps: { labelOverflow },
46
44
  expandedForAnimation,
47
- setSelectedItem,
48
45
  setFocusedItem,
49
46
  visibleItemsRefs
50
47
  } = (0, import_react.useContext)(import_LeftNavigationContext.default);
@@ -63,72 +60,62 @@ const LeftNavFooterItem = (props) => {
63
60
  });
64
61
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledFooterMenu, {
65
62
  "data-testid": "leftnav-container",
66
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledItemWrapper, {
67
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledItem, {
68
- ref: visibleItemsRefs.current[id],
69
- tabIndex: expandedForAnimation ? -1 : 0,
70
- expanded: expandedForAnimation,
71
- pt: "xxs2",
72
- height: expandedForAnimation ? "auto" : "48px",
73
- alignItems: "flex-start",
74
- pl: "xxs",
75
- cols: expandedForAnimation ? ["auto", "1fr", "auto"] : ["38px"],
76
- onClick: expandedForAnimation ? () => null : handleOnClick,
77
- onKeyDown,
78
- onFocus: () => setFocusedItem(id),
79
- "data-testid": "leftnav-item-container",
80
- role: "menuitem",
81
- "aria-label": expandedForAnimation ? `Footer, ${footerLabel}` : `Expand left navigation`,
82
- children: !expandedForAnimation ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.MenuExpand, {
83
- size: "m",
84
- color: ["brand-primary", 800],
85
- "data-testid": "leftnav-footer-btn"
86
- }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
87
- children: [
88
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledLabel, {
89
- mt: "5px",
90
- mr: "12px",
91
- mb: "16px",
92
- "data-testid": "leftnav-itemlabel",
93
- labelOverflow,
94
- "aria-live": "polite",
95
- children: labelOverflow === "truncate" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_truncated_tooltip_text.SimpleTruncatedTooltipText, {
96
- value: footerLabel,
97
- placement: "bottom-start"
98
- }) : footerLabel
99
- }),
100
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledSeparator, {
101
- mt: "xxxs"
102
- }),
103
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_grid.default, {
104
- m: "0 12px",
105
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledMenuCollapse, {
106
- size: "m",
107
- color: ["brand-primary", 800],
108
- onClick: (e) => {
109
- e.stopPropagation();
110
- handleOnClick(e);
111
- },
112
- "data-testid": "leftnav-footer-btn",
113
- tabIndex: 0,
114
- onFocus: (e) => {
115
- e.stopPropagation();
116
- setFocusedItem(import_constants.FOOTER_MENU_CLOSE_DS_ID);
117
- },
118
- role: "button",
119
- "aria-label": "Collapse left navigation"
120
- })
121
- })
122
- ]
123
- })
63
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledFooterItem, {
64
+ ref: visibleItemsRefs.current[id],
65
+ tabIndex: expandedForAnimation ? -1 : 0,
66
+ expanded: expandedForAnimation,
67
+ pt: "xxs2",
68
+ height: expandedForAnimation ? "auto" : "48px",
69
+ alignItems: "flex-start",
70
+ pl: "xxs2",
71
+ cols: expandedForAnimation ? ["auto", "1fr", "auto"] : ["38px"],
72
+ onClick: expandedForAnimation ? () => null : handleOnClick,
73
+ onKeyDown,
74
+ onFocus: () => setFocusedItem(id),
75
+ "data-testid": "leftnav-item-container",
76
+ role: "menuitem",
77
+ "aria-label": expandedForAnimation ? `Footer, ${typeof footerLabel === "string" ? footerLabel : ""}` : `Expand left navigation`,
78
+ children: !expandedForAnimation ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.MenuExpand, {
79
+ size: "m",
80
+ color: ["brand-primary", 800],
81
+ "data-testid": "leftnav-footer-btn"
82
+ }) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
83
+ children: [
84
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledFooterLabel, {
85
+ mt: "5px",
86
+ mr: "12px",
87
+ mb: "16px",
88
+ "data-testid": "leftnav-itemlabel",
89
+ labelOverflow,
90
+ "aria-live": "polite",
91
+ children: labelOverflow === "truncate" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_truncated_tooltip_text.SimpleTruncatedTooltipText, {
92
+ value: footerLabel,
93
+ placement: "bottom-start"
94
+ }) : footerLabel
95
+ }),
96
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledFooterSeparator, {
97
+ mt: "xxxs"
98
+ }),
99
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledMenuCollapse, {
100
+ size: "m",
101
+ color: ["brand-primary", 800],
102
+ onClick: (e) => {
103
+ e.stopPropagation();
104
+ handleOnClick(e);
105
+ },
106
+ "data-testid": "leftnav-footer-btn",
107
+ tabIndex: 0,
108
+ onFocus: (e) => {
109
+ e.stopPropagation();
110
+ setFocusedItem(import_constants.FOOTER_MENU_CLOSE_DS_ID);
111
+ },
112
+ role: "button",
113
+ "aria-label": "Collapse left navigation"
114
+ })
115
+ ]
124
116
  })
125
117
  })
126
118
  }, id);
127
119
  };
128
- LeftNavFooterItem.propTypes = {
129
- footerLabel: import_ds_utilities.PropTypes.any,
130
- onFooterExpand: import_ds_utilities.PropTypes.func,
131
- onFooterClose: import_ds_utilities.PropTypes.func
132
- };
133
120
  var LeftNavFooterItem_default = LeftNavFooterItem;
134
121
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/parts/LeftNavFooterItem/index.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useContext } from 'react';\nimport { MenuExpand } from '@elliemae/ds-icons';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport Grid from '@elliemae/ds-grid';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';\nimport {\n StyledFooterMenu,\n StyledItem,\n StyledItemWrapper,\n StyledLabel,\n StyledSeparator,\n StyledMenuCollapse,\n} from './styled';\nimport { useKeyboardNavigation } from '../../hooks';\nimport LeftNavigationContext from '../../LeftNavigationContext';\nimport { FOOTER_DS_ID, FOOTER_MENU_CLOSE_DS_ID } from '../../exported-related/constants';\n\ntype LeftNavFooterItemProps = {\n footerLabel: string | JSX.Element;\n onFooterExpand: React.MouseEventHandler & React.KeyboardEventHandler;\n onFooterClose: React.MouseEventHandler & React.KeyboardEventHandler;\n};\n\nexport const LeftNavFooterItem: React.ComponentType<LeftNavFooterItemProps> = (props) => {\n const { footerLabel, onFooterExpand = () => null, onFooterClose = () => null } = props;\n const {\n leftNavProps: { labelOverflow, openedItem },\n expandedForAnimation,\n setSelectedItem,\n setFocusedItem,\n visibleItemsRefs,\n } = useContext(LeftNavigationContext);\n\n const id = FOOTER_DS_ID;\n\n const handleOnClick = expandedForAnimation ? onFooterClose : onFooterExpand;\n\n const onKeyDown = useKeyboardNavigation({\n item: {\n dsId: id,\n itemOpts: {\n selectable: !expandedForAnimation,\n openable: false,\n closable: false,\n },\n },\n onClick: handleOnClick,\n });\n\n return (\n <StyledFooterMenu key={id} data-testid=\"leftnav-container\">\n <StyledItemWrapper>\n <StyledItem\n ref={visibleItemsRefs.current[id]}\n tabIndex={expandedForAnimation ? -1 : 0}\n expanded={expandedForAnimation}\n pt=\"xxs2\"\n height={expandedForAnimation ? 'auto' : '48px'}\n alignItems=\"flex-start\"\n pl=\"xxs\"\n cols={expandedForAnimation ? ['auto', '1fr', 'auto'] : ['38px']}\n onClick={expandedForAnimation ? () => null : handleOnClick}\n onKeyDown={onKeyDown}\n onFocus={() => setFocusedItem(id)}\n data-testid=\"leftnav-item-container\"\n role=\"menuitem\"\n aria-label={expandedForAnimation ? `Footer, ${footerLabel}` : `Expand left navigation`}\n >\n {!expandedForAnimation ? (\n <MenuExpand size=\"m\" color={['brand-primary', 800]} data-testid=\"leftnav-footer-btn\" />\n ) : (\n <>\n <StyledLabel\n mt=\"5px\"\n mr=\"12px\"\n mb=\"16px\"\n data-testid=\"leftnav-itemlabel\"\n labelOverflow={labelOverflow}\n aria-live=\"polite\"\n >\n {labelOverflow === 'truncate' ? (\n <SimpleTruncatedTooltipText value={footerLabel} placement=\"bottom-start\" />\n ) : (\n footerLabel\n )}\n </StyledLabel>\n <StyledSeparator mt=\"xxxs\" />\n <Grid m=\"0 12px\">\n <StyledMenuCollapse\n size=\"m\"\n color={['brand-primary', 800]}\n onClick={(e) => {\n e.stopPropagation();\n handleOnClick(e);\n }}\n data-testid=\"leftnav-footer-btn\"\n tabIndex={0}\n onFocus={(e) => {\n e.stopPropagation();\n setFocusedItem(FOOTER_MENU_CLOSE_DS_ID);\n }}\n role=\"button\"\n aria-label=\"Collapse left navigation\"\n />\n </Grid>\n </>\n )}\n </StyledItem>\n </StyledItemWrapper>\n </StyledFooterMenu>\n );\n};\n\nLeftNavFooterItem.propTypes = {\n footerLabel: PropTypes.any,\n onFooterExpand: PropTypes.func,\n onFooterClose: PropTypes.func,\n};\n\nexport default LeftNavFooterItem;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,mBAAkC;AAClC,sBAA2B;AAC3B,0BAA0B;AAC1B,qBAAiB;AACjB,uCAA2C;AAC3C,oBAOO;AACP,mBAAsC;AACtC,mCAAkC;AAClC,uBAAsD;AAQ/C,MAAM,oBAAiE,CAAC,UAAU;AACvF,QAAM,EAAE,aAAa,iBAAiB,MAAM,MAAM,gBAAgB,MAAM,KAAK,IAAI;AACjF,QAAM;AAAA,IACJ,cAAc,EAAE,eAAe,WAAW;AAAA,IAC1C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,6BAAAA,OAAqB;AAEpC,QAAM,KAAK;AAEX,QAAM,gBAAgB,uBAAuB,gBAAgB;AAE7D,QAAM,gBAAY,oCAAsB;AAAA,IACtC,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,QACR,YAAY,CAAC;AAAA,QACb,UAAU;AAAA,QACV,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,SAAS;AAAA,EACX,CAAC;AAED,SACE,4CAAC;AAAA,IAA0B,eAAY;AAAA,IACrC,sDAAC;AAAA,MACC,sDAAC;AAAA,QACC,KAAK,iBAAiB,QAAQ;AAAA,QAC9B,UAAU,uBAAuB,KAAK;AAAA,QACtC,UAAU;AAAA,QACV,IAAG;AAAA,QACH,QAAQ,uBAAuB,SAAS;AAAA,QACxC,YAAW;AAAA,QACX,IAAG;AAAA,QACH,MAAM,uBAAuB,CAAC,QAAQ,OAAO,MAAM,IAAI,CAAC,MAAM;AAAA,QAC9D,SAAS,uBAAuB,MAAM,OAAO;AAAA,QAC7C;AAAA,QACA,SAAS,MAAM,eAAe,EAAE;AAAA,QAChC,eAAY;AAAA,QACZ,MAAK;AAAA,QACL,cAAY,uBAAuB,WAAW,gBAAgB;AAAA,QAE7D,WAAC,uBACA,4CAAC;AAAA,UAAW,MAAK;AAAA,UAAI,OAAO,CAAC,iBAAiB,GAAG;AAAA,UAAG,eAAY;AAAA,SAAqB,IAErF;AAAA,UACE;AAAA,wDAAC;AAAA,cACC,IAAG;AAAA,cACH,IAAG;AAAA,cACH,IAAG;AAAA,cACH,eAAY;AAAA,cACZ;AAAA,cACA,aAAU;AAAA,cAET,4BAAkB,aACjB,4CAAC;AAAA,gBAA2B,OAAO;AAAA,gBAAa,WAAU;AAAA,eAAe,IAEzE;AAAA,aAEJ;AAAA,YACA,4CAAC;AAAA,cAAgB,IAAG;AAAA,aAAO;AAAA,YAC3B,4CAAC,eAAAC,SAAA;AAAA,cAAK,GAAE;AAAA,cACN,sDAAC;AAAA,gBACC,MAAK;AAAA,gBACL,OAAO,CAAC,iBAAiB,GAAG;AAAA,gBAC5B,SAAS,CAAC,MAAM;AACd,oBAAE,gBAAgB;AAClB,gCAAc,CAAC;AAAA,gBACjB;AAAA,gBACA,eAAY;AAAA,gBACZ,UAAU;AAAA,gBACV,SAAS,CAAC,MAAM;AACd,oBAAE,gBAAgB;AAClB,iCAAe,wCAAuB;AAAA,gBACxC;AAAA,gBACA,MAAK;AAAA,gBACL,cAAW;AAAA,eACb;AAAA,aACF;AAAA;AAAA,SACF;AAAA,OAEJ;AAAA,KACF;AAAA,KA1DqB,EA2DvB;AAEJ;AAEA,kBAAkB,YAAY;AAAA,EAC5B,aAAa,8BAAU;AAAA,EACvB,gBAAgB,8BAAU;AAAA,EAC1B,eAAe,8BAAU;AAC3B;AAEA,IAAO,4BAAQ;",
6
- "names": ["LeftNavigationContext", "Grid"]
4
+ "sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useContext } from 'react';\nimport { MenuExpand } from '@elliemae/ds-icons';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';\nimport {\n StyledFooterMenu,\n StyledFooterItem,\n StyledFooterWrapper,\n StyledFooterLabel,\n StyledFooterSeparator,\n StyledMenuCollapse,\n} from './styled';\nimport { useKeyboardNavigation } from '../../hooks';\nimport LeftNavigationContext from '../../LeftNavigationContext';\nimport { FOOTER_DS_ID, FOOTER_MENU_CLOSE_DS_ID } from '../../exported-related/constants';\n\ntype LeftNavFooterItemProps = {\n footerLabel: string | JSX.Element;\n onFooterExpand: React.MouseEventHandler & React.KeyboardEventHandler;\n onFooterClose: React.MouseEventHandler & React.KeyboardEventHandler;\n};\n\nexport const LeftNavFooterItem: React.ComponentType<LeftNavFooterItemProps> = (props) => {\n const { footerLabel, onFooterExpand = () => null, onFooterClose = () => null } = props;\n const {\n leftNavProps: { labelOverflow },\n expandedForAnimation,\n setFocusedItem,\n visibleItemsRefs,\n } = useContext(LeftNavigationContext);\n\n const id = FOOTER_DS_ID;\n\n const handleOnClick = expandedForAnimation ? onFooterClose : onFooterExpand;\n\n const onKeyDown = useKeyboardNavigation({\n item: {\n dsId: id,\n itemOpts: {\n selectable: !expandedForAnimation,\n openable: false,\n closable: false,\n },\n },\n onClick: handleOnClick,\n });\n\n return (\n <StyledFooterMenu key={id} data-testid=\"leftnav-container\">\n <StyledFooterItem\n ref={visibleItemsRefs.current[id] as React.RefObject<HTMLDivElement>}\n tabIndex={expandedForAnimation ? -1 : 0}\n expanded={expandedForAnimation}\n pt=\"xxs2\"\n height={expandedForAnimation ? 'auto' : '48px'}\n alignItems=\"flex-start\"\n pl=\"xxs2\"\n cols={expandedForAnimation ? ['auto', '1fr', 'auto'] : ['38px']}\n onClick={expandedForAnimation ? () => null : handleOnClick}\n onKeyDown={onKeyDown}\n onFocus={() => setFocusedItem(id)}\n data-testid=\"leftnav-item-container\"\n role=\"menuitem\"\n aria-label={\n expandedForAnimation\n ? `Footer, ${typeof footerLabel === 'string' ? footerLabel : ''}`\n : `Expand left navigation`\n }\n >\n {!expandedForAnimation ? (\n <MenuExpand size=\"m\" color={['brand-primary', 800]} data-testid=\"leftnav-footer-btn\" />\n ) : (\n <>\n <StyledFooterLabel\n mt=\"5px\"\n mr=\"12px\"\n mb=\"16px\"\n data-testid=\"leftnav-itemlabel\"\n labelOverflow={labelOverflow}\n aria-live=\"polite\"\n >\n {labelOverflow === 'truncate' ? (\n <SimpleTruncatedTooltipText value={footerLabel} placement=\"bottom-start\" />\n ) : (\n footerLabel\n )}\n </StyledFooterLabel>\n <StyledFooterSeparator mt=\"xxxs\" />\n <StyledMenuCollapse\n size=\"m\"\n color={['brand-primary', 800]}\n onClick={(e: React.MouseEvent) => {\n e.stopPropagation();\n handleOnClick(e);\n }}\n data-testid=\"leftnav-footer-btn\"\n tabIndex={0}\n onFocus={(e: React.FocusEvent) => {\n e.stopPropagation();\n setFocusedItem(FOOTER_MENU_CLOSE_DS_ID);\n }}\n role=\"button\"\n aria-label=\"Collapse left navigation\"\n />\n </>\n )}\n </StyledFooterItem>\n </StyledFooterMenu>\n );\n};\n\nexport default LeftNavFooterItem;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,mBAAkC;AAClC,sBAA2B;AAC3B,uCAA2C;AAC3C,oBAOO;AACP,mBAAsC;AACtC,mCAAkC;AAClC,uBAAsD;AAQ/C,MAAM,oBAAiE,CAAC,UAAU;AACvF,QAAM,EAAE,aAAa,iBAAiB,MAAM,MAAM,gBAAgB,MAAM,KAAK,IAAI;AACjF,QAAM;AAAA,IACJ,cAAc,EAAE,cAAc;AAAA,IAC9B;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,6BAAAA,OAAqB;AAEpC,QAAM,KAAK;AAEX,QAAM,gBAAgB,uBAAuB,gBAAgB;AAE7D,QAAM,gBAAY,oCAAsB;AAAA,IACtC,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU;AAAA,QACR,YAAY,CAAC;AAAA,QACb,UAAU;AAAA,QACV,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,SAAS;AAAA,EACX,CAAC;AAED,SACE,4CAAC;AAAA,IAA0B,eAAY;AAAA,IACrC,sDAAC;AAAA,MACC,KAAK,iBAAiB,QAAQ;AAAA,MAC9B,UAAU,uBAAuB,KAAK;AAAA,MACtC,UAAU;AAAA,MACV,IAAG;AAAA,MACH,QAAQ,uBAAuB,SAAS;AAAA,MACxC,YAAW;AAAA,MACX,IAAG;AAAA,MACH,MAAM,uBAAuB,CAAC,QAAQ,OAAO,MAAM,IAAI,CAAC,MAAM;AAAA,MAC9D,SAAS,uBAAuB,MAAM,OAAO;AAAA,MAC7C;AAAA,MACA,SAAS,MAAM,eAAe,EAAE;AAAA,MAChC,eAAY;AAAA,MACZ,MAAK;AAAA,MACL,cACE,uBACI,WAAW,OAAO,gBAAgB,WAAW,cAAc,OAC3D;AAAA,MAGL,WAAC,uBACA,4CAAC;AAAA,QAAW,MAAK;AAAA,QAAI,OAAO,CAAC,iBAAiB,GAAG;AAAA,QAAG,eAAY;AAAA,OAAqB,IAErF;AAAA,QACE;AAAA,sDAAC;AAAA,YACC,IAAG;AAAA,YACH,IAAG;AAAA,YACH,IAAG;AAAA,YACH,eAAY;AAAA,YACZ;AAAA,YACA,aAAU;AAAA,YAET,4BAAkB,aACjB,4CAAC;AAAA,cAA2B,OAAO;AAAA,cAAa,WAAU;AAAA,aAAe,IAEzE;AAAA,WAEJ;AAAA,UACA,4CAAC;AAAA,YAAsB,IAAG;AAAA,WAAO;AAAA,UACjC,4CAAC;AAAA,YACC,MAAK;AAAA,YACL,OAAO,CAAC,iBAAiB,GAAG;AAAA,YAC5B,SAAS,CAAC,MAAwB;AAChC,gBAAE,gBAAgB;AAClB,4BAAc,CAAC;AAAA,YACjB;AAAA,YACA,eAAY;AAAA,YACZ,UAAU;AAAA,YACV,SAAS,CAAC,MAAwB;AAChC,gBAAE,gBAAgB;AAClB,6BAAe,wCAAuB;AAAA,YACxC;AAAA,YACA,MAAK;AAAA,YACL,cAAW;AAAA,WACb;AAAA;AAAA,OACF;AAAA,KAEJ;AAAA,KA1DqB,EA2DvB;AAEJ;AAEA,IAAO,4BAAQ;",
6
+ "names": ["LeftNavigationContext"]
7
7
  }
@@ -24,12 +24,11 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
24
24
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
25
  var styled_exports = {};
26
26
  __export(styled_exports, {
27
+ StyledFooterItem: () => StyledFooterItem,
28
+ StyledFooterLabel: () => StyledFooterLabel,
27
29
  StyledFooterMenu: () => StyledFooterMenu,
28
- StyledItem: () => StyledItem,
29
- StyledItemWrapper: () => StyledItemWrapper,
30
- StyledLabel: () => StyledLabel,
31
- StyledMenuCollapse: () => StyledMenuCollapse,
32
- StyledSeparator: () => StyledSeparator
30
+ StyledFooterSeparator: () => StyledFooterSeparator,
31
+ StyledMenuCollapse: () => StyledMenuCollapse
33
32
  });
34
33
  module.exports = __toCommonJS(styled_exports);
35
34
  var React = __toESM(require("react"));
@@ -37,20 +36,18 @@ var import_ds_system = require("@elliemae/ds-system");
37
36
  var import_ds_grid = require("@elliemae/ds-grid");
38
37
  var import_ds_icons = require("@elliemae/ds-icons");
39
38
  var import_common = require("../../common");
40
- const StyledFooterMenu = (0, import_ds_system.styled)(import_ds_grid.Grid)`
39
+ var import_constants = require("../../constants");
40
+ const StyledFooterMenu = (0, import_ds_system.styled)(import_ds_grid.Grid, { name: import_constants.DSLeftNavigationName, slot: import_constants.DSLeftNavigationSlots.FOOTER_MENU })`
41
41
  width: 100%;
42
42
  margin-top: auto;
43
43
  background: ${(props) => props.theme.colors.neutral["000"]};
44
44
 
45
- ${import_common.getLeftBorderStyle}
46
-
47
45
  border-top: 1px solid ${(props) => props.theme.colors.neutral[100]};
48
46
  `;
49
- const StyledItemWrapper = (0, import_ds_system.styled)(import_ds_grid.Grid)`
47
+ const StyledFooterItem = (0, import_ds_system.styled)(import_ds_grid.Grid, { name: import_constants.DSLeftNavigationName, slot: import_constants.DSLeftNavigationSlots.FOOTER_ITEM })`
50
48
  position: relative;
51
- padding-left: ${(props) => props.theme.space.xxxs};
52
- `;
53
- const StyledItem = (0, import_ds_system.styled)(import_ds_grid.Grid)`
49
+ ${import_common.getLeftBorderStyle}
50
+
54
51
  min-height: 48px;
55
52
  cursor: ${(props) => props.expanded ? "auto" : "pointer"};
56
53
 
@@ -71,18 +68,28 @@ const StyledItem = (0, import_ds_system.styled)(import_ds_grid.Grid)`
71
68
  }
72
69
  }
73
70
  `;
74
- const StyledLabel = (0, import_ds_system.styled)(import_ds_grid.Grid)`
71
+ const StyledFooterLabel = (0, import_ds_system.styled)(import_ds_grid.Grid, {
72
+ name: import_constants.DSLeftNavigationName,
73
+ slot: import_constants.DSLeftNavigationSlots.FOOTER_LABEL
74
+ })`
75
75
  font-size: 11px;
76
76
  color: ${(props) => props.theme.colors.neutral[500]};
77
77
  line-height: 14px;
78
78
  word-break: ${(props) => props.labelOverflow === "wrapAll" ? "break-all" : "normal"};
79
79
  `;
80
- const StyledSeparator = (0, import_ds_system.styled)(import_ds_grid.Grid)`
80
+ const StyledFooterSeparator = (0, import_ds_system.styled)(import_ds_grid.Grid, {
81
+ name: import_constants.DSLeftNavigationName,
82
+ slot: import_constants.DSLeftNavigationSlots.FOOTER_SEPARATOR
83
+ })`
81
84
  height: 16px;
82
85
  width: 1px;
83
86
  background-color: ${(props) => props.theme.colors.neutral[100]};
84
87
  `;
85
- const StyledMenuCollapse = (0, import_ds_system.styled)(import_ds_icons.MenuCollapse)`
88
+ const StyledMenuCollapse = (0, import_ds_system.styled)(import_ds_icons.MenuCollapse, {
89
+ name: import_constants.DSLeftNavigationName,
90
+ slot: import_constants.DSLeftNavigationSlots.FOOTER_MENU_COLLAPSE
91
+ })`
92
+ margin: 0 12px;
86
93
  cursor: pointer;
87
94
  :focus {
88
95
  outline: 2px solid ${(props) => props.theme.colors.brand[700]};
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/parts/LeftNavFooterItem/styled.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import { styled } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport { MenuCollapse } from '@elliemae/ds-icons';\nimport { getLeftBorderStyle, getItemBackgroundStyle } from '../../common';\n\nexport const StyledFooterMenu = styled(Grid)`\n width: 100%;\n margin-top: auto;\n background: ${(props) => props.theme.colors.neutral['000']};\n\n ${getLeftBorderStyle}\n\n border-top: 1px solid ${(props) => props.theme.colors.neutral[100]};\n`;\n\nexport const StyledItemWrapper = styled(Grid)`\n position: relative;\n padding-left: ${(props) => props.theme.space.xxxs};\n`;\n\nexport const StyledItem = styled(Grid)`\n min-height: 48px;\n cursor: ${(props) => (props.expanded ? 'auto' : 'pointer')};\n\n ${getItemBackgroundStyle}\n\n outline: none;\n\n :focus {\n &:before {\n content: '';\n position: absolute;\n height: 100%;\n width: 100%;\n top: 0;\n left: 0px;\n border: 2px solid ${(props) => props.theme.colors.brand[600]};\n pointer-events: none;\n }\n }\n`;\n\nexport const StyledLabel = styled(Grid)`\n font-size: 11px;\n color: ${(props) => props.theme.colors.neutral[500]};\n line-height: 14px;\n word-break: ${(props) => (props.labelOverflow === 'wrapAll' ? 'break-all' : 'normal')};\n`;\n\nexport const StyledSeparator = styled(Grid)`\n height: 16px;\n width: 1px;\n background-color: ${(props) => props.theme.colors.neutral[100]};\n`;\n\nexport const StyledMenuCollapse = styled(MenuCollapse)`\n cursor: pointer;\n :focus {\n outline: 2px solid ${(props) => props.theme.colors.brand[700]};\n }\n`;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAAuB;AACvB,qBAAqB;AACrB,sBAA6B;AAC7B,oBAA2D;AAEpD,MAAM,uBAAmB,yBAAO,mBAAI;AAAA;AAAA;AAAA,gBAG3B,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA,IAElD;AAAA;AAAA,0BAEsB,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAGzD,MAAM,wBAAoB,yBAAO,mBAAI;AAAA;AAAA,kBAE1B,CAAC,UAAU,MAAM,MAAM,MAAM;AAAA;AAGxC,MAAM,iBAAa,yBAAO,mBAAI;AAAA;AAAA,YAEzB,CAAC,UAAW,MAAM,WAAW,SAAS;AAAA;AAAA,IAE9C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAYsB,CAAC,UAAU,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;AAAA;AAAA;AAMvD,MAAM,kBAAc,yBAAO,mBAAI;AAAA;AAAA,WAE3B,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA,gBAEjC,CAAC,UAAW,MAAM,kBAAkB,YAAY,cAAc;AAAA;AAGvE,MAAM,sBAAkB,yBAAO,mBAAI;AAAA;AAAA;AAAA,sBAGpB,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAGrD,MAAM,yBAAqB,yBAAO,4BAAY;AAAA;AAAA;AAAA,yBAG5B,CAAC,UAAU,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;",
4
+ "sourcesContent": ["import { styled } from '@elliemae/ds-system';\nimport { Grid } from '@elliemae/ds-grid';\nimport { MenuCollapse } from '@elliemae/ds-icons';\nimport { getLeftBorderStyle, getItemBackgroundStyle } from '../../common';\nimport { DSLeftNavigationName, DSLeftNavigationSlots } from '../../constants';\n\nexport const StyledFooterMenu = styled(Grid, { name: DSLeftNavigationName, slot: DSLeftNavigationSlots.FOOTER_MENU })`\n width: 100%;\n margin-top: auto;\n background: ${(props) => props.theme.colors.neutral['000']};\n\n border-top: 1px solid ${(props) => props.theme.colors.neutral[100]};\n`;\n\nexport const StyledFooterItem = styled(Grid, { name: DSLeftNavigationName, slot: DSLeftNavigationSlots.FOOTER_ITEM })<{\n expanded: boolean;\n opened: boolean;\n selected: boolean;\n}>`\n position: relative;\n ${getLeftBorderStyle}\n\n min-height: 48px;\n cursor: ${(props) => (props.expanded ? 'auto' : 'pointer')};\n\n ${getItemBackgroundStyle}\n\n outline: none;\n\n :focus {\n &:before {\n content: '';\n position: absolute;\n height: 100%;\n width: 100%;\n top: 0;\n left: 0px;\n border: 2px solid ${(props) => props.theme.colors.brand[600]};\n pointer-events: none;\n }\n }\n`;\n\nexport const StyledFooterLabel = styled(Grid, {\n name: DSLeftNavigationName,\n slot: DSLeftNavigationSlots.FOOTER_LABEL,\n})<{ labelOverflow: string }>`\n font-size: 11px;\n color: ${(props) => props.theme.colors.neutral[500]};\n line-height: 14px;\n word-break: ${(props) => (props.labelOverflow === 'wrapAll' ? 'break-all' : 'normal')};\n`;\n\nexport const StyledFooterSeparator = styled(Grid, {\n name: DSLeftNavigationName,\n slot: DSLeftNavigationSlots.FOOTER_SEPARATOR,\n})`\n height: 16px;\n width: 1px;\n background-color: ${(props) => props.theme.colors.neutral[100]};\n`;\n\nexport const StyledMenuCollapse = styled(MenuCollapse, {\n name: DSLeftNavigationName,\n slot: DSLeftNavigationSlots.FOOTER_MENU_COLLAPSE,\n})`\n margin: 0 12px;\n cursor: pointer;\n :focus {\n outline: 2px solid ${(props) => props.theme.colors.brand[700]};\n }\n`;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAAuB;AACvB,qBAAqB;AACrB,sBAA6B;AAC7B,oBAA2D;AAC3D,uBAA4D;AAErD,MAAM,uBAAmB,yBAAO,qBAAM,EAAE,MAAM,uCAAsB,MAAM,uCAAsB,YAAY,CAAC;AAAA;AAAA;AAAA,gBAGpG,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA,0BAE5B,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAGzD,MAAM,uBAAmB,yBAAO,qBAAM,EAAE,MAAM,uCAAsB,MAAM,uCAAsB,YAAY,CAAC;AAAA;AAAA,IAMhH;AAAA;AAAA;AAAA,YAGQ,CAAC,UAAW,MAAM,WAAW,SAAS;AAAA;AAAA,IAE9C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAYsB,CAAC,UAAU,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;AAAA;AAAA;AAMvD,MAAM,wBAAoB,yBAAO,qBAAM;AAAA,EAC5C,MAAM;AAAA,EACN,MAAM,uCAAsB;AAC9B,CAAC;AAAA;AAAA,WAEU,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAAA,gBAEjC,CAAC,UAAW,MAAM,kBAAkB,YAAY,cAAc;AAAA;AAGvE,MAAM,4BAAwB,yBAAO,qBAAM;AAAA,EAChD,MAAM;AAAA,EACN,MAAM,uCAAsB;AAC9B,CAAC;AAAA;AAAA;AAAA,sBAGqB,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAGrD,MAAM,yBAAqB,yBAAO,8BAAc;AAAA,EACrD,MAAM;AAAA,EACN,MAAM,uCAAsB;AAC9B,CAAC;AAAA;AAAA;AAAA;AAAA,yBAIwB,CAAC,UAAU,MAAM,MAAM,OAAO,MAAM;AAAA;AAAA;",
6
6
  "names": []
7
7
  }
@@ -32,7 +32,8 @@ var import_jsx_runtime = require("react/jsx-runtime");
32
32
  var import_ds_circular_progress_indicator = __toESM(require("@elliemae/ds-circular-progress-indicator"));
33
33
  var import_ds_grid = __toESM(require("@elliemae/ds-grid"));
34
34
  var import_ds_system = require("@elliemae/ds-system");
35
- const StyledLoaderWrapper = (0, import_ds_system.styled)(import_ds_grid.default)`
35
+ var import_constants = require("../../constants");
36
+ const StyledLoaderWrapper = (0, import_ds_system.styled)(import_ds_grid.default, { name: import_constants.DSLeftNavigationName, slot: import_constants.DSLeftNavigationSlots.LOADER_WRAPPER })`
36
37
  grid-area: left-nav-body;
37
38
  height: 100%;
38
39
  place-items: center;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/parts/LeftNavLoading/index.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import React from 'react';\nimport DSCircularProgressIndicator from '@elliemae/ds-circular-progress-indicator';\nimport Grid from '@elliemae/ds-grid';\nimport { styled } from '@elliemae/ds-system';\n\nconst StyledLoaderWrapper = styled(Grid)`\n grid-area: left-nav-body;\n height: 100%;\n place-items: center;\n z-index: 0;\n background-color: white;\n`;\n\nexport const LeftNavLoading: React.ComponentType<{ expanded: boolean }> = ({ expanded }) => (\n <StyledLoaderWrapper>\n <DSCircularProgressIndicator\n size={expanded ? 'xl' : 'm'}\n loading\n showLabel={expanded}\n waiting={false}\n showTooltip={!expanded}\n />\n </StyledLoaderWrapper>\n);\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,4CAAwC;AACxC,qBAAiB;AACjB,uBAAuB;AAEvB,MAAM,0BAAsB,yBAAO,eAAAA,OAAI;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQhC,MAAM,iBAA6D,CAAC,EAAE,SAAS,MACpF,4CAAC;AAAA,EACC,sDAAC,sCAAAC,SAAA;AAAA,IACC,MAAM,WAAW,OAAO;AAAA,IACxB,SAAO;AAAA,IACP,WAAW;AAAA,IACX,SAAS;AAAA,IACT,aAAa,CAAC;AAAA,GAChB;AAAA,CACF;",
4
+ "sourcesContent": ["import React from 'react';\nimport DSCircularProgressIndicator from '@elliemae/ds-circular-progress-indicator';\nimport Grid from '@elliemae/ds-grid';\nimport { styled } from '@elliemae/ds-system';\nimport { DSLeftNavigationName, DSLeftNavigationSlots } from '../../constants';\n\nconst StyledLoaderWrapper = styled(Grid, { name: DSLeftNavigationName, slot: DSLeftNavigationSlots.LOADER_WRAPPER })`\n grid-area: left-nav-body;\n height: 100%;\n place-items: center;\n z-index: 0;\n background-color: white;\n`;\n\nexport const LeftNavLoading: React.ComponentType<{ expanded: boolean }> = ({ expanded }) => (\n <StyledLoaderWrapper>\n <DSCircularProgressIndicator\n size={expanded ? 'xl' : 'm'}\n loading\n showLabel={expanded}\n waiting={false}\n showTooltip={!expanded}\n />\n </StyledLoaderWrapper>\n);\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AACA,4CAAwC;AACxC,qBAAiB;AACjB,uBAAuB;AACvB,uBAA4D;AAE5D,MAAM,0BAAsB,yBAAO,eAAAA,SAAM,EAAE,MAAM,uCAAsB,MAAM,uCAAsB,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQ5G,MAAM,iBAA6D,CAAC,EAAE,SAAS,MACpF,4CAAC;AAAA,EACC,sDAAC,sCAAAC,SAAA;AAAA,IACC,MAAM,WAAW,OAAO;AAAA,IACxB,SAAO;AAAA,IACP,WAAW;AAAA,IACX,SAAS;AAAA,IACT,aAAa,CAAC;AAAA,GAChB;AAAA,CACF;",
6
6
  "names": ["Grid", "DSCircularProgressIndicator"]
7
7
  }
@@ -45,6 +45,8 @@ const OutOfTheBoxMapItem = (props) => {
45
45
  ctx
46
46
  });
47
47
  }
48
+ if (!Component)
49
+ return null;
48
50
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, {
49
51
  item,
50
52
  ctx
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/parts/OutOfTheBoxMapItem.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import React from 'react';\nimport { outOfTheBoxComponents } from '../outOfTheBox';\nimport { OutOfTheBoxMapItemT } from '../index.d';\nimport { LeftNavContext } from '../LeftNavigationContext';\n\nexport const OutOfTheBoxMapItem = (props: OutOfTheBoxMapItemT): JSX.Element => {\n const {\n item,\n item: { type, Component },\n } = props;\n const ctx = React.useContext(LeftNavContext);\n\n if (typeof type === 'string' && !!outOfTheBoxComponents[type]) {\n const OutOfTheBoxComponent = outOfTheBoxComponents[type];\n return <OutOfTheBoxComponent item={{ itemOpts: {}, ...item }} ctx={ctx} />;\n }\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", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AAAA,mBAAkB;AAClB,yBAAsC;AAEtC,mCAA+B;AAExB,MAAM,qBAAqB,CAAC,UAA4C;AAC7E,QAAM;AAAA,IACJ;AAAA,IACA,MAAM,EAAE,MAAM,UAAU;AAAA,EAC1B,IAAI;AACJ,QAAM,MAAM,aAAAA,QAAM,WAAW,2CAAc;AAE3C,MAAI,OAAO,SAAS,YAAY,CAAC,CAAC,yCAAsB,OAAO;AAC7D,UAAM,uBAAuB,yCAAsB;AACnD,WAAO,4CAAC;AAAA,MAAqB,MAAM,EAAE,UAAU,CAAC,GAAG,GAAG,KAAK;AAAA,MAAG;AAAA,KAAU;AAAA,EAC1E;AAEA,SAAO,4CAAC;AAAA,IAAU;AAAA,IAAY;AAAA,GAAU;AAC1C;",
4
+ "sourcesContent": ["import React from 'react';\nimport { outOfTheBoxComponents } from '../outOfTheBox';\nimport { OutOfTheBoxMapItemT } from '../index.d';\nimport { LeftNavContext } from '../LeftNavigationContext';\n\nexport const OutOfTheBoxMapItem: React.ComponentType<OutOfTheBoxMapItemT> = (props) => {\n const {\n item,\n item: { type, Component },\n } = props;\n const ctx = React.useContext(LeftNavContext);\n\n if (typeof type === 'string' && !!outOfTheBoxComponents[type]) {\n const OutOfTheBoxComponent = outOfTheBoxComponents[type];\n return <OutOfTheBoxComponent item={{ itemOpts: {}, ...item }} 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", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB;AAAA,mBAAkB;AAClB,yBAAsC;AAEtC,mCAA+B;AAExB,MAAM,qBAA+D,CAAC,UAAU;AACrF,QAAM;AAAA,IACJ;AAAA,IACA,MAAM,EAAE,MAAM,UAAU;AAAA,EAC1B,IAAI;AACJ,QAAM,MAAM,aAAAA,QAAM,WAAW,2CAAc;AAE3C,MAAI,OAAO,SAAS,YAAY,CAAC,CAAC,yCAAsB,OAAO;AAC7D,UAAM,uBAAuB,yCAAsB;AACnD,WAAO,4CAAC;AAAA,MAAqB,MAAM,EAAE,UAAU,CAAC,GAAG,GAAG,KAAK;AAAA,MAAG;AAAA,KAAU;AAAA,EAC1E;AACA,MAAI,CAAC;AAAW,WAAO;AAEvB,SAAO,4CAAC;AAAA,IAAU;AAAA,IAAY;AAAA,GAAU;AAC1C;",
6
6
  "names": ["React"]
7
7
  }
@@ -46,7 +46,6 @@ const leftNavigationProps = {
46
46
  containerProps: import_ds_utilities.PropTypes.shape({ expandedWidth: import_ds_utilities.PropTypes.string }).description("Set of Properties attached to the main container").defaultValue({ expandedWidth: "240px" }),
47
47
  expanded: import_ds_utilities.PropTypes.bool.description("Whether to show the left navigation expanded or collapsed").defaultValue(false),
48
48
  loading: import_ds_utilities.PropTypes.bool.description("Whether the left-nav is loading").defaultValue(false),
49
- tabIndex: import_ds_utilities.PropTypes.number.description("Tab index").defaultValue(0),
50
49
  openedItem: import_ds_utilities.PropTypes.string.description("The id of the left navigation item you want to be opened").defaultValue(null),
51
50
  footerLabel: import_ds_utilities.PropTypes.string.description("The label to show in the footer item"),
52
51
  onFooterExpand: import_ds_utilities.PropTypes.func.description("The function to call when the left-nav is opened via the footer"),
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/prop-types.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import { PropTypes, describe } from '@elliemae/ds-utilities';\nimport { outOfTheBoxTypes } from './outOfTheBox';\n\nexport const leftNavItemProps = {\n type: PropTypes.oneOf(outOfTheBoxTypes).description('out of the box types'),\n dsId: PropTypes.string.description('unique identifier for the left nav item'),\n Component: PropTypes.func.description(\n \"A custom component, receives the item as prop. This is used only when type is not defined or doesn't matches any out-of-the-box\",\n ),\n CollapsedComponent: PropTypes.func.description('A component which is renderer when the left-nav is collapsed'),\n itemOpts: PropTypes.object.description('Item options'),\n};\n\nexport const leftNavigationProps = {\n containerProps: PropTypes.shape({ expandedWidth: PropTypes.string })\n .description('Set of Properties attached to the main container')\n .defaultValue({ expandedWidth: '240px' }),\n expanded: PropTypes.bool.description('Whether to show the left navigation expanded or collapsed').defaultValue(false),\n loading: PropTypes.bool.description('Whether the left-nav is loading').defaultValue(false),\n tabIndex: PropTypes.number.description('Tab index').defaultValue(0),\n openedItem: PropTypes.string\n .description('The id of the left navigation item you want to be opened')\n .defaultValue(null),\n footerLabel: PropTypes.string.description('The label to show in the footer item'),\n onFooterExpand: PropTypes.func.description('The function to call when the left-nav is opened via the footer'),\n onFooterClose: PropTypes.func.description('The function to call when the left-nav is closed via the footer'),\n onSelectedChange: PropTypes.func\n .description('A callback which triggers when the selected item changes')\n .defaultValue(() => null),\n onFocusChange: PropTypes.func\n .description('A callback which triggers when the focused item changes')\n .defaultValue(() => null),\n items: PropTypes.arrayOf(PropTypes.object)\n .description('The array of items you want to render inside the left nav')\n .defaultValue([]),\n disableDefaultSelection: PropTypes.bool\n .description('Whether you do not want to automatically select the first body item')\n .defaultValue(false),\n};\n\nconst LeftNavItemProps = () => null;\nLeftNavItemProps.displayName = 'LeftNavItemProps';\nexport const LeftNavItemPropsSchema = describe(LeftNavItemProps);\nLeftNavItemPropsSchema.propTypes = leftNavItemProps;\n\nconst LeftNavItemOptions = () => null;\nLeftNavItemOptions.displayName = 'LeftNavItemOptions';\nexport const LeftNavItemOptionsSchema = describe(LeftNavItemOptions);\nLeftNavItemOptionsSchema.propTypes = leftNavItemProps;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,0BAAoC;AACpC,yBAAiC;AAE1B,MAAM,mBAAmB;AAAA,EAC9B,MAAM,8BAAU,MAAM,mCAAgB,EAAE,YAAY,sBAAsB;AAAA,EAC1E,MAAM,8BAAU,OAAO,YAAY,yCAAyC;AAAA,EAC5E,WAAW,8BAAU,KAAK;AAAA,IACxB;AAAA,EACF;AAAA,EACA,oBAAoB,8BAAU,KAAK,YAAY,8DAA8D;AAAA,EAC7G,UAAU,8BAAU,OAAO,YAAY,cAAc;AACvD;AAEO,MAAM,sBAAsB;AAAA,EACjC,gBAAgB,8BAAU,MAAM,EAAE,eAAe,8BAAU,OAAO,CAAC,EAChE,YAAY,kDAAkD,EAC9D,aAAa,EAAE,eAAe,QAAQ,CAAC;AAAA,EAC1C,UAAU,8BAAU,KAAK,YAAY,2DAA2D,EAAE,aAAa,KAAK;AAAA,EACpH,SAAS,8BAAU,KAAK,YAAY,iCAAiC,EAAE,aAAa,KAAK;AAAA,EACzF,UAAU,8BAAU,OAAO,YAAY,WAAW,EAAE,aAAa,CAAC;AAAA,EAClE,YAAY,8BAAU,OACnB,YAAY,0DAA0D,EACtE,aAAa,IAAI;AAAA,EACpB,aAAa,8BAAU,OAAO,YAAY,sCAAsC;AAAA,EAChF,gBAAgB,8BAAU,KAAK,YAAY,iEAAiE;AAAA,EAC5G,eAAe,8BAAU,KAAK,YAAY,iEAAiE;AAAA,EAC3G,kBAAkB,8BAAU,KACzB,YAAY,0DAA0D,EACtE,aAAa,MAAM,IAAI;AAAA,EAC1B,eAAe,8BAAU,KACtB,YAAY,yDAAyD,EACrE,aAAa,MAAM,IAAI;AAAA,EAC1B,OAAO,8BAAU,QAAQ,8BAAU,MAAM,EACtC,YAAY,2DAA2D,EACvE,aAAa,CAAC,CAAC;AAAA,EAClB,yBAAyB,8BAAU,KAChC,YAAY,qEAAqE,EACjF,aAAa,KAAK;AACvB;AAEA,MAAM,mBAAmB,MAAM;AAC/B,iBAAiB,cAAc;AACxB,MAAM,6BAAyB,8BAAS,gBAAgB;AAC/D,uBAAuB,YAAY;AAEnC,MAAM,qBAAqB,MAAM;AACjC,mBAAmB,cAAc;AAC1B,MAAM,+BAA2B,8BAAS,kBAAkB;AACnE,yBAAyB,YAAY;",
4
+ "sourcesContent": ["import { PropTypes, describe } from '@elliemae/ds-utilities';\nimport { outOfTheBoxTypes } from './outOfTheBox';\n\nexport const leftNavItemProps = {\n type: PropTypes.oneOf(outOfTheBoxTypes).description('out of the box types'),\n dsId: PropTypes.string.description('unique identifier for the left nav item'),\n Component: PropTypes.func.description(\n \"A custom component, receives the item as prop. This is used only when type is not defined or doesn't matches any out-of-the-box\",\n ),\n CollapsedComponent: PropTypes.func.description('A component which is renderer when the left-nav is collapsed'),\n itemOpts: PropTypes.object.description('Item options'),\n};\n\nexport const leftNavigationProps = {\n containerProps: PropTypes.shape({ expandedWidth: PropTypes.string })\n .description('Set of Properties attached to the main container')\n .defaultValue({ expandedWidth: '240px' }),\n expanded: PropTypes.bool.description('Whether to show the left navigation expanded or collapsed').defaultValue(false),\n loading: PropTypes.bool.description('Whether the left-nav is loading').defaultValue(false),\n openedItem: PropTypes.string\n .description('The id of the left navigation item you want to be opened')\n .defaultValue(null),\n footerLabel: PropTypes.string.description('The label to show in the footer item'),\n onFooterExpand: PropTypes.func.description('The function to call when the left-nav is opened via the footer'),\n onFooterClose: PropTypes.func.description('The function to call when the left-nav is closed via the footer'),\n onSelectedChange: PropTypes.func\n .description('A callback which triggers when the selected item changes')\n .defaultValue(() => null),\n onFocusChange: PropTypes.func\n .description('A callback which triggers when the focused item changes')\n .defaultValue(() => null),\n items: PropTypes.arrayOf(PropTypes.object)\n .description('The array of items you want to render inside the left nav')\n .defaultValue([]),\n disableDefaultSelection: PropTypes.bool\n .description('Whether you do not want to automatically select the first body item')\n .defaultValue(false),\n};\n\nconst LeftNavItemProps = () => null;\nLeftNavItemProps.displayName = 'LeftNavItemProps';\nexport const LeftNavItemPropsSchema = describe(LeftNavItemProps);\nLeftNavItemPropsSchema.propTypes = leftNavItemProps;\n\nconst LeftNavItemOptions = () => null;\nLeftNavItemOptions.displayName = 'LeftNavItemOptions';\nexport const LeftNavItemOptionsSchema = describe(LeftNavItemOptions);\nLeftNavItemOptionsSchema.propTypes = leftNavItemProps;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,0BAAoC;AACpC,yBAAiC;AAE1B,MAAM,mBAAmB;AAAA,EAC9B,MAAM,8BAAU,MAAM,mCAAgB,EAAE,YAAY,sBAAsB;AAAA,EAC1E,MAAM,8BAAU,OAAO,YAAY,yCAAyC;AAAA,EAC5E,WAAW,8BAAU,KAAK;AAAA,IACxB;AAAA,EACF;AAAA,EACA,oBAAoB,8BAAU,KAAK,YAAY,8DAA8D;AAAA,EAC7G,UAAU,8BAAU,OAAO,YAAY,cAAc;AACvD;AAEO,MAAM,sBAAsB;AAAA,EACjC,gBAAgB,8BAAU,MAAM,EAAE,eAAe,8BAAU,OAAO,CAAC,EAChE,YAAY,kDAAkD,EAC9D,aAAa,EAAE,eAAe,QAAQ,CAAC;AAAA,EAC1C,UAAU,8BAAU,KAAK,YAAY,2DAA2D,EAAE,aAAa,KAAK;AAAA,EACpH,SAAS,8BAAU,KAAK,YAAY,iCAAiC,EAAE,aAAa,KAAK;AAAA,EACzF,YAAY,8BAAU,OACnB,YAAY,0DAA0D,EACtE,aAAa,IAAI;AAAA,EACpB,aAAa,8BAAU,OAAO,YAAY,sCAAsC;AAAA,EAChF,gBAAgB,8BAAU,KAAK,YAAY,iEAAiE;AAAA,EAC5G,eAAe,8BAAU,KAAK,YAAY,iEAAiE;AAAA,EAC3G,kBAAkB,8BAAU,KACzB,YAAY,0DAA0D,EACtE,aAAa,MAAM,IAAI;AAAA,EAC1B,eAAe,8BAAU,KACtB,YAAY,yDAAyD,EACrE,aAAa,MAAM,IAAI;AAAA,EAC1B,OAAO,8BAAU,QAAQ,8BAAU,MAAM,EACtC,YAAY,2DAA2D,EACvE,aAAa,CAAC,CAAC;AAAA,EAClB,yBAAyB,8BAAU,KAChC,YAAY,qEAAqE,EACjF,aAAa,KAAK;AACvB;AAEA,MAAM,mBAAmB,MAAM;AAC/B,iBAAiB,cAAc;AACxB,MAAM,6BAAyB,8BAAS,gBAAgB;AAC/D,uBAAuB,YAAY;AAEnC,MAAM,qBAAqB,MAAM;AACjC,mBAAmB,cAAc;AAC1B,MAAM,+BAA2B,8BAAS,kBAAkB;AACnE,yBAAyB,YAAY;",
6
6
  "names": []
7
7
  }
@@ -2,7 +2,6 @@ import * as React from "react";
2
2
  import { createContext } from "react";
3
3
  const defaultProps = {
4
4
  expandedWidth: "240px",
5
- tabIndex: 0,
6
5
  loading: false,
7
6
  expanded: false,
8
7
  openedItem: null,
@@ -19,6 +18,8 @@ const defaultContext = {
19
18
  leftNavProps: defaultProps,
20
19
  selectedItem: null,
21
20
  setSelectedItem: () => null,
21
+ selectedParent: null,
22
+ setSelectedParent: () => null,
22
23
  focusedItem: null,
23
24
  setFocusedItem: () => null,
24
25
  expandedForAnimation: true,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/LeftNavigationContext.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { createContext, MutableRefObject, RefObject } from 'react';\nimport type { LeftNavProps, LabelOveflowT } from './index.d';\n\nexport type ContextProps = {\n selectedItem: string | null;\n setSelectedItem: React.Dispatch<React.SetStateAction<string | null>>;\n focusedItem: string | null;\n setFocusedItem: React.Dispatch<React.SetStateAction<string | null>>;\n openedDrilldowns: string[];\n setOpenedDrilldowns: React.Dispatch<React.SetStateAction<string[]>>;\n visibleItems: string[];\n visibleItemsRefs: MutableRefObject<Record<string, RefObject<HTMLElement>>>;\n leftNavProps: LeftNavProps;\n expandedForAnimation: boolean;\n};\n\nexport const defaultProps: LeftNavProps = {\n expandedWidth: '240px',\n tabIndex: 0,\n loading: false,\n expanded: false,\n openedItem: null,\n footerLabel: '',\n onSelectedChange: () => null,\n onFocusChange: () => null,\n onFooterExpand: () => null,\n onFooterClose: () => null,\n items: [],\n labelOverflow: 'wrap' as LabelOveflowT,\n onItemClick: () => null,\n};\n\nexport const defaultContext: ContextProps = {\n leftNavProps: defaultProps,\n selectedItem: null,\n setSelectedItem: () => null,\n focusedItem: null,\n setFocusedItem: () => null,\n expandedForAnimation: true,\n openedDrilldowns: [],\n setOpenedDrilldowns: () => null,\n visibleItems: [],\n visibleItemsRefs: { current: {} },\n};\n\nexport const LeftNavContext = createContext<ContextProps>(defaultContext);\n\nexport default LeftNavContext;\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAgB,qBAAkD;AAgB3D,MAAM,eAA6B;AAAA,EACxC,eAAe;AAAA,EACf,UAAU;AAAA,EACV,SAAS;AAAA,EACT,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,kBAAkB,MAAM;AAAA,EACxB,eAAe,MAAM;AAAA,EACrB,gBAAgB,MAAM;AAAA,EACtB,eAAe,MAAM;AAAA,EACrB,OAAO,CAAC;AAAA,EACR,eAAe;AAAA,EACf,aAAa,MAAM;AACrB;AAEO,MAAM,iBAA+B;AAAA,EAC1C,cAAc;AAAA,EACd,cAAc;AAAA,EACd,iBAAiB,MAAM;AAAA,EACvB,aAAa;AAAA,EACb,gBAAgB,MAAM;AAAA,EACtB,sBAAsB;AAAA,EACtB,kBAAkB,CAAC;AAAA,EACnB,qBAAqB,MAAM;AAAA,EAC3B,cAAc,CAAC;AAAA,EACf,kBAAkB,EAAE,SAAS,CAAC,EAAE;AAClC;AAEO,MAAM,iBAAiB,cAA4B,cAAc;AAExE,IAAO,gCAAQ;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { createContext, MutableRefObject, RefObject } from 'react';\nimport type { LeftNavProps, LabelOveflowT } from './index.d';\n\nexport type ContextProps = {\n selectedItem: string | null;\n setSelectedItem: React.Dispatch<React.SetStateAction<string | null>>;\n selectedParent: string | null;\n setSelectedParent: React.Dispatch<React.SetStateAction<string | null>>;\n focusedItem: string | null;\n setFocusedItem: React.Dispatch<React.SetStateAction<string | null>>;\n openedDrilldowns: string[];\n setOpenedDrilldowns: React.Dispatch<React.SetStateAction<string[]>>;\n visibleItems: string[];\n visibleItemsRefs: MutableRefObject<Record<string, RefObject<HTMLElement>>>;\n leftNavProps: LeftNavProps;\n expandedForAnimation: boolean;\n};\n\nexport const defaultProps: LeftNavProps = {\n expandedWidth: '240px',\n loading: false,\n expanded: false,\n openedItem: null,\n footerLabel: '',\n onSelectedChange: () => null,\n onFocusChange: () => null,\n onFooterExpand: () => null,\n onFooterClose: () => null,\n items: [],\n labelOverflow: 'wrap' as LabelOveflowT,\n onItemClick: () => null,\n};\n\nexport const defaultContext: ContextProps = {\n leftNavProps: defaultProps,\n selectedItem: null,\n setSelectedItem: () => null,\n selectedParent: null,\n setSelectedParent: () => null,\n focusedItem: null,\n setFocusedItem: () => null,\n expandedForAnimation: true,\n openedDrilldowns: [],\n setOpenedDrilldowns: () => null,\n visibleItems: [],\n visibleItemsRefs: { current: {} },\n};\n\nexport const LeftNavContext = createContext<ContextProps>(defaultContext);\n\nexport default LeftNavContext;\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAgB,qBAAkD;AAkB3D,MAAM,eAA6B;AAAA,EACxC,eAAe;AAAA,EACf,SAAS;AAAA,EACT,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,kBAAkB,MAAM;AAAA,EACxB,eAAe,MAAM;AAAA,EACrB,gBAAgB,MAAM;AAAA,EACtB,eAAe,MAAM;AAAA,EACrB,OAAO,CAAC;AAAA,EACR,eAAe;AAAA,EACf,aAAa,MAAM;AACrB;AAEO,MAAM,iBAA+B;AAAA,EAC1C,cAAc;AAAA,EACd,cAAc;AAAA,EACd,iBAAiB,MAAM;AAAA,EACvB,gBAAgB;AAAA,EAChB,mBAAmB,MAAM;AAAA,EACzB,aAAa;AAAA,EACb,gBAAgB,MAAM;AAAA,EACtB,sBAAsB;AAAA,EACtB,kBAAkB,CAAC;AAAA,EACnB,qBAAqB,MAAM;AAAA,EAC3B,cAAc,CAAC;AAAA,EACf,kBAAkB,EAAE,SAAS,CAAC,EAAE;AAClC;AAEO,MAAM,iBAAiB,cAA4B,cAAc;AAExE,IAAO,gCAAQ;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/common/getItemBackgroundStyle.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "const commonItemBackgroundStyle = (\n color: string,\n hoverColor: string,\n activeColor: string,\n): string => `\n\n background: ${color};\n\n :hover {\n background: ${hoverColor};\n }\n\n :active {\n background: ${activeColor};\n }\n`;\n\nexport const getItemBackgroundStyle = (props: {\n theme: any;\n selected: boolean;\n opened: boolean;\n}): string => {\n if (props.selected && !props.opened)\n return commonItemBackgroundStyle(\n props.theme.colors.brand[200],\n props.theme.colors.brand[200],\n props.theme.colors.brand[200],\n );\n\n return commonItemBackgroundStyle(\n props.theme.colors.neutral['000'],\n props.theme.colors.neutral['080'],\n props.theme.colors.brand[200],\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACAvB,MAAM,4BAA4B,CAChC,OACA,YACA,gBACW;AAAA;AAAA,gBAEG;AAAA;AAAA;AAAA,kBAGE;AAAA;AAAA;AAAA;AAAA,kBAIA;AAAA;AAAA;AAIX,MAAM,yBAAyB,CAAC,UAIzB;AACZ,MAAI,MAAM,YAAY,CAAC,MAAM;AAC3B,WAAO;AAAA,MACL,MAAM,MAAM,OAAO,MAAM;AAAA,MACzB,MAAM,MAAM,OAAO,MAAM;AAAA,MACzB,MAAM,MAAM,OAAO,MAAM;AAAA,IAC3B;AAEF,SAAO;AAAA,IACL,MAAM,MAAM,OAAO,QAAQ;AAAA,IAC3B,MAAM,MAAM,OAAO,QAAQ;AAAA,IAC3B,MAAM,MAAM,OAAO,MAAM;AAAA,EAC3B;AACF;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { Theme } from '@elliemae/ds-system';\n\nconst commonItemBackgroundStyle = (color: string, hoverColor: string, activeColor: string): string => `\n\n background: ${color};\n\n :hover {\n background: ${hoverColor};\n }\n\n :active {\n background: ${activeColor};\n }\n`;\n\nexport const getItemBackgroundStyle = (props: { theme: Theme; selected: boolean; opened: boolean }): string => {\n if (props.selected && !props.opened)\n return commonItemBackgroundStyle(\n props.theme.colors.brand[200],\n props.theme.colors.brand[200],\n props.theme.colors.brand[200],\n );\n\n return commonItemBackgroundStyle(\n props.theme.colors.neutral['000'],\n props.theme.colors.neutral['080'],\n props.theme.colors.brand[200],\n );\n};\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACEvB,MAAM,4BAA4B,CAAC,OAAe,YAAoB,gBAAgC;AAAA;AAAA,gBAEtF;AAAA;AAAA;AAAA,kBAGE;AAAA;AAAA;AAAA;AAAA,kBAIA;AAAA;AAAA;AAIX,MAAM,yBAAyB,CAAC,UAAwE;AAC7G,MAAI,MAAM,YAAY,CAAC,MAAM;AAC3B,WAAO;AAAA,MACL,MAAM,MAAM,OAAO,MAAM;AAAA,MACzB,MAAM,MAAM,OAAO,MAAM;AAAA,MACzB,MAAM,MAAM,OAAO,MAAM;AAAA,IAC3B;AAEF,SAAO;AAAA,IACL,MAAM,MAAM,OAAO,QAAQ;AAAA,IAC3B,MAAM,MAAM,OAAO,QAAQ;AAAA,IAC3B,MAAM,MAAM,OAAO,MAAM;AAAA,EAC3B;AACF;",
6
6
  "names": []
7
7
  }
@@ -21,11 +21,7 @@ const getLeftBorderStyle = (props) => {
21
21
  props.theme.colors.brand[400],
22
22
  props.theme.colors.brand[400]
23
23
  );
24
- return commonLeftBorderStyle(
25
- props.theme.colors.neutral["000"],
26
- props.theme.colors.brand[300],
27
- props.theme.colors.brand[400]
28
- );
24
+ return commonLeftBorderStyle("transparent", props.theme.colors.brand[300], props.theme.colors.brand[400]);
29
25
  };
30
26
  export {
31
27
  getLeftBorderStyle
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/common/getLeftBorderStyle.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "const commonLeftBorderStyle = (\n color: string,\n hoverColor: string,\n activeColor: string,\n): string => `\n\n -webkit-box-shadow: inset 4px 0 0 0 ${color};\n box-shadow: inset 4px 0 0 0 ${color};\n\n :hover {\n -webkit-box-shadow: inset 4px 0 0 0 ${hoverColor};\n box-shadow: inset 4px 0 0 0 ${hoverColor};\n }\n\n :active {\n -webkit-box-shadow: inset 4px 0 0 0 ${activeColor};\n box-shadow: inset 4px 0 0 0 ${activeColor};\n }\n`;\n\nexport const getLeftBorderStyle = (props: {\n theme: any;\n selected: boolean;\n}): string => {\n if (props.selected || props.selectedParent)\n return commonLeftBorderStyle(\n props.theme.colors.brand[400],\n props.theme.colors.brand[400],\n props.theme.colors.brand[400],\n );\n\n return commonLeftBorderStyle(\n props.theme.colors.neutral['000'],\n props.theme.colors.brand[300],\n props.theme.colors.brand[400],\n );\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACAvB,MAAM,wBAAwB,CAC5B,OACA,YACA,gBACW;AAAA;AAAA,wCAE2B;AAAA,wCACA;AAAA;AAAA;AAAA,0CAGE;AAAA,0CACA;AAAA;AAAA;AAAA;AAAA,0CAIA;AAAA,0CACA;AAAA;AAAA;AAInC,MAAM,qBAAqB,CAAC,UAGrB;AACZ,MAAI,MAAM,YAAY,MAAM;AAC1B,WAAO;AAAA,MACL,MAAM,MAAM,OAAO,MAAM;AAAA,MACzB,MAAM,MAAM,OAAO,MAAM;AAAA,MACzB,MAAM,MAAM,OAAO,MAAM;AAAA,IAC3B;AAEF,SAAO;AAAA,IACL,MAAM,MAAM,OAAO,QAAQ;AAAA,IAC3B,MAAM,MAAM,OAAO,MAAM;AAAA,IACzB,MAAM,MAAM,OAAO,MAAM;AAAA,EAC3B;AACF;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { Theme } from '@elliemae/ds-system';\n\nconst commonLeftBorderStyle = (color: string, hoverColor: string, activeColor: string): string => `\n\n -webkit-box-shadow: inset 4px 0 0 0 ${color};\n box-shadow: inset 4px 0 0 0 ${color};\n\n :hover {\n -webkit-box-shadow: inset 4px 0 0 0 ${hoverColor};\n box-shadow: inset 4px 0 0 0 ${hoverColor};\n }\n\n :active {\n -webkit-box-shadow: inset 4px 0 0 0 ${activeColor};\n box-shadow: inset 4px 0 0 0 ${activeColor};\n }\n`;\n\nexport const getLeftBorderStyle = (props: { theme: Theme; selected: boolean; selectedParent: boolean }): string => {\n if (props.selected || props.selectedParent)\n return commonLeftBorderStyle(\n props.theme.colors.brand[400],\n props.theme.colors.brand[400],\n props.theme.colors.brand[400],\n );\n\n return commonLeftBorderStyle('transparent', props.theme.colors.brand[300], props.theme.colors.brand[400]);\n};\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACEvB,MAAM,wBAAwB,CAAC,OAAe,YAAoB,gBAAgC;AAAA;AAAA,wCAE1D;AAAA,wCACA;AAAA;AAAA;AAAA,0CAGE;AAAA,0CACA;AAAA;AAAA;AAAA;AAAA,0CAIA;AAAA,0CACA;AAAA;AAAA;AAInC,MAAM,qBAAqB,CAAC,UAAgF;AACjH,MAAI,MAAM,YAAY,MAAM;AAC1B,WAAO;AAAA,MACL,MAAM,MAAM,OAAO,MAAM;AAAA,MACzB,MAAM,MAAM,OAAO,MAAM;AAAA,MACzB,MAAM,MAAM,OAAO,MAAM;AAAA,IAC3B;AAEF,SAAO,sBAAsB,eAAe,MAAM,MAAM,OAAO,MAAM,MAAM,MAAM,MAAM,OAAO,MAAM,IAAI;AAC1G;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,39 @@
1
+ import * as React from "react";
2
+ const DSLeftNavigationName = "DSLeftNavigation";
3
+ const DSLeftNavigationSlots = {
4
+ ROOT: "root",
5
+ AREAS_CONTAINER: "areas-container",
6
+ BODY_AREAS_CONTAINER: "body-areas-container",
7
+ FOOTER_AREA: "footer-area",
8
+ LOADER_WRAPPER: "loader-wrapper",
9
+ HEADER_AREA: "header-area",
10
+ BODY_HEADER_AREA: "body-header-area",
11
+ BODY_ITEMS_AREA: "body-items-area",
12
+ CONTENT_WITH_SCROLLBAR: "content-with-scrollbar",
13
+ FOOTER_MENU: "footer-menu",
14
+ FOOTER_ITEM: "footer-item",
15
+ FOOTER_LABEL: "footer-label",
16
+ FOOTER_SEPARATOR: "footer-separator",
17
+ FOOTER_MENU_COLLAPSE: "footer-menu-collapse",
18
+ NOTIFICATIONS_CONTAINER: "notifications-container",
19
+ ITEM_SEPARATOR: "item-separator",
20
+ SECTION_LABEL: "section-label",
21
+ SECTION_RIGHT_LABEL: "section-right-label",
22
+ VERTICAL_SEPARATOR: "vertical-separator",
23
+ SECTION_CONTAINER: "section-container",
24
+ ITEM_LABEL: "item-label",
25
+ LEFT_CONTAINER: "left-container",
26
+ BOTTOM_CONTAINER: "bottom-container",
27
+ RIGHT_CONTAINER: "right-container",
28
+ ITEM_DATE: "item-date",
29
+ ITEM_CHEVRON_BACK: "item-chevron-back",
30
+ ITEM: "item",
31
+ COLLAPSED_CONTAINER: "collapsed-container",
32
+ ARROW_CONTAINER: "arrow-container",
33
+ ITEM_BORDER_BOTTOM: "item-border-bottom"
34
+ };
35
+ export {
36
+ DSLeftNavigationName,
37
+ DSLeftNavigationSlots
38
+ };
39
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/constants/constants.ts"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const DSLeftNavigationName = 'DSLeftNavigation';\n\nexport const DSLeftNavigationSlots = {\n ROOT: 'root',\n\n AREAS_CONTAINER: 'areas-container',\n BODY_AREAS_CONTAINER: 'body-areas-container',\n FOOTER_AREA: 'footer-area',\n LOADER_WRAPPER: 'loader-wrapper',\n HEADER_AREA: 'header-area',\n BODY_HEADER_AREA: 'body-header-area',\n BODY_ITEMS_AREA: 'body-items-area',\n CONTENT_WITH_SCROLLBAR: 'content-with-scrollbar',\n\n FOOTER_MENU: 'footer-menu',\n FOOTER_ITEM: 'footer-item',\n FOOTER_LABEL: 'footer-label',\n FOOTER_SEPARATOR: 'footer-separator',\n FOOTER_MENU_COLLAPSE: 'footer-menu-collapse',\n\n NOTIFICATIONS_CONTAINER: 'notifications-container',\n\n ITEM_SEPARATOR: 'item-separator',\n\n SECTION_LABEL: 'section-label',\n SECTION_RIGHT_LABEL: 'section-right-label',\n VERTICAL_SEPARATOR: 'vertical-separator',\n SECTION_CONTAINER: 'section-container',\n\n ITEM_LABEL: 'item-label',\n LEFT_CONTAINER: 'left-container',\n BOTTOM_CONTAINER: 'bottom-container',\n RIGHT_CONTAINER: 'right-container',\n ITEM_DATE: 'item-date',\n ITEM_CHEVRON_BACK: 'item-chevron-back',\n\n ITEM: 'item',\n COLLAPSED_CONTAINER: 'collapsed-container',\n ARROW_CONTAINER: 'arrow-container',\n ITEM_BORDER_BOTTOM: 'item-border-bottom',\n};\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACAhB,MAAM,uBAAuB;AAE7B,MAAM,wBAAwB;AAAA,EACnC,MAAM;AAAA,EAEN,iBAAiB;AAAA,EACjB,sBAAsB;AAAA,EACtB,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,aAAa;AAAA,EACb,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,wBAAwB;AAAA,EAExB,aAAa;AAAA,EACb,aAAa;AAAA,EACb,cAAc;AAAA,EACd,kBAAkB;AAAA,EAClB,sBAAsB;AAAA,EAEtB,yBAAyB;AAAA,EAEzB,gBAAgB;AAAA,EAEhB,eAAe;AAAA,EACf,qBAAqB;AAAA,EACrB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EAEnB,YAAY;AAAA,EACZ,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,WAAW;AAAA,EACX,mBAAmB;AAAA,EAEnB,MAAM;AAAA,EACN,qBAAqB;AAAA,EACrB,iBAAiB;AAAA,EACjB,oBAAoB;AACtB;",
6
+ "names": []
7
+ }
@@ -0,0 +1,3 @@
1
+ import * as React from "react";
2
+ export * from "./constants";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/constants/index.ts"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export * from './constants';\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACAvB,cAAc;",
6
+ "names": []
7
+ }