@servicetitan/navigation 12.0.2 → 13.0.0-canary.256.b43c6d7.0

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 (201) hide show
  1. package/dist/components/profile-dropdown/{profile-dropdown-tiny.stories.d.ts → profile-dropdown-legacy.stories.d.ts} +1 -1
  2. package/dist/components/profile-dropdown/profile-dropdown-legacy.stories.d.ts.map +1 -0
  3. package/dist/components/profile-dropdown/profile-dropdown-stacked.stories.d.ts.map +1 -1
  4. package/dist/components/profile-dropdown/profile-dropdown.d.ts.map +1 -1
  5. package/dist/components/profile-dropdown/profile-dropdown.js +5 -8
  6. package/dist/components/profile-dropdown/profile-dropdown.js.map +1 -1
  7. package/dist/components/profile-dropdown/profile-dropdown.stories.d.ts.map +1 -1
  8. package/dist/components/titan-layout/interface.d.ts +14 -12
  9. package/dist/components/titan-layout/interface.d.ts.map +1 -1
  10. package/dist/components/titan-layout/interface.js.map +1 -1
  11. package/dist/components/titan-layout/layout-header-dark.js +1 -1
  12. package/dist/components/titan-layout/layout-header-dark.js.map +1 -1
  13. package/dist/components/titan-layout/layout-header-links.d.ts +3 -3
  14. package/dist/components/titan-layout/layout-header-links.d.ts.map +1 -1
  15. package/dist/components/titan-layout/layout-header-links.js.map +1 -1
  16. package/dist/components/titan-layout/layout-header.d.ts +2 -2
  17. package/dist/components/titan-layout/layout-header.d.ts.map +1 -1
  18. package/dist/components/titan-layout/layout-header.js.map +1 -1
  19. package/dist/components/titan-layout/layout-header.module.less +5 -0
  20. package/dist/components/titan-layout/layout-profile.d.ts.map +1 -1
  21. package/dist/components/titan-layout/layout-profile.js +1 -7
  22. package/dist/components/titan-layout/layout-profile.js.map +1 -1
  23. package/dist/components/titan-layout/layout-sidebar-links-internal.d.ts +10 -17
  24. package/dist/components/titan-layout/layout-sidebar-links-internal.d.ts.map +1 -1
  25. package/dist/components/titan-layout/layout-sidebar-links-internal.js +34 -41
  26. package/dist/components/titan-layout/layout-sidebar-links-internal.js.map +1 -1
  27. package/dist/components/titan-layout/layout-sidebar-links.d.ts +3 -3
  28. package/dist/components/titan-layout/layout-sidebar-links.d.ts.map +1 -1
  29. package/dist/components/titan-layout/layout-sidebar-links.js +13 -13
  30. package/dist/components/titan-layout/layout-sidebar-links.js.map +1 -1
  31. package/dist/components/titan-layout/layout-sidebar.js +5 -3
  32. package/dist/components/titan-layout/layout-sidebar.js.map +1 -1
  33. package/dist/components/titan-layout/titan-layout-links.d.ts +5 -0
  34. package/dist/components/titan-layout/titan-layout-links.d.ts.map +1 -0
  35. package/dist/components/titan-layout/titan-layout-links.js +34 -0
  36. package/dist/components/titan-layout/titan-layout-links.js.map +1 -0
  37. package/dist/components/titan-layout/titan-layout.d.ts +2 -3
  38. package/dist/components/titan-layout/titan-layout.d.ts.map +1 -1
  39. package/dist/components/titan-layout/titan-layout.js +3 -3
  40. package/dist/components/titan-layout/titan-layout.js.map +1 -1
  41. package/dist/components/titan-layout/titan-layout.stories.d.ts.map +1 -1
  42. package/dist/index.d.ts +1 -5
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +0 -4
  45. package/dist/index.js.map +1 -1
  46. package/dist/test/data.d.ts +27 -2
  47. package/dist/test/data.d.ts.map +1 -1
  48. package/dist/test/data.js +181 -27
  49. package/dist/test/data.js.map +1 -1
  50. package/dist/utils/navigation-context.d.ts +3 -22
  51. package/dist/utils/navigation-context.d.ts.map +1 -1
  52. package/dist/utils/navigation-context.js +2 -10
  53. package/dist/utils/navigation-context.js.map +1 -1
  54. package/dist/utils/navigation.d.ts +2 -5
  55. package/dist/utils/navigation.d.ts.map +1 -1
  56. package/dist/utils/navigation.js.map +1 -1
  57. package/package.json +2 -2
  58. package/src/components/profile-dropdown/{profile-dropdown-tiny.stories.tsx → profile-dropdown-legacy.stories.tsx} +6 -6
  59. package/src/components/profile-dropdown/profile-dropdown-stacked.stories.tsx +12 -4
  60. package/src/components/profile-dropdown/profile-dropdown.stories.tsx +16 -9
  61. package/src/components/profile-dropdown/profile-dropdown.tsx +2 -11
  62. package/src/components/titan-layout/interface.ts +19 -15
  63. package/src/components/titan-layout/layout-header-dark.tsx +1 -1
  64. package/src/components/titan-layout/layout-header-links.tsx +3 -6
  65. package/src/components/titan-layout/layout-header.module.less +5 -0
  66. package/src/components/titan-layout/layout-header.tsx +2 -2
  67. package/src/components/titan-layout/layout-profile.tsx +2 -6
  68. package/src/components/titan-layout/layout-sidebar-links-internal.tsx +69 -81
  69. package/src/components/titan-layout/layout-sidebar-links.tsx +38 -24
  70. package/src/components/titan-layout/layout-sidebar.tsx +1 -1
  71. package/src/components/titan-layout/titan-layout-links.tsx +34 -0
  72. package/src/components/titan-layout/titan-layout.stories.tsx +34 -33
  73. package/src/components/titan-layout/titan-layout.tsx +5 -4
  74. package/src/index.ts +1 -11
  75. package/src/test/data.tsx +152 -39
  76. package/src/utils/navigation-context.tsx +9 -35
  77. package/src/utils/navigation.ts +3 -7
  78. package/dist/components/header-navigation/header-navigation-content.d.ts +0 -30
  79. package/dist/components/header-navigation/header-navigation-content.d.ts.map +0 -1
  80. package/dist/components/header-navigation/header-navigation-content.js +0 -58
  81. package/dist/components/header-navigation/header-navigation-content.js.map +0 -1
  82. package/dist/components/header-navigation/header-navigation-extra-stacked.stories.d.ts +0 -9
  83. package/dist/components/header-navigation/header-navigation-extra-stacked.stories.d.ts.map +0 -1
  84. package/dist/components/header-navigation/header-navigation-extra.stories.d.ts +0 -12
  85. package/dist/components/header-navigation/header-navigation-extra.stories.d.ts.map +0 -1
  86. package/dist/components/header-navigation/header-navigation-links.d.ts +0 -11
  87. package/dist/components/header-navigation/header-navigation-links.d.ts.map +0 -1
  88. package/dist/components/header-navigation/header-navigation-links.js +0 -62
  89. package/dist/components/header-navigation/header-navigation-links.js.map +0 -1
  90. package/dist/components/header-navigation/header-navigation-stacked.stories.d.ts +0 -12
  91. package/dist/components/header-navigation/header-navigation-stacked.stories.d.ts.map +0 -1
  92. package/dist/components/header-navigation/header-navigation-stories.module.less +0 -6
  93. package/dist/components/header-navigation/header-navigation-stories.module.less.d.ts +0 -3
  94. package/dist/components/header-navigation/header-navigation.d.ts +0 -59
  95. package/dist/components/header-navigation/header-navigation.d.ts.map +0 -1
  96. package/dist/components/header-navigation/header-navigation.js +0 -228
  97. package/dist/components/header-navigation/header-navigation.js.map +0 -1
  98. package/dist/components/header-navigation/header-navigation.module.less +0 -260
  99. package/dist/components/header-navigation/header-navigation.module.less.d.ts +0 -22
  100. package/dist/components/header-navigation/header-navigation.stories.d.ts +0 -12
  101. package/dist/components/header-navigation/header-navigation.stories.d.ts.map +0 -1
  102. package/dist/components/header-navigation/index.d.ts +0 -2
  103. package/dist/components/header-navigation/index.d.ts.map +0 -1
  104. package/dist/components/header-navigation/index.js +0 -3
  105. package/dist/components/header-navigation/index.js.map +0 -1
  106. package/dist/components/header-navigation/with-tooltip.d.ts +0 -4
  107. package/dist/components/header-navigation/with-tooltip.d.ts.map +0 -1
  108. package/dist/components/header-navigation/with-tooltip.js +0 -10
  109. package/dist/components/header-navigation/with-tooltip.js.map +0 -1
  110. package/dist/components/layout.stories.d.ts +0 -13
  111. package/dist/components/layout.stories.d.ts.map +0 -1
  112. package/dist/components/left-navigation/header-navigation-extra-tiny.stories.d.ts +0 -9
  113. package/dist/components/left-navigation/header-navigation-extra-tiny.stories.d.ts.map +0 -1
  114. package/dist/components/left-navigation/header-navigation-tiny-links.d.ts +0 -18
  115. package/dist/components/left-navigation/header-navigation-tiny-links.d.ts.map +0 -1
  116. package/dist/components/left-navigation/header-navigation-tiny-links.js +0 -79
  117. package/dist/components/left-navigation/header-navigation-tiny-links.js.map +0 -1
  118. package/dist/components/left-navigation/header-navigation-tiny.d.ts +0 -23
  119. package/dist/components/left-navigation/header-navigation-tiny.d.ts.map +0 -1
  120. package/dist/components/left-navigation/header-navigation-tiny.js +0 -32
  121. package/dist/components/left-navigation/header-navigation-tiny.js.map +0 -1
  122. package/dist/components/left-navigation/header-navigation-tiny.module.less +0 -117
  123. package/dist/components/left-navigation/header-navigation-tiny.module.less.d.ts +0 -15
  124. package/dist/components/left-navigation/header-navigation-tiny.stories.d.ts +0 -12
  125. package/dist/components/left-navigation/header-navigation-tiny.stories.d.ts.map +0 -1
  126. package/dist/components/left-navigation/index.d.ts +0 -5
  127. package/dist/components/left-navigation/index.d.ts.map +0 -1
  128. package/dist/components/left-navigation/index.js +0 -5
  129. package/dist/components/left-navigation/index.js.map +0 -1
  130. package/dist/components/left-navigation/interface-internal.d.ts +0 -10
  131. package/dist/components/left-navigation/interface-internal.d.ts.map +0 -1
  132. package/dist/components/left-navigation/interface-internal.js +0 -3
  133. package/dist/components/left-navigation/interface-internal.js.map +0 -1
  134. package/dist/components/left-navigation/interface.d.ts +0 -20
  135. package/dist/components/left-navigation/interface.d.ts.map +0 -1
  136. package/dist/components/left-navigation/interface.js +0 -3
  137. package/dist/components/left-navigation/interface.js.map +0 -1
  138. package/dist/components/left-navigation/side-navigation-context.d.ts +0 -8
  139. package/dist/components/left-navigation/side-navigation-context.d.ts.map +0 -1
  140. package/dist/components/left-navigation/side-navigation-context.js +0 -8
  141. package/dist/components/left-navigation/side-navigation-context.js.map +0 -1
  142. package/dist/components/left-navigation/side-navigation-links-internal.d.ts +0 -28
  143. package/dist/components/left-navigation/side-navigation-links-internal.d.ts.map +0 -1
  144. package/dist/components/left-navigation/side-navigation-links-internal.js +0 -89
  145. package/dist/components/left-navigation/side-navigation-links-internal.js.map +0 -1
  146. package/dist/components/left-navigation/side-navigation-links.d.ts +0 -6
  147. package/dist/components/left-navigation/side-navigation-links.d.ts.map +0 -1
  148. package/dist/components/left-navigation/side-navigation-links.js +0 -48
  149. package/dist/components/left-navigation/side-navigation-links.js.map +0 -1
  150. package/dist/components/left-navigation/side-navigation.d.ts +0 -29
  151. package/dist/components/left-navigation/side-navigation.d.ts.map +0 -1
  152. package/dist/components/left-navigation/side-navigation.js +0 -411
  153. package/dist/components/left-navigation/side-navigation.js.map +0 -1
  154. package/dist/components/left-navigation/side-navigation.module.less +0 -530
  155. package/dist/components/left-navigation/side-navigation.module.less.d.ts +0 -48
  156. package/dist/components/left-navigation/side-navigation.stories.d.ts +0 -17
  157. package/dist/components/left-navigation/side-navigation.stories.d.ts.map +0 -1
  158. package/dist/components/left-navigation/with-tooltip.d.ts +0 -4
  159. package/dist/components/left-navigation/with-tooltip.d.ts.map +0 -1
  160. package/dist/components/left-navigation/with-tooltip.js +0 -15
  161. package/dist/components/left-navigation/with-tooltip.js.map +0 -1
  162. package/dist/components/links.d.ts +0 -5
  163. package/dist/components/links.d.ts.map +0 -1
  164. package/dist/components/links.js +0 -35
  165. package/dist/components/links.js.map +0 -1
  166. package/dist/components/profile-dropdown/profile-dropdown-tiny.stories.d.ts.map +0 -1
  167. package/dist/components/titan-layout/layout-profile.stories.d.ts +0 -13
  168. package/dist/components/titan-layout/layout-profile.stories.d.ts.map +0 -1
  169. package/src/components/header-navigation/header-navigation-content.tsx +0 -120
  170. package/src/components/header-navigation/header-navigation-extra-stacked.stories.tsx +0 -19
  171. package/src/components/header-navigation/header-navigation-extra.stories.tsx +0 -142
  172. package/src/components/header-navigation/header-navigation-links.tsx +0 -141
  173. package/src/components/header-navigation/header-navigation-stacked.stories.tsx +0 -146
  174. package/src/components/header-navigation/header-navigation-stories.module.less +0 -6
  175. package/src/components/header-navigation/header-navigation-stories.module.less.d.ts +0 -3
  176. package/src/components/header-navigation/header-navigation.module.less +0 -260
  177. package/src/components/header-navigation/header-navigation.module.less.d.ts +0 -22
  178. package/src/components/header-navigation/header-navigation.stories.tsx +0 -165
  179. package/src/components/header-navigation/header-navigation.tsx +0 -327
  180. package/src/components/header-navigation/index.ts +0 -1
  181. package/src/components/header-navigation/with-tooltip.tsx +0 -15
  182. package/src/components/layout.stories.tsx +0 -103
  183. package/src/components/left-navigation/header-navigation-extra-tiny.stories.tsx +0 -21
  184. package/src/components/left-navigation/header-navigation-tiny-links.tsx +0 -145
  185. package/src/components/left-navigation/header-navigation-tiny.module.less +0 -117
  186. package/src/components/left-navigation/header-navigation-tiny.module.less.d.ts +0 -15
  187. package/src/components/left-navigation/header-navigation-tiny.stories.tsx +0 -178
  188. package/src/components/left-navigation/header-navigation-tiny.tsx +0 -65
  189. package/src/components/left-navigation/index.ts +0 -4
  190. package/src/components/left-navigation/interface-internal.ts +0 -11
  191. package/src/components/left-navigation/interface.ts +0 -26
  192. package/src/components/left-navigation/side-navigation-context.tsx +0 -13
  193. package/src/components/left-navigation/side-navigation-links-internal.tsx +0 -151
  194. package/src/components/left-navigation/side-navigation-links.tsx +0 -57
  195. package/src/components/left-navigation/side-navigation.module.less +0 -530
  196. package/src/components/left-navigation/side-navigation.module.less.d.ts +0 -48
  197. package/src/components/left-navigation/side-navigation.stories.tsx +0 -226
  198. package/src/components/left-navigation/side-navigation.tsx +0 -543
  199. package/src/components/left-navigation/with-tooltip.tsx +0 -16
  200. package/src/components/links.tsx +0 -54
  201. package/src/components/titan-layout/layout-profile.stories.tsx +0 -46
