@elliemae/ds-left-navigation 1.61.10 → 1.61.13

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 (91) hide show
  1. package/cjs/LeftNavigation.js.map +1 -1
  2. package/cjs/LeftNavigationContext.js.map +1 -1
  3. package/cjs/common/getItemBackgroundStyle.js.map +1 -1
  4. package/cjs/common/getLeftBorderStyle.js.map +1 -1
  5. package/cjs/common/getScrollbarStyle.js.map +1 -1
  6. package/cjs/configs/useLeftNavConfig.js.map +1 -1
  7. package/cjs/configs/useLeftNavItems.js.map +1 -1
  8. package/cjs/configs/useLeftNavSmoothExpand.js.map +1 -1
  9. package/cjs/exported-related/ChevronItem/index.js.map +1 -1
  10. package/cjs/exported-related/Icon/index.js.map +1 -1
  11. package/cjs/exported-related/ItemRenderer/index.js.map +1 -1
  12. package/cjs/exported-related/ItemRenderer/styled.js.map +1 -1
  13. package/cjs/exported-related/ItemRenderer/usePropsWithDefaults.js.map +1 -1
  14. package/cjs/exported-related/Notifications/index.js.map +1 -1
  15. package/cjs/exported-related/OpenWindowItem/index.js.map +1 -1
  16. package/cjs/exported-related/constants.js.map +1 -1
  17. package/cjs/hooks/useExpandableOnClickHandler.js.map +1 -1
  18. package/cjs/hooks/useKeyboardNavigation.js.map +1 -1
  19. package/cjs/hooks/useOpenableOnClickHandler.js.map +1 -1
  20. package/cjs/hooks/useSelectFirstBodyItem.js.map +1 -1
  21. package/cjs/outOfTheBox/ItemControlledDrilldown/index.js.map +1 -1
  22. package/cjs/outOfTheBox/ItemControlledDrilldown/styled.js.map +1 -1
  23. package/cjs/outOfTheBox/ItemHeader/index.js.map +1 -1
  24. package/cjs/outOfTheBox/ItemHeader/styled.js.map +1 -1
  25. package/cjs/outOfTheBox/ItemLink/index.js.map +1 -1
  26. package/cjs/outOfTheBox/ItemLink/styled.js.map +1 -1
  27. package/cjs/outOfTheBox/ItemSection/index.js.map +1 -1
  28. package/cjs/outOfTheBox/ItemSection/styled.js.map +1 -1
  29. package/cjs/outOfTheBox/ItemSeparator/index.js.map +1 -1
  30. package/cjs/outOfTheBox/ItemSubmenu/index.js.map +1 -1
  31. package/cjs/outOfTheBox/ItemSubmenu/styled.js.map +1 -1
  32. package/cjs/outOfTheBox/ItemTextLabel/index.js.map +1 -1
  33. package/cjs/outOfTheBox/ItemTextLabel/styled.js.map +1 -1
  34. package/cjs/outOfTheBox/ItemUncontrolledDrilldown/index.js.map +1 -1
  35. package/cjs/outOfTheBox/ItemUncontrolledDrilldown/styled.js.map +1 -1
  36. package/cjs/outOfTheBox/ItemWithDate/index.js.map +1 -1
  37. package/cjs/outOfTheBox/ItemWithDate/styled.js.map +1 -1
  38. package/cjs/parts/LeftNavContent/index.js.map +1 -1
  39. package/cjs/parts/LeftNavContent/styled.js.map +1 -1
  40. package/cjs/parts/LeftNavContentWithScrollbar/index.js.map +1 -1
  41. package/cjs/parts/LeftNavFooterItem/index.js.map +1 -1
  42. package/cjs/parts/LeftNavFooterItem/styled.js.map +1 -1
  43. package/cjs/parts/LeftNavLoading/index.js.map +1 -1
  44. package/cjs/parts/OutOfTheBoxMapItem.js.map +1 -1
  45. package/cjs/prop-types.js.map +1 -1
  46. package/esm/LeftNavigation.js.map +1 -1
  47. package/esm/LeftNavigationContext.js.map +1 -1
  48. package/esm/common/getItemBackgroundStyle.js.map +1 -1
  49. package/esm/common/getLeftBorderStyle.js.map +1 -1
  50. package/esm/common/getScrollbarStyle.js.map +1 -1
  51. package/esm/configs/useLeftNavConfig.js.map +1 -1
  52. package/esm/configs/useLeftNavItems.js.map +1 -1
  53. package/esm/configs/useLeftNavSmoothExpand.js.map +1 -1
  54. package/esm/exported-related/ChevronItem/index.js.map +1 -1
  55. package/esm/exported-related/Icon/index.js.map +1 -1
  56. package/esm/exported-related/ItemRenderer/index.js.map +1 -1
  57. package/esm/exported-related/ItemRenderer/styled.js.map +1 -1
  58. package/esm/exported-related/ItemRenderer/usePropsWithDefaults.js.map +1 -1
  59. package/esm/exported-related/Notifications/index.js.map +1 -1
  60. package/esm/exported-related/OpenWindowItem/index.js.map +1 -1
  61. package/esm/exported-related/constants.js.map +1 -1
  62. package/esm/hooks/useExpandableOnClickHandler.js.map +1 -1
  63. package/esm/hooks/useKeyboardNavigation.js.map +1 -1
  64. package/esm/hooks/useOpenableOnClickHandler.js.map +1 -1
  65. package/esm/hooks/useSelectFirstBodyItem.js.map +1 -1
  66. package/esm/outOfTheBox/ItemControlledDrilldown/index.js.map +1 -1
  67. package/esm/outOfTheBox/ItemControlledDrilldown/styled.js.map +1 -1
  68. package/esm/outOfTheBox/ItemHeader/index.js.map +1 -1
  69. package/esm/outOfTheBox/ItemHeader/styled.js.map +1 -1
  70. package/esm/outOfTheBox/ItemLink/index.js.map +1 -1
  71. package/esm/outOfTheBox/ItemLink/styled.js.map +1 -1
  72. package/esm/outOfTheBox/ItemSection/index.js.map +1 -1
  73. package/esm/outOfTheBox/ItemSection/styled.js.map +1 -1
  74. package/esm/outOfTheBox/ItemSeparator/index.js.map +1 -1
  75. package/esm/outOfTheBox/ItemSubmenu/index.js.map +1 -1
  76. package/esm/outOfTheBox/ItemSubmenu/styled.js.map +1 -1
  77. package/esm/outOfTheBox/ItemTextLabel/index.js.map +1 -1
  78. package/esm/outOfTheBox/ItemTextLabel/styled.js.map +1 -1
  79. package/esm/outOfTheBox/ItemUncontrolledDrilldown/index.js.map +1 -1
  80. package/esm/outOfTheBox/ItemUncontrolledDrilldown/styled.js.map +1 -1
  81. package/esm/outOfTheBox/ItemWithDate/index.js.map +1 -1
  82. package/esm/outOfTheBox/ItemWithDate/styled.js.map +1 -1
  83. package/esm/parts/LeftNavContent/index.js.map +1 -1
  84. package/esm/parts/LeftNavContent/styled.js.map +1 -1
  85. package/esm/parts/LeftNavContentWithScrollbar/index.js.map +1 -1
  86. package/esm/parts/LeftNavFooterItem/index.js.map +1 -1
  87. package/esm/parts/LeftNavFooterItem/styled.js.map +1 -1
  88. package/esm/parts/LeftNavLoading/index.js.map +1 -1
  89. package/esm/parts/OutOfTheBoxMapItem.js.map +1 -1
  90. package/esm/prop-types.js.map +1 -1
  91. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"LeftNavigation.js","sources":["../../src/LeftNavigation.tsx"],"sourcesContent":["import React from 'react';\nimport { describe } from 'react-desc';\nimport { leftNavigationProps } from './prop-types';\nimport LeftNavigationContext, { defaultProps } from './LeftNavigationContext';\nimport { useLeftNavConfig } from './configs/useLeftNavConfig';\nimport LeftNavContent from './parts/LeftNavContent';\nimport type { LeftNavProps } from './index.d';\n\nexport const LeftNavigation = (props: LeftNavProps): JSX.Element => {\n const leftNavConfig = useLeftNavConfig(props);\n\n return (\n <LeftNavigationContext.Provider value={leftNavConfig}>\n <LeftNavContent />\n </LeftNavigationContext.Provider>\n );\n};\n\nLeftNavigation.propTypes = leftNavigationProps;\nLeftNavigation.defaultProps = defaultProps;\n\nexport const LeftNavigationWithSchema = describe(LeftNavigation).description('Left Navigation');\nLeftNavigationWithSchema.propTypes = leftNavigationProps;\n"],"names":["LeftNavigation","props","leftNavConfig","useLeftNavConfig","React","LeftNavigationContext","LeftNavContent","propTypes","leftNavigationProps","defaultProps","LeftNavigationWithSchema","describe","description"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAQaA,cAAc,GAAG,SAAjBA,cAAiB,CAACC,KAAD,EAAsC;AAClE,MAAMC,aAAa,GAAGC,yCAAgB,CAACF,KAAD,CAAtC;AAEA,sBACEG,wCAACC,oCAAD,CAAuB,QAAvB;AAAgC,IAAA,KAAK,EAAEH;AAAvC,kBACEE,wCAACE,0BAAD,OADF,CADF;AAKD;AAEDN,cAAc,CAACO,SAAf,GAA2BC,6BAA3B;AACAR,cAAc,CAACS,YAAf,GAA8BA,kCAA9B;IAEaC,wBAAwB,GAAGC,kBAAQ,CAACX,cAAD,CAAR,CAAyBY,WAAzB,CAAqC,iBAArC;AACxCF,wBAAwB,CAACH,SAAzB,GAAqCC,6BAArC;;;;;"}
1
+ {"version":3,"file":"LeftNavigation.js","sources":["../../src/LeftNavigation.tsx"],"sourcesContent":["import React from 'react';\nimport { describe } from 'react-desc';\nimport { leftNavigationProps } from './prop-types';\nimport LeftNavigationContext, { defaultProps } from './LeftNavigationContext';\nimport { useLeftNavConfig } from './configs/useLeftNavConfig';\nimport LeftNavContent from './parts/LeftNavContent';\nimport type { LeftNavProps } from './index.d';\n\nexport const LeftNavigation = (props: LeftNavProps): JSX.Element => {\n const leftNavConfig = useLeftNavConfig(props);\n\n return (\n <LeftNavigationContext.Provider value={leftNavConfig}>\n <LeftNavContent />\n </LeftNavigationContext.Provider>\n );\n};\n\nLeftNavigation.propTypes = leftNavigationProps;\nLeftNavigation.defaultProps = defaultProps;\n\nexport const LeftNavigationWithSchema = describe(LeftNavigation).description('Left Navigation');\nLeftNavigationWithSchema.propTypes = leftNavigationProps;\n"],"names":["LeftNavigation","props","leftNavConfig","useLeftNavConfig","React","LeftNavigationContext","LeftNavContent","propTypes","leftNavigationProps","defaultProps","LeftNavigationWithSchema","describe","description"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAQaA,cAAc,GAAG,SAAjBA,cAAiB,CAACC,KAAD,EAAsC;EAClE,IAAMC,aAAa,GAAGC,yCAAgB,CAACF,KAAD,CAAtC;EAEA,oBACEG,wCAACC,oCAAD,CAAuB,QAAvB;IAAgC,KAAK,EAAEH;kBACrCE,wCAACE,0BAAD,OADF,CADF;AAKD;AAEDN,cAAc,CAACO,SAAf,GAA2BC,6BAA3B;AACAR,cAAc,CAACS,YAAf,GAA8BA,kCAA9B;IAEaC,wBAAwB,GAAGC,kBAAQ,CAACX,cAAD,CAAR,CAAyBY,WAAzB,CAAqC,iBAArC;AACxCF,wBAAwB,CAACH,SAAzB,GAAqCC,6BAArC;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"LeftNavigationContext.js","sources":["../../src/LeftNavigationContext.tsx"],"sourcesContent":["import React, { createContext, MutableRefObject, RefObject } from 'react';\nimport type { LeftNavProps, LabelOveflowT } from './index.d';\n\nexport type ContextProps = {\n selectedItem: string;\n setSelectedItem: React.Dispatch<React.SetStateAction<string>>;\n focusedItem: string;\n setFocusedItem: React.Dispatch<React.SetStateAction<string>>;\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"],"names":["defaultProps","expandedWidth","tabIndex","loading","expanded","openedItem","footerLabel","onSelectedChange","onFocusChange","onFooterExpand","onFooterClose","items","labelOverflow","onItemClick","defaultContext","leftNavProps","selectedItem","setSelectedItem","focusedItem","setFocusedItem","expandedForAnimation","openedDrilldowns","setOpenedDrilldowns","visibleItems","visibleItemsRefs","current","LeftNavContext","createContext"],"mappings":";;;;;;IAgBaA,YAA0B,GAAG;AACxCC,EAAAA,aAAa,EAAE,OADyB;AAExCC,EAAAA,QAAQ,EAAE,CAF8B;AAGxCC,EAAAA,OAAO,EAAE,KAH+B;AAIxCC,EAAAA,QAAQ,EAAE,KAJ8B;AAKxCC,EAAAA,UAAU,EAAE,IAL4B;AAMxCC,EAAAA,WAAW,EAAE,EAN2B;AAOxCC,EAAAA,gBAAgB,EAAE;AAAA,WAAM,IAAN;AAAA,GAPsB;AAQxCC,EAAAA,aAAa,EAAE;AAAA,WAAM,IAAN;AAAA,GARyB;AASxCC,EAAAA,cAAc,EAAE;AAAA,WAAM,IAAN;AAAA,GATwB;AAUxCC,EAAAA,aAAa,EAAE;AAAA,WAAM,IAAN;AAAA,GAVyB;AAWxCC,EAAAA,KAAK,EAAE,EAXiC;AAYxCC,EAAAA,aAAa,EAAE,MAZyB;AAaxCC,EAAAA,WAAW,EAAE;AAAA,WAAM,IAAN;AAAA;AAb2B;IAgB7BC,cAA4B,GAAG;AAC1CC,EAAAA,YAAY,EAAEf,YAD4B;AAE1CgB,EAAAA,YAAY,EAAE,IAF4B;AAG1CC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAHyB;AAI1CC,EAAAA,WAAW,EAAE,IAJ6B;AAK1CC,EAAAA,cAAc,EAAE;AAAA,WAAM,IAAN;AAAA,GAL0B;AAM1CC,EAAAA,oBAAoB,EAAE,IANoB;AAO1CC,EAAAA,gBAAgB,EAAE,EAPwB;AAQ1CC,EAAAA,mBAAmB,EAAE;AAAA,WAAM,IAAN;AAAA,GARqB;AAS1CC,EAAAA,YAAY,EAAE,EAT4B;AAU1CC,EAAAA,gBAAgB,EAAE;AAAEC,IAAAA,OAAO,EAAE;AAAX;AAVwB;IAa/BC,cAAc,gBAAGC,mBAAa,CAAeb,cAAf;;;;;;;"}
1
+ {"version":3,"file":"LeftNavigationContext.js","sources":["../../src/LeftNavigationContext.tsx"],"sourcesContent":["import React, { createContext, MutableRefObject, RefObject } from 'react';\nimport type { LeftNavProps, LabelOveflowT } from './index.d';\n\nexport type ContextProps = {\n selectedItem: string;\n setSelectedItem: React.Dispatch<React.SetStateAction<string>>;\n focusedItem: string;\n setFocusedItem: React.Dispatch<React.SetStateAction<string>>;\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"],"names":["defaultProps","expandedWidth","tabIndex","loading","expanded","openedItem","footerLabel","onSelectedChange","onFocusChange","onFooterExpand","onFooterClose","items","labelOverflow","onItemClick","defaultContext","leftNavProps","selectedItem","setSelectedItem","focusedItem","setFocusedItem","expandedForAnimation","openedDrilldowns","setOpenedDrilldowns","visibleItems","visibleItemsRefs","current","LeftNavContext","createContext"],"mappings":";;;;;;IAgBaA,YAA0B,GAAG;EACxCC,aAAa,EAAE,OADyB;EAExCC,QAAQ,EAAE,CAF8B;EAGxCC,OAAO,EAAE,KAH+B;EAIxCC,QAAQ,EAAE,KAJ8B;EAKxCC,UAAU,EAAE,IAL4B;EAMxCC,WAAW,EAAE,EAN2B;EAOxCC,gBAAgB,EAAE;IAAA,OAAM,IAAN;GAPsB;EAQxCC,aAAa,EAAE;IAAA,OAAM,IAAN;GARyB;EASxCC,cAAc,EAAE;IAAA,OAAM,IAAN;GATwB;EAUxCC,aAAa,EAAE;IAAA,OAAM,IAAN;GAVyB;EAWxCC,KAAK,EAAE,EAXiC;EAYxCC,aAAa,EAAE,MAZyB;EAaxCC,WAAW,EAAE;IAAA,OAAM,IAAN;;AAb2B;IAgB7BC,cAA4B,GAAG;EAC1CC,YAAY,EAAEf,YAD4B;EAE1CgB,YAAY,EAAE,IAF4B;EAG1CC,eAAe,EAAE;IAAA,OAAM,IAAN;GAHyB;EAI1CC,WAAW,EAAE,IAJ6B;EAK1CC,cAAc,EAAE;IAAA,OAAM,IAAN;GAL0B;EAM1CC,oBAAoB,EAAE,IANoB;EAO1CC,gBAAgB,EAAE,EAPwB;EAQ1CC,mBAAmB,EAAE;IAAA,OAAM,IAAN;GARqB;EAS1CC,YAAY,EAAE,EAT4B;EAU1CC,gBAAgB,EAAE;IAAEC,OAAO,EAAE;;AAVa;IAa/BC,cAAc,gBAAGC,mBAAa,CAAeb,cAAf;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getItemBackgroundStyle.js","sources":["../../../src/common/getItemBackgroundStyle.tsx"],"sourcesContent":["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"],"names":["commonItemBackgroundStyle","color","hoverColor","activeColor","getItemBackgroundStyle","props","selected","opened","theme","colors","brand","neutral"],"mappings":";;;;AAAA,IAAMA,yBAAyB,GAAG,SAA5BA,yBAA4B,CAChCC,KADgC,EAEhCC,UAFgC,EAGhCC,WAHgC;AAAA,qCAMlBF,KANkB,8CAShBC,UATgB,oDAahBC,WAbgB;AAAA,CAAlC;;IAiBaC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,KAAD,EAIxB;AACZ,MAAIA,KAAK,CAACC,QAAN,IAAkB,CAACD,KAAK,CAACE,MAA7B,EACE,OAAOP,yBAAyB,CAC9BK,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAD8B,EAE9BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAF8B,EAG9BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAH8B,CAAhC;AAMF,SAAOV,yBAAyB,CAC9BK,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBE,OAAnB,CAA2B,KAA3B,CAD8B,EAE9BN,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBE,OAAnB,CAA2B,KAA3B,CAF8B,EAG9BN,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAH8B,CAAhC;AAKD;;;;"}
1
+ {"version":3,"file":"getItemBackgroundStyle.js","sources":["../../../src/common/getItemBackgroundStyle.tsx"],"sourcesContent":["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"],"names":["commonItemBackgroundStyle","color","hoverColor","activeColor","getItemBackgroundStyle","props","selected","opened","theme","colors","brand","neutral"],"mappings":";;;;AAAA,IAAMA,yBAAyB,GAAG,SAA5BA,yBAA4B,CAChCC,KADgC,EAEhCC,UAFgC,EAGhCC,WAHgC;EAAA,mCAMlBF,KANkB,8CAShBC,UATgB,oDAahBC,WAbgB;AAAA,CAAlC;;IAiBaC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,KAAD,EAIxB;EACZ,IAAIA,KAAK,CAACC,QAAN,IAAkB,CAACD,KAAK,CAACE,MAA7B,EACE,OAAOP,yBAAyB,CAC9BK,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAD8B,EAE9BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAF8B,EAG9BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAH8B,CAAhC;EAMF,OAAOV,yBAAyB,CAC9BK,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBE,OAAnB,CAA2B,KAA3B,CAD8B,EAE9BN,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBE,OAAnB,CAA2B,KAA3B,CAF8B,EAG9BN,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAH8B,CAAhC;AAKD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getLeftBorderStyle.js","sources":["../../../src/common/getLeftBorderStyle.tsx"],"sourcesContent":["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"],"names":["commonLeftBorderStyle","color","hoverColor","activeColor","getLeftBorderStyle","props","selected","selectedParent","theme","colors","brand","neutral"],"mappings":";;;;AAAA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAwB,CAC5BC,KAD4B,EAE5BC,UAF4B,EAG5BC,WAH4B;AAAA,6DAMUF,KANV,sDAOUA,KAPV,sEAUYC,UAVZ,wDAWYA,UAXZ,4EAeYC,WAfZ,wDAgBYA,WAhBZ;AAAA,CAA9B;;IAoBaC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,KAAD,EAGpB;AACZ,MAAIA,KAAK,CAACC,QAAN,IAAkBD,KAAK,CAACE,cAA5B,EACE,OAAOP,qBAAqB,CAC1BK,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAD0B,EAE1BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAF0B,EAG1BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAH0B,CAA5B;AAMF,SAAOV,qBAAqB,CAC1BK,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBE,OAAnB,CAA2B,KAA3B,CAD0B,EAE1BN,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAF0B,EAG1BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAH0B,CAA5B;AAKD;;;;"}
1
+ {"version":3,"file":"getLeftBorderStyle.js","sources":["../../../src/common/getLeftBorderStyle.tsx"],"sourcesContent":["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"],"names":["commonLeftBorderStyle","color","hoverColor","activeColor","getLeftBorderStyle","props","selected","selectedParent","theme","colors","brand","neutral"],"mappings":";;;;AAAA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAwB,CAC5BC,KAD4B,EAE5BC,UAF4B,EAG5BC,WAH4B;EAAA,2DAMUF,KANV,sDAOUA,KAPV,sEAUYC,UAVZ,wDAWYA,UAXZ,4EAeYC,WAfZ,wDAgBYA,WAhBZ;AAAA,CAA9B;;IAoBaC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,KAAD,EAGpB;EACZ,IAAIA,KAAK,CAACC,QAAN,IAAkBD,KAAK,CAACE,cAA5B,EACE,OAAOP,qBAAqB,CAC1BK,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAD0B,EAE1BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAF0B,EAG1BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAH0B,CAA5B;EAMF,OAAOV,qBAAqB,CAC1BK,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBE,OAAnB,CAA2B,KAA3B,CAD0B,EAE1BN,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAF0B,EAG1BL,KAAK,CAACG,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAH0B,CAA5B;AAKD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getScrollbarStyle.js","sources":["../../../src/common/getScrollbarStyle.tsx"],"sourcesContent":["export const getScrolbarStyle = (): string => `\n ::-webkit-scrollbar {\n width: 14px;\n }\n ::-webkit-scrollbar-thumb {\n height: 6px;\n border: 4px solid rgba(0, 0, 0, 0);\n\n background-clip: padding-box;\n\n background-color: rgba(105, 116, 137, 0.5);\n\n border-radius: 7px;\n -webkit-border-radius: 7px;\n }\n ::-webkit-scrollbar-button {\n width: 0;\n height: 0;\n display: none;\n }\n ::-webkit-scrollbar-corner {\n background-color: transparent;\n }\n`;\n"],"names":["getScrolbarStyle"],"mappings":";;;;IAAaA,gBAAgB,GAAG,SAAnBA,gBAAmB;AAAA;AAAA;;;;"}
1
+ {"version":3,"file":"getScrollbarStyle.js","sources":["../../../src/common/getScrollbarStyle.tsx"],"sourcesContent":["export const getScrolbarStyle = (): string => `\n ::-webkit-scrollbar {\n width: 14px;\n }\n ::-webkit-scrollbar-thumb {\n height: 6px;\n border: 4px solid rgba(0, 0, 0, 0);\n\n background-clip: padding-box;\n\n background-color: rgba(105, 116, 137, 0.5);\n\n border-radius: 7px;\n -webkit-border-radius: 7px;\n }\n ::-webkit-scrollbar-button {\n width: 0;\n height: 0;\n display: none;\n }\n ::-webkit-scrollbar-corner {\n background-color: transparent;\n }\n`;\n"],"names":["getScrolbarStyle"],"mappings":";;;;IAAaA,gBAAgB,GAAG,SAAnBA,gBAAmB;EAAA;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLeftNavConfig.js","sources":["../../../src/configs/useLeftNavConfig.tsx"],"sourcesContent":["import React from 'react';\nimport type { LeftNavProps } from '../index.d';\nimport { ContextProps } from '../LeftNavigationContext';\nimport useLeftNavItems from './useLeftNavItems';\nimport { useLeftNavSmoothExpand } from './useLeftNavSmoothExpand';\nimport { useSelectFirstBodyItem } from '../hooks/useSelectFirstBodyItem';\n\nexport const useLeftNavConfig = (props: LeftNavProps): ContextProps => {\n const { expanded, openedItem, onSelectedChange, onFocusChange, items } = props;\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * INTERNAL STATE *\n // ************************** ------------ **************************\n // Selection related\n const [selectedItem, setSelectedItem] = React.useState(null);\n const [selectedSubitem, setSelectedSubitem] = React.useState(null);\n const [selectedParent, setSelectedParent] = React.useState(null);\n // Focus related\n const [focusedItem, setFocusedItem] = React.useState(null);\n // Opened uncontrolled drilldowns\n const [openedDrilldowns, setOpenedDrilldowns] = React.useState<string[]>([]);\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * EXPAND ANIMATION *\n // ************************** ------------ **************************\n const [expandedForAnimation, setExpandedForAnimation] = React.useState(expanded);\n const timeoutRef = React.useRef<ReturnType<typeof setTimeout>>(null);\n const smoothExpandOpts = React.useMemo(\n () => ({\n expandedForAnimation,\n timeoutRef,\n setExpandedForAnimation,\n }),\n [expandedForAnimation, timeoutRef, setExpandedForAnimation],\n );\n useLeftNavSmoothExpand(props, smoothExpandOpts);\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * SIDE EFFECTS *\n // ************************** ------------ **************************\n React.useEffect(() => {\n onSelectedChange(selectedItem);\n }, [selectedItem, onSelectedChange]);\n\n React.useEffect(() => {\n if (openedItem !== null) setSelectedParent(openedItem);\n }, [openedItem]);\n\n React.useEffect(() => {\n onFocusChange(focusedItem);\n }, [focusedItem, onFocusChange]);\n\n useSelectFirstBodyItem(\n items,\n openedItem,\n props.selectedItem !== undefined ? props.selectedItem : selectedItem,\n setSelectedItem,\n props.disableDefaultSelection,\n );\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * ITEMS MANAGEMENT *\n // ************************** ------------ **************************\n\n const leftNavItemsProps = React.useMemo(\n () => ({\n headerItem: props.HeaderComponent,\n bodyHeaderItem: props.BodyHeaderComponent,\n items: props.items,\n openedDrilldowns,\n }),\n [props.HeaderComponent, props.BodyHeaderComponent, props.items, openedDrilldowns],\n );\n\n // We need to know the current visible items since we have drilldowns\n const { visibleItems, visibleItemsRefs } = useLeftNavItems(leftNavItemsProps);\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * LEFTNAV CONFIG *\n // ************************** ------------ **************************\n const finalConfig = React.useMemo(\n () => ({\n leftNavProps: props,\n expandedForAnimation,\n selectedItem: props.selectedItem !== undefined ? props.selectedItem : selectedItem,\n setSelectedItem,\n selectedParent: props.selectedParent !== undefined ? props.selectedParent : selectedParent,\n setSelectedParent,\n focusedItem,\n setFocusedItem,\n openedDrilldowns,\n setOpenedDrilldowns,\n visibleItems,\n visibleItemsRefs,\n }),\n [\n props,\n expandedForAnimation,\n selectedItem,\n setSelectedItem,\n setSelectedParent,\n selectedParent,\n focusedItem,\n setFocusedItem,\n openedDrilldowns,\n setOpenedDrilldowns,\n visibleItems,\n visibleItemsRefs,\n ],\n );\n\n return finalConfig;\n};\n\nexport default useLeftNavConfig;\n"],"names":["useLeftNavConfig","props","expanded","openedItem","onSelectedChange","onFocusChange","items","React","useState","selectedItem","setSelectedItem","selectedParent","setSelectedParent","focusedItem","setFocusedItem","openedDrilldowns","setOpenedDrilldowns","expandedForAnimation","setExpandedForAnimation","timeoutRef","useRef","smoothExpandOpts","useMemo","useLeftNavSmoothExpand","useEffect","useSelectFirstBodyItem","undefined","disableDefaultSelection","leftNavItemsProps","headerItem","HeaderComponent","bodyHeaderItem","BodyHeaderComponent","useLeftNavItems","visibleItems","visibleItemsRefs","finalConfig","leftNavProps"],"mappings":"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"}
1
+ {"version":3,"file":"useLeftNavConfig.js","sources":["../../../src/configs/useLeftNavConfig.tsx"],"sourcesContent":["import React from 'react';\nimport type { LeftNavProps } from '../index.d';\nimport { ContextProps } from '../LeftNavigationContext';\nimport useLeftNavItems from './useLeftNavItems';\nimport { useLeftNavSmoothExpand } from './useLeftNavSmoothExpand';\nimport { useSelectFirstBodyItem } from '../hooks/useSelectFirstBodyItem';\n\nexport const useLeftNavConfig = (props: LeftNavProps): ContextProps => {\n const { expanded, openedItem, onSelectedChange, onFocusChange, items } = props;\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * INTERNAL STATE *\n // ************************** ------------ **************************\n // Selection related\n const [selectedItem, setSelectedItem] = React.useState(null);\n const [selectedSubitem, setSelectedSubitem] = React.useState(null);\n const [selectedParent, setSelectedParent] = React.useState(null);\n // Focus related\n const [focusedItem, setFocusedItem] = React.useState(null);\n // Opened uncontrolled drilldowns\n const [openedDrilldowns, setOpenedDrilldowns] = React.useState<string[]>([]);\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * EXPAND ANIMATION *\n // ************************** ------------ **************************\n const [expandedForAnimation, setExpandedForAnimation] = React.useState(expanded);\n const timeoutRef = React.useRef<ReturnType<typeof setTimeout>>(null);\n const smoothExpandOpts = React.useMemo(\n () => ({\n expandedForAnimation,\n timeoutRef,\n setExpandedForAnimation,\n }),\n [expandedForAnimation, timeoutRef, setExpandedForAnimation],\n );\n useLeftNavSmoothExpand(props, smoothExpandOpts);\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * SIDE EFFECTS *\n // ************************** ------------ **************************\n React.useEffect(() => {\n onSelectedChange(selectedItem);\n }, [selectedItem, onSelectedChange]);\n\n React.useEffect(() => {\n if (openedItem !== null) setSelectedParent(openedItem);\n }, [openedItem]);\n\n React.useEffect(() => {\n onFocusChange(focusedItem);\n }, [focusedItem, onFocusChange]);\n\n useSelectFirstBodyItem(\n items,\n openedItem,\n props.selectedItem !== undefined ? props.selectedItem : selectedItem,\n setSelectedItem,\n props.disableDefaultSelection,\n );\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * ITEMS MANAGEMENT *\n // ************************** ------------ **************************\n\n const leftNavItemsProps = React.useMemo(\n () => ({\n headerItem: props.HeaderComponent,\n bodyHeaderItem: props.BodyHeaderComponent,\n items: props.items,\n openedDrilldowns,\n }),\n [props.HeaderComponent, props.BodyHeaderComponent, props.items, openedDrilldowns],\n );\n\n // We need to know the current visible items since we have drilldowns\n const { visibleItems, visibleItemsRefs } = useLeftNavItems(leftNavItemsProps);\n\n // -----------------------------------------------------------------------------\n // ************************** ------------ **************************\n // * LEFTNAV CONFIG *\n // ************************** ------------ **************************\n const finalConfig = React.useMemo(\n () => ({\n leftNavProps: props,\n expandedForAnimation,\n selectedItem: props.selectedItem !== undefined ? props.selectedItem : selectedItem,\n setSelectedItem,\n selectedParent: props.selectedParent !== undefined ? props.selectedParent : selectedParent,\n setSelectedParent,\n focusedItem,\n setFocusedItem,\n openedDrilldowns,\n setOpenedDrilldowns,\n visibleItems,\n visibleItemsRefs,\n }),\n [\n props,\n expandedForAnimation,\n selectedItem,\n setSelectedItem,\n setSelectedParent,\n selectedParent,\n focusedItem,\n setFocusedItem,\n openedDrilldowns,\n setOpenedDrilldowns,\n visibleItems,\n visibleItemsRefs,\n ],\n );\n\n return finalConfig;\n};\n\nexport default useLeftNavConfig;\n"],"names":["useLeftNavConfig","props","expanded","openedItem","onSelectedChange","onFocusChange","items","React","useState","selectedItem","setSelectedItem","selectedParent","setSelectedParent","focusedItem","setFocusedItem","openedDrilldowns","setOpenedDrilldowns","expandedForAnimation","setExpandedForAnimation","timeoutRef","useRef","smoothExpandOpts","useMemo","useLeftNavSmoothExpand","useEffect","useSelectFirstBodyItem","undefined","disableDefaultSelection","leftNavItemsProps","headerItem","HeaderComponent","bodyHeaderItem","BodyHeaderComponent","useLeftNavItems","visibleItems","visibleItemsRefs","finalConfig","leftNavProps"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLeftNavItems.js","sources":["../../../src/configs/useLeftNavItems.tsx"],"sourcesContent":["/* eslint-disable complexity */\nimport { createRef, MutableRefObject, RefObject, useMemo, useRef } from 'react';\nimport { ITEM_TYPES } from '../exported-related';\nimport type { GenericItemItemProps } from '../index.d';\nimport { FOOTER_DS_ID } from '../exported-related/constants';\n\nconst notFocuseableItems = [ITEM_TYPES.LEFT_NAV_ITEM_SEPARATOR, ITEM_TYPES.LEFT_NAV_ITEM_SECTION];\n\n// Walks the array of items\n// Drilldowns are tree-like structures\nconst walkItems = (items: GenericItemItemProps[], openedDrilldowns: string[], callback: (dsId: string) => void) => {\n items.forEach((item) => {\n if (typeof item.type === 'string') {\n // Out of the box item\n if (notFocuseableItems.includes(item.type)) return; // not focuseable\n\n callback(item.dsId);\n\n // If it's an opened uncontrolled drilldown\n if (item.type === ITEM_TYPES.LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN && openedDrilldowns.includes(item.dsId))\n walkItems(item.itemOpts?.items ?? [], openedDrilldowns, callback);\n\n // If it's an opened controlled drilldown\n if (item.type === ITEM_TYPES.LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN && item.itemOpts?.isOpened)\n walkItems(item.itemOpts?.items ?? [], openedDrilldowns, callback);\n } else {\n // Custom item\n if (!item.itemOpts?.focuseable) return; // not focuseable specified\n callback(item.dsId);\n }\n });\n};\n\nexport const useLeftNavItems = (props: {\n headerItem: GenericItemItemProps;\n bodyHeaderItem: GenericItemItemProps;\n items: GenericItemItemProps[];\n openedDrilldowns: string[];\n}): {\n visibleItems: string[];\n visibleItemsRefs: MutableRefObject<Record<string, RefObject<HTMLElement>>>;\n} => {\n const { headerItem, bodyHeaderItem, items: bodyItems, openedDrilldowns } = props;\n\n // Place the header and body header items into the array of items\n const items = useMemo(() => {\n const itemsArray: GenericItemItemProps[] = [...bodyItems];\n if (bodyHeaderItem) itemsArray.unshift(bodyHeaderItem);\n if (headerItem) itemsArray.unshift(headerItem);\n return itemsArray;\n }, [headerItem, bodyHeaderItem, bodyItems]);\n\n const visibleItemsRefs = useRef<Record<string, RefObject<HTMLElement>>>({});\n\n const visibleItems: string[] = useMemo(() => {\n const visibleItemsArray: string[] = [];\n walkItems(items, openedDrilldowns, (dsId: string) => {\n visibleItemsArray.push(dsId);\n });\n visibleItemsArray.push(FOOTER_DS_ID);\n return visibleItemsArray;\n }, [items, openedDrilldowns]);\n\n visibleItems.forEach((dsId) => {\n if (!(dsId in visibleItemsRefs.current)) visibleItemsRefs.current[dsId] = createRef();\n });\n\n return { visibleItems, visibleItemsRefs };\n};\n\nexport default useLeftNavItems;\n"],"names":["notFocuseableItems","ITEM_TYPES","LEFT_NAV_ITEM_SEPARATOR","LEFT_NAV_ITEM_SECTION","walkItems","items","openedDrilldowns","callback","forEach","item","type","includes","dsId","LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN","itemOpts","LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN","isOpened","focuseable","useLeftNavItems","props","headerItem","bodyHeaderItem","bodyItems","useMemo","itemsArray","unshift","visibleItemsRefs","useRef","visibleItems","visibleItemsArray","push","FOOTER_DS_ID","current","createRef"],"mappings":"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"}
1
+ {"version":3,"file":"useLeftNavItems.js","sources":["../../../src/configs/useLeftNavItems.tsx"],"sourcesContent":["/* eslint-disable complexity */\nimport { createRef, MutableRefObject, RefObject, useMemo, useRef } from 'react';\nimport { ITEM_TYPES } from '../exported-related';\nimport type { GenericItemItemProps } from '../index.d';\nimport { FOOTER_DS_ID } from '../exported-related/constants';\n\nconst notFocuseableItems = [ITEM_TYPES.LEFT_NAV_ITEM_SEPARATOR, ITEM_TYPES.LEFT_NAV_ITEM_SECTION];\n\n// Walks the array of items\n// Drilldowns are tree-like structures\nconst walkItems = (items: GenericItemItemProps[], openedDrilldowns: string[], callback: (dsId: string) => void) => {\n items.forEach((item) => {\n if (typeof item.type === 'string') {\n // Out of the box item\n if (notFocuseableItems.includes(item.type)) return; // not focuseable\n\n callback(item.dsId);\n\n // If it's an opened uncontrolled drilldown\n if (item.type === ITEM_TYPES.LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN && openedDrilldowns.includes(item.dsId))\n walkItems(item.itemOpts?.items ?? [], openedDrilldowns, callback);\n\n // If it's an opened controlled drilldown\n if (item.type === ITEM_TYPES.LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN && item.itemOpts?.isOpened)\n walkItems(item.itemOpts?.items ?? [], openedDrilldowns, callback);\n } else {\n // Custom item\n if (!item.itemOpts?.focuseable) return; // not focuseable specified\n callback(item.dsId);\n }\n });\n};\n\nexport const useLeftNavItems = (props: {\n headerItem: GenericItemItemProps;\n bodyHeaderItem: GenericItemItemProps;\n items: GenericItemItemProps[];\n openedDrilldowns: string[];\n}): {\n visibleItems: string[];\n visibleItemsRefs: MutableRefObject<Record<string, RefObject<HTMLElement>>>;\n} => {\n const { headerItem, bodyHeaderItem, items: bodyItems, openedDrilldowns } = props;\n\n // Place the header and body header items into the array of items\n const items = useMemo(() => {\n const itemsArray: GenericItemItemProps[] = [...bodyItems];\n if (bodyHeaderItem) itemsArray.unshift(bodyHeaderItem);\n if (headerItem) itemsArray.unshift(headerItem);\n return itemsArray;\n }, [headerItem, bodyHeaderItem, bodyItems]);\n\n const visibleItemsRefs = useRef<Record<string, RefObject<HTMLElement>>>({});\n\n const visibleItems: string[] = useMemo(() => {\n const visibleItemsArray: string[] = [];\n walkItems(items, openedDrilldowns, (dsId: string) => {\n visibleItemsArray.push(dsId);\n });\n visibleItemsArray.push(FOOTER_DS_ID);\n return visibleItemsArray;\n }, [items, openedDrilldowns]);\n\n visibleItems.forEach((dsId) => {\n if (!(dsId in visibleItemsRefs.current)) visibleItemsRefs.current[dsId] = createRef();\n });\n\n return { visibleItems, visibleItemsRefs };\n};\n\nexport default useLeftNavItems;\n"],"names":["notFocuseableItems","ITEM_TYPES","LEFT_NAV_ITEM_SEPARATOR","LEFT_NAV_ITEM_SECTION","walkItems","items","openedDrilldowns","callback","forEach","item","type","includes","dsId","LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN","itemOpts","LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN","isOpened","focuseable","useLeftNavItems","props","headerItem","bodyHeaderItem","bodyItems","useMemo","itemsArray","unshift","visibleItemsRefs","useRef","visibleItems","visibleItemsArray","push","FOOTER_DS_ID","current","createRef"],"mappings":";;;;;;;;;;;;;;;;;AAMA,IAAMA,kBAAkB,GAAG,CAACC,oCAAU,CAACC,uBAAZ,EAAqCD,oCAAU,CAACE,qBAAhD,CAA3B;AAGA;;AACA,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAACC,KAAD,EAAgCC,gBAAhC,EAA4DC,QAA5D,EAAiG;EACjHF,KAAK,CAACG,OAAN,CAAc,UAACC,IAAD,EAAU;IACtB,IAAI,OAAOA,IAAI,CAACC,IAAZ,KAAqB,QAAzB,EAAmC;MAAA;;;MAEjC,IAAIV,kBAAkB,CAACW,QAAnB,CAA4BF,IAAI,CAACC,IAAjC,CAAJ,EAA4C,OAFX;;MAIjCH,QAAQ,CAACE,IAAI,CAACG,IAAN,CAAR,CAJiC;;MAOjC,IAAIH,IAAI,CAACC,IAAL,KAAcT,oCAAU,CAACY,oCAAzB,IAAiEP,gBAAgB,CAACK,QAAjB,CAA0BF,IAAI,CAACG,IAA/B,CAArE,EACER,SAAS,2CAACK,IAAI,CAACK,QAAN,mDAAC,eAAeT,KAAhB,uEAAyB,EAAzB,EAA6BC,gBAA7B,EAA+CC,QAA/C,CAAT,CAR+B;;MAWjC,IAAIE,IAAI,CAACC,IAAL,KAAcT,oCAAU,CAACc,kCAAzB,uBAA+DN,IAAI,CAACK,QAApE,4CAA+D,gBAAeE,QAAlF,EACEZ,SAAS,6CAACK,IAAI,CAACK,QAAN,oDAAC,gBAAeT,KAAhB,yEAAyB,EAAzB,EAA6BC,gBAA7B,EAA+CC,QAA/C,CAAT;KAZJ,MAaO;MAAA;;;MAEL,IAAI,qBAACE,IAAI,CAACK,QAAN,4CAAC,gBAAeG,UAAhB,CAAJ,EAAgC,OAF3B;;MAGLV,QAAQ,CAACE,IAAI,CAACG,IAAN,CAAR;;GAjBJ;AAoBD,CArBD;;IAuBaM,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD,EAQ1B;EACH,IAAQC,UAAR,GAA2ED,KAA3E,CAAQC,UAAR;MAAoBC,cAApB,GAA2EF,KAA3E,CAAoBE,cAApB;MAA2CC,SAA3C,GAA2EH,KAA3E,CAAoCd,KAApC;MAAsDC,gBAAtD,GAA2Ea,KAA3E,CAAsDb,gBAAtD,CADG;;EAIH,IAAMD,KAAK,GAAGkB,aAAO,CAAC,YAAM;IAC1B,IAAMC,UAAkC,0CAAOF,SAAP,CAAxC;;IACA,IAAID,cAAJ,EAAoBG,UAAU,CAACC,OAAX,CAAmBJ,cAAnB;IACpB,IAAID,UAAJ,EAAgBI,UAAU,CAACC,OAAX,CAAmBL,UAAnB;IAChB,OAAOI,UAAP;GAJmB,EAKlB,CAACJ,UAAD,EAAaC,cAAb,EAA6BC,SAA7B,CALkB,CAArB;EAOA,IAAMI,gBAAgB,GAAGC,YAAM,CAAyC,EAAzC,CAA/B;EAEA,IAAMC,YAAsB,GAAGL,aAAO,CAAC,YAAM;IAC3C,IAAMM,iBAA2B,GAAG,EAApC;IACAzB,SAAS,CAACC,KAAD,EAAQC,gBAAR,EAA0B,UAACM,IAAD,EAAkB;MACnDiB,iBAAiB,CAACC,IAAlB,CAAuBlB,IAAvB;KADO,CAAT;IAGAiB,iBAAiB,CAACC,IAAlB,CAAuBC,sCAAvB;IACA,OAAOF,iBAAP;GANoC,EAOnC,CAACxB,KAAD,EAAQC,gBAAR,CAPmC,CAAtC;EASAsB,YAAY,CAACpB,OAAb,CAAqB,UAACI,IAAD,EAAU;IAC7B,IAAI,EAAEA,IAAI,IAAIc,gBAAgB,CAACM,OAA3B,CAAJ,EAAyCN,gBAAgB,CAACM,OAAjB,CAAyBpB,IAAzB,iBAAiCqB,eAAS,EAA1C;GAD3C;EAIA,OAAO;IAAEL,YAAY,EAAZA,YAAF;IAAgBF,gBAAgB,EAAhBA;GAAvB;AACD;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLeftNavSmoothExpand.js","sources":["../../../src/configs/useLeftNavSmoothExpand.tsx"],"sourcesContent":["import React from 'react';\nimport type { LeftNavProps } from '../index.d';\n\ninterface smoothExpandOptsT {\n expandedForAnimation: boolean;\n timeoutRef: React.MutableRefObject<NodeJS.Timeout>;\n setExpandedForAnimation: React.Dispatch<React.SetStateAction<boolean>>;\n}\nexport const useLeftNavSmoothExpand = (\n props: LeftNavProps,\n smoothExpandOpts: smoothExpandOptsT,\n): void => {\n const { expanded } = props;\n const {\n expandedForAnimation,\n timeoutRef,\n setExpandedForAnimation,\n } = smoothExpandOpts;\n\n React.useEffect(() => {\n // If expanded changes, we need to smoothly transition to the non-expanded state\n // so we need to wait for 350ms\n if (!expanded && expandedForAnimation) {\n clearTimeout(timeoutRef.current);\n timeoutRef.current = setTimeout(\n () => setExpandedForAnimation(false),\n 350,\n );\n } else if (expanded) setExpandedForAnimation(true);\n }, [expanded]);\n\n React.useEffect(() => () => clearTimeout(timeoutRef.current), []);\n};\n\nexport default useLeftNavSmoothExpand;\n"],"names":["useLeftNavSmoothExpand","props","smoothExpandOpts","expanded","expandedForAnimation","timeoutRef","setExpandedForAnimation","React","useEffect","clearTimeout","current","setTimeout"],"mappings":";;;;;;;;;;IAQaA,sBAAsB,GAAG,SAAzBA,sBAAyB,CACpCC,KADoC,EAEpCC,gBAFoC,EAG3B;AACT,MAAQC,QAAR,GAAqBF,KAArB,CAAQE,QAAR;AACA,MACEC,oBADF,GAIIF,gBAJJ,CACEE,oBADF;AAAA,MAEEC,UAFF,GAIIH,gBAJJ,CAEEG,UAFF;AAAA,MAGEC,uBAHF,GAIIJ,gBAJJ,CAGEI,uBAHF;AAMAC,EAAAA,yBAAK,CAACC,SAAN,CAAgB,YAAM;AACpB;AACA;AACA,QAAI,CAACL,QAAD,IAAaC,oBAAjB,EAAuC;AACrCK,MAAAA,YAAY,CAACJ,UAAU,CAACK,OAAZ,CAAZ;AACAL,MAAAA,UAAU,CAACK,OAAX,GAAqBC,UAAU,CAC7B;AAAA,eAAML,uBAAuB,CAAC,KAAD,CAA7B;AAAA,OAD6B,EAE7B,GAF6B,CAA/B;AAID,KAND,MAMO,IAAIH,QAAJ,EAAcG,uBAAuB,CAAC,IAAD,CAAvB;AACtB,GAVD,EAUG,CAACH,QAAD,CAVH;AAYAI,EAAAA,yBAAK,CAACC,SAAN,CAAgB;AAAA,WAAM;AAAA,aAAMC,YAAY,CAACJ,UAAU,CAACK,OAAZ,CAAlB;AAAA,KAAN;AAAA,GAAhB,EAA8D,EAA9D;AACD;;;;;"}
1
+ {"version":3,"file":"useLeftNavSmoothExpand.js","sources":["../../../src/configs/useLeftNavSmoothExpand.tsx"],"sourcesContent":["import React from 'react';\nimport type { LeftNavProps } from '../index.d';\n\ninterface smoothExpandOptsT {\n expandedForAnimation: boolean;\n timeoutRef: React.MutableRefObject<NodeJS.Timeout>;\n setExpandedForAnimation: React.Dispatch<React.SetStateAction<boolean>>;\n}\nexport const useLeftNavSmoothExpand = (\n props: LeftNavProps,\n smoothExpandOpts: smoothExpandOptsT,\n): void => {\n const { expanded } = props;\n const {\n expandedForAnimation,\n timeoutRef,\n setExpandedForAnimation,\n } = smoothExpandOpts;\n\n React.useEffect(() => {\n // If expanded changes, we need to smoothly transition to the non-expanded state\n // so we need to wait for 350ms\n if (!expanded && expandedForAnimation) {\n clearTimeout(timeoutRef.current);\n timeoutRef.current = setTimeout(\n () => setExpandedForAnimation(false),\n 350,\n );\n } else if (expanded) setExpandedForAnimation(true);\n }, [expanded]);\n\n React.useEffect(() => () => clearTimeout(timeoutRef.current), []);\n};\n\nexport default useLeftNavSmoothExpand;\n"],"names":["useLeftNavSmoothExpand","props","smoothExpandOpts","expanded","expandedForAnimation","timeoutRef","setExpandedForAnimation","React","useEffect","clearTimeout","current","setTimeout"],"mappings":";;;;;;;;;;IAQaA,sBAAsB,GAAG,SAAzBA,sBAAyB,CACpCC,KADoC,EAEpCC,gBAFoC,EAG3B;EACT,IAAQC,QAAR,GAAqBF,KAArB,CAAQE,QAAR;EACA,IACEC,oBADF,GAIIF,gBAJJ,CACEE,oBADF;MAEEC,UAFF,GAIIH,gBAJJ,CAEEG,UAFF;MAGEC,uBAHF,GAIIJ,gBAJJ,CAGEI,uBAHF;EAMAC,yBAAK,CAACC,SAAN,CAAgB,YAAM;;;IAGpB,IAAI,CAACL,QAAD,IAAaC,oBAAjB,EAAuC;MACrCK,YAAY,CAACJ,UAAU,CAACK,OAAZ,CAAZ;MACAL,UAAU,CAACK,OAAX,GAAqBC,UAAU,CAC7B;QAAA,OAAML,uBAAuB,CAAC,KAAD,CAA7B;OAD6B,EAE7B,GAF6B,CAA/B;KAFF,MAMO,IAAIH,QAAJ,EAAcG,uBAAuB,CAAC,IAAD,CAAvB;GATvB,EAUG,CAACH,QAAD,CAVH;EAYAI,yBAAK,CAACC,SAAN,CAAgB;IAAA,OAAM;MAAA,OAAMC,YAAY,CAACJ,UAAU,CAACK,OAAZ,CAAlB;KAAN;GAAhB,EAA8D,EAA9D;AACD;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/exported-related/ChevronItem/index.tsx"],"sourcesContent":["import React from 'react';\nimport { ChevronSmallRight } from '@elliemae/ds-icons';\n\nexport const ChevronItem = (props: unknown): JSX.Element => (\n <ChevronSmallRight size=\"m\" color={['brand-primary', 800]} {...props} />\n);\n\nexport default ChevronItem;\n"],"names":["ChevronItem","props","React","ChevronSmallRight"],"mappings":";;;;;;;;;;;;;IAGaA,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD;AAAA,sBACzBC,wCAACC,yBAAD;AAAmB,IAAA,IAAI,EAAC,GAAxB;AAA4B,IAAA,KAAK,EAAE,CAAC,eAAD,EAAkB,GAAlB;AAAnC,KAA+DF,KAA/D,EADyB;AAAA;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/exported-related/ChevronItem/index.tsx"],"sourcesContent":["import React from 'react';\nimport { ChevronSmallRight } from '@elliemae/ds-icons';\n\nexport const ChevronItem = (props: unknown): JSX.Element => (\n <ChevronSmallRight size=\"m\" color={['brand-primary', 800]} {...props} />\n);\n\nexport default ChevronItem;\n"],"names":["ChevronItem","props","React","ChevronSmallRight"],"mappings":";;;;;;;;;;;;;IAGaA,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD;EAAA,oBACzBC,wCAACC,yBAAD;IAAmB,IAAI,EAAC,GAAxB;IAA4B,KAAK,EAAE,CAAC,eAAD,EAAkB,GAAlB;KAA4BF,KAA/D,EADyB;AAAA;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/exported-related/Icon/index.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nconst AugmentedIcon = (\n Icon: React.ComponentType<{ color: unknown; tabIndex: number }>,\n) => styled(Icon)`\n cursor: pointer;\n\n outline: 0;\n :focus,\n :active {\n outline: 1px solid #1e79c2;\n }\n`;\n\nexport const Icon = (\n IconComponent: React.ComponentType<{ color: unknown; tabIndex: number }>,\n) => (props: unknown): JSX.Element => {\n const StyledComponent = AugmentedIcon(IconComponent);\n return (\n <StyledComponent color={['brand-primary', 800]} tabIndex={0} {...props} />\n );\n};\n"],"names":["AugmentedIcon","Icon","styled","IconComponent","props","StyledComponent","React"],"mappings":";;;;;;;;;;;;;;AAGA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CACpBC,IADoB;AAAA,SAEjBC,0BAAM,CAACD,IAAD,CAFW;AAAA;AAAA;AAAA,CAAtB;;IAYaA,IAAI,GAAG,SAAPA,IAAO,CAClBE,aADkB;AAAA,SAEf,UAACC,KAAD,EAAiC;AACpC,QAAMC,eAAe,GAAGL,aAAa,CAACG,aAAD,CAArC;AACA,wBACEG,wCAAC,eAAD;AAAiB,MAAA,KAAK,EAAE,CAAC,eAAD,EAAkB,GAAlB,CAAxB;AAAgD,MAAA,QAAQ,EAAE;AAA1D,OAAiEF,KAAjE,EADF;AAGD,GAPmB;AAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/exported-related/Icon/index.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\n\nconst AugmentedIcon = (\n Icon: React.ComponentType<{ color: unknown; tabIndex: number }>,\n) => styled(Icon)`\n cursor: pointer;\n\n outline: 0;\n :focus,\n :active {\n outline: 1px solid #1e79c2;\n }\n`;\n\nexport const Icon = (\n IconComponent: React.ComponentType<{ color: unknown; tabIndex: number }>,\n) => (props: unknown): JSX.Element => {\n const StyledComponent = AugmentedIcon(IconComponent);\n return (\n <StyledComponent color={['brand-primary', 800]} tabIndex={0} {...props} />\n );\n};\n"],"names":["AugmentedIcon","Icon","styled","IconComponent","props","StyledComponent","React"],"mappings":";;;;;;;;;;;;;;AAGA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CACpBC,IADoB;EAAA,OAEjBC,0BAAM,CAACD,IAAD,CAFW;IAAA;;AAAA,CAAtB;;IAYaA,IAAI,GAAG,SAAPA,IAAO,CAClBE,aADkB;EAAA,OAEf,UAACC,KAAD,EAAiC;IACpC,IAAMC,eAAe,GAAGL,aAAa,CAACG,aAAD,CAArC;IACA,oBACEG,wCAAC,eAAD;MAAiB,KAAK,EAAE,CAAC,eAAD,EAAkB,GAAlB,CAAxB;MAAgD,QAAQ,EAAE;OAAOF,KAAjE,EADF;GAJkB;AAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/exported-related/ItemRenderer/index.tsx"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-lines */\nimport React, { useContext, useMemo, useCallback } from 'react';\nimport Grid from '@elliemae/ds-grid';\nimport { StyledItemWrapper, StyledItem } from './styled';\n\nimport { ItemRendererT } from '../../index.d';\nimport { LeftNavContext } from '../../LeftNavigationContext';\nimport { usePropsWithDefaults } from './usePropsWithDefaults';\nimport { useKeyboardNavigation } from '../../hooks';\n\nexport const ItemRenderer = (props: ItemRendererT): JSX.Element => {\n const propsWithDefault = usePropsWithDefaults(props);\n const {\n item,\n item: {\n dsId,\n itemOpts: { selectable, focuseable, indent, ariaLabel, ariaRole, ariaLive, ariaExpanded, ariaDescribedBy },\n CollapsedComponent,\n },\n subitems,\n minHeight,\n paddingTop,\n onClick,\n shadowStyle,\n hasBorderBottom,\n borderBottomMr,\n children,\n } = propsWithDefault;\n\n const ctx = useContext(LeftNavContext);\n const {\n leftNavProps: { onItemClick, openedItem },\n expandedForAnimation,\n selectedParent,\n selectedItem,\n setSelectedItem,\n setFocusedItem,\n visibleItemsRefs,\n } = ctx;\n\n const opened = dsId === openedItem;\n\n const handleOnClick = useCallback(\n (e) => {\n if (onClick) onClick(); // used by uncontrolled drilldowns\n onItemClick(item, e);\n if (selectable) setSelectedItem(item.dsId);\n },\n [onItemClick, item, setSelectedItem, selectable, onClick],\n );\n\n const handleFocus = useCallback(() => {\n if (focuseable) setFocusedItem(dsId);\n }, [dsId, setFocusedItem, focuseable]);\n\n const onKeyDown = useKeyboardNavigation({\n item,\n onClick: handleOnClick,\n });\n\n const cols = useMemo(() => (expandedForAnimation ? ['auto', '1fr', 'auto'] : ['38px']), [expandedForAnimation]);\n const isSelected = useMemo(() => selectedItem === dsId, [selectedItem, dsId]);\n\n if (!expandedForAnimation && !CollapsedComponent) {\n return null;\n }\n\n return (\n <>\n <StyledItemWrapper shadowStyle={shadowStyle(opened, item.type)} data-testid=\"leftnav-item-wrapper\">\n <StyledItem\n ref={visibleItemsRefs.current[dsId]}\n pt={paddingTop}\n pl={indent === undefined ? 'xxxs' : `${indent}px`}\n minHeight={minHeight}\n shadowStyle={shadowStyle(opened, item.type)}\n alignItems=\"flex-start\"\n cols={cols}\n onClick={!opened ? handleOnClick : () => null}\n onKeyDown={onKeyDown}\n selectable={selectable}\n selected={isSelected}\n selectedParent={selectedParent === dsId}\n opened={opened}\n onFocus={handleFocus}\n data-testid=\"leftnav-item-container\"\n tabIndex={focuseable ? 0 : -1}\n aria-describedby={ariaDescribedBy}\n aria-expanded={ariaExpanded}\n role={ariaRole}\n data-selected={isSelected}\n data-selectedparent={selectedParent===dsId}\n aria-label={ariaLabel}\n aria-hidden={!focuseable}\n aria-live={ariaLive}\n >\n {!expandedForAnimation ? (\n <Grid data-testid=\"leftnav-leftcomponent\" justifyContent=\"center\">\n <CollapsedComponent item={item} ctx={ctx} />\n </Grid>\n ) : (\n children\n )}\n </StyledItem>\n {hasBorderBottom && (\n <div\n style={{\n marginLeft: opened ? '16px' : '0px',\n marginRight: borderBottomMr,\n height: '1px',\n width: `calc(100% - ${borderBottomMr} - ${opened ? '16px' : '0px'})`,\n backgroundColor: '#E0E3E8',\n }}\n />\n )}\n </StyledItemWrapper>\n {subitems}\n </>\n );\n};\n"],"names":["ItemRenderer","props","propsWithDefault","usePropsWithDefaults","item","dsId","itemOpts","selectable","focuseable","indent","ariaLabel","ariaRole","ariaLive","ariaExpanded","ariaDescribedBy","CollapsedComponent","subitems","minHeight","paddingTop","onClick","shadowStyle","hasBorderBottom","borderBottomMr","children","ctx","useContext","LeftNavContext","leftNavProps","onItemClick","openedItem","expandedForAnimation","selectedParent","selectedItem","setSelectedItem","setFocusedItem","visibleItemsRefs","opened","handleOnClick","useCallback","e","handleFocus","onKeyDown","useKeyboardNavigation","cols","useMemo","isSelected","React","StyledItemWrapper","type","StyledItem","current","undefined","Grid","marginLeft","marginRight","height","width","backgroundColor"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/exported-related/ItemRenderer/index.tsx"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-lines */\nimport React, { useContext, useMemo, useCallback } from 'react';\nimport Grid from '@elliemae/ds-grid';\nimport { StyledItemWrapper, StyledItem } from './styled';\n\nimport { ItemRendererT } from '../../index.d';\nimport { LeftNavContext } from '../../LeftNavigationContext';\nimport { usePropsWithDefaults } from './usePropsWithDefaults';\nimport { useKeyboardNavigation } from '../../hooks';\n\nexport const ItemRenderer = (props: ItemRendererT): JSX.Element => {\n const propsWithDefault = usePropsWithDefaults(props);\n const {\n item,\n item: {\n dsId,\n itemOpts: { selectable, focuseable, indent, ariaLabel, ariaRole, ariaLive, ariaExpanded, ariaDescribedBy },\n CollapsedComponent,\n },\n subitems,\n minHeight,\n paddingTop,\n onClick,\n shadowStyle,\n hasBorderBottom,\n borderBottomMr,\n children,\n } = propsWithDefault;\n\n const ctx = useContext(LeftNavContext);\n const {\n leftNavProps: { onItemClick, openedItem },\n expandedForAnimation,\n selectedParent,\n selectedItem,\n setSelectedItem,\n setFocusedItem,\n visibleItemsRefs,\n } = ctx;\n\n const opened = dsId === openedItem;\n\n const handleOnClick = useCallback(\n (e) => {\n if (onClick) onClick(); // used by uncontrolled drilldowns\n onItemClick(item, e);\n if (selectable) setSelectedItem(item.dsId);\n },\n [onItemClick, item, setSelectedItem, selectable, onClick],\n );\n\n const handleFocus = useCallback(() => {\n if (focuseable) setFocusedItem(dsId);\n }, [dsId, setFocusedItem, focuseable]);\n\n const onKeyDown = useKeyboardNavigation({\n item,\n onClick: handleOnClick,\n });\n\n const cols = useMemo(() => (expandedForAnimation ? ['auto', '1fr', 'auto'] : ['38px']), [expandedForAnimation]);\n const isSelected = useMemo(() => selectedItem === dsId, [selectedItem, dsId]);\n\n if (!expandedForAnimation && !CollapsedComponent) {\n return null;\n }\n\n return (\n <>\n <StyledItemWrapper shadowStyle={shadowStyle(opened, item.type)} data-testid=\"leftnav-item-wrapper\">\n <StyledItem\n ref={visibleItemsRefs.current[dsId]}\n pt={paddingTop}\n pl={indent === undefined ? 'xxxs' : `${indent}px`}\n minHeight={minHeight}\n shadowStyle={shadowStyle(opened, item.type)}\n alignItems=\"flex-start\"\n cols={cols}\n onClick={!opened ? handleOnClick : () => null}\n onKeyDown={onKeyDown}\n selectable={selectable}\n selected={isSelected}\n selectedParent={selectedParent === dsId}\n opened={opened}\n onFocus={handleFocus}\n data-testid=\"leftnav-item-container\"\n tabIndex={focuseable ? 0 : -1}\n aria-describedby={ariaDescribedBy}\n aria-expanded={ariaExpanded}\n role={ariaRole}\n data-selected={isSelected}\n data-selectedparent={selectedParent===dsId}\n aria-label={ariaLabel}\n aria-hidden={!focuseable}\n aria-live={ariaLive}\n >\n {!expandedForAnimation ? (\n <Grid data-testid=\"leftnav-leftcomponent\" justifyContent=\"center\">\n <CollapsedComponent item={item} ctx={ctx} />\n </Grid>\n ) : (\n children\n )}\n </StyledItem>\n {hasBorderBottom && (\n <div\n style={{\n marginLeft: opened ? '16px' : '0px',\n marginRight: borderBottomMr,\n height: '1px',\n width: `calc(100% - ${borderBottomMr} - ${opened ? '16px' : '0px'})`,\n backgroundColor: '#E0E3E8',\n }}\n />\n )}\n </StyledItemWrapper>\n {subitems}\n </>\n );\n};\n"],"names":["ItemRenderer","props","propsWithDefault","usePropsWithDefaults","item","dsId","itemOpts","selectable","focuseable","indent","ariaLabel","ariaRole","ariaLive","ariaExpanded","ariaDescribedBy","CollapsedComponent","subitems","minHeight","paddingTop","onClick","shadowStyle","hasBorderBottom","borderBottomMr","children","ctx","useContext","LeftNavContext","leftNavProps","onItemClick","openedItem","expandedForAnimation","selectedParent","selectedItem","setSelectedItem","setFocusedItem","visibleItemsRefs","opened","handleOnClick","useCallback","e","handleFocus","onKeyDown","useKeyboardNavigation","cols","useMemo","isSelected","React","StyledItemWrapper","type","StyledItem","current","undefined","Grid","marginLeft","marginRight","height","width","backgroundColor"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","sources":["../../../../src/exported-related/ItemRenderer/styled.tsx"],"sourcesContent":["/* eslint-disable indent */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport Grid from '@elliemae/ds-grid';\nimport styled from 'styled-components';\n\ninterface ItemProps {\n selected: boolean;\n selectable: boolean;\n opened: boolean;\n theme: any;\n shadowStyle: (theme: any) => string;\n}\n\nexport const borderOutside = (color, weight = 2): string => `&:before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: ${weight}px solid ${color};\n pointer-events: none;\n}`;\n\nexport const StyledItemWrapper = styled(Grid)<{\n shadowStyle: (theme: any) => string;\n}>`\n position: relative;\n ${(props) => props.shadowStyle(props.theme)}\n`;\n\nconst getItemBackground = ({ selectable, opened, selected, theme }: ItemProps) => {\n if (!selectable) return 'white';\n if (selected && !opened) return theme.colors.brand[200];\n return theme.colors.neutral['000'];\n};\n\nconst getItemHoverBackground = ({ selectable, opened, selected, theme }: ItemProps) => {\n if (!selectable) return 'white';\n if (selected && !opened) return theme.colors.brand[200];\n return theme.colors.brand['200'];\n};\n\nexport const StyledItem = styled(Grid)<{ minHeight: string } & ItemProps>`\n cursor: ${(props) => (props.selectable && !props.opened ? 'pointer' : 'auto')};\n min-height: ${(props) => props.minHeight};\n\n background: ${getItemBackground};\n\n ${(props) => (props.selected && !props.opened ? borderOutside(props.theme.colors.brand[500], 1) : '')}\n\n :hover {\n background: ${getItemHoverBackground};\n }\n\n :active {\n background: ${({ selectable, theme }) => (selectable ? theme.colors.brand[200] : 'white')};\n }\n\n ${(props) => props.shadowStyle(props.theme)};\n\n outline: none;\n\n ${(props) =>\n props.tabIndex !== -1\n ? `:focus {\n ${borderOutside(props.theme.colors.brand[700])}\n }`\n : ''}\n`;\n"],"names":["borderOutside","color","weight","StyledItemWrapper","styled","Grid","props","shadowStyle","theme","getItemBackground","selectable","opened","selected","colors","brand","neutral","getItemHoverBackground","StyledItem","minHeight","tabIndex"],"mappings":";;;;;;;;;;;;AAAA;IAaaA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,KAAD;AAAA,MAAQC,MAAR,uEAAiB,CAAjB;AAAA,kIAOjBA,MAPiB,sBAOCD,KAPD;AAAA;IAWhBE,iBAAiB,gBAAGC,0BAAM,CAACC,wBAAD,CAAT;AAAA;AAAA,+BAI1B,UAACC,KAAD;AAAA,SAAWA,KAAK,CAACC,WAAN,CAAkBD,KAAK,CAACE,KAAxB,CAAX;AAAA,CAJ0B;;AAO9B,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,OAAwD;AAAA,MAArDC,UAAqD,QAArDA,UAAqD;AAAA,MAAzCC,MAAyC,QAAzCA,MAAyC;AAAA,MAAjCC,QAAiC,QAAjCA,QAAiC;AAAA,MAAvBJ,KAAuB,QAAvBA,KAAuB;AAChF,MAAI,CAACE,UAAL,EAAiB,OAAO,OAAP;AACjB,MAAIE,QAAQ,IAAI,CAACD,MAAjB,EAAyB,OAAOH,KAAK,CAACK,MAAN,CAAaC,KAAb,CAAmB,GAAnB,CAAP;AACzB,SAAON,KAAK,CAACK,MAAN,CAAaE,OAAb,CAAqB,KAArB,CAAP;AACD,CAJD;;AAMA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,QAAwD;AAAA,MAArDN,UAAqD,SAArDA,UAAqD;AAAA,MAAzCC,MAAyC,SAAzCA,MAAyC;AAAA,MAAjCC,QAAiC,SAAjCA,QAAiC;AAAA,MAAvBJ,KAAuB,SAAvBA,KAAuB;AACrF,MAAI,CAACE,UAAL,EAAiB,OAAO,OAAP;AACjB,MAAIE,QAAQ,IAAI,CAACD,MAAjB,EAAyB,OAAOH,KAAK,CAACK,MAAN,CAAaC,KAAb,CAAmB,GAAnB,CAAP;AACzB,SAAON,KAAK,CAACK,MAAN,CAAaC,KAAb,CAAmB,KAAnB,CAAP;AACD,CAJD;;IAMaG,UAAU,gBAAGb,0BAAM,CAACC,wBAAD,CAAT;AAAA;AAAA,gIACX,UAACC,KAAD;AAAA,SAAYA,KAAK,CAACI,UAAN,IAAoB,CAACJ,KAAK,CAACK,MAA3B,GAAoC,SAApC,GAAgD,MAA5D;AAAA,CADW,EAEP,UAACL,KAAD;AAAA,SAAWA,KAAK,CAACY,SAAjB;AAAA,CAFO,EAIPT,iBAJO,EAMnB,UAACH,KAAD;AAAA,SAAYA,KAAK,CAACM,QAAN,IAAkB,CAACN,KAAK,CAACK,MAAzB,GAAkCX,aAAa,CAACM,KAAK,CAACE,KAAN,CAAYK,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAAD,EAAgC,CAAhC,CAA/C,GAAoF,EAAhG;AAAA,CANmB,EASLE,sBATK,EAaL;AAAA,MAAGN,UAAH,SAAGA,UAAH;AAAA,MAAeF,KAAf,SAAeA,KAAf;AAAA,SAA4BE,UAAU,GAAGF,KAAK,CAACK,MAAN,CAAaC,KAAb,CAAmB,GAAnB,CAAH,GAA6B,OAAnE;AAAA,CAbK,EAgBnB,UAACR,KAAD;AAAA,SAAWA,KAAK,CAACC,WAAN,CAAkBD,KAAK,CAACE,KAAxB,CAAX;AAAA,CAhBmB,EAoBnB,UAACF,KAAD;AAAA,SACAA,KAAK,CAACa,QAAN,KAAmB,CAAC,CAApB,2BAEEnB,aAAa,CAACM,KAAK,CAACE,KAAN,CAAYK,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAAD,CAFf,mBAII,EALJ;AAAA,CApBmB;;;;;;"}
1
+ {"version":3,"file":"styled.js","sources":["../../../../src/exported-related/ItemRenderer/styled.tsx"],"sourcesContent":["/* eslint-disable indent */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport Grid from '@elliemae/ds-grid';\nimport styled from 'styled-components';\n\ninterface ItemProps {\n selected: boolean;\n selectable: boolean;\n opened: boolean;\n theme: any;\n shadowStyle: (theme: any) => string;\n}\n\nexport const borderOutside = (color, weight = 2): string => `&:before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n border: ${weight}px solid ${color};\n pointer-events: none;\n}`;\n\nexport const StyledItemWrapper = styled(Grid)<{\n shadowStyle: (theme: any) => string;\n}>`\n position: relative;\n ${(props) => props.shadowStyle(props.theme)}\n`;\n\nconst getItemBackground = ({ selectable, opened, selected, theme }: ItemProps) => {\n if (!selectable) return 'white';\n if (selected && !opened) return theme.colors.brand[200];\n return theme.colors.neutral['000'];\n};\n\nconst getItemHoverBackground = ({ selectable, opened, selected, theme }: ItemProps) => {\n if (!selectable) return 'white';\n if (selected && !opened) return theme.colors.brand[200];\n return theme.colors.brand['200'];\n};\n\nexport const StyledItem = styled(Grid)<{ minHeight: string } & ItemProps>`\n cursor: ${(props) => (props.selectable && !props.opened ? 'pointer' : 'auto')};\n min-height: ${(props) => props.minHeight};\n\n background: ${getItemBackground};\n\n ${(props) => (props.selected && !props.opened ? borderOutside(props.theme.colors.brand[500], 1) : '')}\n\n :hover {\n background: ${getItemHoverBackground};\n }\n\n :active {\n background: ${({ selectable, theme }) => (selectable ? theme.colors.brand[200] : 'white')};\n }\n\n ${(props) => props.shadowStyle(props.theme)};\n\n outline: none;\n\n ${(props) =>\n props.tabIndex !== -1\n ? `:focus {\n ${borderOutside(props.theme.colors.brand[700])}\n }`\n : ''}\n`;\n"],"names":["borderOutside","color","weight","StyledItemWrapper","styled","Grid","props","shadowStyle","theme","getItemBackground","selectable","opened","selected","colors","brand","neutral","getItemHoverBackground","StyledItem","minHeight","tabIndex"],"mappings":";;;;;;;;;;;;AAAA;IAaaA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,KAAD;EAAA,IAAQC,MAAR,uEAAiB,CAAjB;EAAA,gIAOjBA,MAPiB,sBAOCD,KAPD;AAAA;IAWhBE,iBAAiB,gBAAGC,0BAAM,CAACC,wBAAD,CAAT;EAAA;AAAA,+BAI1B,UAACC,KAAD;EAAA,OAAWA,KAAK,CAACC,WAAN,CAAkBD,KAAK,CAACE,KAAxB,CAAX;AAAA,CAJ0B;;AAO9B,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,OAAwD;EAAA,IAArDC,UAAqD,QAArDA,UAAqD;MAAzCC,MAAyC,QAAzCA,MAAyC;MAAjCC,QAAiC,QAAjCA,QAAiC;MAAvBJ,KAAuB,QAAvBA,KAAuB;EAChF,IAAI,CAACE,UAAL,EAAiB,OAAO,OAAP;EACjB,IAAIE,QAAQ,IAAI,CAACD,MAAjB,EAAyB,OAAOH,KAAK,CAACK,MAAN,CAAaC,KAAb,CAAmB,GAAnB,CAAP;EACzB,OAAON,KAAK,CAACK,MAAN,CAAaE,OAAb,CAAqB,KAArB,CAAP;AACD,CAJD;;AAMA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,QAAwD;EAAA,IAArDN,UAAqD,SAArDA,UAAqD;MAAzCC,MAAyC,SAAzCA,MAAyC;MAAjCC,QAAiC,SAAjCA,QAAiC;MAAvBJ,KAAuB,SAAvBA,KAAuB;EACrF,IAAI,CAACE,UAAL,EAAiB,OAAO,OAAP;EACjB,IAAIE,QAAQ,IAAI,CAACD,MAAjB,EAAyB,OAAOH,KAAK,CAACK,MAAN,CAAaC,KAAb,CAAmB,GAAnB,CAAP;EACzB,OAAON,KAAK,CAACK,MAAN,CAAaC,KAAb,CAAmB,KAAnB,CAAP;AACD,CAJD;;IAMaG,UAAU,gBAAGb,0BAAM,CAACC,wBAAD,CAAT;EAAA;AAAA,gIACX,UAACC,KAAD;EAAA,OAAYA,KAAK,CAACI,UAAN,IAAoB,CAACJ,KAAK,CAACK,MAA3B,GAAoC,SAApC,GAAgD,MAA5D;AAAA,CADW,EAEP,UAACL,KAAD;EAAA,OAAWA,KAAK,CAACY,SAAjB;AAAA,CAFO,EAIPT,iBAJO,EAMnB,UAACH,KAAD;EAAA,OAAYA,KAAK,CAACM,QAAN,IAAkB,CAACN,KAAK,CAACK,MAAzB,GAAkCX,aAAa,CAACM,KAAK,CAACE,KAAN,CAAYK,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAAD,EAAgC,CAAhC,CAA/C,GAAoF,EAAhG;AAAA,CANmB,EASLE,sBATK,EAaL;EAAA,IAAGN,UAAH,SAAGA,UAAH;MAAeF,KAAf,SAAeA,KAAf;EAAA,OAA4BE,UAAU,GAAGF,KAAK,CAACK,MAAN,CAAaC,KAAb,CAAmB,GAAnB,CAAH,GAA6B,OAAnE;AAAA,CAbK,EAgBnB,UAACR,KAAD;EAAA,OAAWA,KAAK,CAACC,WAAN,CAAkBD,KAAK,CAACE,KAAxB,CAAX;AAAA,CAhBmB,EAoBnB,UAACF,KAAD;EAAA,OACAA,KAAK,CAACa,QAAN,KAAmB,CAAC,CAApB,2BAEEnB,aAAa,CAACM,KAAK,CAACE,KAAN,CAAYK,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAAD,CAFf,mBAII,EALJ;AAAA,CApBmB;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePropsWithDefaults.js","sources":["../../../../src/exported-related/ItemRenderer/usePropsWithDefaults.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { itemOptsT, ItemRendererT } from '../../index.d';\n\nconst itemDefaultProps: itemOptsT = {\n label: '',\n labelOverflow: 'truncate',\n selectable: true,\n focuseable: true,\n openable: false,\n closable: false,\n ariaLabel: '',\n ariaRole: 'menuitem',\n ariaLive: 'off',\n ariaExpanded: undefined,\n ariaDescribedBy: undefined,\n};\n\nconst itemWithoutShadows = ['ds-left-nav-item-header', 'ds-left-nav-item-link', 'ds-left-nav-item-submenu'];\n\n// Make use Item props with defaults\nexport const usePropsWithDefaults = (props: ItemRendererT): ItemRendererT => {\n const propsWithDefault = useMemo(() => {\n const itemWithDefaults = {\n CollapsedComponent: () => null,\n ...props.item,\n itemOpts: { ...itemDefaultProps, ...props.item.itemOpts },\n };\n return {\n minHeight: '48px',\n paddingTop: '12px',\n subitems: [],\n shadowStyle: (opened: boolean, type: string) => (theme: any) =>\n `box-shadow: ${\n opened || !itemWithoutShadows.includes(type) ? 'inset 4px 0 0 0 #52A6EC' : 'inset 4px 0 0 0 white'\n }`,\n hasBorderBottom: false,\n borderBottomMr: '0px',\n ...props,\n item: itemWithDefaults,\n };\n }, [props]);\n\n return propsWithDefault;\n};\n"],"names":["itemDefaultProps","label","labelOverflow","selectable","focuseable","openable","closable","ariaLabel","ariaRole","ariaLive","ariaExpanded","undefined","ariaDescribedBy","itemWithoutShadows","usePropsWithDefaults","props","propsWithDefault","useMemo","itemWithDefaults","CollapsedComponent","item","itemOpts","minHeight","paddingTop","subitems","shadowStyle","opened","type","theme","includes","hasBorderBottom","borderBottomMr"],"mappings":";;;;;;;;;;;;;;AAGA,IAAMA,gBAA2B,GAAG;AAClCC,EAAAA,KAAK,EAAE,EAD2B;AAElCC,EAAAA,aAAa,EAAE,UAFmB;AAGlCC,EAAAA,UAAU,EAAE,IAHsB;AAIlCC,EAAAA,UAAU,EAAE,IAJsB;AAKlCC,EAAAA,QAAQ,EAAE,KALwB;AAMlCC,EAAAA,QAAQ,EAAE,KANwB;AAOlCC,EAAAA,SAAS,EAAE,EAPuB;AAQlCC,EAAAA,QAAQ,EAAE,UARwB;AASlCC,EAAAA,QAAQ,EAAE,KATwB;AAUlCC,EAAAA,YAAY,EAAEC,SAVoB;AAWlCC,EAAAA,eAAe,EAAED;AAXiB,CAApC;AAcA,IAAME,kBAAkB,GAAG,CAAC,yBAAD,EAA4B,uBAA5B,EAAqD,0BAArD,CAA3B;;IAGaC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,KAAD,EAAyC;AAC3E,MAAMC,gBAAgB,GAAGC,aAAO,CAAC,YAAM;AACrC,QAAMC,gBAAgB;AACpBC,MAAAA,kBAAkB,EAAE;AAAA,eAAM,IAAN;AAAA;AADA,OAEjBJ,KAAK,CAACK,IAFW;AAGpBC,MAAAA,QAAQ,kCAAOrB,gBAAP,GAA4Be,KAAK,CAACK,IAAN,CAAWC,QAAvC;AAHY,MAAtB;;AAKA;AACEC,MAAAA,SAAS,EAAE,MADb;AAEEC,MAAAA,UAAU,EAAE,MAFd;AAGEC,MAAAA,QAAQ,EAAE,EAHZ;AAIEC,MAAAA,WAAW,EAAE,qBAACC,MAAD,EAAkBC,IAAlB;AAAA,eAAmC,UAACC,KAAD;AAAA,uCAE5CF,MAAM,IAAI,CAACb,kBAAkB,CAACgB,QAAnB,CAA4BF,IAA5B,CAAX,GAA+C,yBAA/C,GAA2E,uBAF/B;AAAA,SAAnC;AAAA,OAJf;AAQEG,MAAAA,eAAe,EAAE,KARnB;AASEC,MAAAA,cAAc,EAAE;AATlB,OAUKhB,KAVL;AAWEK,MAAAA,IAAI,EAAEF;AAXR;AAaD,GAnB+B,EAmB7B,CAACH,KAAD,CAnB6B,CAAhC;AAqBA,SAAOC,gBAAP;AACD;;;;"}
1
+ {"version":3,"file":"usePropsWithDefaults.js","sources":["../../../../src/exported-related/ItemRenderer/usePropsWithDefaults.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { itemOptsT, ItemRendererT } from '../../index.d';\n\nconst itemDefaultProps: itemOptsT = {\n label: '',\n labelOverflow: 'truncate',\n selectable: true,\n focuseable: true,\n openable: false,\n closable: false,\n ariaLabel: '',\n ariaRole: 'menuitem',\n ariaLive: 'off',\n ariaExpanded: undefined,\n ariaDescribedBy: undefined,\n};\n\nconst itemWithoutShadows = ['ds-left-nav-item-header', 'ds-left-nav-item-link', 'ds-left-nav-item-submenu'];\n\n// Make use Item props with defaults\nexport const usePropsWithDefaults = (props: ItemRendererT): ItemRendererT => {\n const propsWithDefault = useMemo(() => {\n const itemWithDefaults = {\n CollapsedComponent: () => null,\n ...props.item,\n itemOpts: { ...itemDefaultProps, ...props.item.itemOpts },\n };\n return {\n minHeight: '48px',\n paddingTop: '12px',\n subitems: [],\n shadowStyle: (opened: boolean, type: string) => (theme: any) =>\n `box-shadow: ${\n opened || !itemWithoutShadows.includes(type) ? 'inset 4px 0 0 0 #52A6EC' : 'inset 4px 0 0 0 white'\n }`,\n hasBorderBottom: false,\n borderBottomMr: '0px',\n ...props,\n item: itemWithDefaults,\n };\n }, [props]);\n\n return propsWithDefault;\n};\n"],"names":["itemDefaultProps","label","labelOverflow","selectable","focuseable","openable","closable","ariaLabel","ariaRole","ariaLive","ariaExpanded","undefined","ariaDescribedBy","itemWithoutShadows","usePropsWithDefaults","props","propsWithDefault","useMemo","itemWithDefaults","CollapsedComponent","item","itemOpts","minHeight","paddingTop","subitems","shadowStyle","opened","type","theme","includes","hasBorderBottom","borderBottomMr"],"mappings":";;;;;;;;;;;;;;AAGA,IAAMA,gBAA2B,GAAG;EAClCC,KAAK,EAAE,EAD2B;EAElCC,aAAa,EAAE,UAFmB;EAGlCC,UAAU,EAAE,IAHsB;EAIlCC,UAAU,EAAE,IAJsB;EAKlCC,QAAQ,EAAE,KALwB;EAMlCC,QAAQ,EAAE,KANwB;EAOlCC,SAAS,EAAE,EAPuB;EAQlCC,QAAQ,EAAE,UARwB;EASlCC,QAAQ,EAAE,KATwB;EAUlCC,YAAY,EAAEC,SAVoB;EAWlCC,eAAe,EAAED;AAXiB,CAApC;AAcA,IAAME,kBAAkB,GAAG,CAAC,yBAAD,EAA4B,uBAA5B,EAAqD,0BAArD,CAA3B;;IAGaC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,KAAD,EAAyC;EAC3E,IAAMC,gBAAgB,GAAGC,aAAO,CAAC,YAAM;IACrC,IAAMC,gBAAgB;MACpBC,kBAAkB,EAAE;QAAA,OAAM,IAAN;;OACjBJ,KAAK,CAACK,IAFW;MAGpBC,QAAQ,kCAAOrB,gBAAP,GAA4Be,KAAK,CAACK,IAAN,CAAWC,QAAvC;MAHV;;IAKA;MACEC,SAAS,EAAE,MADb;MAEEC,UAAU,EAAE,MAFd;MAGEC,QAAQ,EAAE,EAHZ;MAIEC,WAAW,EAAE,qBAACC,MAAD,EAAkBC,IAAlB;QAAA,OAAmC,UAACC,KAAD;UAAA,6BAE5CF,MAAM,IAAI,CAACb,kBAAkB,CAACgB,QAAnB,CAA4BF,IAA5B,CAAX,GAA+C,yBAA/C,GAA2E,uBAF/B;SAAnC;OAJf;MAQEG,eAAe,EAAE,KARnB;MASEC,cAAc,EAAE;OACbhB,KAVL;MAWEK,IAAI,EAAEF;;GAjBsB,EAmB7B,CAACH,KAAD,CAnB6B,CAAhC;EAqBA,OAAOC,gBAAP;AACD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/exported-related/Notifications/index.tsx"],"sourcesContent":["import React from 'react';\nimport {\n AlertsSmallFill,\n Notifications as InternalNotifications,\n ExceptionsSmallFill,\n MessagesSmallFill,\n} from '@elliemae/ds-icons';\nimport styled from 'styled-components';\nimport Grid from '@elliemae/ds-grid';\n\nconst StyledIcon = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n`;\n\ntype NotificationsProps = {\n exceptions?: boolean;\n alerts?: boolean;\n messages?: boolean;\n};\n\nexport const Notifications = ({\n exceptions = false,\n alerts = false,\n messages = false,\n}: NotificationsProps): JSX.Element => (\n <StyledIcon>\n <InternalNotifications size=\"m\" color={['brand-primary', 800]} data-testid=\"left-nav-notifications-icon\" />\n {(exceptions || alerts || messages) && (\n <Grid cols={['1fr', '1fr', '1fr']} gutter=\"xxxs\" mt=\"2px\">\n <Grid width=\"6px\" height=\"6px\" data-testid=\"left-nav-exceptions-icon\">\n {exceptions && <ExceptionsSmallFill width=\"6px\" height=\"6px\" color={['warning', 900]} />}\n </Grid>\n <Grid width=\"6px\" height=\"6px\" data-testid=\"left-nav-alerts-icon\">\n {alerts && <AlertsSmallFill width=\"6px\" height=\"6px\" color={['danger', 900]} />}\n </Grid>\n <Grid width=\"6px\" height=\"6px\" data-testid=\"left-nav-messages-icon\">\n {messages && <MessagesSmallFill width=\"6px\" height=\"6px\" color={['success', 900]} />}\n </Grid>\n </Grid>\n )}\n </StyledIcon>\n);\n\nexport default Notifications;\n"],"names":["StyledIcon","styled","div","Notifications","exceptions","alerts","messages","React","InternalNotifications","Grid","ExceptionsSmallFill","AlertsSmallFill","MessagesSmallFill"],"mappings":";;;;;;;;;;;;;;;AAUA,IAAMA,UAAU,gBAAGC,0BAAM,CAACC,GAAV;AAAA;AAAA,8DAAhB;IAYaC,aAAa,GAAG,SAAhBA,aAAgB;AAAA,6BAC3BC,UAD2B;AAAA,MAC3BA,UAD2B,gCACd,KADc;AAAA,yBAE3BC,MAF2B;AAAA,MAE3BA,MAF2B,4BAElB,KAFkB;AAAA,2BAG3BC,QAH2B;AAAA,MAG3BA,QAH2B,8BAGhB,KAHgB;AAAA,sBAK3BC,wCAAC,UAAD,qBACEA,wCAACC,qBAAD;AAAuB,IAAA,IAAI,EAAC,GAA5B;AAAgC,IAAA,KAAK,EAAE,CAAC,eAAD,EAAkB,GAAlB,CAAvC;AAA+D,mBAAY;AAA3E,IADF,EAEG,CAACJ,UAAU,IAAIC,MAAd,IAAwBC,QAAzB,kBACCC,wCAACE,wBAAD;AAAM,IAAA,IAAI,EAAE,CAAC,KAAD,EAAQ,KAAR,EAAe,KAAf,CAAZ;AAAmC,IAAA,MAAM,EAAC,MAA1C;AAAiD,IAAA,EAAE,EAAC;AAApD,kBACEF,wCAACE,wBAAD;AAAM,IAAA,KAAK,EAAC,KAAZ;AAAkB,IAAA,MAAM,EAAC,KAAzB;AAA+B,mBAAY;AAA3C,KACGL,UAAU,iBAAIG,wCAACG,2BAAD;AAAqB,IAAA,KAAK,EAAC,KAA3B;AAAiC,IAAA,MAAM,EAAC,KAAxC;AAA8C,IAAA,KAAK,EAAE,CAAC,SAAD,EAAY,GAAZ;AAArD,IADjB,CADF,eAIEH,wCAACE,wBAAD;AAAM,IAAA,KAAK,EAAC,KAAZ;AAAkB,IAAA,MAAM,EAAC,KAAzB;AAA+B,mBAAY;AAA3C,KACGJ,MAAM,iBAAIE,wCAACI,uBAAD;AAAiB,IAAA,KAAK,EAAC,KAAvB;AAA6B,IAAA,MAAM,EAAC,KAApC;AAA0C,IAAA,KAAK,EAAE,CAAC,QAAD,EAAW,GAAX;AAAjD,IADb,CAJF,eAOEJ,wCAACE,wBAAD;AAAM,IAAA,KAAK,EAAC,KAAZ;AAAkB,IAAA,MAAM,EAAC,KAAzB;AAA+B,mBAAY;AAA3C,KACGH,QAAQ,iBAAIC,wCAACK,yBAAD;AAAmB,IAAA,KAAK,EAAC,KAAzB;AAA+B,IAAA,MAAM,EAAC,KAAtC;AAA4C,IAAA,KAAK,EAAE,CAAC,SAAD,EAAY,GAAZ;AAAnD,IADf,CAPF,CAHJ,CAL2B;AAAA;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/exported-related/Notifications/index.tsx"],"sourcesContent":["import React from 'react';\nimport {\n AlertsSmallFill,\n Notifications as InternalNotifications,\n ExceptionsSmallFill,\n MessagesSmallFill,\n} from '@elliemae/ds-icons';\nimport styled from 'styled-components';\nimport Grid from '@elliemae/ds-grid';\n\nconst StyledIcon = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n`;\n\ntype NotificationsProps = {\n exceptions?: boolean;\n alerts?: boolean;\n messages?: boolean;\n};\n\nexport const Notifications = ({\n exceptions = false,\n alerts = false,\n messages = false,\n}: NotificationsProps): JSX.Element => (\n <StyledIcon>\n <InternalNotifications size=\"m\" color={['brand-primary', 800]} data-testid=\"left-nav-notifications-icon\" />\n {(exceptions || alerts || messages) && (\n <Grid cols={['1fr', '1fr', '1fr']} gutter=\"xxxs\" mt=\"2px\">\n <Grid width=\"6px\" height=\"6px\" data-testid=\"left-nav-exceptions-icon\">\n {exceptions && <ExceptionsSmallFill width=\"6px\" height=\"6px\" color={['warning', 900]} />}\n </Grid>\n <Grid width=\"6px\" height=\"6px\" data-testid=\"left-nav-alerts-icon\">\n {alerts && <AlertsSmallFill width=\"6px\" height=\"6px\" color={['danger', 900]} />}\n </Grid>\n <Grid width=\"6px\" height=\"6px\" data-testid=\"left-nav-messages-icon\">\n {messages && <MessagesSmallFill width=\"6px\" height=\"6px\" color={['success', 900]} />}\n </Grid>\n </Grid>\n )}\n </StyledIcon>\n);\n\nexport default Notifications;\n"],"names":["StyledIcon","styled","div","Notifications","exceptions","alerts","messages","React","InternalNotifications","Grid","ExceptionsSmallFill","AlertsSmallFill","MessagesSmallFill"],"mappings":";;;;;;;;;;;;;;;AAUA,IAAMA,UAAU,gBAAGC,0BAAM,CAACC,GAAV;EAAA;AAAA,8DAAhB;IAYaC,aAAa,GAAG,SAAhBA,aAAgB;EAAA,2BAC3BC,UAD2B;MAC3BA,UAD2B,gCACd,KADc;yBAE3BC,MAF2B;MAE3BA,MAF2B,4BAElB,KAFkB;2BAG3BC,QAH2B;MAG3BA,QAH2B,8BAGhB,KAHgB;EAAA,oBAK3BC,wCAAC,UAAD,qBACEA,wCAACC,qBAAD;IAAuB,IAAI,EAAC,GAA5B;IAAgC,KAAK,EAAE,CAAC,eAAD,EAAkB,GAAlB,CAAvC;IAA+D,eAAY;IAD7E,EAEG,CAACJ,UAAU,IAAIC,MAAd,IAAwBC,QAAzB,kBACCC,wCAACE,wBAAD;IAAM,IAAI,EAAE,CAAC,KAAD,EAAQ,KAAR,EAAe,KAAf,CAAZ;IAAmC,MAAM,EAAC,MAA1C;IAAiD,EAAE,EAAC;kBAClDF,wCAACE,wBAAD;IAAM,KAAK,EAAC,KAAZ;IAAkB,MAAM,EAAC,KAAzB;IAA+B,eAAY;KACxCL,UAAU,iBAAIG,wCAACG,2BAAD;IAAqB,KAAK,EAAC,KAA3B;IAAiC,MAAM,EAAC,KAAxC;IAA8C,KAAK,EAAE,CAAC,SAAD,EAAY,GAAZ;IADtE,CADF,eAIEH,wCAACE,wBAAD;IAAM,KAAK,EAAC,KAAZ;IAAkB,MAAM,EAAC,KAAzB;IAA+B,eAAY;KACxCJ,MAAM,iBAAIE,wCAACI,uBAAD;IAAiB,KAAK,EAAC,KAAvB;IAA6B,MAAM,EAAC,KAApC;IAA0C,KAAK,EAAE,CAAC,QAAD,EAAW,GAAX;IAD9D,CAJF,eAOEJ,wCAACE,wBAAD;IAAM,KAAK,EAAC,KAAZ;IAAkB,MAAM,EAAC,KAAzB;IAA+B,eAAY;KACxCH,QAAQ,iBAAIC,wCAACK,yBAAD;IAAmB,KAAK,EAAC,KAAzB;IAA+B,MAAM,EAAC,KAAtC;IAA4C,KAAK,EAAE,CAAC,SAAD,EAAY,GAAZ;IADlE,CAPF,CAHJ,CAL2B;AAAA;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/exported-related/OpenWindowItem/index.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { OpenWindow as OpenWindowIcon } from '@elliemae/ds-icons';\n\nconst StyledOpenWindow = styled(OpenWindowIcon)`\n cursor: pointer;\n :focus {\n outline: 1px solid ${(props) => props.theme.colors.brand[800]};\n }\n`;\n\nexport const OpenWindow = (props: unknown): JSX.Element => (\n <StyledOpenWindow size=\"s\" color={['brand-primary', 800]} {...props} />\n);\n\nexport default OpenWindow;\n"],"names":["StyledOpenWindow","styled","OpenWindowIcon","props","theme","colors","brand","OpenWindow","React"],"mappings":";;;;;;;;;;;;;;;AAIA,IAAMA,gBAAgB,gBAAGC,0BAAM,CAACC,kBAAD,CAAT;AAAA;AAAA,uDAGG,UAACC,KAAD;AAAA,SAAWA,KAAK,CAACC,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAAX;AAAA,CAHH,CAAtB;IAOaC,UAAU,GAAG,SAAbA,UAAa,CAACJ,KAAD;AAAA,sBACxBK,wCAAC,gBAAD;AAAkB,IAAA,IAAI,EAAC,GAAvB;AAA2B,IAAA,KAAK,EAAE,CAAC,eAAD,EAAkB,GAAlB;AAAlC,KAA8DL,KAA9D,EADwB;AAAA;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/exported-related/OpenWindowItem/index.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { OpenWindow as OpenWindowIcon } from '@elliemae/ds-icons';\n\nconst StyledOpenWindow = styled(OpenWindowIcon)`\n cursor: pointer;\n :focus {\n outline: 1px solid ${(props) => props.theme.colors.brand[800]};\n }\n`;\n\nexport const OpenWindow = (props: unknown): JSX.Element => (\n <StyledOpenWindow size=\"s\" color={['brand-primary', 800]} {...props} />\n);\n\nexport default OpenWindow;\n"],"names":["StyledOpenWindow","styled","OpenWindowIcon","props","theme","colors","brand","OpenWindow","React"],"mappings":";;;;;;;;;;;;;;;AAIA,IAAMA,gBAAgB,gBAAGC,0BAAM,CAACC,kBAAD,CAAT;EAAA;AAAA,uDAGG,UAACC,KAAD;EAAA,OAAWA,KAAK,CAACC,KAAN,CAAYC,MAAZ,CAAmBC,KAAnB,CAAyB,GAAzB,CAAX;AAAA,CAHH,CAAtB;IAOaC,UAAU,GAAG,SAAbA,UAAa,CAACJ,KAAD;EAAA,oBACxBK,wCAAC,gBAAD;IAAkB,IAAI,EAAC,GAAvB;IAA2B,KAAK,EAAE,CAAC,eAAD,EAAkB,GAAlB;KAA4BL,KAA9D,EADwB;AAAA;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../src/exported-related/constants.tsx"],"sourcesContent":["export const LABEL_OVERFLOW = {\n WRAP: 'wrap',\n WRAP_ALL: 'wrapAll',\n TRUNCATE: 'truncate',\n};\n\nexport const ITEM_TYPES = {\n LEFT_NAV_ITEM_HEADER: 'ds-left-nav-item-header',\n LEFT_NAV_ITEM_LINK: 'ds-left-nav-item-link',\n LEFT_NAV_ITEM_SUBMENU: 'ds-left-nav-item-submenu',\n LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN: 'ds-left-nav-item-controlled-drilldown',\n LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN: 'ds-left-nav-item-uncontrolled-drilldown',\n LEFT_NAV_ITEM_SECTION: 'ds-left-nav-item-section',\n LEFT_NAV_ITEM_SEPARATOR: 'ds-left-nav-item-separator',\n LEFT_NAV_ITEM_TEXT_LABEL: 'ds-left-nav-item-text-label',\n LEFT_NAV_ITEM_WITH_DATE: 'ds-left-nav-item-with-date',\n};\n\nexport const FOOTER_DS_ID = 'ds-left-nav-__internal__-footer';\n\nexport const FOOTER_MENU_CLOSE_DS_ID = 'ds-left-nav-__internal__-footer-menu-close';\n\nexport const CHEVRON_BACK_DS_ID = 'ds-left-nav-__internal__-chevron-back';\n"],"names":["LABEL_OVERFLOW","WRAP","WRAP_ALL","TRUNCATE","ITEM_TYPES","LEFT_NAV_ITEM_HEADER","LEFT_NAV_ITEM_LINK","LEFT_NAV_ITEM_SUBMENU","LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN","LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN","LEFT_NAV_ITEM_SECTION","LEFT_NAV_ITEM_SEPARATOR","LEFT_NAV_ITEM_TEXT_LABEL","LEFT_NAV_ITEM_WITH_DATE","FOOTER_DS_ID","FOOTER_MENU_CLOSE_DS_ID","CHEVRON_BACK_DS_ID"],"mappings":";;;;IAAaA,cAAc,GAAG;AAC5BC,EAAAA,IAAI,EAAE,MADsB;AAE5BC,EAAAA,QAAQ,EAAE,SAFkB;AAG5BC,EAAAA,QAAQ,EAAE;AAHkB;IAMjBC,UAAU,GAAG;AACxBC,EAAAA,oBAAoB,EAAE,yBADE;AAExBC,EAAAA,kBAAkB,EAAE,uBAFI;AAGxBC,EAAAA,qBAAqB,EAAE,0BAHC;AAIxBC,EAAAA,kCAAkC,EAAE,uCAJZ;AAKxBC,EAAAA,oCAAoC,EAAE,yCALd;AAMxBC,EAAAA,qBAAqB,EAAE,0BANC;AAOxBC,EAAAA,uBAAuB,EAAE,4BAPD;AAQxBC,EAAAA,wBAAwB,EAAE,6BARF;AASxBC,EAAAA,uBAAuB,EAAE;AATD;IAYbC,YAAY,GAAG;IAEfC,uBAAuB,GAAG;IAE1BC,kBAAkB,GAAG;;;;;;;;"}
1
+ {"version":3,"file":"constants.js","sources":["../../../src/exported-related/constants.tsx"],"sourcesContent":["export const LABEL_OVERFLOW = {\n WRAP: 'wrap',\n WRAP_ALL: 'wrapAll',\n TRUNCATE: 'truncate',\n};\n\nexport const ITEM_TYPES = {\n LEFT_NAV_ITEM_HEADER: 'ds-left-nav-item-header',\n LEFT_NAV_ITEM_LINK: 'ds-left-nav-item-link',\n LEFT_NAV_ITEM_SUBMENU: 'ds-left-nav-item-submenu',\n LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN: 'ds-left-nav-item-controlled-drilldown',\n LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN: 'ds-left-nav-item-uncontrolled-drilldown',\n LEFT_NAV_ITEM_SECTION: 'ds-left-nav-item-section',\n LEFT_NAV_ITEM_SEPARATOR: 'ds-left-nav-item-separator',\n LEFT_NAV_ITEM_TEXT_LABEL: 'ds-left-nav-item-text-label',\n LEFT_NAV_ITEM_WITH_DATE: 'ds-left-nav-item-with-date',\n};\n\nexport const FOOTER_DS_ID = 'ds-left-nav-__internal__-footer';\n\nexport const FOOTER_MENU_CLOSE_DS_ID = 'ds-left-nav-__internal__-footer-menu-close';\n\nexport const CHEVRON_BACK_DS_ID = 'ds-left-nav-__internal__-chevron-back';\n"],"names":["LABEL_OVERFLOW","WRAP","WRAP_ALL","TRUNCATE","ITEM_TYPES","LEFT_NAV_ITEM_HEADER","LEFT_NAV_ITEM_LINK","LEFT_NAV_ITEM_SUBMENU","LEFT_NAV_ITEM_CONTROLLED_DRILLDOWN","LEFT_NAV_ITEM_UNCONTROLLED_DRILLDOWN","LEFT_NAV_ITEM_SECTION","LEFT_NAV_ITEM_SEPARATOR","LEFT_NAV_ITEM_TEXT_LABEL","LEFT_NAV_ITEM_WITH_DATE","FOOTER_DS_ID","FOOTER_MENU_CLOSE_DS_ID","CHEVRON_BACK_DS_ID"],"mappings":";;;;IAAaA,cAAc,GAAG;EAC5BC,IAAI,EAAE,MADsB;EAE5BC,QAAQ,EAAE,SAFkB;EAG5BC,QAAQ,EAAE;AAHkB;IAMjBC,UAAU,GAAG;EACxBC,oBAAoB,EAAE,yBADE;EAExBC,kBAAkB,EAAE,uBAFI;EAGxBC,qBAAqB,EAAE,0BAHC;EAIxBC,kCAAkC,EAAE,uCAJZ;EAKxBC,oCAAoC,EAAE,yCALd;EAMxBC,qBAAqB,EAAE,0BANC;EAOxBC,uBAAuB,EAAE,4BAPD;EAQxBC,wBAAwB,EAAE,6BARF;EASxBC,uBAAuB,EAAE;AATD;IAYbC,YAAY,GAAG;IAEfC,uBAAuB,GAAG;IAE1BC,kBAAkB,GAAG;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useExpandableOnClickHandler.js","sources":["../../../src/hooks/useExpandableOnClickHandler.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react';\nimport LeftNavigationContext from '../LeftNavigationContext';\n\ntype useExpandableOnClickHandlerProps = {\n id: string;\n onExpand: React.MouseEventHandler & React.KeyboardEventHandler;\n onOpen: React.MouseEventHandler & React.KeyboardEventHandler;\n selectable?: boolean;\n};\n\nexport const useExpandableOnClickHandler = ({\n id,\n onExpand,\n onOpen,\n selectable = true,\n}: useExpandableOnClickHandlerProps): ((\n e: React.MouseEvent<HTMLElement>,\n) => void) => {\n const {\n leftNavProps: { expanded },\n setSelectedItem,\n } = useContext(LeftNavigationContext);\n\n const handleOnExpand = useCallback(\n (e) => {\n onExpand(e);\n if (selectable) setSelectedItem(id);\n },\n [id, onExpand, setSelectedItem, selectable],\n );\n\n const handleOnOpen = useCallback(\n (e) => {\n onOpen(e);\n if (selectable) setSelectedItem(id);\n },\n [id, onOpen, setSelectedItem, selectable],\n );\n\n const handleOnClick = useCallback(\n (e) => {\n if (!expanded) handleOnExpand(e);\n else handleOnOpen(e);\n },\n [expanded, handleOnExpand, handleOnOpen],\n );\n\n return handleOnClick;\n};\n"],"names":["useExpandableOnClickHandler","id","onExpand","onOpen","selectable","useContext","LeftNavigationContext","expanded","leftNavProps","setSelectedItem","handleOnExpand","useCallback","e","handleOnOpen","handleOnClick"],"mappings":";;;;;;;IAUaA,2BAA2B,GAAG,SAA9BA,2BAA8B,OAO7B;AAAA,MANZC,EAMY,QANZA,EAMY;AAAA,MALZC,QAKY,QALZA,QAKY;AAAA,MAJZC,MAIY,QAJZA,MAIY;AAAA,6BAHZC,UAGY;AAAA,MAHZA,UAGY,gCAHC,IAGD;;AACZ,oBAGIC,gBAAU,CAACC,oCAAD,CAHd;AAAA,MACkBC,QADlB,eACEC,YADF,CACkBD,QADlB;AAAA,MAEEE,eAFF,eAEEA,eAFF;;AAKA,MAAMC,cAAc,GAAGC,iBAAW,CAChC,UAACC,CAAD,EAAO;AACLV,IAAAA,QAAQ,CAACU,CAAD,CAAR;AACA,QAAIR,UAAJ,EAAgBK,eAAe,CAACR,EAAD,CAAf;AACjB,GAJ+B,EAKhC,CAACA,EAAD,EAAKC,QAAL,EAAeO,eAAf,EAAgCL,UAAhC,CALgC,CAAlC;AAQA,MAAMS,YAAY,GAAGF,iBAAW,CAC9B,UAACC,CAAD,EAAO;AACLT,IAAAA,MAAM,CAACS,CAAD,CAAN;AACA,QAAIR,UAAJ,EAAgBK,eAAe,CAACR,EAAD,CAAf;AACjB,GAJ6B,EAK9B,CAACA,EAAD,EAAKE,MAAL,EAAaM,eAAb,EAA8BL,UAA9B,CAL8B,CAAhC;AAQA,MAAMU,aAAa,GAAGH,iBAAW,CAC/B,UAACC,CAAD,EAAO;AACL,QAAI,CAACL,QAAL,EAAeG,cAAc,CAACE,CAAD,CAAd,CAAf,KACKC,YAAY,CAACD,CAAD,CAAZ;AACN,GAJ8B,EAK/B,CAACL,QAAD,EAAWG,cAAX,EAA2BG,YAA3B,CAL+B,CAAjC;AAQA,SAAOC,aAAP;AACD;;;;"}
1
+ {"version":3,"file":"useExpandableOnClickHandler.js","sources":["../../../src/hooks/useExpandableOnClickHandler.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react';\nimport LeftNavigationContext from '../LeftNavigationContext';\n\ntype useExpandableOnClickHandlerProps = {\n id: string;\n onExpand: React.MouseEventHandler & React.KeyboardEventHandler;\n onOpen: React.MouseEventHandler & React.KeyboardEventHandler;\n selectable?: boolean;\n};\n\nexport const useExpandableOnClickHandler = ({\n id,\n onExpand,\n onOpen,\n selectable = true,\n}: useExpandableOnClickHandlerProps): ((\n e: React.MouseEvent<HTMLElement>,\n) => void) => {\n const {\n leftNavProps: { expanded },\n setSelectedItem,\n } = useContext(LeftNavigationContext);\n\n const handleOnExpand = useCallback(\n (e) => {\n onExpand(e);\n if (selectable) setSelectedItem(id);\n },\n [id, onExpand, setSelectedItem, selectable],\n );\n\n const handleOnOpen = useCallback(\n (e) => {\n onOpen(e);\n if (selectable) setSelectedItem(id);\n },\n [id, onOpen, setSelectedItem, selectable],\n );\n\n const handleOnClick = useCallback(\n (e) => {\n if (!expanded) handleOnExpand(e);\n else handleOnOpen(e);\n },\n [expanded, handleOnExpand, handleOnOpen],\n );\n\n return handleOnClick;\n};\n"],"names":["useExpandableOnClickHandler","id","onExpand","onOpen","selectable","useContext","LeftNavigationContext","expanded","leftNavProps","setSelectedItem","handleOnExpand","useCallback","e","handleOnOpen","handleOnClick"],"mappings":";;;;;;;IAUaA,2BAA2B,GAAG,SAA9BA,2BAA8B,OAO7B;EAAA,IANZC,EAMY,QANZA,EAMY;MALZC,QAKY,QALZA,QAKY;MAJZC,MAIY,QAJZA,MAIY;6BAHZC,UAGY;MAHZA,UAGY,gCAHC,IAGD;;EACZ,kBAGIC,gBAAU,CAACC,oCAAD,CAHd;MACkBC,QADlB,eACEC,YADF,CACkBD,QADlB;MAEEE,eAFF,eAEEA,eAFF;;EAKA,IAAMC,cAAc,GAAGC,iBAAW,CAChC,UAACC,CAAD,EAAO;IACLV,QAAQ,CAACU,CAAD,CAAR;IACA,IAAIR,UAAJ,EAAgBK,eAAe,CAACR,EAAD,CAAf;GAHc,EAKhC,CAACA,EAAD,EAAKC,QAAL,EAAeO,eAAf,EAAgCL,UAAhC,CALgC,CAAlC;EAQA,IAAMS,YAAY,GAAGF,iBAAW,CAC9B,UAACC,CAAD,EAAO;IACLT,MAAM,CAACS,CAAD,CAAN;IACA,IAAIR,UAAJ,EAAgBK,eAAe,CAACR,EAAD,CAAf;GAHY,EAK9B,CAACA,EAAD,EAAKE,MAAL,EAAaM,eAAb,EAA8BL,UAA9B,CAL8B,CAAhC;EAQA,IAAMU,aAAa,GAAGH,iBAAW,CAC/B,UAACC,CAAD,EAAO;IACL,IAAI,CAACL,QAAL,EAAeG,cAAc,CAACE,CAAD,CAAd,CAAf,KACKC,YAAY,CAACD,CAAD,CAAZ;GAHwB,EAK/B,CAACL,QAAD,EAAWG,cAAX,EAA2BG,YAA3B,CAL+B,CAAjC;EAQA,OAAOC,aAAP;AACD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useKeyboardNavigation.js","sources":["../../../src/hooks/useKeyboardNavigation.tsx"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useMemo, useLayoutEffect, useContext } from 'react';\nimport { CHEVRON_BACK_DS_ID, FOOTER_MENU_CLOSE_DS_ID } from '../exported-related/constants';\nimport { GenericItemItemProps } from '../index.d';\nimport LeftNavContext from '../LeftNavigationContext';\n\nconst KEY_CODES = {\n TAB: 9,\n ENTER: 13,\n SPACE: 32,\n LEFT_ARROW: 37,\n UP_ARROW: 38,\n RIGHT_ARROW: 39,\n DOWN_ARROW: 40,\n END: 35,\n HOME: 36,\n};\n\nconst nextIndex = (index: number, length: number) => (index + 1) % length;\nconst prevIndex = (index: number, length: number) => (index - 1 + length) % length;\n\ntype useKeyboardNavigationProps = {\n item: GenericItemItemProps;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onClick: (e: any) => void;\n};\n\nexport const useKeyboardNavigation = ({ item, onClick }: useKeyboardNavigationProps): React.KeyboardEventHandler => {\n const {\n dsId,\n itemOpts: { selectable, openable, closable },\n } = item;\n\n const { visibleItems, visibleItemsRefs } = useContext(LeftNavContext);\n\n const currentIndex = useMemo(\n () => visibleItems.findIndex((visibleItemDsId) => visibleItemDsId === dsId),\n [dsId, visibleItems],\n );\n\n const { setFocusedItem, focusedItem, setSelectedItem } = useContext(LeftNavContext);\n\n const focusAndSelect = useCallback(\n (nextDsId: string) => {\n setFocusedItem(nextDsId);\n setSelectedItem(nextDsId);\n },\n [setFocusedItem, setSelectedItem],\n );\n\n useLayoutEffect(() => {\n if (dsId === focusedItem) visibleItemsRefs.current[dsId]?.current?.focus();\n }, [dsId, focusedItem, visibleItemsRefs]);\n\n const onKeyDown: React.KeyboardEventHandler = useCallback(\n (e) => {\n const { keyCode } = e;\n\n // Prevent default behaviour when not tab\n if (keyCode !== KEY_CODES.TAB) {\n e.preventDefault();\n }\n\n if (keyCode === KEY_CODES.ENTER || keyCode === KEY_CODES.SPACE) {\n if (selectable) {\n onClick(e);\n focusAndSelect(dsId);\n } else if (focusedItem === CHEVRON_BACK_DS_ID) {\n onClick(e);\n focusAndSelect(dsId);\n } else if (focusedItem === FOOTER_MENU_CLOSE_DS_ID) {\n onClick(e);\n setFocusedItem(dsId);\n }\n }\n\n if (openable && keyCode === KEY_CODES.RIGHT_ARROW) {\n onClick(e);\n }\n\n if (closable && keyCode === KEY_CODES.LEFT_ARROW) {\n onClick(e);\n setFocusedItem(dsId);\n }\n\n if (keyCode === KEY_CODES.DOWN_ARROW) {\n const nextDsId = visibleItems[nextIndex(currentIndex, visibleItems.length)];\n setFocusedItem(nextDsId);\n }\n\n if (keyCode === KEY_CODES.UP_ARROW) {\n const prevDsId = visibleItems[prevIndex(currentIndex, visibleItems.length)];\n setFocusedItem(prevDsId);\n }\n\n if (keyCode === KEY_CODES.HOME) {\n setFocusedItem(visibleItems[0]);\n }\n\n if (keyCode === KEY_CODES.END) {\n setFocusedItem(visibleItems[visibleItems.length - 1]);\n }\n },\n [\n openable,\n closable,\n selectable,\n focusedItem,\n onClick,\n focusAndSelect,\n dsId,\n setFocusedItem,\n visibleItems,\n currentIndex,\n ],\n );\n\n return onKeyDown;\n};\n"],"names":["KEY_CODES","TAB","ENTER","SPACE","LEFT_ARROW","UP_ARROW","RIGHT_ARROW","DOWN_ARROW","END","HOME","nextIndex","index","length","prevIndex","useKeyboardNavigation","item","onClick","dsId","itemOpts","selectable","openable","closable","useContext","LeftNavContext","visibleItems","visibleItemsRefs","currentIndex","useMemo","findIndex","visibleItemDsId","setFocusedItem","focusedItem","setSelectedItem","focusAndSelect","useCallback","nextDsId","useLayoutEffect","current","focus","onKeyDown","e","keyCode","preventDefault","CHEVRON_BACK_DS_ID","FOOTER_MENU_CLOSE_DS_ID","prevDsId"],"mappings":"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"}
1
+ {"version":3,"file":"useKeyboardNavigation.js","sources":["../../../src/hooks/useKeyboardNavigation.tsx"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useMemo, useLayoutEffect, useContext } from 'react';\nimport { CHEVRON_BACK_DS_ID, FOOTER_MENU_CLOSE_DS_ID } from '../exported-related/constants';\nimport { GenericItemItemProps } from '../index.d';\nimport LeftNavContext from '../LeftNavigationContext';\n\nconst KEY_CODES = {\n TAB: 9,\n ENTER: 13,\n SPACE: 32,\n LEFT_ARROW: 37,\n UP_ARROW: 38,\n RIGHT_ARROW: 39,\n DOWN_ARROW: 40,\n END: 35,\n HOME: 36,\n};\n\nconst nextIndex = (index: number, length: number) => (index + 1) % length;\nconst prevIndex = (index: number, length: number) => (index - 1 + length) % length;\n\ntype useKeyboardNavigationProps = {\n item: GenericItemItemProps;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onClick: (e: any) => void;\n};\n\nexport const useKeyboardNavigation = ({ item, onClick }: useKeyboardNavigationProps): React.KeyboardEventHandler => {\n const {\n dsId,\n itemOpts: { selectable, openable, closable },\n } = item;\n\n const { visibleItems, visibleItemsRefs } = useContext(LeftNavContext);\n\n const currentIndex = useMemo(\n () => visibleItems.findIndex((visibleItemDsId) => visibleItemDsId === dsId),\n [dsId, visibleItems],\n );\n\n const { setFocusedItem, focusedItem, setSelectedItem } = useContext(LeftNavContext);\n\n const focusAndSelect = useCallback(\n (nextDsId: string) => {\n setFocusedItem(nextDsId);\n setSelectedItem(nextDsId);\n },\n [setFocusedItem, setSelectedItem],\n );\n\n useLayoutEffect(() => {\n if (dsId === focusedItem) visibleItemsRefs.current[dsId]?.current?.focus();\n }, [dsId, focusedItem, visibleItemsRefs]);\n\n const onKeyDown: React.KeyboardEventHandler = useCallback(\n (e) => {\n const { keyCode } = e;\n\n // Prevent default behaviour when not tab\n if (keyCode !== KEY_CODES.TAB) {\n e.preventDefault();\n }\n\n if (keyCode === KEY_CODES.ENTER || keyCode === KEY_CODES.SPACE) {\n if (selectable) {\n onClick(e);\n focusAndSelect(dsId);\n } else if (focusedItem === CHEVRON_BACK_DS_ID) {\n onClick(e);\n focusAndSelect(dsId);\n } else if (focusedItem === FOOTER_MENU_CLOSE_DS_ID) {\n onClick(e);\n setFocusedItem(dsId);\n }\n }\n\n if (openable && keyCode === KEY_CODES.RIGHT_ARROW) {\n onClick(e);\n }\n\n if (closable && keyCode === KEY_CODES.LEFT_ARROW) {\n onClick(e);\n setFocusedItem(dsId);\n }\n\n if (keyCode === KEY_CODES.DOWN_ARROW) {\n const nextDsId = visibleItems[nextIndex(currentIndex, visibleItems.length)];\n setFocusedItem(nextDsId);\n }\n\n if (keyCode === KEY_CODES.UP_ARROW) {\n const prevDsId = visibleItems[prevIndex(currentIndex, visibleItems.length)];\n setFocusedItem(prevDsId);\n }\n\n if (keyCode === KEY_CODES.HOME) {\n setFocusedItem(visibleItems[0]);\n }\n\n if (keyCode === KEY_CODES.END) {\n setFocusedItem(visibleItems[visibleItems.length - 1]);\n }\n },\n [\n openable,\n closable,\n selectable,\n focusedItem,\n onClick,\n focusAndSelect,\n dsId,\n setFocusedItem,\n visibleItems,\n currentIndex,\n ],\n );\n\n return onKeyDown;\n};\n"],"names":["KEY_CODES","TAB","ENTER","SPACE","LEFT_ARROW","UP_ARROW","RIGHT_ARROW","DOWN_ARROW","END","HOME","nextIndex","index","length","prevIndex","useKeyboardNavigation","item","onClick","dsId","itemOpts","selectable","openable","closable","useContext","LeftNavContext","visibleItems","visibleItemsRefs","currentIndex","useMemo","findIndex","visibleItemDsId","setFocusedItem","focusedItem","setSelectedItem","focusAndSelect","useCallback","nextDsId","useLayoutEffect","current","focus","onKeyDown","e","keyCode","preventDefault","CHEVRON_BACK_DS_ID","FOOTER_MENU_CLOSE_DS_ID","prevDsId"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useOpenableOnClickHandler.js","sources":["../../../src/hooks/useOpenableOnClickHandler.tsx"],"sourcesContent":["import { useCallback, useContext } from 'react';\nimport LeftNavigationContext from '../LeftNavigationContext';\n\ntype useOpenableOnClickHandlerProps = {\n id: string;\n onExpand: React.MouseEventHandler & React.KeyboardEventHandler;\n onOpen: React.MouseEventHandler & React.KeyboardEventHandler;\n onClose: React.MouseEventHandler & React.KeyboardEventHandler;\n opened: boolean;\n};\n\nexport const useOpenableOnClickHandler = ({\n id,\n opened,\n onExpand,\n onOpen,\n onClose,\n}: useOpenableOnClickHandlerProps): ((\n e: React.MouseEvent<HTMLElement>,\n) => void) => {\n const {\n leftNavProps: { expanded },\n setSelectedItem,\n } = useContext(LeftNavigationContext);\n\n const handleOnExpand = useCallback(\n (e) => {\n onExpand(e);\n setSelectedItem(id);\n },\n [id, onExpand, setSelectedItem],\n );\n\n const handleOnOpen = useCallback(\n (e) => {\n onOpen(e);\n setSelectedItem(id);\n },\n [id, onOpen, setSelectedItem],\n );\n\n const handleOnClose = useCallback(\n (e) => {\n onClose(e);\n setSelectedItem(id);\n },\n [id, onClose, setSelectedItem],\n );\n\n const handleOnClick = useCallback(\n (e) => {\n if (!expanded) handleOnExpand(e);\n else if (!opened) handleOnOpen(e);\n else handleOnClose(e);\n },\n [expanded, opened, handleOnExpand, handleOnOpen, handleOnClose],\n );\n\n return handleOnClick;\n};\n"],"names":["useOpenableOnClickHandler","id","opened","onExpand","onOpen","onClose","useContext","LeftNavigationContext","expanded","leftNavProps","setSelectedItem","handleOnExpand","useCallback","e","handleOnOpen","handleOnClose","handleOnClick"],"mappings":";;;;;;;IAWaA,yBAAyB,GAAG,SAA5BA,yBAA4B,OAQ3B;AAAA,MAPZC,EAOY,QAPZA,EAOY;AAAA,MANZC,MAMY,QANZA,MAMY;AAAA,MALZC,QAKY,QALZA,QAKY;AAAA,MAJZC,MAIY,QAJZA,MAIY;AAAA,MAHZC,OAGY,QAHZA,OAGY;;AACZ,oBAGIC,gBAAU,CAACC,oCAAD,CAHd;AAAA,MACkBC,QADlB,eACEC,YADF,CACkBD,QADlB;AAAA,MAEEE,eAFF,eAEEA,eAFF;;AAKA,MAAMC,cAAc,GAAGC,iBAAW,CAChC,UAACC,CAAD,EAAO;AACLV,IAAAA,QAAQ,CAACU,CAAD,CAAR;AACAH,IAAAA,eAAe,CAACT,EAAD,CAAf;AACD,GAJ+B,EAKhC,CAACA,EAAD,EAAKE,QAAL,EAAeO,eAAf,CALgC,CAAlC;AAQA,MAAMI,YAAY,GAAGF,iBAAW,CAC9B,UAACC,CAAD,EAAO;AACLT,IAAAA,MAAM,CAACS,CAAD,CAAN;AACAH,IAAAA,eAAe,CAACT,EAAD,CAAf;AACD,GAJ6B,EAK9B,CAACA,EAAD,EAAKG,MAAL,EAAaM,eAAb,CAL8B,CAAhC;AAQA,MAAMK,aAAa,GAAGH,iBAAW,CAC/B,UAACC,CAAD,EAAO;AACLR,IAAAA,OAAO,CAACQ,CAAD,CAAP;AACAH,IAAAA,eAAe,CAACT,EAAD,CAAf;AACD,GAJ8B,EAK/B,CAACA,EAAD,EAAKI,OAAL,EAAcK,eAAd,CAL+B,CAAjC;AAQA,MAAMM,aAAa,GAAGJ,iBAAW,CAC/B,UAACC,CAAD,EAAO;AACL,QAAI,CAACL,QAAL,EAAeG,cAAc,CAACE,CAAD,CAAd,CAAf,KACK,IAAI,CAACX,MAAL,EAAaY,YAAY,CAACD,CAAD,CAAZ,CAAb,KACAE,aAAa,CAACF,CAAD,CAAb;AACN,GAL8B,EAM/B,CAACL,QAAD,EAAWN,MAAX,EAAmBS,cAAnB,EAAmCG,YAAnC,EAAiDC,aAAjD,CAN+B,CAAjC;AASA,SAAOC,aAAP;AACD;;;;"}
1
+ {"version":3,"file":"useOpenableOnClickHandler.js","sources":["../../../src/hooks/useOpenableOnClickHandler.tsx"],"sourcesContent":["import { useCallback, useContext } from 'react';\nimport LeftNavigationContext from '../LeftNavigationContext';\n\ntype useOpenableOnClickHandlerProps = {\n id: string;\n onExpand: React.MouseEventHandler & React.KeyboardEventHandler;\n onOpen: React.MouseEventHandler & React.KeyboardEventHandler;\n onClose: React.MouseEventHandler & React.KeyboardEventHandler;\n opened: boolean;\n};\n\nexport const useOpenableOnClickHandler = ({\n id,\n opened,\n onExpand,\n onOpen,\n onClose,\n}: useOpenableOnClickHandlerProps): ((\n e: React.MouseEvent<HTMLElement>,\n) => void) => {\n const {\n leftNavProps: { expanded },\n setSelectedItem,\n } = useContext(LeftNavigationContext);\n\n const handleOnExpand = useCallback(\n (e) => {\n onExpand(e);\n setSelectedItem(id);\n },\n [id, onExpand, setSelectedItem],\n );\n\n const handleOnOpen = useCallback(\n (e) => {\n onOpen(e);\n setSelectedItem(id);\n },\n [id, onOpen, setSelectedItem],\n );\n\n const handleOnClose = useCallback(\n (e) => {\n onClose(e);\n setSelectedItem(id);\n },\n [id, onClose, setSelectedItem],\n );\n\n const handleOnClick = useCallback(\n (e) => {\n if (!expanded) handleOnExpand(e);\n else if (!opened) handleOnOpen(e);\n else handleOnClose(e);\n },\n [expanded, opened, handleOnExpand, handleOnOpen, handleOnClose],\n );\n\n return handleOnClick;\n};\n"],"names":["useOpenableOnClickHandler","id","opened","onExpand","onOpen","onClose","useContext","LeftNavigationContext","expanded","leftNavProps","setSelectedItem","handleOnExpand","useCallback","e","handleOnOpen","handleOnClose","handleOnClick"],"mappings":";;;;;;;IAWaA,yBAAyB,GAAG,SAA5BA,yBAA4B,OAQ3B;EAAA,IAPZC,EAOY,QAPZA,EAOY;MANZC,MAMY,QANZA,MAMY;MALZC,QAKY,QALZA,QAKY;MAJZC,MAIY,QAJZA,MAIY;MAHZC,OAGY,QAHZA,OAGY;;EACZ,kBAGIC,gBAAU,CAACC,oCAAD,CAHd;MACkBC,QADlB,eACEC,YADF,CACkBD,QADlB;MAEEE,eAFF,eAEEA,eAFF;;EAKA,IAAMC,cAAc,GAAGC,iBAAW,CAChC,UAACC,CAAD,EAAO;IACLV,QAAQ,CAACU,CAAD,CAAR;IACAH,eAAe,CAACT,EAAD,CAAf;GAH8B,EAKhC,CAACA,EAAD,EAAKE,QAAL,EAAeO,eAAf,CALgC,CAAlC;EAQA,IAAMI,YAAY,GAAGF,iBAAW,CAC9B,UAACC,CAAD,EAAO;IACLT,MAAM,CAACS,CAAD,CAAN;IACAH,eAAe,CAACT,EAAD,CAAf;GAH4B,EAK9B,CAACA,EAAD,EAAKG,MAAL,EAAaM,eAAb,CAL8B,CAAhC;EAQA,IAAMK,aAAa,GAAGH,iBAAW,CAC/B,UAACC,CAAD,EAAO;IACLR,OAAO,CAACQ,CAAD,CAAP;IACAH,eAAe,CAACT,EAAD,CAAf;GAH6B,EAK/B,CAACA,EAAD,EAAKI,OAAL,EAAcK,eAAd,CAL+B,CAAjC;EAQA,IAAMM,aAAa,GAAGJ,iBAAW,CAC/B,UAACC,CAAD,EAAO;IACL,IAAI,CAACL,QAAL,EAAeG,cAAc,CAACE,CAAD,CAAd,CAAf,KACK,IAAI,CAACX,MAAL,EAAaY,YAAY,CAACD,CAAD,CAAZ,CAAb,KACAE,aAAa,CAACF,CAAD,CAAb;GAJwB,EAM/B,CAACL,QAAD,EAAWN,MAAX,EAAmBS,cAAnB,EAAmCG,YAAnC,EAAiDC,aAAjD,CAN+B,CAAjC;EASA,OAAOC,aAAP;AACD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSelectFirstBodyItem.js","sources":["../../../src/hooks/useSelectFirstBodyItem.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { GenericItemItemProps } from '../index.d';\nimport { ITEM_TYPES } from '../exported-related/constants';\n\nconst { LEFT_NAV_ITEM_SEPARATOR, LEFT_NAV_ITEM_SECTION } = ITEM_TYPES;\n\nconst isSelectableOutOfTheBox = (elem: GenericItemItemProps) =>\n typeof elem.type === 'string' && elem.type !== LEFT_NAV_ITEM_SEPARATOR && elem.type !== LEFT_NAV_ITEM_SECTION;\nconst isSelectableCustom = (elem: GenericItemItemProps) => elem.itemOpts.selectable;\n\nconst isItemInsideTheTree = (item: GenericItemItemProps, itemID: string) =>\n item.dsId === itemID || item?.itemOpts?.items?.some((it) => isItemInsideTheTree(it, itemID));\n\nexport const useSelectFirstBodyItem = (\n items: GenericItemItemProps[],\n openedItem: string,\n selectedItem: string,\n setSelectedItem: React.Dispatch<React.SetStateAction<string>>,\n disableDefaultSelection: boolean,\n): void => {\n useEffect(() => {\n if (!disableDefaultSelection && items && items.length && openedItem) {\n const index = items.findIndex((elem) => isSelectableOutOfTheBox(elem) || isSelectableCustom(elem));\n const isItemInside = items.some((it) => isItemInsideTheTree(it, selectedItem));\n if (isItemInside) setSelectedItem(selectedItem);\n else if (index !== -1) setSelectedItem(items[index].dsId);\n }\n }, [openedItem, setSelectedItem, disableDefaultSelection]);\n};\n"],"names":["LEFT_NAV_ITEM_SEPARATOR","ITEM_TYPES","LEFT_NAV_ITEM_SECTION","isSelectableOutOfTheBox","elem","type","isSelectableCustom","itemOpts","selectable","isItemInsideTheTree","item","itemID","dsId","items","some","it","useSelectFirstBodyItem","openedItem","selectedItem","setSelectedItem","disableDefaultSelection","useEffect","length","index","findIndex","isItemInside"],"mappings":";;;;;;;AAIA,IAAQA,uBAAR,GAA2DC,oCAA3D,CAAQD,uBAAR;AAAA,IAAiCE,qBAAjC,GAA2DD,oCAA3D,CAAiCC,qBAAjC;;AAEA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,IAAD;AAAA,SAC9B,OAAOA,IAAI,CAACC,IAAZ,KAAqB,QAArB,IAAiCD,IAAI,CAACC,IAAL,KAAcL,uBAA/C,IAA0EI,IAAI,CAACC,IAAL,KAAcH,qBAD1D;AAAA,CAAhC;;AAEA,IAAMI,kBAAkB,GAAG,SAArBA,kBAAqB,CAACF,IAAD;AAAA,SAAgCA,IAAI,CAACG,QAAL,CAAcC,UAA9C;AAAA,CAA3B;;AAEA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,IAAD,EAA6BC,MAA7B;AAAA;;AAAA,SAC1BD,IAAI,CAACE,IAAL,KAAcD,MAAd,KAAwBD,IAAxB,aAAwBA,IAAxB,yCAAwBA,IAAI,CAAEH,QAA9B,2EAAwB,eAAgBM,KAAxC,yDAAwB,qBAAuBC,IAAvB,CAA4B,UAACC,EAAD;AAAA,WAAQN,mBAAmB,CAACM,EAAD,EAAKJ,MAAL,CAA3B;AAAA,GAA5B,CAAxB,CAD0B;AAAA,CAA5B;;IAGaK,sBAAsB,GAAG,SAAzBA,sBAAyB,CACpCH,KADoC,EAEpCI,UAFoC,EAGpCC,YAHoC,EAIpCC,eAJoC,EAKpCC,uBALoC,EAM3B;AACTC,EAAAA,eAAS,CAAC,YAAM;AACd,QAAI,CAACD,uBAAD,IAA4BP,KAA5B,IAAqCA,KAAK,CAACS,MAA3C,IAAqDL,UAAzD,EAAqE;AACnE,UAAMM,KAAK,GAAGV,KAAK,CAACW,SAAN,CAAgB,UAACpB,IAAD;AAAA,eAAUD,uBAAuB,CAACC,IAAD,CAAvB,IAAiCE,kBAAkB,CAACF,IAAD,CAA7D;AAAA,OAAhB,CAAd;AACA,UAAMqB,YAAY,GAAGZ,KAAK,CAACC,IAAN,CAAW,UAACC,EAAD;AAAA,eAAQN,mBAAmB,CAACM,EAAD,EAAKG,YAAL,CAA3B;AAAA,OAAX,CAArB;AACA,UAAIO,YAAJ,EAAkBN,eAAe,CAACD,YAAD,CAAf,CAAlB,KACK,IAAIK,KAAK,KAAK,CAAC,CAAf,EAAkBJ,eAAe,CAACN,KAAK,CAACU,KAAD,CAAL,CAAaX,IAAd,CAAf;AACxB;AACF,GAPQ,EAON,CAACK,UAAD,EAAaE,eAAb,EAA8BC,uBAA9B,CAPM,CAAT;AAQD;;;;"}
1
+ {"version":3,"file":"useSelectFirstBodyItem.js","sources":["../../../src/hooks/useSelectFirstBodyItem.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { GenericItemItemProps } from '../index.d';\nimport { ITEM_TYPES } from '../exported-related/constants';\n\nconst { LEFT_NAV_ITEM_SEPARATOR, LEFT_NAV_ITEM_SECTION } = ITEM_TYPES;\n\nconst isSelectableOutOfTheBox = (elem: GenericItemItemProps) =>\n typeof elem.type === 'string' && elem.type !== LEFT_NAV_ITEM_SEPARATOR && elem.type !== LEFT_NAV_ITEM_SECTION;\nconst isSelectableCustom = (elem: GenericItemItemProps) => elem.itemOpts.selectable;\n\nconst isItemInsideTheTree = (item: GenericItemItemProps, itemID: string) =>\n item.dsId === itemID || item?.itemOpts?.items?.some((it) => isItemInsideTheTree(it, itemID));\n\nexport const useSelectFirstBodyItem = (\n items: GenericItemItemProps[],\n openedItem: string,\n selectedItem: string,\n setSelectedItem: React.Dispatch<React.SetStateAction<string>>,\n disableDefaultSelection: boolean,\n): void => {\n useEffect(() => {\n if (!disableDefaultSelection && items && items.length && openedItem) {\n const index = items.findIndex((elem) => isSelectableOutOfTheBox(elem) || isSelectableCustom(elem));\n const isItemInside = items.some((it) => isItemInsideTheTree(it, selectedItem));\n if (isItemInside) setSelectedItem(selectedItem);\n else if (index !== -1) setSelectedItem(items[index].dsId);\n }\n }, [openedItem, setSelectedItem, disableDefaultSelection]);\n};\n"],"names":["LEFT_NAV_ITEM_SEPARATOR","ITEM_TYPES","LEFT_NAV_ITEM_SECTION","isSelectableOutOfTheBox","elem","type","isSelectableCustom","itemOpts","selectable","isItemInsideTheTree","item","itemID","dsId","items","some","it","useSelectFirstBodyItem","openedItem","selectedItem","setSelectedItem","disableDefaultSelection","useEffect","length","index","findIndex","isItemInside"],"mappings":";;;;;;;AAIA,IAAQA,uBAAR,GAA2DC,oCAA3D,CAAQD,uBAAR;AAAA,IAAiCE,qBAAjC,GAA2DD,oCAA3D,CAAiCC,qBAAjC;;AAEA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,IAAD;EAAA,OAC9B,OAAOA,IAAI,CAACC,IAAZ,KAAqB,QAArB,IAAiCD,IAAI,CAACC,IAAL,KAAcL,uBAA/C,IAA0EI,IAAI,CAACC,IAAL,KAAcH,qBAD1D;AAAA,CAAhC;;AAEA,IAAMI,kBAAkB,GAAG,SAArBA,kBAAqB,CAACF,IAAD;EAAA,OAAgCA,IAAI,CAACG,QAAL,CAAcC,UAA9C;AAAA,CAA3B;;AAEA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,IAAD,EAA6BC,MAA7B;EAAA;;EAAA,OAC1BD,IAAI,CAACE,IAAL,KAAcD,MAAd,KAAwBD,IAAxB,aAAwBA,IAAxB,yCAAwBA,IAAI,CAAEH,QAA9B,2EAAwB,eAAgBM,KAAxC,yDAAwB,qBAAuBC,IAAvB,CAA4B,UAACC,EAAD;IAAA,OAAQN,mBAAmB,CAACM,EAAD,EAAKJ,MAAL,CAA3B;GAA5B,CAAxB,CAD0B;AAAA,CAA5B;;IAGaK,sBAAsB,GAAG,SAAzBA,sBAAyB,CACpCH,KADoC,EAEpCI,UAFoC,EAGpCC,YAHoC,EAIpCC,eAJoC,EAKpCC,uBALoC,EAM3B;EACTC,eAAS,CAAC,YAAM;IACd,IAAI,CAACD,uBAAD,IAA4BP,KAA5B,IAAqCA,KAAK,CAACS,MAA3C,IAAqDL,UAAzD,EAAqE;MACnE,IAAMM,KAAK,GAAGV,KAAK,CAACW,SAAN,CAAgB,UAACpB,IAAD;QAAA,OAAUD,uBAAuB,CAACC,IAAD,CAAvB,IAAiCE,kBAAkB,CAACF,IAAD,CAA7D;OAAhB,CAAd;MACA,IAAMqB,YAAY,GAAGZ,KAAK,CAACC,IAAN,CAAW,UAACC,EAAD;QAAA,OAAQN,mBAAmB,CAACM,EAAD,EAAKG,YAAL,CAA3B;OAAX,CAArB;MACA,IAAIO,YAAJ,EAAkBN,eAAe,CAACD,YAAD,CAAf,CAAlB,KACK,IAAIK,KAAK,KAAK,CAAC,CAAf,EAAkBJ,eAAe,CAACN,KAAK,CAACU,KAAD,CAAL,CAAaX,IAAd,CAAf;;GALlB,EAON,CAACK,UAAD,EAAaE,eAAb,EAA8BC,uBAA9B,CAPM,CAAT;AAQD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/outOfTheBox/ItemControlledDrilldown/index.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport Grid from '@elliemae/ds-grid';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';\nimport { ArrowheadDown, ArrowheadRight } from '@elliemae/ds-icons';\nimport { ItemRenderer, ITEM_TYPES } from '../../exported-related/index';\nimport { StyledLabel, StyledDate } from './styled';\nimport { ItemSeparator } from '../ItemSeparator';\nimport { ItemWithDate } from '../ItemWithDate';\nimport { ItemTextLabel } from '../ItemTextLabel';\nimport type { ComponentProps } from '../../index.d';\n\nconst outOfTheBoxSubitemsComponents: Record<string, React.ComponentType<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 = (props: ComponentProps): JSX.Element => {\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 // 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 ItemControlledDrilldown = (props: 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 isOpened,\n items,\n labelDataTestId,\n },\n },\n ctx,\n ctx: {\n leftNavProps: { labelOverflow: leftNavLabelOverflow },\n },\n } = props;\n\n const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;\n\n const arrowIcon = useMemo(() => {\n const Component = isOpened ? ArrowheadDown : ArrowheadRight;\n return <Component width=\"24px\" height=\"18px\" color={['brand-primary', '800']} />;\n }, [isOpened]);\n\n const subitems = useMemo(() => {\n if (!isOpened || !items) return [];\n return items.map((subitem) => <OutOfTheBoxMapSubitem item={subitem} ctx={ctx} key={subitem.dsId} />);\n }, [items, isOpened]);\n\n return (\n <ItemRenderer\n item={{\n ...item,\n itemOpts: {\n ariaExpanded: isOpened,\n ariaRole: 'menuitem',\n ...item.itemOpts,\n openable: !isOpened,\n closable: isOpened,\n },\n CollapsedComponent: null,\n }}\n subitems={subitems}\n minHeight=\"32px\"\n paddingTop=\"8px\"\n >\n <Grid pl=\"xxs\" mt=\"-2px\">\n {arrowIcon}\n </Grid>\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 <Grid pr=\"xxs2\" cols={['auto', 'auto']} alignItems=\"center\">\n <StyledDate ml=\"xxs\" data-testid=\"leftnav-list-item-date\">\n {labelRightSection}\n </StyledDate>\n <Grid pl={RightComponent ? 'xxs' : '0px'} data-testid=\"leftnav-right-component\">\n {RightComponent && <RightComponent ctx={ctx} item={item} />}\n </Grid>\n </Grid>\n </ItemRenderer>\n );\n};\n"],"names":["outOfTheBoxSubitemsComponents","ITEM_TYPES","LEFT_NAV_ITEM_SEPARATOR","ItemSeparator","LEFT_NAV_ITEM_WITH_DATE","ItemWithDate","LEFT_NAV_ITEM_TEXT_LABEL","ItemTextLabel","OutOfTheBoxMapSubitem","props","item","type","Component","ctx","OutOfTheBoxComponent","currentIndent","itemOpts","indent","newItem","React","ItemControlledDrilldown","label","RightComponent","labelRightSection","itemLabelOverflow","labelOverflow","labelBold","labelColor","isOpened","items","labelDataTestId","leftNavLabelOverflow","leftNavProps","arrowIcon","useMemo","ArrowheadDown","ArrowheadRight","subitems","map","subitem","dsId","ItemRenderer","ariaExpanded","ariaRole","openable","closable","CollapsedComponent","Grid","StyledLabel","SimpleTruncatedTooltipText","StyledDate"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/outOfTheBox/ItemControlledDrilldown/index.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport Grid from '@elliemae/ds-grid';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';\nimport { ArrowheadDown, ArrowheadRight } from '@elliemae/ds-icons';\nimport { ItemRenderer, ITEM_TYPES } from '../../exported-related/index';\nimport { StyledLabel, StyledDate } from './styled';\nimport { ItemSeparator } from '../ItemSeparator';\nimport { ItemWithDate } from '../ItemWithDate';\nimport { ItemTextLabel } from '../ItemTextLabel';\nimport type { ComponentProps } from '../../index.d';\n\nconst outOfTheBoxSubitemsComponents: Record<string, React.ComponentType<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 = (props: ComponentProps): JSX.Element => {\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 // 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 ItemControlledDrilldown = (props: 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 isOpened,\n items,\n labelDataTestId,\n },\n },\n ctx,\n ctx: {\n leftNavProps: { labelOverflow: leftNavLabelOverflow },\n },\n } = props;\n\n const labelOverflow = itemLabelOverflow || leftNavLabelOverflow;\n\n const arrowIcon = useMemo(() => {\n const Component = isOpened ? ArrowheadDown : ArrowheadRight;\n return <Component width=\"24px\" height=\"18px\" color={['brand-primary', '800']} />;\n }, [isOpened]);\n\n const subitems = useMemo(() => {\n if (!isOpened || !items) return [];\n return items.map((subitem) => <OutOfTheBoxMapSubitem item={subitem} ctx={ctx} key={subitem.dsId} />);\n }, [items, isOpened]);\n\n return (\n <ItemRenderer\n item={{\n ...item,\n itemOpts: {\n ariaExpanded: isOpened,\n ariaRole: 'menuitem',\n ...item.itemOpts,\n openable: !isOpened,\n closable: isOpened,\n },\n CollapsedComponent: null,\n }}\n subitems={subitems}\n minHeight=\"32px\"\n paddingTop=\"8px\"\n >\n <Grid pl=\"xxs\" mt=\"-2px\">\n {arrowIcon}\n </Grid>\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 <Grid pr=\"xxs2\" cols={['auto', 'auto']} alignItems=\"center\">\n <StyledDate ml=\"xxs\" data-testid=\"leftnav-list-item-date\">\n {labelRightSection}\n </StyledDate>\n <Grid pl={RightComponent ? 'xxs' : '0px'} data-testid=\"leftnav-right-component\">\n {RightComponent && <RightComponent ctx={ctx} item={item} />}\n </Grid>\n </Grid>\n </ItemRenderer>\n );\n};\n"],"names":["outOfTheBoxSubitemsComponents","ITEM_TYPES","LEFT_NAV_ITEM_SEPARATOR","ItemSeparator","LEFT_NAV_ITEM_WITH_DATE","ItemWithDate","LEFT_NAV_ITEM_TEXT_LABEL","ItemTextLabel","OutOfTheBoxMapSubitem","props","item","type","Component","ctx","OutOfTheBoxComponent","currentIndent","itemOpts","indent","newItem","React","ItemControlledDrilldown","label","RightComponent","labelRightSection","itemLabelOverflow","labelOverflow","labelBold","labelColor","isOpened","items","labelDataTestId","leftNavLabelOverflow","leftNavProps","arrowIcon","useMemo","ArrowheadDown","ArrowheadRight","subitems","map","subitem","dsId","ItemRenderer","ariaExpanded","ariaRole","openable","closable","CollapsedComponent","Grid","StyledLabel","SimpleTruncatedTooltipText","StyledDate"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,IAAMA,6BAAkF,2FACrFC,oCAAU,CAACC,uBAD0E,EAChDC,6CADgD,8DAErFF,oCAAU,CAACG,uBAF0E,EAEhDC,2CAFgD,8DAGrFJ,oCAAU,CAACK,wBAH0E,EAG/CC,6CAH+C,yBAAxF;;AAMA,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACC,KAAD,EAAwC;EACpE,IACEC,IADF,GAIID,KAJJ,CACEC,IADF;oBAIID,KAJJ,CAEEC,IAFF;MAEUC,IAFV,eAEUA,IAFV;MAEgBC,SAFhB,eAEgBA,SAFhB;MAGEC,GAHF,GAIIJ,KAJJ,CAGEI,GAHF;;EAMA,IAAI,OAAOF,IAAP,KAAgB,QAAhB,IAA4B,CAAC,CAACX,6BAA6B,CAACW,IAAD,CAA/D,EAAuE;IAAA;;IACrE,IAAMG,oBAAoB,GAAGd,6BAA6B,CAACW,IAAD,CAA1D;IACA,IAAMI,aAAa,8CAAGL,IAAI,CAACM,QAAR,mDAAG,eAAeC,MAAlB,yEAA4B,CAA/C;;IACA,IAAMC,OAAO,mCACRR,IADQ;MAEXM,QAAQ,kCAAON,IAAI,CAACM,QAAZ;QAAsBC,MAAM,EAAEF,aAAa,GAAG;;MAFxD;;IAIA,oBAAOI,wCAAC,oBAAD;MAAsB,IAAI,EAAED,OAA5B;MAAqC,GAAG,EAAEL;MAAjD;GAdkE;;;EAiBpE,oBAAOM,wCAAC,SAAD;IAAW,IAAI,EAAET,IAAjB;IAAuB,GAAG,EAAEG;IAAnC;AACD,CAlBD;;IAoBaO,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACX,KAAD,EAAwC;EAC7E,IACEC,IADF,GAmBID,KAnBJ,CACEC,IADF;6BAmBID,KAnBJ,CAEEC,IAFF,CAGIM,QAHJ;MAIMK,KAJN,wBAIMA,KAJN;MAKMC,cALN,wBAKMA,cALN;MAMMC,iBANN,wBAMMA,iBANN;MAOqBC,iBAPrB,wBAOMC,aAPN;MAQMC,SARN,wBAQMA,SARN;MASMC,UATN,wBASMA,UATN;MAUMC,QAVN,wBAUMA,QAVN;MAWMC,KAXN,wBAWMA,KAXN;MAYMC,eAZN,wBAYMA,eAZN;MAeEjB,GAfF,GAmBIJ,KAnBJ,CAeEI,GAfF;MAiBmCkB,oBAjBnC,GAmBItB,KAnBJ,CAgBEI,GAhBF,CAiBImB,YAjBJ,CAiBoBP,aAjBpB;EAqBA,IAAMA,aAAa,GAAGD,iBAAiB,IAAIO,oBAA3C;EAEA,IAAME,SAAS,GAAGC,aAAO,CAAC,YAAM;IAC9B,IAAMtB,SAAS,GAAGgB,QAAQ,GAAGO,qBAAH,GAAmBC,sBAA7C;IACA,oBAAOjB,wCAAC,SAAD;MAAW,KAAK,EAAC,MAAjB;MAAwB,MAAM,EAAC,MAA/B;MAAsC,KAAK,EAAE,CAAC,eAAD,EAAkB,KAAlB;MAApD;GAFuB,EAGtB,CAACS,QAAD,CAHsB,CAAzB;EAKA,IAAMS,QAAQ,GAAGH,aAAO,CAAC,YAAM;IAC7B,IAAI,CAACN,QAAD,IAAa,CAACC,KAAlB,EAAyB,OAAO,EAAP;IACzB,OAAOA,KAAK,CAACS,GAAN,CAAU,UAACC,OAAD;MAAA,oBAAapB,wCAAC,qBAAD;QAAuB,IAAI,EAAEoB,OAA7B;QAAsC,GAAG,EAAE1B,GAA3C;QAAgD,GAAG,EAAE0B,OAAO,CAACC;QAA1E;KAAV,CAAP;GAFsB,EAGrB,CAACX,KAAD,EAAQD,QAAR,CAHqB,CAAxB;EAKA,oBACET,wCAACsB,+CAAD;IACE,IAAI,kCACC/B,IADD;MAEFM,QAAQ;QACN0B,YAAY,EAAEd,QADR;QAENe,QAAQ,EAAE;SACPjC,IAAI,CAACM,QAHF;QAIN4B,QAAQ,EAAE,CAAChB,QAJL;QAKNiB,QAAQ,EAAEjB;QAPV;MASFkB,kBAAkB,EAAE;MAVxB;IAYE,QAAQ,EAAET,QAZZ;IAaE,SAAS,EAAC,MAbZ;IAcE,UAAU,EAAC;kBAEXlB,wCAAC4B,wBAAD;IAAM,EAAE,EAAC,KAAT;IAAe,EAAE,EAAC;KACfd,SADH,CAhBF,eAmBEd,wCAAC6B,sDAAD;IACE,EAAE,EAAC,MADL;IAEE,eAAalB,eAAe,IAAI,yBAFlC;IAGE,aAAa,EAAEL,aAHjB;IAIE,SAAS,EAAEC,SAJb;IAKE,UAAU,EAAEC;KAEXF,aAAa,KAAK,UAAlB,gBAA+BN,wCAAC8B,iDAAD;IAA4B,KAAK,EAAE5B,KAAnC;IAA0C,SAAS,EAAC;IAAnF,GAAuGA,KAP1G,CAnBF,eA4BEF,wCAAC4B,wBAAD;IAAM,EAAE,EAAC,MAAT;IAAgB,IAAI,EAAE,CAAC,MAAD,EAAS,MAAT,CAAtB;IAAwC,UAAU,EAAC;kBACjD5B,wCAAC+B,qDAAD;IAAY,EAAE,EAAC,KAAf;IAAqB,eAAY;KAC9B3B,iBADH,CADF,eAIEJ,wCAAC4B,wBAAD;IAAM,EAAE,EAAEzB,cAAc,GAAG,KAAH,GAAW,KAAnC;IAA0C,eAAY;KACnDA,cAAc,iBAAIH,wCAAC,cAAD;IAAgB,GAAG,EAAEN,GAArB;IAA0B,IAAI,EAAEH;IADrD,CAJF,CA5BF,CADF;AAuCD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","sources":["../../../../src/outOfTheBox/ItemControlledDrilldown/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport Grid from '@elliemae/ds-grid';\n\nexport const StyledLabel = styled(Grid)<{ labelBold: boolean }>`\n font-size: 13px;\n font-weight: ${(props) =>\n props.labelBold\n ? props.theme.fontWeights.semibold\n : props.theme.fontWeights.regular};\n color: ${({ labelColor, theme }) =>\n labelColor\n ? theme.colors[labelColor[0]][labelColor[1]]\n : theme.colors.neutral[800]};\n line-height: 14px;\n word-break: ${(props) =>\n props.labelOverflow === 'wrapAll' ? 'break-all' : 'normal'};\n`;\n\nexport const StyledDate = styled(Grid)`\n font-size: 12px;\n color: ${(props) => props.theme.colors.neutral[600]};\n line-height: 14px;\n`;\n"],"names":["StyledLabel","styled","Grid","props","labelBold","theme","fontWeights","semibold","regular","labelColor","colors","neutral","labelOverflow","StyledDate"],"mappings":";;;;;;;;;;;;IAGaA,WAAW,gBAAGC,0BAAM,CAACC,wBAAD,CAAT;AAAA;AAAA,qFAEP,UAACC,KAAD;AAAA,SACbA,KAAK,CAACC,SAAN,GACID,KAAK,CAACE,KAAN,CAAYC,WAAZ,CAAwBC,QAD5B,GAEIJ,KAAK,CAACE,KAAN,CAAYC,WAAZ,CAAwBE,OAHf;AAAA,CAFO,EAMb;AAAA,MAAGC,UAAH,QAAGA,UAAH;AAAA,MAAeJ,KAAf,QAAeA,KAAf;AAAA,SACPI,UAAU,GACNJ,KAAK,CAACK,MAAN,CAAaD,UAAU,CAAC,CAAD,CAAvB,EAA4BA,UAAU,CAAC,CAAD,CAAtC,CADM,GAENJ,KAAK,CAACK,MAAN,CAAaC,OAAb,CAAqB,GAArB,CAHG;AAAA,CANa,EAWR,UAACR,KAAD;AAAA,SACZA,KAAK,CAACS,aAAN,KAAwB,SAAxB,GAAoC,WAApC,GAAkD,QADtC;AAAA,CAXQ;IAeXC,UAAU,gBAAGZ,0BAAM,CAACC,wBAAD,CAAT;AAAA;AAAA,oDAEZ,UAACC,KAAD;AAAA,SAAWA,KAAK,CAACE,KAAN,CAAYK,MAAZ,CAAmBC,OAAnB,CAA2B,GAA3B,CAAX;AAAA,CAFY;;;;;"}
1
+ {"version":3,"file":"styled.js","sources":["../../../../src/outOfTheBox/ItemControlledDrilldown/styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport Grid from '@elliemae/ds-grid';\n\nexport const StyledLabel = styled(Grid)<{ labelBold: boolean }>`\n font-size: 13px;\n font-weight: ${(props) =>\n props.labelBold\n ? props.theme.fontWeights.semibold\n : props.theme.fontWeights.regular};\n color: ${({ labelColor, theme }) =>\n labelColor\n ? theme.colors[labelColor[0]][labelColor[1]]\n : theme.colors.neutral[800]};\n line-height: 14px;\n word-break: ${(props) =>\n props.labelOverflow === 'wrapAll' ? 'break-all' : 'normal'};\n`;\n\nexport const StyledDate = styled(Grid)`\n font-size: 12px;\n color: ${(props) => props.theme.colors.neutral[600]};\n line-height: 14px;\n`;\n"],"names":["StyledLabel","styled","Grid","props","labelBold","theme","fontWeights","semibold","regular","labelColor","colors","neutral","labelOverflow","StyledDate"],"mappings":";;;;;;;;;;;;IAGaA,WAAW,gBAAGC,0BAAM,CAACC,wBAAD,CAAT;EAAA;AAAA,qFAEP,UAACC,KAAD;EAAA,OACbA,KAAK,CAACC,SAAN,GACID,KAAK,CAACE,KAAN,CAAYC,WAAZ,CAAwBC,QAD5B,GAEIJ,KAAK,CAACE,KAAN,CAAYC,WAAZ,CAAwBE,OAHf;AAAA,CAFO,EAMb;EAAA,IAAGC,UAAH,QAAGA,UAAH;MAAeJ,KAAf,QAAeA,KAAf;EAAA,OACPI,UAAU,GACNJ,KAAK,CAACK,MAAN,CAAaD,UAAU,CAAC,CAAD,CAAvB,EAA4BA,UAAU,CAAC,CAAD,CAAtC,CADM,GAENJ,KAAK,CAACK,MAAN,CAAaC,OAAb,CAAqB,GAArB,CAHG;AAAA,CANa,EAWR,UAACR,KAAD;EAAA,OACZA,KAAK,CAACS,aAAN,KAAwB,SAAxB,GAAoC,WAApC,GAAkD,QADtC;AAAA,CAXQ;IAeXC,UAAU,gBAAGZ,0BAAM,CAACC,wBAAD,CAAT;EAAA;AAAA,oDAEZ,UAACC,KAAD;EAAA,OAAWA,KAAK,CAACE,KAAN,CAAYK,MAAZ,CAAmBC,OAAnB,CAA2B,GAA3B,CAAX;AAAA,CAFY;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/outOfTheBox/ItemHeader/index.tsx"],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback } from 'react';\nimport Grid from '@elliemae/ds-grid';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';\nimport { ItemRenderer } from '../../exported-related/index';\nimport type { ComponentProps } from '../../index.d';\nimport { StyledLabel, StyledChevronLeft } from './styled';\nimport { CHEVRON_BACK_DS_ID } from '../../exported-related/constants';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst notOpenedShadowStyle = (isSelected: boolean) => (theme: any) =>\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 ItemHeader = (props: ComponentProps): JSX.Element => {\n const {\n item,\n item: {\n dsId,\n itemOpts: { label, RightComponent, BottomComponent, labelDataTestId },\n CollapsedComponent = () => null,\n },\n ctx,\n ctx: {\n leftNavProps: { openedItem, labelOverflow, onItemClick },\n expandedForAnimation,\n setFocusedItem,\n selectedItem,\n selectedParent,\n },\n } = props;\n\n const opened = openedItem === dsId;\n\n const ariaLabel = item.itemOpts.ariaLabel ?? (typeof label === 'string' ? label : 'menuitem');\n\n const isSelected = selectedItem === dsId || selectedParent === dsId;\n\n const shadowStyle = useCallback(\n (opened) => (theme: any) =>\n !opened ? notOpenedShadowStyle(isSelected)(theme) : `box-shadow: inset 4px 0 0 0 #52A6EC`,\n [isSelected, openedItem],\n );\n\n return (\n <ItemRenderer\n item={{\n ...item,\n itemOpts: {\n ariaLabel,\n ariaExpanded: opened,\n ...item.itemOpts,\n openable: expandedForAnimation && !opened,\n closable: expandedForAnimation && opened,\n selectable: !opened,\n },\n }}\n hasBorderBottom\n borderBottomMr={opened ? '12px' : '0px'}\n shadowStyle={shadowStyle}\n >\n <Grid\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 size=\"m\"\n color={['brand-primary', 800]}\n onClick={(e) => {\n onItemClick(item, e);\n }}\n data-testid=\"leftnav-leftcomponent-chevron\"\n tabIndex={0}\n onFocus={(e) => {\n e.stopPropagation();\n setFocusedItem(CHEVRON_BACK_DS_ID);\n }}\n role=\"button\"\n aria-label={`Close ${ariaLabel}`}\n />\n )}\n <CollapsedComponent item={item} ctx={ctx} />\n </Grid>\n <StyledLabel\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 </StyledLabel>\n <Grid\n pl=\"xs\"\n pr={opened ? 'xxs2' : 'xxs'}\n onFocus={(e) => {\n setFocusedItem(null);\n e.stopPropagation();\n }}\n onKeyDown={(e) => e.stopPropagation()}\n data-testid=\"leftnav-right-component\"\n >\n {RightComponent && <RightComponent ctx={ctx} item={item} />}\n </Grid>\n {BottomComponent && (\n <Grid\n style={{ gridColumn: 'span 3' }}\n pb=\"xxxs\"\n pl=\"xxs\"\n pr=\"xxs\"\n onFocus={(e) => {\n setFocusedItem(null);\n e.stopPropagation();\n }}\n onKeyDown={(e) => e.stopPropagation()}\n >\n <BottomComponent ctx={ctx} item={item} />\n </Grid>\n )}\n </ItemRenderer>\n );\n};\n"],"names":["notOpenedShadowStyle","isSelected","theme","colors","brand","ItemHeader","props","item","dsId","itemOpts","label","RightComponent","BottomComponent","labelDataTestId","CollapsedComponent","ctx","leftNavProps","openedItem","labelOverflow","onItemClick","expandedForAnimation","setFocusedItem","selectedItem","selectedParent","opened","ariaLabel","shadowStyle","useCallback","React","ItemRenderer","ariaExpanded","openable","closable","selectable","Grid","StyledChevronLeft","e","stopPropagation","CHEVRON_BACK_DS_ID","StyledLabel","SimpleTruncatedTooltipText","gridColumn"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/outOfTheBox/ItemHeader/index.tsx"],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback } from 'react';\nimport Grid from '@elliemae/ds-grid';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';\nimport { ItemRenderer } from '../../exported-related/index';\nimport type { ComponentProps } from '../../index.d';\nimport { StyledLabel, StyledChevronLeft } from './styled';\nimport { CHEVRON_BACK_DS_ID } from '../../exported-related/constants';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst notOpenedShadowStyle = (isSelected: boolean) => (theme: any) =>\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 ItemHeader = (props: ComponentProps): JSX.Element => {\n const {\n item,\n item: {\n dsId,\n itemOpts: { label, RightComponent, BottomComponent, labelDataTestId },\n CollapsedComponent = () => null,\n },\n ctx,\n ctx: {\n leftNavProps: { openedItem, labelOverflow, onItemClick },\n expandedForAnimation,\n setFocusedItem,\n selectedItem,\n selectedParent,\n },\n } = props;\n\n const opened = openedItem === dsId;\n\n const ariaLabel = item.itemOpts.ariaLabel ?? (typeof label === 'string' ? label : 'menuitem');\n\n const isSelected = selectedItem === dsId || selectedParent === dsId;\n\n const shadowStyle = useCallback(\n (opened) => (theme: any) =>\n !opened ? notOpenedShadowStyle(isSelected)(theme) : `box-shadow: inset 4px 0 0 0 #52A6EC`,\n [isSelected, openedItem],\n );\n\n return (\n <ItemRenderer\n item={{\n ...item,\n itemOpts: {\n ariaLabel,\n ariaExpanded: opened,\n ...item.itemOpts,\n openable: expandedForAnimation && !opened,\n closable: expandedForAnimation && opened,\n selectable: !opened,\n },\n }}\n hasBorderBottom\n borderBottomMr={opened ? '12px' : '0px'}\n shadowStyle={shadowStyle}\n >\n <Grid\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 size=\"m\"\n color={['brand-primary', 800]}\n onClick={(e) => {\n onItemClick(item, e);\n }}\n data-testid=\"leftnav-leftcomponent-chevron\"\n tabIndex={0}\n onFocus={(e) => {\n e.stopPropagation();\n setFocusedItem(CHEVRON_BACK_DS_ID);\n }}\n role=\"button\"\n aria-label={`Close ${ariaLabel}`}\n />\n )}\n <CollapsedComponent item={item} ctx={ctx} />\n </Grid>\n <StyledLabel\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 </StyledLabel>\n <Grid\n pl=\"xs\"\n pr={opened ? 'xxs2' : 'xxs'}\n onFocus={(e) => {\n setFocusedItem(null);\n e.stopPropagation();\n }}\n onKeyDown={(e) => e.stopPropagation()}\n data-testid=\"leftnav-right-component\"\n >\n {RightComponent && <RightComponent ctx={ctx} item={item} />}\n </Grid>\n {BottomComponent && (\n <Grid\n style={{ gridColumn: 'span 3' }}\n pb=\"xxxs\"\n pl=\"xxs\"\n pr=\"xxs\"\n onFocus={(e) => {\n setFocusedItem(null);\n e.stopPropagation();\n }}\n onKeyDown={(e) => e.stopPropagation()}\n >\n <BottomComponent ctx={ctx} item={item} />\n </Grid>\n )}\n </ItemRenderer>\n );\n};\n"],"names":["notOpenedShadowStyle","isSelected","theme","colors","brand","ItemHeader","props","item","dsId","itemOpts","label","RightComponent","BottomComponent","labelDataTestId","CollapsedComponent","ctx","leftNavProps","openedItem","labelOverflow","onItemClick","expandedForAnimation","setFocusedItem","selectedItem","selectedParent","opened","ariaLabel","shadowStyle","useCallback","React","ItemRenderer","ariaExpanded","openable","closable","selectable","Grid","StyledChevronLeft","e","stopPropagation","CHEVRON_BACK_DS_ID","StyledLabel","SimpleTruncatedTooltipText","gridColumn"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","sources":["../../../../src/outOfTheBox/ItemHeader/styled.tsx"],"sourcesContent":["import Grid from '@elliemae/ds-grid';\nimport { ChevronSmallLeft } from '@elliemae/ds-icons';\nimport styled from 'styled-components';\n\nexport const StyledLabel = styled(Grid)`\n font-size: 14px;\n color: ${(props) => props.theme.colors.neutral[800]};\n word-break: ${(props) => (props.labelOverflow === 'wrapAll' ? 'break-all' : 'normal')};\n`;\n\nexport const StyledChevronLeft = styled(ChevronSmallLeft)`\n cursor: pointer;\n :focus {\n outline: 2px solid ${(props) => props.theme.colors.brand[800]};\n }\n`;\n"],"names":["StyledLabel","styled","Grid","props","theme","colors","neutral","labelOverflow","StyledChevronLeft","ChevronSmallLeft","brand"],"mappings":";;;;;;;;;;;;;IAIaA,WAAW,gBAAGC,0BAAM,CAACC,wBAAD,CAAT;AAAA;AAAA,mDAEb,UAACC,KAAD;AAAA,SAAWA,KAAK,CAACC,KAAN,CAAYC,MAAZ,CAAmBC,OAAnB,CAA2B,GAA3B,CAAX;AAAA,CAFa,EAGR,UAACH,KAAD;AAAA,SAAYA,KAAK,CAACI,aAAN,KAAwB,SAAxB,GAAoC,WAApC,GAAkD,QAA9D;AAAA,CAHQ;IAMXC,iBAAiB,gBAAGP,0BAAM,CAACQ,wBAAD,CAAT;AAAA;AAAA,uDAGL,UAACN,KAAD;AAAA,SAAWA,KAAK,CAACC,KAAN,CAAYC,MAAZ,CAAmBK,KAAnB,CAAyB,GAAzB,CAAX;AAAA,CAHK;;;;;"}
1
+ {"version":3,"file":"styled.js","sources":["../../../../src/outOfTheBox/ItemHeader/styled.tsx"],"sourcesContent":["import Grid from '@elliemae/ds-grid';\nimport { ChevronSmallLeft } from '@elliemae/ds-icons';\nimport styled from 'styled-components';\n\nexport const StyledLabel = styled(Grid)`\n font-size: 14px;\n color: ${(props) => props.theme.colors.neutral[800]};\n word-break: ${(props) => (props.labelOverflow === 'wrapAll' ? 'break-all' : 'normal')};\n`;\n\nexport const StyledChevronLeft = styled(ChevronSmallLeft)`\n cursor: pointer;\n :focus {\n outline: 2px solid ${(props) => props.theme.colors.brand[800]};\n }\n`;\n"],"names":["StyledLabel","styled","Grid","props","theme","colors","neutral","labelOverflow","StyledChevronLeft","ChevronSmallLeft","brand"],"mappings":";;;;;;;;;;;;;IAIaA,WAAW,gBAAGC,0BAAM,CAACC,wBAAD,CAAT;EAAA;AAAA,mDAEb,UAACC,KAAD;EAAA,OAAWA,KAAK,CAACC,KAAN,CAAYC,MAAZ,CAAmBC,OAAnB,CAA2B,GAA3B,CAAX;AAAA,CAFa,EAGR,UAACH,KAAD;EAAA,OAAYA,KAAK,CAACI,aAAN,KAAwB,SAAxB,GAAoC,WAApC,GAAkD,QAA9D;AAAA,CAHQ;IAMXC,iBAAiB,gBAAGP,0BAAM,CAACQ,wBAAD,CAAT;EAAA;AAAA,uDAGL,UAACN,KAAD;EAAA,OAAWA,KAAK,CAACC,KAAN,CAAYC,MAAZ,CAAmBK,KAAnB,CAAyB,GAAzB,CAAX;AAAA,CAHK;;;;;"}