@@ -1,27 +1,8 @@
1
- import { FC, HTMLAttributeAnchorTarget, ReactNode } from 'react';
2
- import { NavigationLinkData } from './navigation';
3
- export interface NavLinkComponentPropsStrict {
1
+ import { ComponentPropsWithoutRef, FC } from 'react';
2
+ export type NavLinkComponentProps = ComponentPropsWithoutRef<'a'> & {
4
3
  to: string;
5
- title?: string;
6
- className?: string;
7
4
  activeClassName?: string;
8
- children: ReactNode;
9
5
  isActive?: (pathname: string) => boolean;
10
- target?: HTMLAttributeAnchorTarget;
11
- }
12
- export interface NavLinkComponentProps extends NavLinkComponentPropsStrict {
13
- [key: string]: any;
14
- }
6
+ };
15
7
  export declare const DefaultNavLinkComponent: FC<NavLinkComponentProps>;
16
- export interface NavigationLocationInfo {
17
- pathname: string;
18
- }
19
- export type NavigationActiveLinkMatcher = (location: NavigationLocationInfo, link: NavigationLinkData) => boolean;
20
- export interface NavigationLocationContextType {
21
- location: NavigationLocationInfo;
22
- isLinkActive: NavigationActiveLinkMatcher;
23
- }
24
- export declare const NavigationComponentContext: import("react").Context<FC<NavLinkComponentProps>>;
25
- export declare const NavigationLegacyContext: import("react").Context<boolean>;
26
- export declare const NavigationLocationContext: import("react").Context<NavigationLocationContextType>;
27
8
  //# sourceMappingURL=navigation-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-context.d.ts","sourceRoot":"","sources":["../../src/utils/navigation-context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,yBAAyB,EAAE,SAAS,EAAiB,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,WAAW,2BAA2B;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IACzC,MAAM,CAAC,EAAE,yBAAyB,CAAC;CACtC;AAED,MAAM,WAAW,qBAAsB,SAAQ,2BAA2B;IACtE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,eAAO,MAAM,uBAAuB,EAAE,EAAE,CAAC,qBAAqB,CAK5B,CAAC;AAEnC,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,2BAA2B,GAAG,CACtC,QAAQ,EAAE,sBAAsB,EAChC,IAAI,EAAE,kBAAkB,KACvB,OAAO,CAAC;AAEb,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,EAAE,sBAAsB,CAAC;IACjC,YAAY,EAAE,2BAA2B,CAAC;CAC7C;AAED,eAAO,MAAM,0BAA0B,oDAC8B,CAAC;AACtE,eAAO,MAAM,uBAAuB,kCAAuB,CAAC;AAC5D,eAAO,MAAM,yBAAyB,wDAGpC,CAAC"}
1
+ {"version":3,"file":"navigation-context.d.ts","sourceRoot":"","sources":["../../src/utils/navigation-context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAErD,MAAM,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,GAAG,CAAC,GAAG;IAChE,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;CAC5C,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,EAAE,CAAC,qBAAqB,CAU7D,CAAC"}
@@ -1,16 +1,8 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { createContext } from 'react';
3
- export const DefaultNavLinkComponent = ({ children, activeClassName, isActive, ...props })=>/*#__PURE__*/ _jsx("a", {
2
+ export const DefaultNavLinkComponent = ({ children, to, activeClassName, isActive, ...props })=>/*#__PURE__*/ _jsx("a", {
3
+ href: to,
4
4
  ...props,
5
5
  children: children
6
6
  });
7
- export const NavigationComponentContext = /*#__PURE__*/ createContext(DefaultNavLinkComponent);
8
- export const NavigationLegacyContext = /*#__PURE__*/ createContext(false);
9
- export const NavigationLocationContext = /*#__PURE__*/ createContext({
10
- location: {
11
- pathname: ''
12
- },
13
- isLinkActive: ()=>false
14
- });
15
7
 
16
8
  //# sourceMappingURL=navigation-context.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/navigation-context.tsx"],"sourcesContent":["import { FC, HTMLAttributeAnchorTarget, ReactNode, createContext } from 'react';\nimport { NavigationLinkData } from './navigation';\n\nexport interface NavLinkComponentPropsStrict {\n to: string;\n title?: string;\n className?: string;\n activeClassName?: string;\n children: ReactNode;\n isActive?: (pathname: string) => boolean;\n target?: HTMLAttributeAnchorTarget;\n}\n\nexport interface NavLinkComponentProps extends NavLinkComponentPropsStrict {\n [key: string]: any;\n}\n\nexport const DefaultNavLinkComponent: FC<NavLinkComponentProps> = ({\n children,\n activeClassName,\n isActive,\n ...props\n}) => <a {...props}>{children}</a>;\n\nexport interface NavigationLocationInfo {\n pathname: string;\n}\n\nexport type NavigationActiveLinkMatcher = (\n location: NavigationLocationInfo,\n link: NavigationLinkData\n) => boolean;\n\nexport interface NavigationLocationContextType {\n location: NavigationLocationInfo;\n isLinkActive: NavigationActiveLinkMatcher;\n}\n\nexport const NavigationComponentContext =\n createContext<FC<NavLinkComponentProps>>(DefaultNavLinkComponent);\nexport const NavigationLegacyContext = createContext(false);\nexport const NavigationLocationContext = createContext<NavigationLocationContextType>({\n location: { pathname: '' },\n isLinkActive: () => false,\n});\n"],"names":["createContext","DefaultNavLinkComponent","children","activeClassName","isActive","props","a","NavigationComponentContext","NavigationLegacyContext","NavigationLocationContext","location","pathname","isLinkActive"],"mappings":";AAAA,SAAmDA,aAAa,QAAQ,QAAQ;AAiBhF,OAAO,MAAMC,0BAAqD,CAAC,EAC/DC,QAAQ,EACRC,eAAe,EACfC,QAAQ,EACR,GAAGC,OACN,iBAAK,KAACC;QAAG,GAAGD,KAAK;kBAAGH;OAAc;AAgBnC,OAAO,MAAMK,2CACTP,cAAyCC,yBAAyB;AACtE,OAAO,MAAMO,wCAA0BR,cAAc,OAAO;AAC5D,OAAO,MAAMS,0CAA4BT,cAA6C;IAClFU,UAAU;QAAEC,UAAU;IAAG;IACzBC,cAAc,IAAM;AACxB,GAAG"}
1
+ {"version":3,"sources":["../../src/utils/navigation-context.tsx"],"sourcesContent":["import { ComponentPropsWithoutRef, FC } from 'react';\n\nexport type NavLinkComponentProps = ComponentPropsWithoutRef<'a'> & {\n to: string;\n activeClassName?: string;\n isActive?: (pathname: string) => boolean;\n};\n\nexport const DefaultNavLinkComponent: FC<NavLinkComponentProps> = ({\n children,\n to,\n activeClassName,\n isActive,\n ...props\n}) => (\n <a href={to} {...props}>\n {children}\n </a>\n);\n"],"names":["DefaultNavLinkComponent","children","to","activeClassName","isActive","props","a","href"],"mappings":";AAQA,OAAO,MAAMA,0BAAqD,CAAC,EAC/DC,QAAQ,EACRC,EAAE,EACFC,eAAe,EACfC,QAAQ,EACR,GAAGC,OACN,iBACG,KAACC;QAAEC,MAAML;QAAK,GAAGG,KAAK;kBACjBJ;OAEP"}
@@ -1,17 +1,12 @@
1
1
  import { IconProps } from '@servicetitan/anvil2';
2
- import { FC } from 'react';
3
2
  import { CounterTagData, CounterTagValue } from './counter-tag';
4
3
  export interface NavigationItemData extends NavigationLinkData {
5
4
  /** flag if the link is not shown (based on FG and/or user permissions) */
6
5
  isHidden?: boolean;
7
- /** custom className (can be used for mdi icons) */
8
- iconClassName?: string;
9
6
  /** svg icon (anvil2) of inactive item */
10
7
  icon: IconProps['svg'] | undefined;
11
8
  /** svg icon (anvil2) of active item */
12
9
  iconActive: IconProps['svg'] | undefined;
13
- /** icon component of item (<svg />) */
14
- iconComponent?: FC;
15
10
  /** item tag (optional). shown if it is set and true or greater than 0 */
16
11
  counter?: CounterTagValue;
17
12
  tag?: CounterTagData;
@@ -19,6 +14,8 @@ export interface NavigationItemData extends NavigationLinkData {
19
14
  className?: string;
20
15
  /** optional submenu of link item */
21
16
  submenu?: NavigationSubmenuData;
17
+ iconClassName?: never;
18
+ iconComponent?: never;
22
19
  }
23
20
  export interface NavigationLinkData {
24
21
  /** link id */
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/utils/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhE,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC1D,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,yCAAyC;IACzC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IAEnC,uCAAuC;IACvC,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IAEzC,uCAAuC;IACvC,aAAa,CAAC,EAAE,EAAE,CAAC;IAEnB,yEAAyE;IACzE,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,GAAG,CAAC,EAAE,cAAc,CAAC;IAErB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,oCAAoC;IACpC,OAAO,CAAC,EAAE,qBAAqB,CAAC;CACnC;AAED,MAAM,WAAW,kBAAkB;IAC/B,cAAc;IACd,EAAE,EAAE,MAAM,CAAC;IAEX,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;IAEX,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IAEd,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,qBAAqB;IAClC,qBAAqB;IACrB,MAAM,EAAE,0BAA0B,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,yBAA0B,SAAQ,kBAAkB;IACjE,+EAA+E;IAC/E,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,GAAG,CAAC,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,0BAA0B;IACvC,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IAEd,0BAA0B;IAC1B,KAAK,EAAE,yBAAyB,EAAE,CAAC;CACtC"}
1
+ {"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/utils/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhE,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC1D,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,yCAAyC;IACzC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IAEnC,uCAAuC;IACvC,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;IAEzC,yEAAyE;IACzE,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,GAAG,CAAC,EAAE,cAAc,CAAC;IAErB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,oCAAoC;IACpC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAEhC,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,aAAa,CAAC,EAAE,KAAK,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IAC/B,cAAc;IACd,EAAE,EAAE,MAAM,CAAC;IAEX,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;IAEX,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IAEd,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,qBAAqB;IAClC,qBAAqB;IACrB,MAAM,EAAE,0BAA0B,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,yBAA0B,SAAQ,kBAAkB;IACjE,+EAA+E;IAC/E,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,GAAG,CAAC,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,0BAA0B;IACvC,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IAEd,0BAA0B;IAC1B,KAAK,EAAE,yBAAyB,EAAE,CAAC;CACtC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/navigation.ts"],"sourcesContent":["import { IconProps } from '@servicetitan/anvil2';\nimport { FC } from 'react';\nimport { CounterTagData, CounterTagValue } from './counter-tag';\n\nexport interface NavigationItemData extends NavigationLinkData {\n /** flag if the link is not shown (based on FG and/or user permissions) */\n isHidden?: boolean;\n\n /** custom className (can be used for mdi icons) */\n iconClassName?: string;\n\n /** svg icon (anvil2) of inactive item */\n icon: IconProps['svg'] | undefined;\n\n /** svg icon (anvil2) of active item */\n iconActive: IconProps['svg'] | undefined;\n\n /** icon component of item (<svg />) */\n iconComponent?: FC;\n\n /** item tag (optional). shown if it is set and true or greater than 0 */\n counter?: CounterTagValue;\n tag?: CounterTagData;\n\n /** class name of link item */\n className?: string;\n\n /** optional submenu of link item */\n submenu?: NavigationSubmenuData;\n}\n\nexport interface NavigationLinkData {\n /** link id */\n id: string;\n\n /** link href */\n to: string;\n\n /** link title */\n title: string;\n\n /** callback to return active state. By default, it compares link href with current pathname */\n isActive?: boolean | ((pathname: string) => boolean);\n}\n\nexport interface NavigationSubmenuData {\n /** submenu groups */\n groups: NavigationSubmenuGroupData[];\n}\n\nexport interface NavigationSubmenuItemData extends NavigationLinkData {\n /** item tag (optional) value. shown if it is set and true or greater than 0 */\n counter?: CounterTagValue;\n tag?: CounterTagData;\n}\n\nexport interface NavigationSubmenuGroupData {\n /** submenu group title */\n title: string;\n\n /** submenu group links */\n links: NavigationSubmenuItemData[];\n}\n"],"names":[],"mappings":"AAwDA,WAMC"}
1
+ {"version":3,"sources":["../../src/utils/navigation.ts"],"sourcesContent":["import { IconProps } from '@servicetitan/anvil2';\nimport { CounterTagData, CounterTagValue } from './counter-tag';\n\nexport interface NavigationItemData extends NavigationLinkData {\n /** flag if the link is not shown (based on FG and/or user permissions) */\n isHidden?: boolean;\n\n /** svg icon (anvil2) of inactive item */\n icon: IconProps['svg'] | undefined;\n\n /** svg icon (anvil2) of active item */\n iconActive: IconProps['svg'] | undefined;\n\n /** item tag (optional). shown if it is set and true or greater than 0 */\n counter?: CounterTagValue;\n tag?: CounterTagData;\n\n /** class name of link item */\n className?: string;\n\n /** optional submenu of link item */\n submenu?: NavigationSubmenuData;\n\n iconClassName?: never;\n iconComponent?: never;\n}\n\nexport interface NavigationLinkData {\n /** link id */\n id: string;\n\n /** link href */\n to: string;\n\n /** link title */\n title: string;\n\n /** callback to return active state. By default, it compares link href with current pathname */\n isActive?: boolean | ((pathname: string) => boolean);\n}\n\nexport interface NavigationSubmenuData {\n /** submenu groups */\n groups: NavigationSubmenuGroupData[];\n}\n\nexport interface NavigationSubmenuItemData extends NavigationLinkData {\n /** item tag (optional) value. shown if it is set and true or greater than 0 */\n counter?: CounterTagValue;\n tag?: CounterTagData;\n}\n\nexport interface NavigationSubmenuGroupData {\n /** submenu group title */\n title: string;\n\n /** submenu group links */\n links: NavigationSubmenuItemData[];\n}\n"],"names":[],"mappings":"AAoDA,WAMC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/navigation",
3
- "version": "12.0.2",
3
+ "version": "13.0.0-canary.256.b43c6d7.0",
4
4
  "description": "Navigation components",
5
5
  "repository": {
6
6
  "type": "git",
@@ -42,5 +42,5 @@
42
42
  "less": true,
43
43
  "webpack": false
44
44
  },
45
- "gitHead": "037d391733c6dd61d96503860e6090881cface0b"
45
+ "gitHead": "b43c6d785de8f5055e173ac84493359f502dc296"
46
46
  }
@@ -1,16 +1,16 @@
1
- import { withAnvil, withMemoryRouter } from '../../test/data';
2
- import { HeaderNavigationTiny } from '../left-navigation';
1
+ import { NavLinkMock, withAnvil, withMemoryRouter } from '../../test/data';
2
+ import { TitanLayout } from '../titan-layout';
3
3
  import { ProfileDropdown } from './profile-dropdown';
4
4
 
5
- const withHeaderNavigationTiny = (Story: any) => (
6
- <HeaderNavigationTiny className="border" right={<Story />} />
5
+ const withLayout = (Story: any) => (
6
+ <TitanLayout navVariant="top" profile={<Story />} navigationComponent={NavLinkMock} />
7
7
  );
8
8
 
9
9
  export default {
10
- title: 'Navigation/ProfileDropdown/Tiny',
10
+ title: 'Navigation/ProfileDropdown/Legacy',
11
11
  component: ProfileDropdown,
12
12
  parameters: {},
13
- decorators: [withMemoryRouter, withAnvil, withHeaderNavigationTiny],
13
+ decorators: [withMemoryRouter, withAnvil, withLayout],
14
14
  };
15
15
 
16
16
  export {
@@ -1,14 +1,22 @@
1
- import { withAnvil, withMemoryRouter } from '../../test/data';
2
- import { HeaderNavigationStacked } from '../header-navigation';
1
+ import { NavLinkMock, navItems, withAnvil, withMemoryRouter } from '../../test/data';
2
+ import { TitanLayout } from '../titan-layout';
3
3
  import { ProfileDropdown } from './profile-dropdown';
4
4
 
5
- const withHeaderNavigationStacked = (Story: any) => <HeaderNavigationStacked right={<Story />} />;
5
+ const withStackedLayout = (Story: any) => (
6
+ <TitanLayout
7
+ navVariant="top"
8
+ top={<div />}
9
+ profile={<Story />}
10
+ navigationMainItems={[navItems.accounting]}
11
+ navigationComponent={NavLinkMock}
12
+ />
13
+ );
6
14
 
7
15
  export default {
8
16
  title: 'Navigation/ProfileDropdown/Stacked',
9
17
  component: ProfileDropdown,
10
18
  parameters: {},
11
- decorators: [withMemoryRouter, withAnvil, withHeaderNavigationStacked],
19
+ decorators: [withStackedLayout, withMemoryRouter, withAnvil],
12
20
  };
13
21
 
14
22
  export {
@@ -1,24 +1,22 @@
1
1
  import { Button } from '@servicetitan/design-system';
2
- import { withAnvil, withMemoryRouter } from '../../test/data';
3
- import { HeaderNavigation } from '../header-navigation';
2
+ import { NavLinkMock, withAnvil, withMemoryRouter } from '../../test/data';
3
+ import { TitanLayout } from '../titan-layout';
4
4
  import { ProfileDropdown } from './profile-dropdown';
5
5
 
6
- const withHeaderNavigation = (Story: any) => (
7
- <HeaderNavigation>
8
- <Story />
9
- </HeaderNavigation>
6
+ const withLegacyLayout = (Story: any) => (
7
+ <TitanLayout navigationComponent={NavLinkMock} profile={<Story />} />
10
8
  );
11
9
 
12
10
  export default {
13
- title: 'Navigation/ProfileDropdown/Legacy',
11
+ title: 'Navigation/ProfileDropdown/Default',
14
12
  component: ProfileDropdown,
15
13
  parameters: {},
16
- decorators: [withMemoryRouter, withAnvil, withHeaderNavigation],
14
+ decorators: [withLegacyLayout, withMemoryRouter, withAnvil],
17
15
  };
18
16
 
19
17
  export const ProfileDropdownDefault = () => (
20
18
  <ProfileDropdown>
21
- <ProfileDropdown.Link id="first" to="https://google.com">
19
+ <ProfileDropdown.Link id="first" to="https://google.com" external>
22
20
  first link
23
21
  </ProfileDropdown.Link>
24
22
  <ProfileDropdown.Section id="second" onClick={() => alert('second click')}>
@@ -33,6 +31,15 @@ export const ProfileDropdownDefault = () => (
33
31
  third link
34
32
  </ProfileDropdown.Link>
35
33
  <ProfileDropdown.Divider />
34
+ <ProfileDropdown.Section
35
+ id="forth"
36
+ onClick={() => alert('forth click')}
37
+ text="Sign Out user"
38
+ >
39
+ Sign Out
40
+ <span className="c-neutral-60 m-l-1">user</span>
41
+ </ProfileDropdown.Section>
42
+ <ProfileDropdown.Divider />
36
43
  </ProfileDropdown>
37
44
  );
38
45
 
@@ -13,22 +13,17 @@ import {
13
13
  MouseEventHandler,
14
14
  ReactNode,
15
15
  useCallback,
16
- useContext,
17
16
  useEffect,
18
17
  useMemo,
19
18
  useState,
20
19
  } from 'react';
21
20
 
22
21
  import { CounterTagData, CounterTagValue } from '../../utils/counter-tag';
23
- import {
24
- NavigationComponentContext,
25
- NavigationLegacyContext,
26
- } from '../../utils/navigation-context';
27
22
  import { getCounterTag } from '../../utils/side-nav';
28
23
  import { CounterTag } from '../counter-tag';
24
+ import { useTitanLayoutContext } from '../titan-layout';
29
25
  import { withTooltip } from '../titan-layout/with-tooltip';
30
26
  import * as Styles from './profile-dropdown.module.less';
31
- import { ProfileLogo } from './profile-icon';
32
27
 
33
28
  export interface ProfileDropdownTriggerProps {
34
29
  className?: string;
@@ -53,7 +48,6 @@ const ProfileDropdownTrigger: FC<ProfileDropdownTriggerProps> = ({
53
48
  }) => {
54
49
  const [avatarSource, setAvatarSource] = useState(imageSrc ?? '');
55
50
  const [avatarSourceError, setAvatarSourceError] = useState(false);
56
- const isLegacy = useContext(NavigationLegacyContext);
57
51
 
58
52
  useEffect(() => {
59
53
  const src = imageSrc ?? '';
@@ -78,7 +72,6 @@ const ProfileDropdownTrigger: FC<ProfileDropdownTriggerProps> = ({
78
72
  Styles.triggerContainer,
79
73
  {
80
74
  [Styles.triggerContainerHintArrow]: hintArrow,
81
- [Styles.triggerContainerLegacy]: isLegacy,
82
75
  },
83
76
  className
84
77
  )}
@@ -93,8 +86,6 @@ const ProfileDropdownTrigger: FC<ProfileDropdownTriggerProps> = ({
93
86
  onError={onAvatarError}
94
87
  alt="user dropdown menu"
95
88
  />
96
- ) : isLegacy ? (
97
- <ProfileLogo />
98
89
  ) : (
99
90
  <Icon
100
91
  className="c-inherit-i"
@@ -255,7 +246,7 @@ export const ProfileDropdownLink: FC<ProfileDropdownLinkProps> = ({
255
246
  onClick,
256
247
  ...rest
257
248
  }: ProfileDropdownLinkProps) => {
258
- const NavigationComponent = useContext(NavigationComponentContext);
249
+ const { NavigationComponent } = useTitanLayoutContext();
259
250
 
260
251
  const isExternalLink = external ?? to?.startsWith('http');
261
252
 
@@ -1,26 +1,30 @@
1
- import { FC, ReactElement } from 'react';
1
+ import { ComponentPropsWithoutRef, FC, ReactNode } from 'react';
2
2
  import { NavigationItemData } from '../../utils/navigation';
3
3
  import { TitanLayoutSidebarContextType } from './layout-context';
4
4
 
5
- export interface TitanLayoutSidebarLinkWrapperProps {
6
- children:
7
- | ReactElement<TitanLayoutSidebarLinkProps>
8
- | ReactElement<TitanLayoutSidebarTriggerProps>;
5
+ export interface TitanLayoutLinkWrapperProps {
6
+ children: ReactNode;
9
7
  context: TitanLayoutSidebarContextType;
8
+ isMobile: boolean;
10
9
  }
11
10
 
12
- export interface TitanLayoutSidebarLinkProps extends Omit<NavigationItemData, 'submenu'> {
13
- wrapper?: FC<TitanLayoutSidebarLinkWrapperProps>;
14
- }
15
- export interface TitanLayoutSidebarTriggerProps
16
- extends Omit<TitanLayoutSidebarLinkProps, 'to' | 'isActive'> {
17
- isActive?: boolean;
18
- wrapper?: FC<TitanLayoutSidebarLinkWrapperProps>;
19
- onClick?: () => void;
20
- onMobileClick?: () => void;
21
- }
11
+ export type TitanLayoutLinkWrapper = FC<TitanLayoutLinkWrapperProps>;
22
12
 
23
13
  export interface TitanLayoutState {
24
14
  navCollapsed: boolean;
25
15
  submenuExpanded?: string;
26
16
  }
17
+
18
+ export type TitanLayoutLinkProps = Omit<NavigationItemData, 'submenu' | 'isHidden'> & {
19
+ tooltip?: string;
20
+ wrapper?: TitanLayoutLinkWrapper;
21
+ } & Omit<ComponentPropsWithoutRef<'a'>, 'children' | 'title'>;
22
+
23
+ export type TitanLayoutTriggerProps = Omit<
24
+ NavigationItemData,
25
+ 'to' | 'isActive' | 'isHidden' | 'submenu'
26
+ > & {
27
+ isActive?: boolean;
28
+ tooltip?: string;
29
+ wrapper?: TitanLayoutLinkWrapper;
30
+ } & Omit<ComponentPropsWithoutRef<'div'>, 'children' | 'title'>;
@@ -65,7 +65,7 @@ export const LayoutHeaderDark: FC<LayoutHeaderStackedProps> = ({
65
65
  data-cy="header-navigation-top"
66
66
  />
67
67
 
68
- {!isMobile && (
68
+ {!isMobile && !!navigationMainItems?.length && (
69
69
  <LayoutHeaderNav
70
70
  className={Styles.headerStackedNav}
71
71
  mainItems={navigationMainItems}
@@ -1,8 +1,5 @@
1
1
  import { FC } from 'react';
2
- import {
3
- HeaderNavigationLinkProps,
4
- HeaderNavigationTriggerProps,
5
- } from '../../utils/navigation-legacy';
2
+ import { TitanLayoutLinkProps, TitanLayoutTriggerProps } from './interface';
6
3
  import { useTitanLayoutContext } from './layout-context';
7
4
  import {
8
5
  InternalLayoutHeaderNavigationLink,
@@ -11,7 +8,7 @@ import {
11
8
  import { withTooltip } from './with-tooltip';
12
9
 
13
10
  /** Navigation extra item with link */
14
- export const LayoutHeaderNavigationLink: FC<HeaderNavigationLinkProps> = ({ tooltip, ...rest }) => {
11
+ export const LayoutHeaderNavigationLink: FC<TitanLayoutLinkProps> = ({ tooltip, ...rest }) => {
15
12
  const { NavigationComponent } = useTitanLayoutContext();
16
13
 
17
14
  return withTooltip(
@@ -21,7 +18,7 @@ export const LayoutHeaderNavigationLink: FC<HeaderNavigationLinkProps> = ({ tool
21
18
  };
22
19
 
23
20
  /** Navigation extra item with icon button */
24
- export const LayoutHeaderNavigationTrigger: FC<HeaderNavigationTriggerProps> = ({
21
+ export const LayoutHeaderNavigationTrigger: FC<TitanLayoutTriggerProps> = ({
25
22
  tooltip,
26
23
  ...rest
27
24
  }) => {
@@ -225,6 +225,11 @@
225
225
  }
226
226
 
227
227
  .header-dark.header-logo-custom {
228
+ &.header-desktop .logo-short-wrapper {
229
+ background-color: @color-white;
230
+ color: @c-light;
231
+ }
232
+
228
233
  .burger .navigation-link {
229
234
  color: inherit !important;
230
235
  }
@@ -1,6 +1,6 @@
1
1
  import SvgBurgerMenu from '@servicetitan/anvil2/assets/icons/material/round/menu.svg';
2
2
  import classNames from 'classnames';
3
- import { ComponentPropsWithoutRef, FC, ReactElement, ReactNode } from 'react';
3
+ import { ComponentPropsWithoutRef, FC, MouseEvent, ReactElement, ReactNode } from 'react';
4
4
  import { LayoutPlacementContext } from './layout-context';
5
5
  import { LayoutHeaderNavigationTrigger } from './layout-header-links';
6
6
  import * as Styles from './layout-header.module.less';
@@ -22,7 +22,7 @@ export type LayoutHeaderProps = Omit<ComponentPropsWithoutRef<'div'>, 'children'
22
22
  isMobile: boolean;
23
23
  variant: 'light' | 'dark';
24
24
  hasNotifications: boolean;
25
- onBurgerClick?: (e: MouseEvent) => void;
25
+ onBurgerClick?: (e: MouseEvent<never>) => void;
26
26
  };
27
27
 
28
28
  export const LayoutHeader: FC<LayoutHeaderProps> = ({
@@ -2,7 +2,7 @@ import SvgAccountActive from '@servicetitan/anvil2/assets/icons/st/gnav_account_
2
2
  import SvgAccountInactive from '@servicetitan/anvil2/assets/icons/st/gnav_account_inactive.svg';
3
3
 
4
4
  import { FC, MouseEvent, useEffect, useState } from 'react';
5
- import { NavLinkComponentProps, NavigationComponentContext } from '../../utils/navigation-context';
5
+ import { NavLinkComponentProps } from '../../utils/navigation-context';
6
6
  import {
7
7
  ProfileDropdown as DesktopProfileDropdown,
8
8
  ProfileDropdownLinkProps,
@@ -38,13 +38,9 @@ const ExternalNavComponent: FC<NavLinkComponentProps> = ({
38
38
  );
39
39
 
40
40
  const ProfileDropdownContent: FC<ProfileDropdownProps> = props => {
41
- const { isTitanLayout, breakpoint, NavigationComponent } = useTitanLayoutContext();
41
+ const { breakpoint, NavigationComponent } = useTitanLayoutContext();
42
42
  return breakpoint.isMobile ? (
43
43
  <MobileProfileDropdown {...props} navigationComponent={NavigationComponent} />
44
- ) : isTitanLayout ? (
45
- <NavigationComponentContext.Provider value={NavigationComponent}>
46
- <DesktopProfileDropdown {...props} />
47
- </NavigationComponentContext.Provider>
48
44
  ) : (
49
45
  <DesktopProfileDropdown {...props} />
50
46
  );