@contentful/f36-navbar 4.0.1-alpha → 4.1.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.
package/README.mdx CHANGED
@@ -1,22 +1,78 @@
1
1
  ---
2
2
  title: 'Navbar'
3
3
  type: 'component'
4
- status: 'alpha'
4
+ status: 'stable'
5
+ isNew: true
5
6
  slug: /components/navbar/
6
7
  github: 'https://github.com/contentful/forma-36/tree/main/packages/components/navbar'
7
8
  storybook: 'https://f36-storybook.contentful.com/?path=/story/components-navbar'
8
9
  typescript: ./src/Navbar.tsx,./src/NavbarItem/NavbarItem.tsx,./src/NavbarMenuItem/NavbarMenuItem.tsx,./src/NavbarSwitcher/NavbarSwitcher.tsx,./src/NavbarSwitcherItem/NavbarSwitcherItem.tsx,./src/NavbarSearch/NavbarSearch.tsx,./src/NavbarHelp/NavbarHelp.tsx,./src/NavbarAccount/NavbarAccount.tsx,./src/NavbarBadge/NavbarBadge.tsx,./src/NavbarTopbarItem/NavbarTopbarItem.tsx
9
10
  ---
10
11
 
11
- Navbar provides a consistent navigation experience across all of Contentful's products.
12
- It is composed of a top and bottom section. Where the bottom section is used for navigation items and the top section is used for additional context and actions.
12
+ The Navbar component offers a unified navigation experience across all of Contentful's products.
13
+ It consists of a top and bottom section, each serving specific purposes.
14
+ The bottom section is dedicated to navigation items, while the top section provides additional context and actions.
15
+ This ensures a consistent and intuitive navigation experience throughout the application.
13
16
 
14
17
  ## Import
15
18
 
16
19
  ```jsx static=true
20
+ import { Navbar } from '@contentful/f36-components';
21
+ // or
17
22
  import { Navbar } from '@contentful/f36-navbar';
18
23
  ```
19
24
 
25
+ ## Examples
26
+
27
+ You can use following components to build a menu:
28
+
29
+ 1. `<Navbar>`: The main wrapper component.
30
+ 1. `<Navbar.Item>`: Represents a main navigation item. Use it as a child of the `<Navbar>` component or the `bottomRightItems` prop of Navbar.
31
+ 1. `<Navbar.MenuItem>`: Represents a menu item used to create dropdown menus. Use it as a child of the `<Navbar.Item>`, `<Navbar.Account>`, or `<Navbar.Help>` components.
32
+ 1. `<Navbar.MenuDivider>`: A visual separator for menu items. Use it before or after a `<Navbar.MenuItem>`.
33
+ 1. `<Navbar.MenuSectionTitle>`: A title that can be used in the menu list. Use it before or after a `<Navbar.MenuItem>`.
34
+ 1. `<Navbar.Switcher>`: Wrapper component for the logotype, organization, space, and environment information. Use it as a child of the Navbar `switcher` prop.
35
+ 1. `<Navbar.SwitcherItem>`: Represents an item within the `<Navbar.Switcher>`. Use it to render organization, space, and environment information in different states. Use it as a child of the `<Navbar.Switcher>`.
36
+ 1. `<Navbar.Search>`: Trigger for the global search. Use it as a child of the Navbar `search` prop.
37
+ 1. `<Navbar.Help>`: Trigger for the help menu. Use it as a child of the Navbar `help` prop.
38
+ 1. `<Navbar.Account>`: Trigger for the account menu. Use it as a child of the Navbar `account` prop.
39
+ 1. `<Navbar.Badge>`: Represents an item that provides additional information, such as indicating that the user's space is on a trial. Use it as a child of the Navbar `badge` prop.
40
+ 1. `<Navbar.TopbarItem>`: Represents an item that provides additional links or CTAs (Call to Actions), such as a link to the feedback form. Use it as a child of the Navbar `topRightItems` prop.
41
+ 1. `<Navbar.ItemSkeleton>`: Loading skeleton for `<Navbar.Item>`. Use it as a child of the `<Navbar>` component or the `bottomRightItems` prop of Navbar.
42
+ 1. `<Navbar.MenuItemSkeleton>`: Loading skeleton for `<Navbar.MenuItem>`. Use it as a child of the `<Navbar.Item>`, `<Navbar.Account>`, or `<Navbar.Help>` components.
43
+ 1. `<Navbar.SwitcherSkeleton>`: Loading skeleton for `<Navbar.Switcher>`. Use it as a child of the Navbar `switcher` prop.
44
+ 1. `<Navbar.AccountSkeleton>`: Loading skeleton for `<Navbar.Account>`. Use it as a child of the Navbar `account` prop.
45
+
46
+ ### Basic usage
47
+
48
+ ```tsx file=examples/BasicNavbarExample.tsx
49
+
50
+ ```
51
+
52
+ ### Complete Navbar
53
+
54
+ ```tsx file=examples/CompleteNavbarExample.tsx
55
+
56
+ ```
57
+
58
+ ### Navbar with different enviromnments
59
+
60
+ ```tsx file=examples/WithDifferentEnviromnmentsNavbarExample.tsx
61
+
62
+ ```
63
+
64
+ ### Navbar with account notification
65
+
66
+ ```tsx file=examples/WithAccountNotificationNavbarExample.tsx
67
+
68
+ ```
69
+
70
+ ### Navbar loading skeleton
71
+
72
+ ```tsx file=examples/LoadingSkeletonNavbarExample.tsx
73
+
74
+ ```
75
+
20
76
  ## Props (API reference)
21
77
 
22
78
  ### Navbar
@@ -58,12 +114,3 @@ import { Navbar } from '@contentful/f36-navbar';
58
114
  ### Navbar.Badge
59
115
 
60
116
  <PropsTable of="NavbarBadge" />
61
-
62
- ## Content guidelines
63
-
64
- At least one important thing to consider when writing copy for this component
65
- Optional: Things to avoid
66
-
67
- ## Accessibility
68
-
69
- What makes this component accessible
package/dist/esm/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { MenuDivider, MenuSectionTitle, Menu } from '@contentful/f36-menu';
2
2
  import { Box, Flex } from '@contentful/f36-core';
3
- import h from 'react';
3
+ import N from 'react';
4
4
  import { cx, css } from 'emotion';
5
5
  import a from '@contentful/f36-tokens';
6
6
  import { SkeletonContainer, SkeletonImage, SkeletonText, SkeletonBodyText, SkeletonDisplayText } from '@contentful/f36-skeleton';
@@ -8,7 +8,7 @@ import { hexToRGBA } from '@contentful/f36-utils';
8
8
  import { generateIcon } from '@contentful/f36-icon';
9
9
  import { ExternalLinkIcon, MenuIcon, EnvironmentAliasIcon, EnvironmentIcon } from '@contentful/f36-icons';
10
10
 
11
- var Qe=Object.defineProperty,Je=Object.defineProperties;var eo=Object.getOwnPropertyDescriptors;var G=Object.getOwnPropertySymbols;var le=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable;var ce=(e,o,t)=>o in e?Qe(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,s=(e,o)=>{for(var t in o||(o={}))le.call(o,t)&&ce(e,t,o[t]);if(G)for(var t of G(o))de.call(o,t)&&ce(e,t,o[t]);return e},p=(e,o)=>Je(e,eo(o));var f=(e,o)=>{var t={};for(var r in e)le.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(e!=null&&G)for(var r of G(e))o.indexOf(r)<0&&de.call(e,r)&&(t[r]=e[r]);return t};var g={medium:"@media (min-width: 480px)",large:"@media (min-width: 768px)",xlarge:"@media (min-width: 1920px)"};var fe=e=>({containerTop:css({justifyContent:"center",backgroundColor:"#0C141C"}),containerBottom:css({justifyContent:"center",borderTop:"1px solid #21262D",backgroundColor:"#161B22"}),containerTopContent:css({width:"100%",maxWidth:e,padding:`${a.spacingXs}`,minHeight:"2.5rem",[g.medium]:{padding:`${a.spacingXs} ${a.spacingM}`}}),containerBottomContent:css({width:"100%",maxWidth:e,padding:0,minHeight:"2.5rem",overflow:"auto",[g.medium]:{padding:`0 ${a.spacing2Xs}`}})});function to(e,o){let H=e,{children:t,account:r,search:i,switcher:n,help:m,badge:d,bottomRightItems:c,topRightItems:v,contentMaxWidth:y="100%",testId:I="cf-ui-navbar"}=H,L=f(H,["children","account","search","switcher","help","badge","bottomRightItems","topRightItems","contentMaxWidth","testId"]),S=fe(y);return h.createElement(Box,p(s({},L),{ref:o,testId:I}),h.createElement(Flex,{className:S.containerTop},h.createElement(Flex,{className:S.containerTopContent,justifyContent:"space-between"},h.createElement(Flex,null,n),h.createElement(Flex,{alignItems:"center",gap:"spacingXs"},v,d,i,m,r))),h.createElement(Flex,{className:S.containerBottom},h.createElement(Flex,{className:S.containerBottomContent,justifyContent:"space-between"},h.createElement(Flex,{as:"nav","aria-label":"Main Navigation",alignItems:"stretch"},t),c&&h.createElement(Flex,null,c))))}var be=h.forwardRef(to);var ge=()=>({root:css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",position:"relative",alignItems:"center",justifyContent:"center",gap:a.spacing2Xs,"&:focus-visible":{boxShadow:a.glowPrimary,outline:"none",borderRadius:"50%"}}),avatar:css({borderRadius:"50%",display:"block",height:"24px",width:"24px"}),notificationIcon:e=>css({position:"absolute",top:0,right:0,height:a.spacingS,width:a.spacingS,borderRadius:"50%",border:`2px solid ${a.gray900}`,backgroundColor:e==="negative"?a.colorNegative:a.colorWarning,transform:"translate(30%, -30%)"})});var ue=()=>({menuList:css({minWidth:"250px"})});var C=e=>{let{trigger:o,children:t,testId:r="cf-ui-navbar-menu-list",onOpen:i,onClose:n}=e,m=ue();return h.createElement(Menu,{onOpen:i,onClose:n},h.createElement(Menu.Trigger,null,o),h.createElement(Menu.List,{className:m.menuList,testId:r},t))};function io(e,o){let I=e,{children:t,className:r,testId:i="cf-ui-navbar-account-trigger",avatar:n,username:m,hasNotification:d,notificationVariant:c="warning"}=I,v=f(I,["children","className","testId","avatar","username","hasNotification","notificationVariant"]),y=ge();return h.createElement(C,{trigger:h.createElement(Flex,p(s({},v),{as:"button",ref:o,className:cx(y.root,r),testId:i}),h.createElement("img",{src:n,alt:`Avatar for user ${m}`,className:y.avatar}),d?h.createElement("span",{className:y.notificationIcon(c)}):null)},t)}var J=h.forwardRef(io);function ee({ariaLabel:e}){return h.createElement(SkeletonContainer,{svgWidth:24,svgHeight:24,ariaLabel:e,backgroundColor:a.gray800,foregroundColor:a.gray700},h.createElement(SkeletonImage,{width:24,height:24,radiusX:12,radiusY:12}))}var Ne=()=>css({"&":{color:a.colorWhite,"& svg":{fill:a.colorWhite}},"&::after":{content:'""',position:"absolute",width:`calc(100% - ${a.spacingM})`,height:"2px",bottom:"0.5px",left:0,right:0,margin:"auto",backgroundColor:a.colorWhite,zIndex:0}}),ye={display:"flex",justifyContent:"center",padding:`10px ${a.spacingS}`,alignItems:"center",background:"none"},Ie=()=>({root:css(ye,{alignItems:"center",background:"none",border:0,margin:0,outline:"none",fontSize:a.fontSizeM,lineHeight:a.lineHeightM,fontWeight:a.fontWeightMedium,position:"relative",textAlign:"left",whiteSpace:"nowrap",cursor:"pointer",hyphens:"auto",textDecoration:"none",color:hexToRGBA(a.gray300,.8),boxSizing:"border-box",transition:`color ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,"&::before":{content:'""',position:"absolute",width:`calc(100% - ${a.spacingXs})`,height:`calc(100% - ${a.spacingS})`,top:`calc(${a.spacingS} / 2)`,left:0,right:0,margin:"auto",borderRadius:a.borderRadiusSmall,backgroundColor:hexToRGBA(a.colorWhite,.08),opacity:0,zIndex:0,scale:0,transition:`all ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`},"&:hover::before":{opacity:1,scale:"1"},"&:focus-visible":{boxShadow:`inset ${a.glowPrimary}`,borderRadius:a.borderRadiusMedium},"&:active::before":{backgroundColor:"rgba(255, 255, 255, 0.1)"},"&:disabled":{cursor:"auto"},"& svg":{fill:hexToRGBA(a.gray300,.8),transition:`fill ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,"&:first-child":{display:"none",[g.large]:{display:"block"}}},"& > svg, & > span":{zIndex:a.zIndexDefault}}),isActive:Ne(),dropdownIcon:css({paddingLeft:a.spacing2Xs})}),xe=()=>({root:css(ye)});var Pe=()=>({root:css({"&:first-child":{marginRight:a.spacing2Xs},"&:last-child":{marginLeft:a.spacing2Xs},"img&":{borderRadius:a.borderRadiusSmall,maxWidth:a.spacingM,maxHeight:a.spacingM}})});var F=e=>{var i,n;let{icon:o,variant:t}=e,r=Pe();return h.cloneElement(o,{className:cx(o.props.className,r.root),size:(i=o.props.size)!=null?i:"tiny",variant:(n=o.props.variant)!=null?n:t})};var Se=generateIcon({name:"CircleIcon",viewBox:"0 0 24 24",path:h.createElement("path",{d:"M11.994 6.526A5.47 5.47 0 0 0 6.526 12a5.47 5.47 0 0 0 5.468 5.473A5.476 5.476 0 0 0 17.473 12a5.477 5.477 0 0 0-5.479-5.474ZM12 15.447a3.448 3.448 0 1 1 0-6.896 3.448 3.448 0 0 1 0 6.896Z",fill:"currentFill"})});var Me=generateIcon({name:"ArrowDownIcon",viewBox:"0 0 12 20",path:h.createElement("path",{d:"M3.03076 8C2.20109 8 1.73228 8.95209 2.23814 9.60971L5.20727 13.4696C5.60757 13.99 6.39223 13.99 6.79252 13.4696L9.76166 9.60971C10.2675 8.95209 9.79871 8 8.96904 8L3.03076 8Z",fill:"#9FA8B2"})});var we=generateIcon({name:"HelpIcon",viewBox:"0 0 24 24",path:h.createElement(h.Fragment,null,h.createElement("g",{clipPath:"url(#HelpIcon_svg__a)"},h.createElement("path",{d:"M12 2.25A9.75 9.75 0 1 0 21.75 12 9.769 9.769 0 0 0 12 2.25ZM12 18a1.125 1.125 0 1 1 0-2.25A1.125 1.125 0 0 1 12 18Zm.75-4.584v.084a.75.75 0 1 1-1.5 0v-.75A.75.75 0 0 1 12 12a1.875 1.875 0 1 0-1.875-1.875.75.75 0 1 1-1.5 0 3.375 3.375 0 1 1 4.125 3.29Z",fill:"currentFill"})),h.createElement("defs",null,h.createElement("clipPath",{id:"HelpIcon_svg__a"},h.createElement("path",{fill:"currentFill",d:"M0 0h24v24H0z"}))))});var Ae=generateIcon({name:"SearchIcon",viewBox:"0 0 24 24",path:h.createElement(h.Fragment,null,h.createElement("g",{clipPath:"url(#SearchIcon_svg__a)"},h.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6 11.125a5.125 5.125 0 1 1 10.25 0 5.125 5.125 0 0 1-10.25 0ZM11.125 4a7.125 7.125 0 1 0 4.282 12.82l2.886 2.887a1 1 0 0 0 1.414-1.414l-2.886-2.887A7.125 7.125 0 0 0 11.125 4Z",fill:"currentFill"})),h.createElement("defs",null,h.createElement("clipPath",{id:"SearchIcon_svg__a"},h.createElement("path",{fill:"#fff",d:"M0 0h24v24H0z"}))))});var Ee=generateIcon({name:"ContentfulLogoIcon",viewBox:"0 0 21 24",path:h.createElement("g",{transform:"translate(4 3)"},h.createElement("path",{fill:"#fae501",d:"M3.3 13.7c-1.2-1.2-2-2.9-2-4.7S2 5.5 3.2 4.3c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0-2 2.2-3.3 5.2-3.3 8.5s1.3 6.3 3.4 8.5c1 1 2.6 1 3.6 0 .9-1.1.9-2.7 0-3.8z"}),h.createElement("path",{fill:"#4fb5e1",d:"M3.3 4.3c1.2-1.3 2.8-2 4.6-2s3.4.8 4.6 1.9c1 1.1 2.6 1.1 3.6 0 1-1 1-2.7 0-3.8C13.9-1.6 11-3 7.8-3S1.7-1.6-.4.5c-1 1-1 2.7 0 3.8 1 .9 2.6.9 3.7 0z"}),h.createElement("path",{fill:"#f05751",d:"M12.4 13.7c-1.2 1.3-2.8 2-4.6 2-1.8 0-3.4-.8-4.6-2-1-1.1-2.6-1.1-3.6 0-1 1-1 2.7 0 3.8 2.1 2.1 5 3.5 8.2 3.5s6.1-1.4 8.2-3.5c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0z"}),h.createElement("ellipse",{cx:1.4,cy:2.4,fill:"#0681b6",rx:2.5,ry:2.6}),h.createElement("ellipse",{cx:1.4,cy:15.6,fill:"#cd4739",rx:2.5,ry:2.6}))});var Io="button";function xo(e,o){let H=e,{as:t=Io,icon:r,title:i,children:n,className:m,isActive:d,testId:c="cf-ui-navbar-item",onOpen:v,onClose:y}=H,I=f(H,["as","icon","title","children","className","isActive","testId","onOpen","onClose"]),L=Ie(),S=h.createElement(t,p(s({},I),{ref:o,"data-test-id":c,className:cx(L.root,d&&L.isActive,m)}),r?h.createElement(F,{icon:r,variant:"white"}):null,h.createElement("span",null,i),Ce(e)&&h.createElement(Me,{className:L.dropdownIcon}));return Ce(e)?h.createElement(C,{trigger:S,testId:c,onOpen:v,onClose:y},n):S}var Ce=e=>Boolean(e.children),te=h.forwardRef(xo);var re=({estimatedWidth:e})=>{let o=xe();return h.createElement(SkeletonContainer,{className:o.root,svgWidth:e,svgHeight:40,backgroundColor:a.gray800,foregroundColor:a.gray700},h.createElement(SkeletonText,{lineHeight:6,numberOfLines:1,offsetTop:7,radiusX:a.borderRadiusSmall,radiusY:a.borderRadiusSmall}))};var ke=()=>({root:css({display:"flex",justifyContent:"flex-start",alignItems:"center"})});var Co="button";function To(e,o){let v=e,{as:t=Co,icon:r,title:i,className:n}=v,m=f(v,["as","icon","title","className"]),d=ke(),c=ko(e);return h.createElement(Menu.Item,p(s({},m),{ref:o,as:t,className:cx(d.root,n)}),r?h.createElement(F,{icon:r,variant:"secondary"}):c&&Re,h.createElement("span",null,i),r&&c?Re:null)}var Re=h.createElement(F,{icon:h.createElement(ExternalLinkIcon,null),variant:"muted"}),ko=e=>e.as==="a"&&e.target==="_blank",ne=h.forwardRef(To);var ae=({ariaLabel:e})=>h.createElement(Menu.Item,null,h.createElement(Flex,{alignItems:"center",gap:a.spacingXs},h.createElement(SkeletonContainer,{svgHeight:16,svgWidth:18},h.createElement(SkeletonImage,{width:16,height:16})),h.createElement(SkeletonContainer,{svgHeight:16,svgWidth:190,ariaLabel:e},h.createElement(SkeletonBodyText,{numberOfLines:1}))));var _e=()=>({root:css({margin:0,padding:0,background:"none",border:"none",color:a.gray300,cursor:"pointer",fontSize:a.fontSizeS,fontWeight:a.fontWeightMedium,position:"relative","&:after":{content:'""',border:"1px solid #353A41",boxSizing:"border-box",height:"16px",right:"-1px",position:"absolute",width:0},"&:last-child:after":{display:"none"},"&:focus-visible":{boxShadow:`0px 0px 0px 2px ${a.colorBlack}, 0px 0px 0px 5px ${a.blue300}`,outline:"none",borderRadius:a.borderRadiusMedium},"&:hover li":{backgroundColor:hexToRGBA(a.colorWhite,.15)}}),breadcrumbs:css({listStyleType:"none",margin:0,padding:0,position:"relative"}),menuIcon:css({display:"none",[g.medium]:{display:"block"}})});function Do(e,o){let c=e,{children:t,className:r,logo:i,testId:n="cf-ui-navbar-switcher"}=c,m=f(c,["children","className","logo","testId"]),d=_e();return h.createElement(Flex,p(s({},m),{as:"button",ref:o,className:cx(d.root,r),testId:n,alignItems:"center",fullHeight:!0,gap:"spacingXs"}),i||h.createElement(Ee,null),h.createElement(MenuIcon,{className:d.menuIcon,size:"small",variant:"white"}),h.createElement(Flex,{as:"ul",alignItems:"center",className:d.breadcrumbs},t))}var se=h.forwardRef(Do);var pe=({estimatedWidth:e})=>h.createElement(SkeletonContainer,{svgWidth:e,svgHeight:24,backgroundColor:a.gray800,foregroundColor:a.gray700},h.createElement(SkeletonDisplayText,{lineHeight:24,numberOfLines:1,radiusX:12,radiusY:12}));var ze=()=>({root:css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",alignItems:"center",justifyContent:"center",minWidth:a.spacingL,transition:`color ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,"& svg":{fill:a.gray300,transition:`fill ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`},"&:hover, & svg:hover":{color:a.gray100,fill:a.gray100},"&:focus-visible":{boxShadow:a.glowPrimary,outline:"none",borderRadius:a.borderRadiusMedium}})});function Uo(e,o){let m=e,{className:t,testId:r="cf-ui-navbar-search"}=m,i=f(m,["className","testId"]),n=ze();return h.createElement(Flex,p(s({"aria-label":"Quick Search"},i),{as:"button",ref:o,className:cx(n.root,t),testId:r}),h.createElement(Ae,{size:"medium",variant:"white"}))}var Fe=h.forwardRef(Uo);var De={display:"none","&:first-child":{display:"block"},[g.medium]:{display:"block","&:first-child":{display:"none"}}},Oe=()=>({breadcrumbsItem:css({position:"relative",alignItems:"center",justifyContent:"center",backgroundColor:hexToRGBA(a.gray100,.1),boxShadow:`0px 0px 0px 2px ${a.colorBlack}`,display:"inline-flex",margin:0,minWidth:0,padding:`0 ${a.spacingXs}`,height:a.spacingL,borderRadius:"3rem",zIndex:2,transition:`background-color ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,whiteSpace:"nowrap","&:not(:first-child)":{clipPath:"path('M0 24C6 24 10 18 10 10C10 5 6 0 0 0H400C400 0 400 5 400 24H0Z')"},"&:first-child":{minWidth:"24px"},"&:nth-child(2)":{zIndex:1,left:`-${a.spacingXs}`,paddingLeft:a.spacingM,borderRadius:"0 3rem 3rem 0",span:{maxWidth:"80px",textOverflow:"ellipsis",overflow:"hidden",[g.large]:{maxWidth:"100%"}}},"&:nth-child(3)":{left:`-${a.spacingM}`,paddingLeft:a.spacingM,borderRadius:"0 3rem 3rem 0",fontFamily:a.fontStackMonospace,fontSize:a.fontSizeS,fontWeight:a.fontWeightMedium,zIndex:0,span:{maxWidth:"40px",textOverflow:"ellipsis",overflow:"hidden",[g.large]:{maxWidth:"100%"}},"> div":{[g.medium]:{gap:a.spacing2Xs}}}}),breadcrumbsItemCircle:css({borderRadius:"50%",color:a.gray400,padding:0,display:"flex",justifyContent:"center",fontSize:"11px",width:a.spacingL,height:a.spacingL}),breadcrumbsItemEnvMaster:css({color:a.green400," svg":p(s({},De),{fill:a.green400})}),breadcrumbsItemEnvNonMaster:css({color:a.orange400," svg":p(s({},De),{fill:a.orange400})})});function $e({isAlias:e}){return h.createElement(h.Fragment,null,h.createElement(Se,{key:"mobile-icon",size:"tiny"}),e?h.createElement(EnvironmentAliasIcon,{key:"full-icon",size:"tiny"}):h.createElement(EnvironmentIcon,{key:"full-icon",size:"tiny"}))}function Qo(e,o){let I=e,{children:t,isCircle:r,className:i,envVariant:n,isAlias:m,testId:d="cf-ui-navbar-switcher-item"}=I,c=f(I,["children","isCircle","className","envVariant","isAlias","testId"]),v=Oe(),y=cx(v.breadcrumbsItem,i,{[v.breadcrumbsItemCircle]:r,[v.breadcrumbsItemEnvMaster]:n==="master",[v.breadcrumbsItemEnvNonMaster]:n==="non-master"});return h.createElement("li",p(s({},c),{ref:o,className:y,"data-test-id":d}),h.createElement(Flex,{fullHeight:!0,justifyContent:"center",alignItems:"center"},n&&h.createElement($e,{isAlias:m}),h.createElement("span",null,t)))}var Ge=h.forwardRef(Qo);var Ve=()=>({root:css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",alignItems:"center",justifyContent:"center",color:a.gray300,fontSize:0,gap:0,minWidth:a.spacingL,transition:`color ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,[g.medium]:{fontSize:a.fontSizeS,gap:a.spacing2Xs,fontWeight:a.fontWeightMedium,marginRight:a.spacingXs},"&:focus-visible":{boxShadow:a.glowPrimary,outline:"none",borderRadius:a.borderRadiusMedium},"&:hover, &:hover svg":{color:a.gray100,fill:a.gray100},"& svg":{fill:a.gray300,transition:`fill ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`}})});function tt(e,o){let d=e,{children:t,className:r,testId:i="cf-ui-navbar-help-trigger"}=d,n=f(d,["children","className","testId"]),m=Ve();return h.createElement(C,{testId:"cf-ui-navbar-help-menu",trigger:h.createElement(Flex,p(s({"aria-label":"Help Menu"},n),{as:"button",ref:o,className:cx(m.root,r),testId:i}),h.createElement(we,{size:"medium",variant:"white"}),"Help")},t)}var Xe=h.forwardRef(tt);var Ue=()=>({root:css({display:"flex",justifyContent:"center",alignItems:"center",background:"none",border:`1px solid ${a.purple400}`,margin:0,outline:"none",fontSize:a.fontSizeS,lineHeight:a.lineHeightS,fontWeight:a.fontWeightMedium,textAlign:"center",padding:`0 ${a.spacingXs}`,textDecoration:"none",color:`${a.purple400}!important`,borderRadius:"1.75rem"})});var at="div";function it(e,o){let c=e,{as:t=at,children:r,className:i,testId:n="cf-ui-navbar-badge"}=c,m=f(c,["as","children","className","testId"]),d=Ue();return h.createElement(t,p(s({},m),{ref:o,className:cx(d.root,i),"data-test-id":n}),r)}var qe=h.forwardRef(it);var Ze=()=>({root:css({margin:0,background:"none",border:"none",cursor:"pointer",display:"flex",gap:a.spacing2Xs,alignItems:"center",color:a.gray300,padding:`0 ${a.spacing2Xs}`,minHeight:a.spacingL,fontSize:a.fontSizeS,fontWeight:a.fontWeightMedium,"&:hover":{color:a.gray100},"&:focus-visible":{boxShadow:a.glowPrimary,outline:"none",borderRadius:a.borderRadiusMedium},svg:{fill:"currentColor"}})});var mt="button";function ct(e,o){let c=e,{as:t=mt,children:r,className:i,testId:n="cf-ui-navbar-topbar-item"}=c,m=f(c,["as","children","className","testId"]),d=Ze();return h.createElement(t,p(s({},m),{ref:o,className:cx(d.root,i),"data-test-id":n}),r)}var Ke=h.forwardRef(ct);var b=be;b.Item=te;b.ItemSkeleton=re;b.MenuItem=ne;b.MenuItemSkeleton=ae;b.MenuDivider=MenuDivider;b.MenuSectionTitle=MenuSectionTitle;b.Switcher=se;b.SwitcherSkeleton=pe;b.SwitcherItem=Ge;b.Search=Fe;b.Help=Xe;b.Account=J;b.AccountSkeleton=ee;b.Badge=qe;b.TopbarItem=Ke;
11
+ var Ke=Object.defineProperty,eo=Object.defineProperties;var oo=Object.getOwnPropertyDescriptors;var V=Object.getOwnPropertySymbols;var de=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable;var le=(e,o,t)=>o in e?Ke(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,s=(e,o)=>{for(var t in o||(o={}))de.call(o,t)&&le(e,t,o[t]);if(V)for(var t of V(o))fe.call(o,t)&&le(e,t,o[t]);return e},p=(e,o)=>eo(e,oo(o));var f=(e,o)=>{var t={};for(var r in e)de.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(e!=null&&V)for(var r of V(e))o.indexOf(r)<0&&fe.call(e,r)&&(t[r]=e[r]);return t};var g={medium:"@media (min-width: 480px)",large:"@media (min-width: 768px)",xlarge:"@media (min-width: 1920px)"},h=(e=a.glowPrimary)=>({"&:focus":{boxShadow:e},"&:focus:not(:focus-visible)":{boxShadow:"unset"},"&:focus-visible":{boxShadow:e}});var be=e=>({containerTop:css({justifyContent:"center",backgroundColor:"#0C141C"}),containerBottom:css({justifyContent:"center",borderTop:"1px solid #21262D",backgroundColor:"#161B22"}),containerTopContent:css({width:"100%",maxWidth:e,padding:`${a.spacingXs}`,minHeight:"2.5rem",[g.medium]:{padding:`${a.spacingXs} ${a.spacingM}`}}),containerBottomContent:css({width:"100%",maxWidth:e,padding:0,minHeight:"2.5rem",overflow:"auto",[g.medium]:{padding:`0 ${a.spacing2Xs}`}})});function no(e,o){let W=e,{children:t,account:r,search:i,switcher:n,help:m,badge:d,bottomRightItems:c,topRightItems:v,contentMaxWidth:y="100%",testId:I="cf-ui-navbar"}=W,H=f(W,["children","account","search","switcher","help","badge","bottomRightItems","topRightItems","contentMaxWidth","testId"]),M=be(y);return N.createElement(Box,p(s({},H),{ref:o,testId:I}),N.createElement(Flex,{className:M.containerTop},N.createElement(Flex,{className:M.containerTopContent,justifyContent:"space-between"},N.createElement(Flex,null,n),N.createElement(Flex,{alignItems:"center",gap:"spacingXs"},v,d,i,m,r))),N.createElement(Flex,{className:M.containerBottom},N.createElement(Flex,{className:M.containerBottomContent,justifyContent:"space-between"},N.createElement(Flex,{as:"nav","aria-label":"Main Navigation",alignItems:"stretch"},t),c&&N.createElement(Flex,null,c))))}var ge=N.forwardRef(no);var ue=()=>({root:css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",position:"relative",alignItems:"center",justifyContent:"center",gap:a.spacing2Xs,outline:"none",borderRadius:"50%"},h()),avatar:css({borderRadius:"50%",display:"block",height:"24px",width:"24px"}),notificationIcon:e=>css({position:"absolute",top:0,right:0,height:a.spacingS,width:a.spacingS,borderRadius:"50%",border:`2px solid ${a.gray900}`,backgroundColor:e==="negative"?a.colorNegative:a.colorWarning,transform:"translate(30%, -30%)"})});var ve=()=>({menuList:css({minWidth:"250px"})});var k=e=>{let{trigger:o,children:t,testId:r="cf-ui-navbar-menu-list",onOpen:i,onClose:n}=e,m=ve();return N.createElement(Menu,{onOpen:i,onClose:n},N.createElement(Menu.Trigger,null,o),N.createElement(Menu.List,{className:m.menuList,testId:r},t))};function po(e,o){let I=e,{children:t,className:r,testId:i="cf-ui-navbar-account-trigger",avatar:n,username:m,hasNotification:d,notificationVariant:c="warning"}=I,v=f(I,["children","className","testId","avatar","username","hasNotification","notificationVariant"]),y=ue();return N.createElement(k,{trigger:N.createElement(Flex,p(s({},v),{as:"button",ref:o,className:cx(y.root,r),testId:i}),N.createElement("img",{src:n,alt:`Avatar for user ${m}`,className:y.avatar}),d?N.createElement("span",{className:y.notificationIcon(c)}):null)},t)}var ee=N.forwardRef(po);function oe({ariaLabel:e}){return N.createElement(SkeletonContainer,{svgWidth:24,svgHeight:24,ariaLabel:e,backgroundColor:a.gray800,foregroundColor:a.gray700},N.createElement(SkeletonImage,{width:24,height:24,radiusX:12,radiusY:12}))}var ye=()=>css({"&":{color:a.colorWhite,"& svg":{fill:a.colorWhite}},"&::after":{content:'""',position:"absolute",width:`calc(100% - ${a.spacingM})`,height:"2px",bottom:"0.5px",left:0,right:0,margin:"auto",backgroundColor:a.colorWhite,zIndex:0}}),Ie={display:"flex",justifyContent:"center",padding:`10px ${a.spacingS}`,alignItems:"center",background:"none"},xe=()=>({root:css(Ie,{alignItems:"center",background:"none",border:0,margin:0,outline:"none",fontSize:a.fontSizeM,lineHeight:a.lineHeightM,fontWeight:a.fontWeightMedium,position:"relative",textAlign:"left",whiteSpace:"nowrap",cursor:"pointer",hyphens:"auto",textDecoration:"none",color:hexToRGBA(a.gray300,.8),boxSizing:"border-box",transition:`color ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,borderRadius:a.borderRadiusMedium,"&::before":{content:'""',position:"absolute",width:`calc(100% - ${a.spacingXs})`,height:`calc(100% - ${a.spacingS})`,top:`calc(${a.spacingS} / 2)`,left:0,right:0,margin:"auto",borderRadius:a.borderRadiusSmall,backgroundColor:hexToRGBA(a.colorWhite,.08),opacity:0,zIndex:0,scale:0,transition:`all ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`},"&:hover::before":{opacity:1,scale:"1"},"&:active::before":{backgroundColor:"rgba(255, 255, 255, 0.1)"},"&:disabled":{cursor:"auto"},"& svg":{fill:hexToRGBA(a.gray300,.8),transition:`fill ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,"&:first-child":{display:"none",[g.large]:{display:"block"}}},"& > svg, & > span":{zIndex:a.zIndexDefault}},h(`inset ${a.glowPrimary}`)),isActive:ye(),dropdownIcon:css({paddingLeft:a.spacing2Xs})}),Pe=()=>({root:css(Ie)});var Se=()=>({root:css({"&:first-child":{marginRight:a.spacing2Xs},"&:last-child":{marginLeft:a.spacing2Xs},"img&":{borderRadius:a.borderRadiusSmall,maxWidth:a.spacingM,maxHeight:a.spacingM}})});var z=e=>{var i,n;let{icon:o,variant:t}=e,r=Se();return N.cloneElement(o,{className:cx(o.props.className,r.root),size:(i=o.props.size)!=null?i:"tiny",variant:(n=o.props.variant)!=null?n:t})};var Me=generateIcon({name:"CircleIcon",viewBox:"0 0 24 24",path:N.createElement("path",{d:"M11.994 6.526A5.47 5.47 0 0 0 6.526 12a5.47 5.47 0 0 0 5.468 5.473A5.476 5.476 0 0 0 17.473 12a5.477 5.477 0 0 0-5.479-5.474ZM12 15.447a3.448 3.448 0 1 1 0-6.896 3.448 3.448 0 0 1 0 6.896Z",fill:"currentFill"})});var we=generateIcon({name:"ArrowDownIcon",viewBox:"0 0 12 20",path:N.createElement("path",{d:"M3.03076 8C2.20109 8 1.73228 8.95209 2.23814 9.60971L5.20727 13.4696C5.60757 13.99 6.39223 13.99 6.79252 13.4696L9.76166 9.60971C10.2675 8.95209 9.79871 8 8.96904 8L3.03076 8Z",fill:"#9FA8B2"})});var Ee=generateIcon({name:"HelpIcon",viewBox:"0 0 24 24",path:N.createElement(N.Fragment,null,N.createElement("g",{clipPath:"url(#HelpIcon_svg__a)"},N.createElement("path",{d:"M12 2.25A9.75 9.75 0 1 0 21.75 12 9.769 9.769 0 0 0 12 2.25ZM12 18a1.125 1.125 0 1 1 0-2.25A1.125 1.125 0 0 1 12 18Zm.75-4.584v.084a.75.75 0 1 1-1.5 0v-.75A.75.75 0 0 1 12 12a1.875 1.875 0 1 0-1.875-1.875.75.75 0 1 1-1.5 0 3.375 3.375 0 1 1 4.125 3.29Z",fill:"currentFill"})),N.createElement("defs",null,N.createElement("clipPath",{id:"HelpIcon_svg__a"},N.createElement("path",{fill:"currentFill",d:"M0 0h24v24H0z"}))))});var Ae=generateIcon({name:"SearchIcon",viewBox:"0 0 24 24",path:N.createElement(N.Fragment,null,N.createElement("g",{clipPath:"url(#SearchIcon_svg__a)"},N.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6 11.125a5.125 5.125 0 1 1 10.25 0 5.125 5.125 0 0 1-10.25 0ZM11.125 4a7.125 7.125 0 1 0 4.282 12.82l2.886 2.887a1 1 0 0 0 1.414-1.414l-2.886-2.887A7.125 7.125 0 0 0 11.125 4Z",fill:"currentFill"})),N.createElement("defs",null,N.createElement("clipPath",{id:"SearchIcon_svg__a"},N.createElement("path",{fill:"#fff",d:"M0 0h24v24H0z"}))))});var Ce=generateIcon({name:"ContentfulLogoIcon",viewBox:"0 0 21 24",path:N.createElement("g",{transform:"translate(4 3)"},N.createElement("path",{fill:"#fae501",d:"M3.3 13.7c-1.2-1.2-2-2.9-2-4.7S2 5.5 3.2 4.3c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0-2 2.2-3.3 5.2-3.3 8.5s1.3 6.3 3.4 8.5c1 1 2.6 1 3.6 0 .9-1.1.9-2.7 0-3.8z"}),N.createElement("path",{fill:"#4fb5e1",d:"M3.3 4.3c1.2-1.3 2.8-2 4.6-2s3.4.8 4.6 1.9c1 1.1 2.6 1.1 3.6 0 1-1 1-2.7 0-3.8C13.9-1.6 11-3 7.8-3S1.7-1.6-.4.5c-1 1-1 2.7 0 3.8 1 .9 2.6.9 3.7 0z"}),N.createElement("path",{fill:"#f05751",d:"M12.4 13.7c-1.2 1.3-2.8 2-4.6 2-1.8 0-3.4-.8-4.6-2-1-1.1-2.6-1.1-3.6 0-1 1-1 2.7 0 3.8 2.1 2.1 5 3.5 8.2 3.5s6.1-1.4 8.2-3.5c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0z"}),N.createElement("ellipse",{cx:1.4,cy:2.4,fill:"#0681b6",rx:2.5,ry:2.6}),N.createElement("ellipse",{cx:1.4,cy:15.6,fill:"#cd4739",rx:2.5,ry:2.6}))});var Po="button";function So(e,o){let W=e,{as:t=Po,icon:r,title:i,children:n,className:m,isActive:d,testId:c="cf-ui-navbar-item",onOpen:v,onClose:y}=W,I=f(W,["as","icon","title","children","className","isActive","testId","onOpen","onClose"]),H=xe(),M=N.createElement(t,p(s({},I),{ref:o,"data-test-id":c,className:cx(H.root,d&&H.isActive,m)}),r?N.createElement(z,{icon:r,variant:"white"}):null,N.createElement("span",null,i),ke(e)&&N.createElement(we,{className:H.dropdownIcon}));return ke(e)?N.createElement(k,{trigger:M,testId:c,onOpen:v,onClose:y},n):M}var ke=e=>Boolean(e.children),re=N.forwardRef(So);var ne=({estimatedWidth:e})=>{let o=Pe();return N.createElement(SkeletonContainer,{className:o.root,svgWidth:e,svgHeight:40,backgroundColor:a.gray800,foregroundColor:a.gray700},N.createElement(SkeletonText,{lineHeight:6,numberOfLines:1,offsetTop:7,radiusX:a.borderRadiusSmall,radiusY:a.borderRadiusSmall}))};var Re=()=>({root:css({display:"flex",justifyContent:"flex-start",alignItems:"center"})});var To="button";function Ro(e,o){let v=e,{as:t=To,icon:r,title:i,className:n}=v,m=f(v,["as","icon","title","className"]),d=Re(),c=Bo(e);return N.createElement(Menu.Item,p(s({},m),{ref:o,as:t,className:cx(d.root,n)}),r?N.createElement(z,{icon:r,variant:"secondary"}):c&&Be,N.createElement("span",null,i),r&&c?Be:null)}var Be=N.createElement(z,{icon:N.createElement(ExternalLinkIcon,null),variant:"muted"}),Bo=e=>e.as==="a"&&e.target==="_blank",ae=N.forwardRef(Ro);var ie=({ariaLabel:e})=>N.createElement(Menu.Item,null,N.createElement(Flex,{alignItems:"center",gap:a.spacingXs},N.createElement(SkeletonContainer,{svgHeight:16,svgWidth:18},N.createElement(SkeletonImage,{width:16,height:16})),N.createElement(SkeletonContainer,{svgHeight:16,svgWidth:190,ariaLabel:e},N.createElement(SkeletonBodyText,{numberOfLines:1}))));var Le=()=>({root:css({margin:0,padding:0,background:"none",border:"none",color:a.gray300,cursor:"pointer",fontSize:a.fontSizeS,fontWeight:a.fontWeightMedium,position:"relative",outline:"none",borderRadius:a.borderRadiusMedium,"&:after":{content:'""',border:"1px solid #353A41",boxSizing:"border-box",height:"16px",right:"-1px",position:"absolute",width:0},"&:last-child:after":{display:"none"},"&:hover li":{backgroundColor:hexToRGBA(a.colorWhite,.15)}},h(`0px 0px 0px 2px ${a.colorBlack}, 0px 0px 0px 5px ${a.blue300}`)),breadcrumbs:css({listStyleType:"none",margin:0,padding:0,position:"relative"}),menuIcon:css({display:"none",[g.medium]:{display:"block"}})});function $o(e,o){let c=e,{children:t,className:r,logo:i,testId:n="cf-ui-navbar-switcher"}=c,m=f(c,["children","className","logo","testId"]),d=Le();return N.createElement(Flex,p(s({},m),{as:"button",ref:o,className:cx(d.root,r),testId:n,alignItems:"center",fullHeight:!0,gap:"spacingXs"}),i||N.createElement(Ce,null),N.createElement(MenuIcon,{className:d.menuIcon,size:"small",variant:"white"}),N.createElement(Flex,{as:"ul",alignItems:"center",className:d.breadcrumbs},t))}var pe=N.forwardRef($o);var me=({estimatedWidth:e})=>N.createElement(SkeletonContainer,{svgWidth:e,svgHeight:24,backgroundColor:a.gray800,foregroundColor:a.gray700},N.createElement(SkeletonDisplayText,{lineHeight:24,numberOfLines:1,radiusX:12,radiusY:12}));var Oe=()=>({root:css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",alignItems:"center",justifyContent:"center",minWidth:a.spacingL,transition:`color ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,outline:"none",borderRadius:a.borderRadiusMedium,"& svg":{fill:a.gray300,transition:`fill ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`},"&:hover, & svg:hover":{color:a.gray100,fill:a.gray100}},h())});function Zo(e,o){let m=e,{className:t,testId:r="cf-ui-navbar-search"}=m,i=f(m,["className","testId"]),n=Oe();return N.createElement(Flex,p(s({"aria-label":"Quick Search"},i),{as:"button",ref:o,className:cx(n.root,t),testId:r}),N.createElement(Ae,{size:"medium",variant:"white"}))}var ze=N.forwardRef(Zo);var De={display:"none","&:first-child":{display:"block"},[g.medium]:{display:"block","&:first-child":{display:"none"}}},$e=()=>({breadcrumbsItem:css({position:"relative",alignItems:"center",justifyContent:"center",backgroundColor:hexToRGBA(a.gray100,.1),boxShadow:`0px 0px 0px 2px ${a.colorBlack}`,display:"inline-flex",margin:0,minWidth:0,padding:`0 ${a.spacingXs}`,height:a.spacingL,borderRadius:"3rem",zIndex:2,transition:`background-color ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,whiteSpace:"nowrap","&:not(:first-child)":{clipPath:"path('M0 24C6 24 10 18 10 10C10 5 6 0 0 0H400C400 0 400 5 400 24H0Z')"},"&:first-child":{minWidth:"24px"},"&:nth-child(2)":{zIndex:1,left:`-${a.spacingXs}`,paddingLeft:a.spacingM,borderRadius:"0 3rem 3rem 0",span:{maxWidth:"80px",textOverflow:"ellipsis",overflow:"hidden",[g.large]:{maxWidth:"100%"}}},"&:nth-child(3)":{left:`-${a.spacingM}`,paddingLeft:a.spacingM,borderRadius:"0 3rem 3rem 0",fontFamily:a.fontStackMonospace,fontSize:a.fontSizeS,fontWeight:a.fontWeightMedium,zIndex:0,span:{maxWidth:"40px",textOverflow:"ellipsis",overflow:"hidden",[g.large]:{maxWidth:"100%"}},"> div":{[g.medium]:{gap:a.spacing2Xs}}}}),breadcrumbsItemCircle:css({borderRadius:"50%",color:a.gray400,padding:0,display:"flex",justifyContent:"center",fontSize:"11px",width:a.spacingL,height:a.spacingL}),breadcrumbsItemEnvMaster:css({color:a.green400," svg":p(s({},De),{fill:a.green400})}),breadcrumbsItemEnvNonMaster:css({color:a.orange400,svg:p(s({},De),{fill:a.orange400})})});function Ge({isAlias:e}){return N.createElement(N.Fragment,null,N.createElement(Me,{key:"mobile-icon",size:"tiny"}),e?N.createElement(EnvironmentAliasIcon,{key:"full-icon",size:"tiny"}):N.createElement(EnvironmentIcon,{key:"full-icon",size:"tiny"}))}function et(e,o){let I=e,{children:t,isCircle:r,className:i,envVariant:n,isAlias:m,testId:d="cf-ui-navbar-switcher-item"}=I,c=f(I,["children","isCircle","className","envVariant","isAlias","testId"]),v=$e(),y=cx(v.breadcrumbsItem,i,{[v.breadcrumbsItemCircle]:r,[v.breadcrumbsItemEnvMaster]:n==="master",[v.breadcrumbsItemEnvNonMaster]:n==="non-master"});return N.createElement("li",p(s({},c),{ref:o,className:y,"data-test-id":d}),N.createElement(Flex,{fullHeight:!0,justifyContent:"center",alignItems:"center"},n&&N.createElement(Ge,{isAlias:m}),N.createElement("span",null,t)))}var Ve=N.forwardRef(et);var Xe=()=>({root:css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",alignItems:"center",justifyContent:"center",color:a.gray300,fontSize:0,gap:0,minWidth:a.spacingL,transition:`color ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`,outline:"none",borderRadius:a.borderRadiusMedium,[g.medium]:{fontSize:a.fontSizeS,gap:a.spacing2Xs,fontWeight:a.fontWeightMedium,marginRight:a.spacingXs},"&:hover, &:hover svg":{color:a.gray100,fill:a.gray100},"& svg":{fill:a.gray300,transition:`fill ${a.transitionDurationShort} ${a.transitionEasingCubicBezier}`}},h())});function nt(e,o){let d=e,{children:t,className:r,testId:i="cf-ui-navbar-help-trigger"}=d,n=f(d,["children","className","testId"]),m=Xe();return N.createElement(k,{testId:"cf-ui-navbar-help-menu",trigger:N.createElement(Flex,p(s({"aria-label":"Help Menu"},n),{as:"button",ref:o,className:cx(m.root,r),testId:i}),N.createElement(Ee,{size:"medium",variant:"white"}),"Help")},t)}var Ue=N.forwardRef(nt);var je=()=>({root:css({display:"flex",justifyContent:"center",alignItems:"center",background:"none",border:`1px solid ${a.purple400}`,margin:0,outline:"none",fontSize:a.fontSizeS,lineHeight:a.lineHeightS,fontWeight:a.fontWeightMedium,textAlign:"center",padding:`0 ${a.spacingXs}`,textDecoration:"none",color:`${a.purple400}!important`,borderRadius:"1.75rem"})});var st="div";function pt(e,o){let c=e,{as:t=st,children:r,className:i,testId:n="cf-ui-navbar-badge"}=c,m=f(c,["as","children","className","testId"]),d=je();return N.createElement(t,p(s({},m),{ref:o,className:cx(d.root,i),"data-test-id":n}),r)}var qe=N.forwardRef(pt);var Ye=()=>({root:css({margin:0,background:"none",border:"none",cursor:"pointer",display:"flex",gap:a.spacing2Xs,alignItems:"center",color:a.gray300,padding:`0 ${a.spacing2Xs}`,minHeight:a.spacingL,fontSize:a.fontSizeS,fontWeight:a.fontWeightMedium,outline:"none",borderRadius:a.borderRadiusMedium,"&:hover":{color:a.gray100},svg:{fill:"currentColor"}},h())});var lt="button";function dt(e,o){let c=e,{as:t=lt,children:r,className:i,testId:n="cf-ui-navbar-topbar-item"}=c,m=f(c,["as","children","className","testId"]),d=Ye();return N.createElement(t,p(s({},m),{ref:o,className:cx(d.root,i),"data-test-id":n}),r)}var Je=N.forwardRef(dt);var b=ge;b.Item=re;b.ItemSkeleton=ne;b.MenuItem=ae;b.MenuItemSkeleton=ie;b.MenuDivider=MenuDivider;b.MenuSectionTitle=MenuSectionTitle;b.Switcher=pe;b.SwitcherSkeleton=me;b.SwitcherItem=Ve;b.Search=ze;b.Help=Ue;b.Account=ee;b.AccountSkeleton=oe;b.Badge=qe;b.TopbarItem=Je;
12
12
 
13
- export { b as Navbar, Ne as getNavbarItemActiveStyles, g as mqs };
13
+ export { b as Navbar, ye as getNavbarItemActiveStyles };
14
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/CompoundNavbar.ts","../../src/Navbar.tsx","../../src/Navbar.styles.ts","../../src/utils.styles.ts","../../src/NavbarAccount/NavbarAccount.tsx","../../src/NavbarAccount/NavbarAccount.styles.ts","../../src/NavbarMenu/NavbarMenu.tsx","../../src/NavbarMenu/NavbarMenu.styles.ts","../../src/NavbarAccount/NavbarAccountSkeleton.tsx","../../src/NavbarItem/NavbarItem.tsx","../../src/NavbarItem/NavbarItem.styles.ts","../../src/NavbarItemIcon/NavbarItemIcon.tsx","../../src/NavbarItemIcon/NavbarItemIcon.styles.ts","../../src/icons/CircleIcon.tsx","../../src/icons/ArrowDownIcon.tsx","../../src/icons/HelpIcon.tsx","../../src/icons/SearchIcon.tsx","../../src/icons/ContentfulLogoIcon.tsx","../../src/NavbarItem/NavbarItemSkeleton.tsx","../../src/NavbarMenuItem/NavbarMenuItem.tsx","../../src/NavbarMenuItem/NavbarMenuItem.styles.ts","../../src/NavbarMenuItem/NavbarMenuItemSkeleton.tsx","../../src/NavbarSwitcher/NavbarSwitcher.tsx","../../src/NavbarSwitcher/NavbarSwitcher.styles.ts","../../src/NavbarSwitcher/NavbarSwitcherSkeleton.tsx","../../src/NavbarSearch/NavbarSearch.tsx","../../src/NavbarSearch/NavbarSearch.styles.ts","../../src/NavbarSwitcherItem/NavbarSwitcherItem.tsx","../../src/NavbarSwitcherItem/NavbarSwitcherItem.styles.ts","../../src/NavbarSwitcherItem/NavbarEnvVariant.tsx","../../src/NavbarHelp/NavbarHelp.tsx","../../src/NavbarHelp/NavbarHelp.styles.ts","../../src/NavbarBadge/NavbarBadge.tsx","../../src/NavbarBadge/NavbarBadge.styles.ts","../../src/NavbarTopbarItem/NavbarTopbarItem.tsx","../../src/NavbarTopbarItem/NavbarTopbarItem.styles.ts"],"names":["MenuDivider","MenuSectionTitle","Box","Flex","React","css","tokens","mqs","getNavbarStyles","maxWidth","_Navbar","props","ref","_a","children","account","search","switcher","help","badge","bottomRightItems","topRightItems","contentMaxWidth","testId","otherProps","__objRest","styles","__spreadProps","__spreadValues","Navbar","cx","getNavbarAccountStyles","variant","Menu","getNavbarMenuStyles","NavbarMenu","trigger","onOpen","onClose","_NavbarAccount","className","avatar","username","hasNotification","notificationVariant","NavbarAccount","SkeletonContainer","SkeletonImage","NavbarAccountSkeleton","ariaLabel","hexToRGBA","getNavbarItemActiveStyles","commonItemStyles","getNavbarItemStyles","getNavbarItemSkeletonStyles","getNavbarItemIconStyles","NavbarItemIcon","_b","icon","generateIcon","CircleIcon","ArrowDownIcon","HelpIcon","SearchIcon","ContentfulLogoIcon","NAVBAR_ITEM_DEFAULT_TAG","_NavbarItem","Comp","title","isActive","item","isNavbarItemHasMenu","NavbarItem","SkeletonText","NavbarItemSkeleton","estimatedWidth","getNavbarMenuItemStyles","ExternalLinkIcon","NAVBAR_MENU_ITEM_DEFAULT_TAG","_NavbarMenuItem","itemIsExternalLink","isExternalLink","externalIcon","NavbarMenuItem","SkeletonBodyText","NavbarMenuItemSkeleton","getNavbarSwitcherStyles","MenuIcon","_NavbarSwitcher","logo","NavbarSwitcher","SkeletonDisplayText","NavbarSwitcherSkeleton","getNavbarSearchStyles","_NavbarSearch","NavbarSearch","mobileIcon","getNavbarSwitcherItemStyles","EnvironmentAliasIcon","EnvironmentIcon","NavbarEnvVariant","isAlias","_NavbarSwitcherItem","isCircle","envVariant","classes","NavbarSwitcherItem","getNavbarHelpStyles","_NavbarHelp","NavbarHelp","getNavbarBadgeStyles","NAVBAR_BADGE_DEFAULT_TAG","_NavbarBadge","NavbarBadge","getNavbarTopbarItemStyles","_NavbarTopbarItem","NavbarTopbarItem"],"mappings":"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","sourcesContent":["import { MenuDivider } from '@contentful/f36-menu';\nimport { MenuSectionTitle } from '@contentful/f36-menu';\nimport { Navbar as OriginalNavbar } from './Navbar';\n\nimport { NavbarAccount, NavbarAccountSkeleton } from './NavbarAccount';\nimport { NavbarItem, NavbarItemSkeleton } from './NavbarItem';\nimport { NavbarMenuItem, NavbarMenuItemSkeleton } from './NavbarMenuItem';\nimport { NavbarSwitcher, NavbarSwitcherSkeleton } from './NavbarSwitcher';\n\nimport { NavbarSearch } from './NavbarSearch/NavbarSearch';\nimport { NavbarSwitcherItem } from './NavbarSwitcherItem/NavbarSwitcherItem';\nimport { NavbarHelp } from './NavbarHelp/NavbarHelp';\nimport { NavbarBadge } from './NavbarBadge/NavbarBadge';\nimport { NavbarTopbarItem } from './NavbarTopbarItem/NavbarTopbarItem';\n\ntype CompoundNavbar = typeof OriginalNavbar & {\n Item: typeof NavbarItem;\n ItemSkeleton: typeof NavbarItemSkeleton;\n MenuItem: typeof NavbarMenuItem;\n MenuItemSkeleton: typeof NavbarMenuItemSkeleton;\n MenuDivider: typeof MenuDivider;\n MenuSectionTitle: typeof MenuSectionTitle;\n Switcher: typeof NavbarSwitcher;\n SwitcherSkeleton: typeof NavbarSwitcherSkeleton;\n SwitcherItem: typeof NavbarSwitcherItem;\n Search: typeof NavbarSearch;\n Help: typeof NavbarHelp;\n Account: typeof NavbarAccount;\n AccountSkeleton: typeof NavbarAccountSkeleton;\n Badge: typeof NavbarBadge;\n TopbarItem: typeof NavbarTopbarItem;\n};\n\nexport const Navbar = OriginalNavbar as CompoundNavbar;\nNavbar.Item = NavbarItem;\nNavbar.ItemSkeleton = NavbarItemSkeleton;\nNavbar.MenuItem = NavbarMenuItem;\nNavbar.MenuItemSkeleton = NavbarMenuItemSkeleton;\nNavbar.MenuDivider = MenuDivider;\nNavbar.MenuSectionTitle = MenuSectionTitle;\nNavbar.Switcher = NavbarSwitcher;\nNavbar.SwitcherSkeleton = NavbarSwitcherSkeleton;\nNavbar.SwitcherItem = NavbarSwitcherItem;\nNavbar.Search = NavbarSearch;\nNavbar.Help = NavbarHelp;\nNavbar.Account = NavbarAccount;\nNavbar.AccountSkeleton = NavbarAccountSkeleton;\nNavbar.Badge = NavbarBadge;\nNavbar.TopbarItem = NavbarTopbarItem;\n","import {\n Box,\n type CommonProps,\n type ExpandProps,\n Flex,\n} from '@contentful/f36-core';\nimport React from 'react';\nimport { getNavbarStyles } from './Navbar.styles';\n\ntype NavbarOwnProps = CommonProps & {\n children?: React.ReactNode;\n account?: React.ReactNode;\n search?: React.ReactNode;\n switcher?: React.ReactNode;\n help?: React.ReactNode;\n badge?: React.ReactNode;\n /**\n * Items that will be rendered on the bottom-right of the navbar.\n * Useful for separating other navigation items from main ones, (e.g. separating \"Settings\" from all other navigation items).\n */\n bottomRightItems?: React.ReactNode;\n /**\n * Items that will be rendered on the top-right of the navbar.\n * Useful for providing additional context or actions to the user (e.g. a Feedback form link).\n */\n topRightItems?: React.ReactNode;\n /**\n * Defines the max-width of the content inside the navbar.\n * @default '100%'\n */\n contentMaxWidth?: string;\n};\n\n// expose only the HTML props that are needed to not pollute the API\ntype NavbarHTMLElementProps = Pick<React.ComponentPropsWithoutRef<'div'>, 'id'>;\n\nexport type NavbarProps = NavbarHTMLElementProps & NavbarOwnProps;\n\nfunction _Navbar(props: ExpandProps<NavbarProps>, ref: React.Ref<HTMLElement>) {\n const {\n children,\n account,\n search,\n switcher,\n help,\n badge,\n bottomRightItems,\n topRightItems,\n contentMaxWidth = '100%',\n testId = 'cf-ui-navbar',\n ...otherProps\n } = props;\n const styles = getNavbarStyles(contentMaxWidth);\n\n return (\n <Box {...otherProps} ref={ref} testId={testId}>\n <Flex className={styles.containerTop}>\n <Flex\n className={styles.containerTopContent}\n justifyContent=\"space-between\"\n >\n <Flex>{switcher}</Flex>\n <Flex alignItems=\"center\" gap=\"spacingXs\">\n {topRightItems}\n {badge}\n {search}\n {help}\n {account}\n </Flex>\n </Flex>\n </Flex>\n\n <Flex className={styles.containerBottom}>\n <Flex\n className={styles.containerBottomContent}\n justifyContent=\"space-between\"\n >\n <Flex as=\"nav\" aria-label=\"Main Navigation\" alignItems=\"stretch\">\n {children}\n </Flex>\n {bottomRightItems && <Flex>{bottomRightItems}</Flex>}\n </Flex>\n </Flex>\n </Box>\n );\n}\n\nexport const Navbar = React.forwardRef(_Navbar);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { mqs } from './utils.styles';\n\nexport const getNavbarStyles = (maxWidth: string) => ({\n containerTop: css({\n justifyContent: 'center',\n backgroundColor: '#0C141C',\n }),\n containerBottom: css({\n justifyContent: 'center',\n borderTop: `1px solid #21262D`,\n backgroundColor: '#161B22',\n }),\n containerTopContent: css({\n width: '100%',\n maxWidth: maxWidth,\n padding: `${tokens.spacingXs}`,\n minHeight: '2.5rem',\n [mqs.medium]: {\n padding: `${tokens.spacingXs} ${tokens.spacingM}`,\n },\n }),\n containerBottomContent: css({\n width: '100%',\n maxWidth: maxWidth,\n padding: 0,\n minHeight: '2.5rem',\n overflow: 'auto',\n [mqs.medium]: {\n padding: `0 ${tokens.spacing2Xs}`,\n },\n }),\n});\n\nexport const NAVBAR_FALLBACK_HEIGHT = 81;\n","type screens = 'medium' | 'large' | 'xlarge';\ntype mediaqueries = Record<screens, string>;\nexport const mqs: mediaqueries = {\n medium: '@media (min-width: 480px)',\n large: '@media (min-width: 768px)',\n xlarge: '@media (min-width: 1920px)',\n};\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarAccountStyles } from './NavbarAccount.styles';\nimport {\n Flex,\n type PropsWithHTMLElement,\n type CommonProps,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { NavbarMenu } from '../NavbarMenu/NavbarMenu';\n\ntype NavbarAccountOwnProps = CommonProps & {\n children: React.ReactNode;\n username: string;\n avatar: string;\n hasNotification?: boolean;\n /**\n * @default 'warning'\n */\n notificationVariant?: 'warning' | 'negative';\n};\n\nexport type NavbarAccountProps = PropsWithHTMLElement<\n NavbarAccountOwnProps,\n 'button'\n>;\n\nfunction _NavbarAccount(\n props: ExpandProps<NavbarAccountProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n testId = 'cf-ui-navbar-account-trigger',\n avatar,\n username,\n hasNotification,\n notificationVariant = 'warning',\n ...otherProps\n } = props;\n const styles = getNavbarAccountStyles();\n\n return (\n <NavbarMenu\n trigger={\n <Flex\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <img\n src={avatar}\n alt={`Avatar for user ${username}`}\n className={styles.avatar}\n />\n {hasNotification ? (\n <span className={styles.notificationIcon(notificationVariant)} />\n ) : null}\n </Flex>\n }\n >\n {children}\n </NavbarMenu>\n );\n}\n\nexport const NavbarAccount = React.forwardRef(_NavbarAccount);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { NavbarAccountProps } from './NavbarAccount';\n\nexport const getNavbarAccountStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n gap: tokens.spacing2Xs,\n\n '&:focus-visible': {\n boxShadow: tokens.glowPrimary,\n outline: 'none',\n borderRadius: '50%',\n },\n }),\n avatar: css({\n borderRadius: '50%',\n display: 'block',\n height: '24px',\n width: '24px',\n }),\n notificationIcon: (variant: NavbarAccountProps['notificationVariant']) =>\n css({\n position: 'absolute',\n top: 0,\n right: 0,\n height: tokens.spacingS,\n width: tokens.spacingS,\n borderRadius: '50%',\n border: `2px solid ${tokens.gray900}`,\n backgroundColor:\n variant === 'negative' ? tokens.colorNegative : tokens.colorWarning,\n transform: 'translate(30%, -30%)',\n }),\n});\n","import React from 'react';\nimport { Menu, type MenuListProps, type MenuProps } from '@contentful/f36-menu';\nimport { getNavbarMenuStyles } from './NavbarMenu.styles';\n\nexport type NavbarMenuProps = {\n trigger: React.ReactNode;\n children?: React.ReactNode;\n} & Pick<MenuListProps, 'testId'> &\n Pick<MenuProps, 'onOpen' | 'onClose'>;\n\nexport const NavbarMenu = (props: NavbarMenuProps) => {\n const {\n trigger,\n children,\n testId = 'cf-ui-navbar-menu-list',\n onOpen,\n onClose,\n } = props;\n const styles = getNavbarMenuStyles();\n\n return (\n <Menu onOpen={onOpen} onClose={onClose}>\n <Menu.Trigger>{trigger}</Menu.Trigger>\n <Menu.List className={styles.menuList} testId={testId}>\n {children}\n </Menu.List>\n </Menu>\n );\n};\n","import { css } from 'emotion';\n\nexport const getNavbarMenuStyles = () => ({\n menuList: css({\n minWidth: '250px',\n }),\n});\n","import React from 'react';\nimport { SkeletonContainer, SkeletonImage } from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\n\nexport function NavbarAccountSkeleton({ ariaLabel }: { ariaLabel?: string }) {\n return (\n <SkeletonContainer\n svgWidth={24}\n svgHeight={24}\n ariaLabel={ariaLabel}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonImage width={24} height={24} radiusX={12} radiusY={12} />\n </SkeletonContainer>\n );\n}\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarItemStyles } from './NavbarItem.styles';\nimport { NavbarMenu, type NavbarMenuProps } from '../NavbarMenu/NavbarMenu';\nimport {\n NavbarItemIcon,\n type NavbarItemIconProps,\n} from '../NavbarItemIcon/NavbarItemIcon';\nimport { ArrowDownIcon } from '../icons';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_ITEM_DEFAULT_TAG = 'button';\n\ntype NavbarItemTriggerProps = CommonProps & {\n title: string;\n icon?: NavbarItemIconProps['icon'];\n isActive?: boolean;\n as?: React.ElementType;\n};\n\ntype NavbarItemAsMenuProps = NavbarItemTriggerProps &\n Pick<NavbarMenuProps, 'onOpen' | 'onClose'> & {\n children: React.ReactNode;\n };\ntype NavbarItemAsItemProps = NavbarItemTriggerProps & {\n children?: never;\n onOpen?: never;\n onClose?: never;\n};\ntype NavbarItemOwnProps = NavbarItemAsItemProps | NavbarItemAsMenuProps;\n\nexport type NavbarItemProps<\n E extends React.ElementType = typeof NAVBAR_ITEM_DEFAULT_TAG,\n> = PolymorphicProps<NavbarItemOwnProps, E>;\n\nfunction _NavbarItem(\n props: NavbarItemProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_ITEM_DEFAULT_TAG,\n icon,\n title,\n children,\n className,\n isActive,\n testId = 'cf-ui-navbar-item',\n onOpen,\n onClose,\n ...otherProps\n } = props;\n const styles = getNavbarItemStyles();\n\n const item = (\n <Comp\n {...otherProps}\n ref={ref}\n data-test-id={testId}\n className={cx(styles.root, isActive && styles.isActive, className)}\n >\n {icon ? <NavbarItemIcon icon={icon} variant=\"white\" /> : null}\n <span>{title}</span>\n {isNavbarItemHasMenu(props) && (\n <ArrowDownIcon className={styles.dropdownIcon} />\n )}\n </Comp>\n );\n\n if (isNavbarItemHasMenu(props)) {\n return (\n <NavbarMenu\n trigger={item}\n testId={testId}\n onOpen={onOpen}\n onClose={onClose}\n >\n {children}\n </NavbarMenu>\n );\n }\n\n return item;\n}\n\nconst isNavbarItemHasMenu = <E extends React.ElementType>(\n props: NavbarItemProps<E>,\n): props is PolymorphicProps<NavbarItemAsMenuProps, E> =>\n Boolean(props.children);\n\nexport const NavbarItem: PolymorphicComponent<\n ExpandProps<NavbarItemOwnProps>,\n typeof NAVBAR_ITEM_DEFAULT_TAG\n> = React.forwardRef(_NavbarItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { mqs } from '../utils.styles';\n\nexport const getNavbarItemActiveStyles = () =>\n css({\n '&': {\n color: tokens.colorWhite,\n '& svg': {\n fill: tokens.colorWhite,\n },\n },\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n width: `calc(100% - ${tokens.spacingM})`,\n height: '2px',\n bottom: '0.5px',\n left: 0,\n right: 0,\n margin: 'auto',\n backgroundColor: tokens.colorWhite,\n zIndex: 0,\n },\n });\n\nconst commonItemStyles = {\n display: 'flex',\n justifyContent: 'center',\n padding: `10px ${tokens.spacingS}`,\n alignItems: 'center',\n background: 'none',\n};\n\nexport const getNavbarItemStyles = () => ({\n root: css(commonItemStyles, {\n alignItems: 'center',\n background: 'none',\n border: 0,\n margin: 0,\n outline: 'none',\n fontSize: tokens.fontSizeM,\n lineHeight: tokens.lineHeightM,\n fontWeight: tokens.fontWeightMedium,\n position: 'relative',\n textAlign: 'left',\n whiteSpace: 'nowrap',\n cursor: 'pointer',\n hyphens: 'auto',\n textDecoration: 'none',\n color: hexToRGBA(tokens.gray300, 0.8),\n boxSizing: 'border-box',\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n width: `calc(100% - ${tokens.spacingXs})`,\n height: `calc(100% - ${tokens.spacingS})`,\n top: `calc(${tokens.spacingS} / 2)`,\n left: 0,\n right: 0,\n margin: 'auto',\n borderRadius: tokens.borderRadiusSmall,\n backgroundColor: hexToRGBA(tokens.colorWhite, 0.08),\n opacity: 0,\n zIndex: 0,\n scale: 0,\n transition: `all ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n\n '&:hover::before': {\n opacity: 1,\n scale: '1',\n },\n\n '&:focus-visible': {\n boxShadow: `inset ${tokens.glowPrimary}`,\n borderRadius: tokens.borderRadiusMedium,\n },\n '&:active::before': {\n backgroundColor: `rgba(255, 255, 255, 0.1)`,\n },\n '&:disabled': {\n cursor: 'auto',\n },\n\n '& svg': {\n fill: hexToRGBA(tokens.gray300, 0.8),\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n\n '&:first-child': {\n display: 'none',\n [mqs.large]: {\n display: 'block',\n },\n },\n },\n '& > svg, & > span': {\n zIndex: tokens.zIndexDefault,\n },\n }),\n isActive: getNavbarItemActiveStyles(),\n dropdownIcon: css({\n paddingLeft: tokens.spacing2Xs,\n }),\n});\n\nexport const getNavbarItemSkeletonStyles = () => ({\n root: css(commonItemStyles),\n});\n","import React from 'react';\nimport type { IconProps } from '@contentful/f36-icons';\nimport { getNavbarItemIconStyles } from './NavbarItemIcon.styles';\nimport { cx } from 'emotion';\n\nexport type NavbarItemIconProps = {\n icon: React.ReactElement<IconProps>;\n} & Pick<IconProps, 'variant'>;\n\nexport const NavbarItemIcon = (props: NavbarItemIconProps) => {\n const { icon, variant } = props;\n const styles = getNavbarItemIconStyles();\n\n return React.cloneElement(icon, {\n className: cx(icon.props.className, styles.root),\n size: icon.props.size ?? 'tiny',\n variant: icon.props.variant ?? variant,\n });\n};\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarItemIconStyles = () => ({\n root: css({\n '&:first-child': {\n marginRight: tokens.spacing2Xs,\n },\n '&:last-child': {\n marginLeft: tokens.spacing2Xs,\n },\n 'img&': {\n borderRadius: tokens.borderRadiusSmall,\n maxWidth: tokens.spacingM,\n maxHeight: tokens.spacingM,\n },\n }),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const CircleIcon = /*#__PURE__*/ generateIcon({\n name: 'CircleIcon',\n viewBox: '0 0 24 24',\n path: (\n <path\n d=\"M11.994 6.526A5.47 5.47 0 0 0 6.526 12a5.47 5.47 0 0 0 5.468 5.473A5.476 5.476 0 0 0 17.473 12a5.477 5.477 0 0 0-5.479-5.474ZM12 15.447a3.448 3.448 0 1 1 0-6.896 3.448 3.448 0 0 1 0 6.896Z\"\n fill=\"currentFill\"\n />\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const ArrowDownIcon = /*#__PURE__*/ generateIcon({\n name: 'ArrowDownIcon',\n viewBox: '0 0 12 20',\n path: (\n <path\n d=\"M3.03076 8C2.20109 8 1.73228 8.95209 2.23814 9.60971L5.20727 13.4696C5.60757 13.99 6.39223 13.99 6.79252 13.4696L9.76166 9.60971C10.2675 8.95209 9.79871 8 8.96904 8L3.03076 8Z\"\n fill=\"#9FA8B2\"\n />\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const HelpIcon = /*#__PURE__*/ generateIcon({\n name: 'HelpIcon',\n viewBox: '0 0 24 24',\n path: (\n <>\n <g clipPath=\"url(#HelpIcon_svg__a)\">\n <path\n d=\"M12 2.25A9.75 9.75 0 1 0 21.75 12 9.769 9.769 0 0 0 12 2.25ZM12 18a1.125 1.125 0 1 1 0-2.25A1.125 1.125 0 0 1 12 18Zm.75-4.584v.084a.75.75 0 1 1-1.5 0v-.75A.75.75 0 0 1 12 12a1.875 1.875 0 1 0-1.875-1.875.75.75 0 1 1-1.5 0 3.375 3.375 0 1 1 4.125 3.29Z\"\n fill=\"currentFill\"\n />\n </g>\n <defs>\n <clipPath id=\"HelpIcon_svg__a\">\n <path fill=\"currentFill\" d=\"M0 0h24v24H0z\" />\n </clipPath>\n </defs>\n </>\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const SearchIcon = /*#__PURE__*/ generateIcon({\n name: 'SearchIcon',\n viewBox: '0 0 24 24',\n path: (\n <>\n <g clipPath=\"url(#SearchIcon_svg__a)\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6 11.125a5.125 5.125 0 1 1 10.25 0 5.125 5.125 0 0 1-10.25 0ZM11.125 4a7.125 7.125 0 1 0 4.282 12.82l2.886 2.887a1 1 0 0 0 1.414-1.414l-2.886-2.887A7.125 7.125 0 0 0 11.125 4Z\"\n fill=\"currentFill\"\n />\n </g>\n <defs>\n <clipPath id=\"SearchIcon_svg__a\">\n <path fill=\"#fff\" d=\"M0 0h24v24H0z\" />\n </clipPath>\n </defs>\n </>\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const ContentfulLogoIcon = /*#__PURE__*/ generateIcon({\n name: 'ContentfulLogoIcon',\n viewBox: '0 0 21 24',\n path: (\n <g transform=\"translate(4 3)\">\n <path\n fill=\"#fae501\"\n d=\"M3.3 13.7c-1.2-1.2-2-2.9-2-4.7S2 5.5 3.2 4.3c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0-2 2.2-3.3 5.2-3.3 8.5s1.3 6.3 3.4 8.5c1 1 2.6 1 3.6 0 .9-1.1.9-2.7 0-3.8z\"\n />\n <path\n fill=\"#4fb5e1\"\n d=\"M3.3 4.3c1.2-1.3 2.8-2 4.6-2s3.4.8 4.6 1.9c1 1.1 2.6 1.1 3.6 0 1-1 1-2.7 0-3.8C13.9-1.6 11-3 7.8-3S1.7-1.6-.4.5c-1 1-1 2.7 0 3.8 1 .9 2.6.9 3.7 0z\"\n />\n <path\n fill=\"#f05751\"\n d=\"M12.4 13.7c-1.2 1.3-2.8 2-4.6 2-1.8 0-3.4-.8-4.6-2-1-1.1-2.6-1.1-3.6 0-1 1-1 2.7 0 3.8 2.1 2.1 5 3.5 8.2 3.5s6.1-1.4 8.2-3.5c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0z\"\n />\n <ellipse cx={1.4} cy={2.4} fill=\"#0681b6\" rx={2.5} ry={2.6} />\n <ellipse cx={1.4} cy={15.6} fill=\"#cd4739\" rx={2.5} ry={2.6} />\n </g>\n ),\n});\n","import React from 'react';\nimport { SkeletonContainer, SkeletonText } from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\nimport { getNavbarItemSkeletonStyles } from './NavbarItem.styles';\n\nexport const NavbarItemSkeleton = ({\n estimatedWidth,\n}: {\n estimatedWidth: number;\n}) => {\n const styles = getNavbarItemSkeletonStyles();\n\n return (\n <SkeletonContainer\n className={styles.root}\n svgWidth={estimatedWidth}\n svgHeight={40}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonText\n lineHeight={6}\n numberOfLines={1}\n offsetTop={7}\n radiusX={tokens.borderRadiusSmall}\n radiusY={tokens.borderRadiusSmall}\n />\n </SkeletonContainer>\n );\n};\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarMenuItemStyles } from './NavbarMenuItem.styles';\nimport { Menu, type MenuItemProps } from '@contentful/f36-menu';\nimport {\n NavbarItemIcon,\n type NavbarItemIconProps,\n} from '../NavbarItemIcon/NavbarItemIcon';\nimport { ExternalLinkIcon } from '@contentful/f36-icons';\nimport type {\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_MENU_ITEM_DEFAULT_TAG = 'button';\n\ntype NavbarMenuItemOwnProps = {\n children?: null;\n title: string;\n icon?: NavbarItemIconProps['icon'];\n as?: React.ElementType;\n} & Omit<MenuItemProps, 'children' | 'as'>;\n\nexport type NavbarMenuItemProps<\n E extends React.ElementType = typeof NAVBAR_MENU_ITEM_DEFAULT_TAG,\n> = PolymorphicProps<NavbarMenuItemOwnProps, E>;\n\nfunction _NavbarMenuItem(\n props: NavbarMenuItemProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_MENU_ITEM_DEFAULT_TAG,\n icon,\n title,\n className,\n ...otherProps\n } = props;\n const styles = getNavbarMenuItemStyles();\n\n const itemIsExternalLink = isExternalLink(\n props as unknown as NavbarMenuItemProps<'a'>,\n );\n\n return (\n <Menu.Item\n {...otherProps}\n ref={ref}\n as={Comp as MenuItemProps['as']}\n className={cx(styles.root, className)}\n >\n {icon ? (\n <NavbarItemIcon icon={icon} variant=\"secondary\" />\n ) : (\n itemIsExternalLink && externalIcon\n )}\n <span>{title}</span>\n {icon && itemIsExternalLink ? externalIcon : null}\n </Menu.Item>\n );\n}\n\nconst externalIcon = (\n <NavbarItemIcon icon={<ExternalLinkIcon />} variant=\"muted\" />\n);\n\nconst isExternalLink = (props: NavbarMenuItemProps<'a'>) =>\n props.as === 'a' && props.target === '_blank';\n\nexport const NavbarMenuItem: PolymorphicComponent<\n ExpandProps<NavbarMenuItemOwnProps>,\n typeof NAVBAR_MENU_ITEM_DEFAULT_TAG\n> = React.forwardRef(_NavbarMenuItem);\n","import { css } from 'emotion';\n\nexport const getNavbarMenuItemStyles = () => ({\n root: css({\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n }),\n});\n","import React from 'react';\nimport { Menu } from '@contentful/f36-menu';\nimport {\n SkeletonBodyText,\n SkeletonContainer,\n SkeletonImage,\n} from '@contentful/f36-skeleton';\nimport { Flex } from '@contentful/f36-core';\n\nimport tokens from '@contentful/f36-tokens';\n\nexport const NavbarMenuItemSkeleton = ({\n ariaLabel,\n}: {\n ariaLabel?: string;\n}) => (\n <Menu.Item>\n <Flex alignItems=\"center\" gap={tokens.spacingXs}>\n <SkeletonContainer svgHeight={16} svgWidth={18}>\n <SkeletonImage width={16} height={16} />\n </SkeletonContainer>\n <SkeletonContainer svgHeight={16} svgWidth={190} ariaLabel={ariaLabel}>\n <SkeletonBodyText numberOfLines={1} />\n </SkeletonContainer>\n </Flex>\n </Menu.Item>\n);\n","import React from 'react';\nimport { getNavbarSwitcherStyles } from './NavbarSwitcher.styles';\nimport {\n Flex,\n type CommonProps,\n type PropsWithHTMLElement,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { MenuIcon } from '@contentful/f36-icons';\nimport { cx } from 'emotion';\nimport { ContentfulLogoIcon } from '../icons';\n\ntype NavbarSwitcherOwnProps = CommonProps & {\n children?: React.ReactNode;\n /**\n * Will be displayed instead of the default Contentful logo\n */\n logo?: React.ReactNode;\n};\n\nexport type NavbarSwitcherProps = PropsWithHTMLElement<\n NavbarSwitcherOwnProps,\n 'button'\n>;\n\nfunction _NavbarSwitcher(\n props: ExpandProps<NavbarSwitcherProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n logo,\n testId = 'cf-ui-navbar-switcher',\n ...otherProps\n } = props;\n const styles = getNavbarSwitcherStyles();\n\n return (\n <Flex\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n alignItems=\"center\"\n fullHeight\n gap=\"spacingXs\"\n >\n {logo || <ContentfulLogoIcon />}\n <MenuIcon className={styles.menuIcon} size=\"small\" variant=\"white\" />\n <Flex as=\"ul\" alignItems=\"center\" className={styles.breadcrumbs}>\n {children}\n </Flex>\n </Flex>\n );\n}\n\nexport const NavbarSwitcher = React.forwardRef(_NavbarSwitcher);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { mqs } from '../utils.styles';\n\nexport const getNavbarSwitcherStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n color: tokens.gray300,\n cursor: 'pointer',\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n position: 'relative',\n '&:after': {\n content: '\"\"',\n border: '1px solid #353A41',\n boxSizing: 'border-box',\n height: '16px',\n right: '-1px',\n position: 'absolute',\n width: 0,\n },\n '&:last-child:after': {\n display: 'none',\n },\n '&:focus-visible': {\n boxShadow: `0px 0px 0px 2px ${tokens.colorBlack}, 0px 0px 0px 5px ${tokens.blue300}`,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n },\n '&:hover li': {\n backgroundColor: hexToRGBA(tokens.colorWhite, 0.15),\n },\n }),\n breadcrumbs: css({\n listStyleType: 'none',\n margin: 0,\n padding: 0,\n position: 'relative',\n }),\n menuIcon: css({\n display: 'none',\n [mqs.medium]: {\n display: 'block',\n },\n }),\n});\n","import React from 'react';\nimport {\n SkeletonContainer,\n SkeletonDisplayText,\n} from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\n\nexport const NavbarSwitcherSkeleton = ({\n estimatedWidth,\n}: {\n estimatedWidth: number;\n}) => (\n <SkeletonContainer\n svgWidth={estimatedWidth}\n svgHeight={24}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonDisplayText\n lineHeight={24}\n numberOfLines={1}\n radiusX={12}\n radiusY={12}\n />\n </SkeletonContainer>\n);\n","import { cx } from 'emotion';\nimport React from 'react';\nimport { getNavbarSearchStyles } from './NavbarSearch.styles';\nimport { SearchIcon } from '../icons';\nimport {\n CommonProps,\n ExpandProps,\n Flex,\n PropsWithHTMLElement,\n} from '@contentful/f36-core';\n\ntype NavbarSearchOwnProps = CommonProps;\n\nexport type NavbarSearchProps = PropsWithHTMLElement<\n NavbarSearchOwnProps,\n 'button'\n>;\n\nfunction _NavbarSearch(\n props: ExpandProps<NavbarSearchProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const { className, testId = 'cf-ui-navbar-search', ...otherProps } = props;\n const styles = getNavbarSearchStyles();\n\n return (\n <Flex\n aria-label=\"Quick Search\"\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <SearchIcon size=\"medium\" variant=\"white\" />\n </Flex>\n );\n}\n\nexport const NavbarSearch = React.forwardRef(_NavbarSearch);\n","import tokens from '@contentful/f36-tokens';\nimport { css } from 'emotion';\n\nexport const getNavbarSearchStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: tokens.spacingL,\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n '& svg': {\n fill: tokens.gray300,\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n '&:hover, & svg:hover': {\n color: tokens.gray100,\n fill: tokens.gray100,\n },\n '&:focus-visible': {\n boxShadow: tokens.glowPrimary,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n },\n }),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarSwitcherItemStyles } from './NavbarSwitcherItem.styles';\nimport { NavbarEnvVariant } from './NavbarEnvVariant';\nimport {\n Flex,\n type CommonProps,\n type ExpandProps,\n type PropsWithHTMLElement,\n} from '@contentful/f36-core';\n\ntype NavbarSwitcherItemOwnProps = CommonProps & {\n children?: React.ReactNode;\n isCircle?: boolean;\n envVariant?: 'master' | 'non-master';\n isAlias?: boolean;\n};\n\nexport type NavbarSwitcherItemProps = PropsWithHTMLElement<\n NavbarSwitcherItemOwnProps,\n 'li'\n>;\n\nfunction _NavbarSwitcherItem(\n props: ExpandProps<NavbarSwitcherItemProps>,\n ref: React.Ref<HTMLLIElement>,\n) {\n const {\n children,\n isCircle,\n className,\n envVariant,\n isAlias,\n testId = 'cf-ui-navbar-switcher-item',\n ...otherProps\n } = props;\n const styles = getNavbarSwitcherItemStyles();\n const classes = cx(styles.breadcrumbsItem, className, {\n [styles.breadcrumbsItemCircle]: isCircle,\n [styles.breadcrumbsItemEnvMaster]: envVariant === 'master',\n [styles.breadcrumbsItemEnvNonMaster]: envVariant === 'non-master',\n });\n\n return (\n <li {...otherProps} ref={ref} className={classes} data-test-id={testId}>\n <Flex fullHeight justifyContent=\"center\" alignItems=\"center\">\n {envVariant && <NavbarEnvVariant isAlias={isAlias} />}\n <span>{children}</span>\n </Flex>\n </li>\n );\n}\n\nexport const NavbarSwitcherItem = React.forwardRef(_NavbarSwitcherItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { mqs } from '../utils.styles';\n\nconst mobileIcon = {\n display: 'none',\n '&:first-child': {\n display: 'block',\n },\n\n [mqs.medium]: {\n display: 'block',\n '&:first-child': {\n display: 'none',\n },\n },\n};\n\nexport const getNavbarSwitcherItemStyles = () => ({\n breadcrumbsItem: css({\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: hexToRGBA(tokens.gray100, 0.1),\n boxShadow: `0px 0px 0px 2px ${tokens.colorBlack}`,\n display: 'inline-flex',\n margin: 0,\n minWidth: 0,\n padding: `0 ${tokens.spacingXs}`,\n height: tokens.spacingL,\n borderRadius: '3rem',\n zIndex: 2,\n transition: `background-color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n whiteSpace: 'nowrap',\n '&:not(:first-child)': {\n clipPath: `path('M0 24C6 24 10 18 10 10C10 5 6 0 0 0H400C400 0 400 5 400 24H0Z')`,\n },\n '&:first-child': {\n minWidth: '24px',\n },\n '&:nth-child(2)': {\n zIndex: 1,\n left: `-${tokens.spacingXs}`,\n paddingLeft: tokens.spacingM,\n borderRadius: `0 3rem 3rem 0`,\n span: {\n maxWidth: '80px',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n [mqs.large]: {\n maxWidth: '100%',\n },\n },\n },\n '&:nth-child(3)': {\n left: `-${tokens.spacingM}`,\n paddingLeft: tokens.spacingM,\n borderRadius: `0 3rem 3rem 0`,\n fontFamily: tokens.fontStackMonospace,\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n zIndex: 0,\n span: {\n maxWidth: '40px',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n [mqs.large]: {\n maxWidth: '100%',\n },\n },\n '> div': {\n [mqs.medium]: {\n gap: tokens.spacing2Xs,\n },\n },\n },\n }),\n breadcrumbsItemCircle: css({\n borderRadius: '50%',\n color: tokens.gray400,\n padding: 0,\n display: 'flex',\n justifyContent: 'center',\n fontSize: '11px',\n width: tokens.spacingL,\n height: tokens.spacingL,\n }),\n breadcrumbsItemEnvMaster: css({\n color: tokens.green400,\n ' svg': {\n ...mobileIcon,\n fill: tokens.green400,\n },\n }),\n breadcrumbsItemEnvNonMaster: css({\n color: tokens.orange400,\n ' svg': {\n ...mobileIcon,\n fill: tokens.orange400,\n },\n }),\n});\n","import React from 'react';\nimport { NavbarSwitcherItemProps } from './NavbarSwitcherItem';\nimport { CircleIcon } from '../icons';\nimport { EnvironmentAliasIcon, EnvironmentIcon } from '@contentful/f36-icons';\n\nexport type NavbarEnvVariantProps = Pick<NavbarSwitcherItemProps, 'isAlias'>;\n\nexport function NavbarEnvVariant({ isAlias }: NavbarEnvVariantProps) {\n return (\n <>\n <CircleIcon key=\"mobile-icon\" size=\"tiny\" />\n {isAlias ? (\n <EnvironmentAliasIcon key=\"full-icon\" size=\"tiny\" />\n ) : (\n <EnvironmentIcon key=\"full-icon\" size=\"tiny\" />\n )}\n </>\n );\n}\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarHelpStyles } from './NavbarHelp.styles';\nimport { HelpIcon } from '../icons';\nimport {\n Flex,\n type CommonProps,\n type PropsWithHTMLElement,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { NavbarMenu } from '../NavbarMenu/NavbarMenu';\n\ntype NavbarHelpOwnProps = CommonProps & {\n children: React.ReactNode;\n};\n\nexport type NavbarHelpProps = PropsWithHTMLElement<\n NavbarHelpOwnProps,\n 'button'\n>;\n\nfunction _NavbarHelp(\n props: ExpandProps<NavbarHelpProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n testId = 'cf-ui-navbar-help-trigger',\n ...otherProps\n } = props;\n const styles = getNavbarHelpStyles();\n\n return (\n <NavbarMenu\n testId=\"cf-ui-navbar-help-menu\"\n trigger={\n <Flex\n aria-label=\"Help Menu\"\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <HelpIcon size=\"medium\" variant=\"white\" />\n Help\n </Flex>\n }\n >\n {children}\n </NavbarMenu>\n );\n}\n\nexport const NavbarHelp = React.forwardRef(_NavbarHelp);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { mqs } from '../utils.styles';\n\nexport const getNavbarHelpStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n color: tokens.gray300,\n fontSize: 0,\n gap: 0,\n minWidth: tokens.spacingL,\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n\n [mqs.medium]: {\n fontSize: tokens.fontSizeS,\n gap: tokens.spacing2Xs,\n fontWeight: tokens.fontWeightMedium,\n marginRight: tokens.spacingXs,\n },\n\n '&:focus-visible': {\n boxShadow: tokens.glowPrimary,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n },\n '&:hover, &:hover svg': {\n color: tokens.gray100,\n fill: tokens.gray100,\n },\n '& svg': {\n fill: tokens.gray300,\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n }),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarBadgeStyles } from './NavbarBadge.styles';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_BADGE_DEFAULT_TAG = 'div';\n\ntype NavbarBadgeOwnProps = CommonProps & {\n children?: React.ReactNode;\n as?: React.ElementType;\n};\n\nexport type NavbarBadgeProps<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n> = PolymorphicProps<NavbarBadgeOwnProps, E>;\n\nfunction _NavbarBadge(\n props: NavbarBadgeProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_BADGE_DEFAULT_TAG,\n children,\n className,\n testId = 'cf-ui-navbar-badge',\n ...otherProps\n } = props;\n const styles = getNavbarBadgeStyles();\n\n return (\n <Comp\n {...otherProps}\n ref={ref}\n className={cx(styles.root, className)}\n data-test-id={testId}\n >\n {children}\n </Comp>\n );\n}\n\nexport const NavbarBadge: PolymorphicComponent<\n ExpandProps<NavbarBadgeOwnProps>,\n typeof NAVBAR_BADGE_DEFAULT_TAG\n> = React.forwardRef(_NavbarBadge);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarBadgeStyles = () => ({\n root: css({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n background: 'none',\n border: `1px solid ${tokens.purple400}`,\n margin: 0,\n outline: 'none',\n fontSize: tokens.fontSizeS,\n lineHeight: tokens.lineHeightS,\n fontWeight: tokens.fontWeightMedium,\n textAlign: 'center',\n padding: `0 ${tokens.spacingXs}`,\n textDecoration: 'none',\n color: `${tokens.purple400}!important`,\n borderRadius: '1.75rem',\n }),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarTopbarItemStyles } from './NavbarTopbarItem.styles';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_BADGE_DEFAULT_TAG = 'button';\n\ntype NavbarTopbarItemOwnProps = CommonProps & {\n children?: React.ReactNode;\n};\n\nexport type NavbarTopbarItemProps<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n> = PolymorphicProps<NavbarTopbarItemOwnProps, E>;\n\nfunction _NavbarTopbarItem<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n>(props: NavbarTopbarItemProps<E>, ref: React.Ref<any>) {\n const {\n as: Comp = NAVBAR_BADGE_DEFAULT_TAG,\n children,\n className,\n testId = 'cf-ui-navbar-topbar-item',\n ...otherProps\n } = props;\n const styles = getNavbarTopbarItemStyles();\n\n return (\n <Comp\n {...otherProps}\n ref={ref}\n className={cx(styles.root, className)}\n data-test-id={testId}\n >\n {children}\n </Comp>\n );\n}\n\nexport const NavbarTopbarItem: PolymorphicComponent<\n ExpandProps<NavbarTopbarItemOwnProps>,\n typeof NAVBAR_BADGE_DEFAULT_TAG\n> = React.forwardRef(_NavbarTopbarItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarTopbarItemStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n display: 'flex',\n gap: tokens.spacing2Xs,\n alignItems: 'center',\n color: tokens.gray300,\n padding: `0 ${tokens.spacing2Xs}`,\n minHeight: tokens.spacingL,\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n '&:hover': {\n color: tokens.gray100,\n },\n '&:focus-visible': {\n boxShadow: tokens.glowPrimary,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n },\n svg: {\n fill: 'currentColor',\n },\n }),\n});\n"]}
1
+ {"version":3,"sources":["../../src/CompoundNavbar.ts","../../src/Navbar.tsx","../../src/Navbar.styles.ts","../../src/utils.styles.ts","../../src/NavbarAccount/NavbarAccount.tsx","../../src/NavbarAccount/NavbarAccount.styles.ts","../../src/NavbarMenu/NavbarMenu.tsx","../../src/NavbarMenu/NavbarMenu.styles.ts","../../src/NavbarAccount/NavbarAccountSkeleton.tsx","../../src/NavbarItem/NavbarItem.tsx","../../src/NavbarItem/NavbarItem.styles.ts","../../src/NavbarItemIcon/NavbarItemIcon.tsx","../../src/NavbarItemIcon/NavbarItemIcon.styles.ts","../../src/icons/CircleIcon.tsx","../../src/icons/ArrowDownIcon.tsx","../../src/icons/HelpIcon.tsx","../../src/icons/SearchIcon.tsx","../../src/icons/ContentfulLogoIcon.tsx","../../src/NavbarItem/NavbarItemSkeleton.tsx","../../src/NavbarMenuItem/NavbarMenuItem.tsx","../../src/NavbarMenuItem/NavbarMenuItem.styles.ts","../../src/NavbarMenuItem/NavbarMenuItemSkeleton.tsx","../../src/NavbarSwitcher/NavbarSwitcher.tsx","../../src/NavbarSwitcher/NavbarSwitcher.styles.ts","../../src/NavbarSwitcher/NavbarSwitcherSkeleton.tsx","../../src/NavbarSearch/NavbarSearch.tsx","../../src/NavbarSearch/NavbarSearch.styles.ts","../../src/NavbarSwitcherItem/NavbarSwitcherItem.tsx","../../src/NavbarSwitcherItem/NavbarSwitcherItem.styles.ts","../../src/NavbarSwitcherItem/NavbarEnvVariant.tsx","../../src/NavbarHelp/NavbarHelp.tsx","../../src/NavbarHelp/NavbarHelp.styles.ts","../../src/NavbarBadge/NavbarBadge.tsx","../../src/NavbarBadge/NavbarBadge.styles.ts","../../src/NavbarTopbarItem/NavbarTopbarItem.tsx","../../src/NavbarTopbarItem/NavbarTopbarItem.styles.ts"],"names":["MenuDivider","MenuSectionTitle","Box","Flex","React","css","tokens","mqs","getGlowOnFocusStyles","shadow","getNavbarStyles","maxWidth","_Navbar","props","ref","_a","children","account","search","switcher","help","badge","bottomRightItems","topRightItems","contentMaxWidth","testId","otherProps","__objRest","styles","__spreadProps","__spreadValues","Navbar","cx","getNavbarAccountStyles","variant","Menu","getNavbarMenuStyles","NavbarMenu","trigger","onOpen","onClose","_NavbarAccount","className","avatar","username","hasNotification","notificationVariant","NavbarAccount","SkeletonContainer","SkeletonImage","NavbarAccountSkeleton","ariaLabel","hexToRGBA","getNavbarItemActiveStyles","commonItemStyles","getNavbarItemStyles","getNavbarItemSkeletonStyles","getNavbarItemIconStyles","NavbarItemIcon","_b","icon","generateIcon","CircleIcon","ArrowDownIcon","HelpIcon","SearchIcon","ContentfulLogoIcon","NAVBAR_ITEM_DEFAULT_TAG","_NavbarItem","Comp","title","isActive","item","isNavbarItemHasMenu","NavbarItem","SkeletonText","NavbarItemSkeleton","estimatedWidth","getNavbarMenuItemStyles","ExternalLinkIcon","NAVBAR_MENU_ITEM_DEFAULT_TAG","_NavbarMenuItem","itemIsExternalLink","isExternalLink","externalIcon","NavbarMenuItem","SkeletonBodyText","NavbarMenuItemSkeleton","getNavbarSwitcherStyles","MenuIcon","_NavbarSwitcher","logo","NavbarSwitcher","SkeletonDisplayText","NavbarSwitcherSkeleton","getNavbarSearchStyles","_NavbarSearch","NavbarSearch","mobileIcon","getNavbarSwitcherItemStyles","EnvironmentAliasIcon","EnvironmentIcon","NavbarEnvVariant","isAlias","_NavbarSwitcherItem","isCircle","envVariant","classes","NavbarSwitcherItem","getNavbarHelpStyles","_NavbarHelp","NavbarHelp","getNavbarBadgeStyles","NAVBAR_BADGE_DEFAULT_TAG","_NavbarBadge","NavbarBadge","getNavbarTopbarItemStyles","_NavbarTopbarItem","NavbarTopbarItem"],"mappings":"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","sourcesContent":["import { MenuDivider } from '@contentful/f36-menu';\nimport { MenuSectionTitle } from '@contentful/f36-menu';\nimport { Navbar as OriginalNavbar } from './Navbar';\n\nimport { NavbarAccount, NavbarAccountSkeleton } from './NavbarAccount';\nimport { NavbarItem, NavbarItemSkeleton } from './NavbarItem';\nimport { NavbarMenuItem, NavbarMenuItemSkeleton } from './NavbarMenuItem';\nimport { NavbarSwitcher, NavbarSwitcherSkeleton } from './NavbarSwitcher';\n\nimport { NavbarSearch } from './NavbarSearch/NavbarSearch';\nimport { NavbarSwitcherItem } from './NavbarSwitcherItem/NavbarSwitcherItem';\nimport { NavbarHelp } from './NavbarHelp/NavbarHelp';\nimport { NavbarBadge } from './NavbarBadge/NavbarBadge';\nimport { NavbarTopbarItem } from './NavbarTopbarItem/NavbarTopbarItem';\n\ntype CompoundNavbar = typeof OriginalNavbar & {\n Item: typeof NavbarItem;\n ItemSkeleton: typeof NavbarItemSkeleton;\n MenuItem: typeof NavbarMenuItem;\n MenuItemSkeleton: typeof NavbarMenuItemSkeleton;\n MenuDivider: typeof MenuDivider;\n MenuSectionTitle: typeof MenuSectionTitle;\n Switcher: typeof NavbarSwitcher;\n SwitcherSkeleton: typeof NavbarSwitcherSkeleton;\n SwitcherItem: typeof NavbarSwitcherItem;\n Search: typeof NavbarSearch;\n Help: typeof NavbarHelp;\n Account: typeof NavbarAccount;\n AccountSkeleton: typeof NavbarAccountSkeleton;\n Badge: typeof NavbarBadge;\n TopbarItem: typeof NavbarTopbarItem;\n};\n\nexport const Navbar = OriginalNavbar as CompoundNavbar;\nNavbar.Item = NavbarItem;\nNavbar.ItemSkeleton = NavbarItemSkeleton;\nNavbar.MenuItem = NavbarMenuItem;\nNavbar.MenuItemSkeleton = NavbarMenuItemSkeleton;\nNavbar.MenuDivider = MenuDivider;\nNavbar.MenuSectionTitle = MenuSectionTitle;\nNavbar.Switcher = NavbarSwitcher;\nNavbar.SwitcherSkeleton = NavbarSwitcherSkeleton;\nNavbar.SwitcherItem = NavbarSwitcherItem;\nNavbar.Search = NavbarSearch;\nNavbar.Help = NavbarHelp;\nNavbar.Account = NavbarAccount;\nNavbar.AccountSkeleton = NavbarAccountSkeleton;\nNavbar.Badge = NavbarBadge;\nNavbar.TopbarItem = NavbarTopbarItem;\n","import {\n Box,\n type CommonProps,\n type ExpandProps,\n Flex,\n} from '@contentful/f36-core';\nimport React from 'react';\nimport { getNavbarStyles } from './Navbar.styles';\n\ntype NavbarOwnProps = CommonProps & {\n children?: React.ReactNode;\n account?: React.ReactNode;\n search?: React.ReactNode;\n switcher?: React.ReactNode;\n help?: React.ReactNode;\n badge?: React.ReactNode;\n /**\n * Items that will be rendered on the bottom-right of the navbar.\n * Useful for separating other navigation items from main ones, (e.g. separating \"Settings\" from all other navigation items).\n */\n bottomRightItems?: React.ReactNode;\n /**\n * Items that will be rendered on the top-right of the navbar.\n * Useful for providing additional context or actions to the user (e.g. a Feedback form link).\n */\n topRightItems?: React.ReactNode;\n /**\n * Defines the max-width of the content inside the navbar.\n * @default '100%'\n */\n contentMaxWidth?: string;\n};\n\n// expose only the HTML props that are needed to not pollute the API\ntype NavbarHTMLElementProps = Pick<React.ComponentPropsWithoutRef<'div'>, 'id'>;\n\nexport type NavbarProps = NavbarHTMLElementProps & NavbarOwnProps;\n\nfunction _Navbar(props: ExpandProps<NavbarProps>, ref: React.Ref<HTMLElement>) {\n const {\n children,\n account,\n search,\n switcher,\n help,\n badge,\n bottomRightItems,\n topRightItems,\n contentMaxWidth = '100%',\n testId = 'cf-ui-navbar',\n ...otherProps\n } = props;\n const styles = getNavbarStyles(contentMaxWidth);\n\n return (\n <Box {...otherProps} ref={ref} testId={testId}>\n <Flex className={styles.containerTop}>\n <Flex\n className={styles.containerTopContent}\n justifyContent=\"space-between\"\n >\n <Flex>{switcher}</Flex>\n <Flex alignItems=\"center\" gap=\"spacingXs\">\n {topRightItems}\n {badge}\n {search}\n {help}\n {account}\n </Flex>\n </Flex>\n </Flex>\n\n <Flex className={styles.containerBottom}>\n <Flex\n className={styles.containerBottomContent}\n justifyContent=\"space-between\"\n >\n <Flex as=\"nav\" aria-label=\"Main Navigation\" alignItems=\"stretch\">\n {children}\n </Flex>\n {bottomRightItems && <Flex>{bottomRightItems}</Flex>}\n </Flex>\n </Flex>\n </Box>\n );\n}\n\nexport const Navbar = React.forwardRef(_Navbar);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { mqs } from './utils.styles';\n\nexport const getNavbarStyles = (maxWidth: string) => ({\n containerTop: css({\n justifyContent: 'center',\n backgroundColor: '#0C141C',\n }),\n containerBottom: css({\n justifyContent: 'center',\n borderTop: `1px solid #21262D`,\n backgroundColor: '#161B22',\n }),\n containerTopContent: css({\n width: '100%',\n maxWidth: maxWidth,\n padding: `${tokens.spacingXs}`,\n minHeight: '2.5rem',\n [mqs.medium]: {\n padding: `${tokens.spacingXs} ${tokens.spacingM}`,\n },\n }),\n containerBottomContent: css({\n width: '100%',\n maxWidth: maxWidth,\n padding: 0,\n minHeight: '2.5rem',\n overflow: 'auto',\n [mqs.medium]: {\n padding: `0 ${tokens.spacing2Xs}`,\n },\n }),\n});\n","import tokens from '@contentful/f36-tokens';\n\ntype screens = 'medium' | 'large' | 'xlarge';\ntype mediaqueries = Record<screens, string>;\nexport const mqs: mediaqueries = {\n medium: '@media (min-width: 480px)',\n large: '@media (min-width: 768px)',\n xlarge: '@media (min-width: 1920px)',\n};\n\nexport const getGlowOnFocusStyles = (shadow: string = tokens.glowPrimary) => ({\n '&:focus': {\n boxShadow: shadow,\n },\n '&:focus:not(:focus-visible)': {\n boxShadow: 'unset',\n },\n '&:focus-visible': {\n boxShadow: shadow,\n },\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarAccountStyles } from './NavbarAccount.styles';\nimport {\n Flex,\n type PropsWithHTMLElement,\n type CommonProps,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { NavbarMenu } from '../NavbarMenu/NavbarMenu';\n\ntype NavbarAccountOwnProps = CommonProps & {\n children: React.ReactNode;\n username: string;\n avatar: string;\n hasNotification?: boolean;\n /**\n * @default 'warning'\n */\n notificationVariant?: 'warning' | 'negative';\n};\n\nexport type NavbarAccountProps = PropsWithHTMLElement<\n NavbarAccountOwnProps,\n 'button'\n>;\n\nfunction _NavbarAccount(\n props: ExpandProps<NavbarAccountProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n testId = 'cf-ui-navbar-account-trigger',\n avatar,\n username,\n hasNotification,\n notificationVariant = 'warning',\n ...otherProps\n } = props;\n const styles = getNavbarAccountStyles();\n\n return (\n <NavbarMenu\n trigger={\n <Flex\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <img\n src={avatar}\n alt={`Avatar for user ${username}`}\n className={styles.avatar}\n />\n {hasNotification ? (\n <span className={styles.notificationIcon(notificationVariant)} />\n ) : null}\n </Flex>\n }\n >\n {children}\n </NavbarMenu>\n );\n}\n\nexport const NavbarAccount = React.forwardRef(_NavbarAccount);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { NavbarAccountProps } from './NavbarAccount';\nimport { getGlowOnFocusStyles } from '../utils.styles';\n\nexport const getNavbarAccountStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n gap: tokens.spacing2Xs,\n outline: 'none',\n borderRadius: '50%',\n },\n getGlowOnFocusStyles(),\n ),\n avatar: css({\n borderRadius: '50%',\n display: 'block',\n height: '24px',\n width: '24px',\n }),\n notificationIcon: (variant: NavbarAccountProps['notificationVariant']) =>\n css({\n position: 'absolute',\n top: 0,\n right: 0,\n height: tokens.spacingS,\n width: tokens.spacingS,\n borderRadius: '50%',\n border: `2px solid ${tokens.gray900}`,\n backgroundColor:\n variant === 'negative' ? tokens.colorNegative : tokens.colorWarning,\n transform: 'translate(30%, -30%)',\n }),\n});\n","import React from 'react';\nimport { Menu, type MenuListProps, type MenuProps } from '@contentful/f36-menu';\nimport { getNavbarMenuStyles } from './NavbarMenu.styles';\n\nexport type NavbarMenuProps = {\n trigger: React.ReactNode;\n children?: React.ReactNode;\n} & Pick<MenuListProps, 'testId'> &\n Pick<MenuProps, 'onOpen' | 'onClose'>;\n\nexport const NavbarMenu = (props: NavbarMenuProps) => {\n const {\n trigger,\n children,\n testId = 'cf-ui-navbar-menu-list',\n onOpen,\n onClose,\n } = props;\n const styles = getNavbarMenuStyles();\n\n return (\n <Menu onOpen={onOpen} onClose={onClose}>\n <Menu.Trigger>{trigger}</Menu.Trigger>\n <Menu.List className={styles.menuList} testId={testId}>\n {children}\n </Menu.List>\n </Menu>\n );\n};\n","import { css } from 'emotion';\n\nexport const getNavbarMenuStyles = () => ({\n menuList: css({\n minWidth: '250px',\n }),\n});\n","import React from 'react';\nimport { SkeletonContainer, SkeletonImage } from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\n\nexport function NavbarAccountSkeleton({ ariaLabel }: { ariaLabel?: string }) {\n return (\n <SkeletonContainer\n svgWidth={24}\n svgHeight={24}\n ariaLabel={ariaLabel}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonImage width={24} height={24} radiusX={12} radiusY={12} />\n </SkeletonContainer>\n );\n}\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarItemStyles } from './NavbarItem.styles';\nimport { NavbarMenu, type NavbarMenuProps } from '../NavbarMenu/NavbarMenu';\nimport {\n NavbarItemIcon,\n type NavbarItemIconProps,\n} from '../NavbarItemIcon/NavbarItemIcon';\nimport { ArrowDownIcon } from '../icons';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_ITEM_DEFAULT_TAG = 'button';\n\ntype NavbarItemTriggerProps = CommonProps & {\n title: string;\n icon?: NavbarItemIconProps['icon'];\n isActive?: boolean;\n as?: React.ElementType;\n};\n\ntype NavbarItemAsMenuProps = NavbarItemTriggerProps &\n Pick<NavbarMenuProps, 'onOpen' | 'onClose'> & {\n children: React.ReactNode;\n };\ntype NavbarItemAsItemProps = NavbarItemTriggerProps & {\n children?: never;\n onOpen?: never;\n onClose?: never;\n};\ntype NavbarItemOwnProps = NavbarItemAsItemProps | NavbarItemAsMenuProps;\n\nexport type NavbarItemProps<\n E extends React.ElementType = typeof NAVBAR_ITEM_DEFAULT_TAG,\n> = PolymorphicProps<NavbarItemOwnProps, E>;\n\nfunction _NavbarItem(\n props: NavbarItemProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_ITEM_DEFAULT_TAG,\n icon,\n title,\n children,\n className,\n isActive,\n testId = 'cf-ui-navbar-item',\n onOpen,\n onClose,\n ...otherProps\n } = props;\n const styles = getNavbarItemStyles();\n\n const item = (\n <Comp\n {...otherProps}\n ref={ref}\n data-test-id={testId}\n className={cx(styles.root, isActive && styles.isActive, className)}\n >\n {icon ? <NavbarItemIcon icon={icon} variant=\"white\" /> : null}\n <span>{title}</span>\n {isNavbarItemHasMenu(props) && (\n <ArrowDownIcon className={styles.dropdownIcon} />\n )}\n </Comp>\n );\n\n if (isNavbarItemHasMenu(props)) {\n return (\n <NavbarMenu\n trigger={item}\n testId={testId}\n onOpen={onOpen}\n onClose={onClose}\n >\n {children}\n </NavbarMenu>\n );\n }\n\n return item;\n}\n\nconst isNavbarItemHasMenu = <E extends React.ElementType>(\n props: NavbarItemProps<E>,\n): props is PolymorphicProps<NavbarItemAsMenuProps, E> =>\n Boolean(props.children);\n\nexport const NavbarItem: PolymorphicComponent<\n ExpandProps<NavbarItemOwnProps>,\n typeof NAVBAR_ITEM_DEFAULT_TAG\n> = React.forwardRef(_NavbarItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { getGlowOnFocusStyles, mqs } from '../utils.styles';\n\nexport const getNavbarItemActiveStyles = () =>\n css({\n '&': {\n color: tokens.colorWhite,\n '& svg': {\n fill: tokens.colorWhite,\n },\n },\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n width: `calc(100% - ${tokens.spacingM})`,\n height: '2px',\n bottom: '0.5px',\n left: 0,\n right: 0,\n margin: 'auto',\n backgroundColor: tokens.colorWhite,\n zIndex: 0,\n },\n });\n\nconst commonItemStyles = {\n display: 'flex',\n justifyContent: 'center',\n padding: `10px ${tokens.spacingS}`,\n alignItems: 'center',\n background: 'none',\n};\n\nexport const getNavbarItemStyles = () => ({\n root: css(\n commonItemStyles,\n {\n alignItems: 'center',\n background: 'none',\n border: 0,\n margin: 0,\n outline: 'none',\n fontSize: tokens.fontSizeM,\n lineHeight: tokens.lineHeightM,\n fontWeight: tokens.fontWeightMedium,\n position: 'relative',\n textAlign: 'left',\n whiteSpace: 'nowrap',\n cursor: 'pointer',\n hyphens: 'auto',\n textDecoration: 'none',\n color: hexToRGBA(tokens.gray300, 0.8),\n boxSizing: 'border-box',\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n borderRadius: tokens.borderRadiusMedium,\n\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n width: `calc(100% - ${tokens.spacingXs})`,\n height: `calc(100% - ${tokens.spacingS})`,\n top: `calc(${tokens.spacingS} / 2)`,\n left: 0,\n right: 0,\n margin: 'auto',\n borderRadius: tokens.borderRadiusSmall,\n backgroundColor: hexToRGBA(tokens.colorWhite, 0.08),\n opacity: 0,\n zIndex: 0,\n scale: 0,\n transition: `all ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n\n '&:hover::before': {\n opacity: 1,\n scale: '1',\n },\n\n '&:active::before': {\n backgroundColor: `rgba(255, 255, 255, 0.1)`,\n },\n '&:disabled': {\n cursor: 'auto',\n },\n\n '& svg': {\n fill: hexToRGBA(tokens.gray300, 0.8),\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n\n '&:first-child': {\n display: 'none',\n [mqs.large]: {\n display: 'block',\n },\n },\n },\n '& > svg, & > span': {\n zIndex: tokens.zIndexDefault,\n },\n },\n getGlowOnFocusStyles(`inset ${tokens.glowPrimary}`),\n ),\n isActive: getNavbarItemActiveStyles(),\n dropdownIcon: css({\n paddingLeft: tokens.spacing2Xs,\n }),\n});\n\nexport const getNavbarItemSkeletonStyles = () => ({\n root: css(commonItemStyles),\n});\n","import React from 'react';\nimport type { IconProps } from '@contentful/f36-icons';\nimport { getNavbarItemIconStyles } from './NavbarItemIcon.styles';\nimport { cx } from 'emotion';\n\nexport type NavbarItemIconProps = {\n icon: React.ReactElement<IconProps>;\n} & Pick<IconProps, 'variant'>;\n\nexport const NavbarItemIcon = (props: NavbarItemIconProps) => {\n const { icon, variant } = props;\n const styles = getNavbarItemIconStyles();\n\n return React.cloneElement(icon, {\n className: cx(icon.props.className, styles.root),\n size: icon.props.size ?? 'tiny',\n variant: icon.props.variant ?? variant,\n });\n};\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarItemIconStyles = () => ({\n root: css({\n '&:first-child': {\n marginRight: tokens.spacing2Xs,\n },\n '&:last-child': {\n marginLeft: tokens.spacing2Xs,\n },\n 'img&': {\n borderRadius: tokens.borderRadiusSmall,\n maxWidth: tokens.spacingM,\n maxHeight: tokens.spacingM,\n },\n }),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const CircleIcon = /*#__PURE__*/ generateIcon({\n name: 'CircleIcon',\n viewBox: '0 0 24 24',\n path: (\n <path\n d=\"M11.994 6.526A5.47 5.47 0 0 0 6.526 12a5.47 5.47 0 0 0 5.468 5.473A5.476 5.476 0 0 0 17.473 12a5.477 5.477 0 0 0-5.479-5.474ZM12 15.447a3.448 3.448 0 1 1 0-6.896 3.448 3.448 0 0 1 0 6.896Z\"\n fill=\"currentFill\"\n />\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const ArrowDownIcon = /*#__PURE__*/ generateIcon({\n name: 'ArrowDownIcon',\n viewBox: '0 0 12 20',\n path: (\n <path\n d=\"M3.03076 8C2.20109 8 1.73228 8.95209 2.23814 9.60971L5.20727 13.4696C5.60757 13.99 6.39223 13.99 6.79252 13.4696L9.76166 9.60971C10.2675 8.95209 9.79871 8 8.96904 8L3.03076 8Z\"\n fill=\"#9FA8B2\"\n />\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const HelpIcon = /*#__PURE__*/ generateIcon({\n name: 'HelpIcon',\n viewBox: '0 0 24 24',\n path: (\n <>\n <g clipPath=\"url(#HelpIcon_svg__a)\">\n <path\n d=\"M12 2.25A9.75 9.75 0 1 0 21.75 12 9.769 9.769 0 0 0 12 2.25ZM12 18a1.125 1.125 0 1 1 0-2.25A1.125 1.125 0 0 1 12 18Zm.75-4.584v.084a.75.75 0 1 1-1.5 0v-.75A.75.75 0 0 1 12 12a1.875 1.875 0 1 0-1.875-1.875.75.75 0 1 1-1.5 0 3.375 3.375 0 1 1 4.125 3.29Z\"\n fill=\"currentFill\"\n />\n </g>\n <defs>\n <clipPath id=\"HelpIcon_svg__a\">\n <path fill=\"currentFill\" d=\"M0 0h24v24H0z\" />\n </clipPath>\n </defs>\n </>\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const SearchIcon = /*#__PURE__*/ generateIcon({\n name: 'SearchIcon',\n viewBox: '0 0 24 24',\n path: (\n <>\n <g clipPath=\"url(#SearchIcon_svg__a)\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6 11.125a5.125 5.125 0 1 1 10.25 0 5.125 5.125 0 0 1-10.25 0ZM11.125 4a7.125 7.125 0 1 0 4.282 12.82l2.886 2.887a1 1 0 0 0 1.414-1.414l-2.886-2.887A7.125 7.125 0 0 0 11.125 4Z\"\n fill=\"currentFill\"\n />\n </g>\n <defs>\n <clipPath id=\"SearchIcon_svg__a\">\n <path fill=\"#fff\" d=\"M0 0h24v24H0z\" />\n </clipPath>\n </defs>\n </>\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const ContentfulLogoIcon = /*#__PURE__*/ generateIcon({\n name: 'ContentfulLogoIcon',\n viewBox: '0 0 21 24',\n path: (\n <g transform=\"translate(4 3)\">\n <path\n fill=\"#fae501\"\n d=\"M3.3 13.7c-1.2-1.2-2-2.9-2-4.7S2 5.5 3.2 4.3c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0-2 2.2-3.3 5.2-3.3 8.5s1.3 6.3 3.4 8.5c1 1 2.6 1 3.6 0 .9-1.1.9-2.7 0-3.8z\"\n />\n <path\n fill=\"#4fb5e1\"\n d=\"M3.3 4.3c1.2-1.3 2.8-2 4.6-2s3.4.8 4.6 1.9c1 1.1 2.6 1.1 3.6 0 1-1 1-2.7 0-3.8C13.9-1.6 11-3 7.8-3S1.7-1.6-.4.5c-1 1-1 2.7 0 3.8 1 .9 2.6.9 3.7 0z\"\n />\n <path\n fill=\"#f05751\"\n d=\"M12.4 13.7c-1.2 1.3-2.8 2-4.6 2-1.8 0-3.4-.8-4.6-2-1-1.1-2.6-1.1-3.6 0-1 1-1 2.7 0 3.8 2.1 2.1 5 3.5 8.2 3.5s6.1-1.4 8.2-3.5c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0z\"\n />\n <ellipse cx={1.4} cy={2.4} fill=\"#0681b6\" rx={2.5} ry={2.6} />\n <ellipse cx={1.4} cy={15.6} fill=\"#cd4739\" rx={2.5} ry={2.6} />\n </g>\n ),\n});\n","import React from 'react';\nimport { SkeletonContainer, SkeletonText } from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\nimport { getNavbarItemSkeletonStyles } from './NavbarItem.styles';\n\nexport const NavbarItemSkeleton = ({\n estimatedWidth,\n}: {\n estimatedWidth: number;\n}) => {\n const styles = getNavbarItemSkeletonStyles();\n\n return (\n <SkeletonContainer\n className={styles.root}\n svgWidth={estimatedWidth}\n svgHeight={40}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonText\n lineHeight={6}\n numberOfLines={1}\n offsetTop={7}\n radiusX={tokens.borderRadiusSmall}\n radiusY={tokens.borderRadiusSmall}\n />\n </SkeletonContainer>\n );\n};\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarMenuItemStyles } from './NavbarMenuItem.styles';\nimport { Menu, type MenuItemProps } from '@contentful/f36-menu';\nimport {\n NavbarItemIcon,\n type NavbarItemIconProps,\n} from '../NavbarItemIcon/NavbarItemIcon';\nimport { ExternalLinkIcon } from '@contentful/f36-icons';\nimport type {\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_MENU_ITEM_DEFAULT_TAG = 'button';\n\ntype NavbarMenuItemOwnProps = {\n children?: null;\n title: string;\n icon?: NavbarItemIconProps['icon'];\n as?: React.ElementType;\n} & Omit<MenuItemProps, 'children' | 'as'>;\n\nexport type NavbarMenuItemProps<\n E extends React.ElementType = typeof NAVBAR_MENU_ITEM_DEFAULT_TAG,\n> = PolymorphicProps<NavbarMenuItemOwnProps, E>;\n\nfunction _NavbarMenuItem(\n props: NavbarMenuItemProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_MENU_ITEM_DEFAULT_TAG,\n icon,\n title,\n className,\n ...otherProps\n } = props;\n const styles = getNavbarMenuItemStyles();\n\n const itemIsExternalLink = isExternalLink(\n props as unknown as NavbarMenuItemProps<'a'>,\n );\n\n return (\n <Menu.Item\n {...otherProps}\n ref={ref}\n as={Comp as MenuItemProps['as']}\n className={cx(styles.root, className)}\n >\n {icon ? (\n <NavbarItemIcon icon={icon} variant=\"secondary\" />\n ) : (\n itemIsExternalLink && externalIcon\n )}\n <span>{title}</span>\n {icon && itemIsExternalLink ? externalIcon : null}\n </Menu.Item>\n );\n}\n\nconst externalIcon = (\n <NavbarItemIcon icon={<ExternalLinkIcon />} variant=\"muted\" />\n);\n\nconst isExternalLink = (props: NavbarMenuItemProps<'a'>) =>\n props.as === 'a' && props.target === '_blank';\n\nexport const NavbarMenuItem: PolymorphicComponent<\n ExpandProps<NavbarMenuItemOwnProps>,\n typeof NAVBAR_MENU_ITEM_DEFAULT_TAG\n> = React.forwardRef(_NavbarMenuItem);\n","import { css } from 'emotion';\n\nexport const getNavbarMenuItemStyles = () => ({\n root: css({\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n }),\n});\n","import React from 'react';\nimport { Menu } from '@contentful/f36-menu';\nimport {\n SkeletonBodyText,\n SkeletonContainer,\n SkeletonImage,\n} from '@contentful/f36-skeleton';\nimport { Flex } from '@contentful/f36-core';\n\nimport tokens from '@contentful/f36-tokens';\n\nexport const NavbarMenuItemSkeleton = ({\n ariaLabel,\n}: {\n ariaLabel?: string;\n}) => (\n <Menu.Item>\n <Flex alignItems=\"center\" gap={tokens.spacingXs}>\n <SkeletonContainer svgHeight={16} svgWidth={18}>\n <SkeletonImage width={16} height={16} />\n </SkeletonContainer>\n <SkeletonContainer svgHeight={16} svgWidth={190} ariaLabel={ariaLabel}>\n <SkeletonBodyText numberOfLines={1} />\n </SkeletonContainer>\n </Flex>\n </Menu.Item>\n);\n","import React from 'react';\nimport { getNavbarSwitcherStyles } from './NavbarSwitcher.styles';\nimport {\n Flex,\n type CommonProps,\n type PropsWithHTMLElement,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { MenuIcon } from '@contentful/f36-icons';\nimport { cx } from 'emotion';\nimport { ContentfulLogoIcon } from '../icons';\n\ntype NavbarSwitcherOwnProps = CommonProps & {\n children?: React.ReactNode;\n /**\n * Will be displayed instead of the default Contentful logo\n */\n logo?: React.ReactNode;\n};\n\nexport type NavbarSwitcherProps = PropsWithHTMLElement<\n NavbarSwitcherOwnProps,\n 'button'\n>;\n\nfunction _NavbarSwitcher(\n props: ExpandProps<NavbarSwitcherProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n logo,\n testId = 'cf-ui-navbar-switcher',\n ...otherProps\n } = props;\n const styles = getNavbarSwitcherStyles();\n\n return (\n <Flex\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n alignItems=\"center\"\n fullHeight\n gap=\"spacingXs\"\n >\n {logo || <ContentfulLogoIcon />}\n <MenuIcon className={styles.menuIcon} size=\"small\" variant=\"white\" />\n <Flex as=\"ul\" alignItems=\"center\" className={styles.breadcrumbs}>\n {children}\n </Flex>\n </Flex>\n );\n}\n\nexport const NavbarSwitcher = React.forwardRef(_NavbarSwitcher);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { getGlowOnFocusStyles, mqs } from '../utils.styles';\n\nexport const getNavbarSwitcherStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n color: tokens.gray300,\n cursor: 'pointer',\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n position: 'relative',\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n\n '&:after': {\n content: '\"\"',\n border: '1px solid #353A41',\n boxSizing: 'border-box',\n height: '16px',\n right: '-1px',\n position: 'absolute',\n width: 0,\n },\n '&:last-child:after': {\n display: 'none',\n },\n '&:hover li': {\n backgroundColor: hexToRGBA(tokens.colorWhite, 0.15),\n },\n },\n getGlowOnFocusStyles(\n `0px 0px 0px 2px ${tokens.colorBlack}, 0px 0px 0px 5px ${tokens.blue300}`,\n ),\n ),\n breadcrumbs: css({\n listStyleType: 'none',\n margin: 0,\n padding: 0,\n position: 'relative',\n }),\n menuIcon: css({\n display: 'none',\n [mqs.medium]: {\n display: 'block',\n },\n }),\n});\n","import React from 'react';\nimport {\n SkeletonContainer,\n SkeletonDisplayText,\n} from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\n\nexport const NavbarSwitcherSkeleton = ({\n estimatedWidth,\n}: {\n estimatedWidth: number;\n}) => (\n <SkeletonContainer\n svgWidth={estimatedWidth}\n svgHeight={24}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonDisplayText\n lineHeight={24}\n numberOfLines={1}\n radiusX={12}\n radiusY={12}\n />\n </SkeletonContainer>\n);\n","import { cx } from 'emotion';\nimport React from 'react';\nimport { getNavbarSearchStyles } from './NavbarSearch.styles';\nimport { SearchIcon } from '../icons';\nimport {\n CommonProps,\n ExpandProps,\n Flex,\n PropsWithHTMLElement,\n} from '@contentful/f36-core';\n\ntype NavbarSearchOwnProps = CommonProps;\n\nexport type NavbarSearchProps = PropsWithHTMLElement<\n NavbarSearchOwnProps,\n 'button'\n>;\n\nfunction _NavbarSearch(\n props: ExpandProps<NavbarSearchProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const { className, testId = 'cf-ui-navbar-search', ...otherProps } = props;\n const styles = getNavbarSearchStyles();\n\n return (\n <Flex\n aria-label=\"Quick Search\"\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <SearchIcon size=\"medium\" variant=\"white\" />\n </Flex>\n );\n}\n\nexport const NavbarSearch = React.forwardRef(_NavbarSearch);\n","import tokens from '@contentful/f36-tokens';\nimport { css } from 'emotion';\nimport { getGlowOnFocusStyles } from '../utils.styles';\n\nexport const getNavbarSearchStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: tokens.spacingL,\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n\n '& svg': {\n fill: tokens.gray300,\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n '&:hover, & svg:hover': {\n color: tokens.gray100,\n fill: tokens.gray100,\n },\n },\n getGlowOnFocusStyles(),\n ),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarSwitcherItemStyles } from './NavbarSwitcherItem.styles';\nimport { NavbarEnvVariant } from './NavbarEnvVariant';\nimport {\n Flex,\n type CommonProps,\n type ExpandProps,\n type PropsWithHTMLElement,\n} from '@contentful/f36-core';\n\ntype NavbarSwitcherItemOwnProps = CommonProps & {\n children?: React.ReactNode;\n isCircle?: boolean;\n envVariant?: 'master' | 'non-master';\n isAlias?: boolean;\n};\n\nexport type NavbarSwitcherItemProps = PropsWithHTMLElement<\n NavbarSwitcherItemOwnProps,\n 'li'\n>;\n\nfunction _NavbarSwitcherItem(\n props: ExpandProps<NavbarSwitcherItemProps>,\n ref: React.Ref<HTMLLIElement>,\n) {\n const {\n children,\n isCircle,\n className,\n envVariant,\n isAlias,\n testId = 'cf-ui-navbar-switcher-item',\n ...otherProps\n } = props;\n const styles = getNavbarSwitcherItemStyles();\n const classes = cx(styles.breadcrumbsItem, className, {\n [styles.breadcrumbsItemCircle]: isCircle,\n [styles.breadcrumbsItemEnvMaster]: envVariant === 'master',\n [styles.breadcrumbsItemEnvNonMaster]: envVariant === 'non-master',\n });\n\n return (\n <li {...otherProps} ref={ref} className={classes} data-test-id={testId}>\n <Flex fullHeight justifyContent=\"center\" alignItems=\"center\">\n {envVariant && <NavbarEnvVariant isAlias={isAlias} />}\n <span>{children}</span>\n </Flex>\n </li>\n );\n}\n\nexport const NavbarSwitcherItem = React.forwardRef(_NavbarSwitcherItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { mqs } from '../utils.styles';\n\nconst mobileIcon = {\n display: 'none',\n '&:first-child': {\n display: 'block',\n },\n\n [mqs.medium]: {\n display: 'block',\n '&:first-child': {\n display: 'none',\n },\n },\n};\n\nexport const getNavbarSwitcherItemStyles = () => ({\n breadcrumbsItem: css({\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: hexToRGBA(tokens.gray100, 0.1),\n boxShadow: `0px 0px 0px 2px ${tokens.colorBlack}`,\n display: 'inline-flex',\n margin: 0,\n minWidth: 0,\n padding: `0 ${tokens.spacingXs}`,\n height: tokens.spacingL,\n borderRadius: '3rem',\n zIndex: 2,\n transition: `background-color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n whiteSpace: 'nowrap',\n '&:not(:first-child)': {\n clipPath: `path('M0 24C6 24 10 18 10 10C10 5 6 0 0 0H400C400 0 400 5 400 24H0Z')`,\n },\n '&:first-child': {\n minWidth: '24px',\n },\n '&:nth-child(2)': {\n zIndex: 1,\n left: `-${tokens.spacingXs}`,\n paddingLeft: tokens.spacingM,\n borderRadius: `0 3rem 3rem 0`,\n span: {\n maxWidth: '80px',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n [mqs.large]: {\n maxWidth: '100%',\n },\n },\n },\n '&:nth-child(3)': {\n left: `-${tokens.spacingM}`,\n paddingLeft: tokens.spacingM,\n borderRadius: `0 3rem 3rem 0`,\n fontFamily: tokens.fontStackMonospace,\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n zIndex: 0,\n span: {\n maxWidth: '40px',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n [mqs.large]: {\n maxWidth: '100%',\n },\n },\n '> div': {\n [mqs.medium]: {\n gap: tokens.spacing2Xs,\n },\n },\n },\n }),\n breadcrumbsItemCircle: css({\n borderRadius: '50%',\n color: tokens.gray400,\n padding: 0,\n display: 'flex',\n justifyContent: 'center',\n fontSize: '11px',\n width: tokens.spacingL,\n height: tokens.spacingL,\n }),\n breadcrumbsItemEnvMaster: css({\n color: tokens.green400,\n ' svg': {\n ...mobileIcon,\n fill: tokens.green400,\n },\n }),\n breadcrumbsItemEnvNonMaster: css({\n color: tokens.orange400,\n svg: {\n ...mobileIcon,\n fill: tokens.orange400,\n },\n }),\n});\n","import React from 'react';\nimport { NavbarSwitcherItemProps } from './NavbarSwitcherItem';\nimport { CircleIcon } from '../icons';\nimport { EnvironmentAliasIcon, EnvironmentIcon } from '@contentful/f36-icons';\n\nexport type NavbarEnvVariantProps = Pick<NavbarSwitcherItemProps, 'isAlias'>;\n\nexport function NavbarEnvVariant({ isAlias }: NavbarEnvVariantProps) {\n return (\n <>\n <CircleIcon key=\"mobile-icon\" size=\"tiny\" />\n {isAlias ? (\n <EnvironmentAliasIcon key=\"full-icon\" size=\"tiny\" />\n ) : (\n <EnvironmentIcon key=\"full-icon\" size=\"tiny\" />\n )}\n </>\n );\n}\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarHelpStyles } from './NavbarHelp.styles';\nimport { HelpIcon } from '../icons';\nimport {\n Flex,\n type CommonProps,\n type PropsWithHTMLElement,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { NavbarMenu } from '../NavbarMenu/NavbarMenu';\n\ntype NavbarHelpOwnProps = CommonProps & {\n children: React.ReactNode;\n};\n\nexport type NavbarHelpProps = PropsWithHTMLElement<\n NavbarHelpOwnProps,\n 'button'\n>;\n\nfunction _NavbarHelp(\n props: ExpandProps<NavbarHelpProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n testId = 'cf-ui-navbar-help-trigger',\n ...otherProps\n } = props;\n const styles = getNavbarHelpStyles();\n\n return (\n <NavbarMenu\n testId=\"cf-ui-navbar-help-menu\"\n trigger={\n <Flex\n aria-label=\"Help Menu\"\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <HelpIcon size=\"medium\" variant=\"white\" />\n Help\n </Flex>\n }\n >\n {children}\n </NavbarMenu>\n );\n}\n\nexport const NavbarHelp = React.forwardRef(_NavbarHelp);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { getGlowOnFocusStyles, mqs } from '../utils.styles';\n\nexport const getNavbarHelpStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n color: tokens.gray300,\n fontSize: 0,\n gap: 0,\n minWidth: tokens.spacingL,\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n\n [mqs.medium]: {\n fontSize: tokens.fontSizeS,\n gap: tokens.spacing2Xs,\n fontWeight: tokens.fontWeightMedium,\n marginRight: tokens.spacingXs,\n },\n '&:hover, &:hover svg': {\n color: tokens.gray100,\n fill: tokens.gray100,\n },\n '& svg': {\n fill: tokens.gray300,\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n },\n getGlowOnFocusStyles(),\n ),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarBadgeStyles } from './NavbarBadge.styles';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_BADGE_DEFAULT_TAG = 'div';\n\ntype NavbarBadgeOwnProps = CommonProps & {\n children?: React.ReactNode;\n as?: React.ElementType;\n};\n\nexport type NavbarBadgeProps<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n> = PolymorphicProps<NavbarBadgeOwnProps, E>;\n\nfunction _NavbarBadge(\n props: NavbarBadgeProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_BADGE_DEFAULT_TAG,\n children,\n className,\n testId = 'cf-ui-navbar-badge',\n ...otherProps\n } = props;\n const styles = getNavbarBadgeStyles();\n\n return (\n <Comp\n {...otherProps}\n ref={ref}\n className={cx(styles.root, className)}\n data-test-id={testId}\n >\n {children}\n </Comp>\n );\n}\n\nexport const NavbarBadge: PolymorphicComponent<\n ExpandProps<NavbarBadgeOwnProps>,\n typeof NAVBAR_BADGE_DEFAULT_TAG\n> = React.forwardRef(_NavbarBadge);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarBadgeStyles = () => ({\n root: css({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n background: 'none',\n border: `1px solid ${tokens.purple400}`,\n margin: 0,\n outline: 'none',\n fontSize: tokens.fontSizeS,\n lineHeight: tokens.lineHeightS,\n fontWeight: tokens.fontWeightMedium,\n textAlign: 'center',\n padding: `0 ${tokens.spacingXs}`,\n textDecoration: 'none',\n color: `${tokens.purple400}!important`,\n borderRadius: '1.75rem',\n }),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarTopbarItemStyles } from './NavbarTopbarItem.styles';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_BADGE_DEFAULT_TAG = 'button';\n\ntype NavbarTopbarItemOwnProps = CommonProps & {\n children?: React.ReactNode;\n};\n\nexport type NavbarTopbarItemProps<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n> = PolymorphicProps<NavbarTopbarItemOwnProps, E>;\n\nfunction _NavbarTopbarItem<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n>(props: NavbarTopbarItemProps<E>, ref: React.Ref<any>) {\n const {\n as: Comp = NAVBAR_BADGE_DEFAULT_TAG,\n children,\n className,\n testId = 'cf-ui-navbar-topbar-item',\n ...otherProps\n } = props;\n const styles = getNavbarTopbarItemStyles();\n\n return (\n <Comp\n {...otherProps}\n ref={ref}\n className={cx(styles.root, className)}\n data-test-id={testId}\n >\n {children}\n </Comp>\n );\n}\n\nexport const NavbarTopbarItem: PolymorphicComponent<\n ExpandProps<NavbarTopbarItemOwnProps>,\n typeof NAVBAR_BADGE_DEFAULT_TAG\n> = React.forwardRef(_NavbarTopbarItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { getGlowOnFocusStyles } from '../utils.styles';\n\nexport const getNavbarTopbarItemStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n display: 'flex',\n gap: tokens.spacing2Xs,\n alignItems: 'center',\n color: tokens.gray300,\n padding: `0 ${tokens.spacing2Xs}`,\n minHeight: tokens.spacingL,\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n\n '&:hover': {\n color: tokens.gray100,\n },\n svg: {\n fill: 'currentColor',\n },\n },\n getGlowOnFocusStyles(),\n ),\n});\n"]}
package/dist/index.d.ts CHANGED
@@ -170,8 +170,4 @@ declare const Navbar: CompoundNavbar;
170
170
 
171
171
  declare const getNavbarItemActiveStyles: () => string;
172
172
 
173
- declare type screens = 'medium' | 'large' | 'xlarge';
174
- declare type mediaqueries = Record<screens, string>;
175
- declare const mqs: mediaqueries;
176
-
177
- export { Navbar, NavbarProps, getNavbarItemActiveStyles, mqs };
173
+ export { Navbar, NavbarProps, getNavbarItemActiveStyles };
package/dist/index.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var f36Menu = require('@contentful/f36-menu');
6
6
  var f36Core = require('@contentful/f36-core');
7
- var h = require('react');
7
+ var N = require('react');
8
8
  var emotion = require('emotion');
9
9
  var a = require('@contentful/f36-tokens');
10
10
  var f36Skeleton = require('@contentful/f36-skeleton');
@@ -14,12 +14,11 @@ var f36Icons = require('@contentful/f36-icons');
14
14
 
15
15
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
16
 
17
- var h__default = /*#__PURE__*/_interopDefaultLegacy(h);
17
+ var N__default = /*#__PURE__*/_interopDefaultLegacy(N);
18
18
  var a__default = /*#__PURE__*/_interopDefaultLegacy(a);
19
19
 
20
- var Qe=Object.defineProperty,Je=Object.defineProperties;var eo=Object.getOwnPropertyDescriptors;var G=Object.getOwnPropertySymbols;var le=Object.prototype.hasOwnProperty,de=Object.prototype.propertyIsEnumerable;var ce=(e,o,t)=>o in e?Qe(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,s=(e,o)=>{for(var t in o||(o={}))le.call(o,t)&&ce(e,t,o[t]);if(G)for(var t of G(o))de.call(o,t)&&ce(e,t,o[t]);return e},p=(e,o)=>Je(e,eo(o));var f=(e,o)=>{var t={};for(var r in e)le.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(e!=null&&G)for(var r of G(e))o.indexOf(r)<0&&de.call(e,r)&&(t[r]=e[r]);return t};var g={medium:"@media (min-width: 480px)",large:"@media (min-width: 768px)",xlarge:"@media (min-width: 1920px)"};var fe=e=>({containerTop:emotion.css({justifyContent:"center",backgroundColor:"#0C141C"}),containerBottom:emotion.css({justifyContent:"center",borderTop:"1px solid #21262D",backgroundColor:"#161B22"}),containerTopContent:emotion.css({width:"100%",maxWidth:e,padding:`${a__default["default"].spacingXs}`,minHeight:"2.5rem",[g.medium]:{padding:`${a__default["default"].spacingXs} ${a__default["default"].spacingM}`}}),containerBottomContent:emotion.css({width:"100%",maxWidth:e,padding:0,minHeight:"2.5rem",overflow:"auto",[g.medium]:{padding:`0 ${a__default["default"].spacing2Xs}`}})});function to(e,o){let H=e,{children:t,account:r,search:i,switcher:n,help:m,badge:d,bottomRightItems:c,topRightItems:v,contentMaxWidth:y="100%",testId:I="cf-ui-navbar"}=H,L=f(H,["children","account","search","switcher","help","badge","bottomRightItems","topRightItems","contentMaxWidth","testId"]),S=fe(y);return h__default["default"].createElement(f36Core.Box,p(s({},L),{ref:o,testId:I}),h__default["default"].createElement(f36Core.Flex,{className:S.containerTop},h__default["default"].createElement(f36Core.Flex,{className:S.containerTopContent,justifyContent:"space-between"},h__default["default"].createElement(f36Core.Flex,null,n),h__default["default"].createElement(f36Core.Flex,{alignItems:"center",gap:"spacingXs"},v,d,i,m,r))),h__default["default"].createElement(f36Core.Flex,{className:S.containerBottom},h__default["default"].createElement(f36Core.Flex,{className:S.containerBottomContent,justifyContent:"space-between"},h__default["default"].createElement(f36Core.Flex,{as:"nav","aria-label":"Main Navigation",alignItems:"stretch"},t),c&&h__default["default"].createElement(f36Core.Flex,null,c))))}var be=h__default["default"].forwardRef(to);var ge=()=>({root:emotion.css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",position:"relative",alignItems:"center",justifyContent:"center",gap:a__default["default"].spacing2Xs,"&:focus-visible":{boxShadow:a__default["default"].glowPrimary,outline:"none",borderRadius:"50%"}}),avatar:emotion.css({borderRadius:"50%",display:"block",height:"24px",width:"24px"}),notificationIcon:e=>emotion.css({position:"absolute",top:0,right:0,height:a__default["default"].spacingS,width:a__default["default"].spacingS,borderRadius:"50%",border:`2px solid ${a__default["default"].gray900}`,backgroundColor:e==="negative"?a__default["default"].colorNegative:a__default["default"].colorWarning,transform:"translate(30%, -30%)"})});var ue=()=>({menuList:emotion.css({minWidth:"250px"})});var C=e=>{let{trigger:o,children:t,testId:r="cf-ui-navbar-menu-list",onOpen:i,onClose:n}=e,m=ue();return h__default["default"].createElement(f36Menu.Menu,{onOpen:i,onClose:n},h__default["default"].createElement(f36Menu.Menu.Trigger,null,o),h__default["default"].createElement(f36Menu.Menu.List,{className:m.menuList,testId:r},t))};function io(e,o){let I=e,{children:t,className:r,testId:i="cf-ui-navbar-account-trigger",avatar:n,username:m,hasNotification:d,notificationVariant:c="warning"}=I,v=f(I,["children","className","testId","avatar","username","hasNotification","notificationVariant"]),y=ge();return h__default["default"].createElement(C,{trigger:h__default["default"].createElement(f36Core.Flex,p(s({},v),{as:"button",ref:o,className:emotion.cx(y.root,r),testId:i}),h__default["default"].createElement("img",{src:n,alt:`Avatar for user ${m}`,className:y.avatar}),d?h__default["default"].createElement("span",{className:y.notificationIcon(c)}):null)},t)}var J=h__default["default"].forwardRef(io);function ee({ariaLabel:e}){return h__default["default"].createElement(f36Skeleton.SkeletonContainer,{svgWidth:24,svgHeight:24,ariaLabel:e,backgroundColor:a__default["default"].gray800,foregroundColor:a__default["default"].gray700},h__default["default"].createElement(f36Skeleton.SkeletonImage,{width:24,height:24,radiusX:12,radiusY:12}))}var Ne=()=>emotion.css({"&":{color:a__default["default"].colorWhite,"& svg":{fill:a__default["default"].colorWhite}},"&::after":{content:'""',position:"absolute",width:`calc(100% - ${a__default["default"].spacingM})`,height:"2px",bottom:"0.5px",left:0,right:0,margin:"auto",backgroundColor:a__default["default"].colorWhite,zIndex:0}}),ye={display:"flex",justifyContent:"center",padding:`10px ${a__default["default"].spacingS}`,alignItems:"center",background:"none"},Ie=()=>({root:emotion.css(ye,{alignItems:"center",background:"none",border:0,margin:0,outline:"none",fontSize:a__default["default"].fontSizeM,lineHeight:a__default["default"].lineHeightM,fontWeight:a__default["default"].fontWeightMedium,position:"relative",textAlign:"left",whiteSpace:"nowrap",cursor:"pointer",hyphens:"auto",textDecoration:"none",color:f36Utils.hexToRGBA(a__default["default"].gray300,.8),boxSizing:"border-box",transition:`color ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,"&::before":{content:'""',position:"absolute",width:`calc(100% - ${a__default["default"].spacingXs})`,height:`calc(100% - ${a__default["default"].spacingS})`,top:`calc(${a__default["default"].spacingS} / 2)`,left:0,right:0,margin:"auto",borderRadius:a__default["default"].borderRadiusSmall,backgroundColor:f36Utils.hexToRGBA(a__default["default"].colorWhite,.08),opacity:0,zIndex:0,scale:0,transition:`all ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`},"&:hover::before":{opacity:1,scale:"1"},"&:focus-visible":{boxShadow:`inset ${a__default["default"].glowPrimary}`,borderRadius:a__default["default"].borderRadiusMedium},"&:active::before":{backgroundColor:"rgba(255, 255, 255, 0.1)"},"&:disabled":{cursor:"auto"},"& svg":{fill:f36Utils.hexToRGBA(a__default["default"].gray300,.8),transition:`fill ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,"&:first-child":{display:"none",[g.large]:{display:"block"}}},"& > svg, & > span":{zIndex:a__default["default"].zIndexDefault}}),isActive:Ne(),dropdownIcon:emotion.css({paddingLeft:a__default["default"].spacing2Xs})}),xe=()=>({root:emotion.css(ye)});var Pe=()=>({root:emotion.css({"&:first-child":{marginRight:a__default["default"].spacing2Xs},"&:last-child":{marginLeft:a__default["default"].spacing2Xs},"img&":{borderRadius:a__default["default"].borderRadiusSmall,maxWidth:a__default["default"].spacingM,maxHeight:a__default["default"].spacingM}})});var F=e=>{var i,n;let{icon:o,variant:t}=e,r=Pe();return h__default["default"].cloneElement(o,{className:emotion.cx(o.props.className,r.root),size:(i=o.props.size)!=null?i:"tiny",variant:(n=o.props.variant)!=null?n:t})};var Se=f36Icon.generateIcon({name:"CircleIcon",viewBox:"0 0 24 24",path:h__default["default"].createElement("path",{d:"M11.994 6.526A5.47 5.47 0 0 0 6.526 12a5.47 5.47 0 0 0 5.468 5.473A5.476 5.476 0 0 0 17.473 12a5.477 5.477 0 0 0-5.479-5.474ZM12 15.447a3.448 3.448 0 1 1 0-6.896 3.448 3.448 0 0 1 0 6.896Z",fill:"currentFill"})});var Me=f36Icon.generateIcon({name:"ArrowDownIcon",viewBox:"0 0 12 20",path:h__default["default"].createElement("path",{d:"M3.03076 8C2.20109 8 1.73228 8.95209 2.23814 9.60971L5.20727 13.4696C5.60757 13.99 6.39223 13.99 6.79252 13.4696L9.76166 9.60971C10.2675 8.95209 9.79871 8 8.96904 8L3.03076 8Z",fill:"#9FA8B2"})});var we=f36Icon.generateIcon({name:"HelpIcon",viewBox:"0 0 24 24",path:h__default["default"].createElement(h__default["default"].Fragment,null,h__default["default"].createElement("g",{clipPath:"url(#HelpIcon_svg__a)"},h__default["default"].createElement("path",{d:"M12 2.25A9.75 9.75 0 1 0 21.75 12 9.769 9.769 0 0 0 12 2.25ZM12 18a1.125 1.125 0 1 1 0-2.25A1.125 1.125 0 0 1 12 18Zm.75-4.584v.084a.75.75 0 1 1-1.5 0v-.75A.75.75 0 0 1 12 12a1.875 1.875 0 1 0-1.875-1.875.75.75 0 1 1-1.5 0 3.375 3.375 0 1 1 4.125 3.29Z",fill:"currentFill"})),h__default["default"].createElement("defs",null,h__default["default"].createElement("clipPath",{id:"HelpIcon_svg__a"},h__default["default"].createElement("path",{fill:"currentFill",d:"M0 0h24v24H0z"}))))});var Ae=f36Icon.generateIcon({name:"SearchIcon",viewBox:"0 0 24 24",path:h__default["default"].createElement(h__default["default"].Fragment,null,h__default["default"].createElement("g",{clipPath:"url(#SearchIcon_svg__a)"},h__default["default"].createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6 11.125a5.125 5.125 0 1 1 10.25 0 5.125 5.125 0 0 1-10.25 0ZM11.125 4a7.125 7.125 0 1 0 4.282 12.82l2.886 2.887a1 1 0 0 0 1.414-1.414l-2.886-2.887A7.125 7.125 0 0 0 11.125 4Z",fill:"currentFill"})),h__default["default"].createElement("defs",null,h__default["default"].createElement("clipPath",{id:"SearchIcon_svg__a"},h__default["default"].createElement("path",{fill:"#fff",d:"M0 0h24v24H0z"}))))});var Ee=f36Icon.generateIcon({name:"ContentfulLogoIcon",viewBox:"0 0 21 24",path:h__default["default"].createElement("g",{transform:"translate(4 3)"},h__default["default"].createElement("path",{fill:"#fae501",d:"M3.3 13.7c-1.2-1.2-2-2.9-2-4.7S2 5.5 3.2 4.3c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0-2 2.2-3.3 5.2-3.3 8.5s1.3 6.3 3.4 8.5c1 1 2.6 1 3.6 0 .9-1.1.9-2.7 0-3.8z"}),h__default["default"].createElement("path",{fill:"#4fb5e1",d:"M3.3 4.3c1.2-1.3 2.8-2 4.6-2s3.4.8 4.6 1.9c1 1.1 2.6 1.1 3.6 0 1-1 1-2.7 0-3.8C13.9-1.6 11-3 7.8-3S1.7-1.6-.4.5c-1 1-1 2.7 0 3.8 1 .9 2.6.9 3.7 0z"}),h__default["default"].createElement("path",{fill:"#f05751",d:"M12.4 13.7c-1.2 1.3-2.8 2-4.6 2-1.8 0-3.4-.8-4.6-2-1-1.1-2.6-1.1-3.6 0-1 1-1 2.7 0 3.8 2.1 2.1 5 3.5 8.2 3.5s6.1-1.4 8.2-3.5c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0z"}),h__default["default"].createElement("ellipse",{cx:1.4,cy:2.4,fill:"#0681b6",rx:2.5,ry:2.6}),h__default["default"].createElement("ellipse",{cx:1.4,cy:15.6,fill:"#cd4739",rx:2.5,ry:2.6}))});var Io="button";function xo(e,o){let H=e,{as:t=Io,icon:r,title:i,children:n,className:m,isActive:d,testId:c="cf-ui-navbar-item",onOpen:v,onClose:y}=H,I=f(H,["as","icon","title","children","className","isActive","testId","onOpen","onClose"]),L=Ie(),S=h__default["default"].createElement(t,p(s({},I),{ref:o,"data-test-id":c,className:emotion.cx(L.root,d&&L.isActive,m)}),r?h__default["default"].createElement(F,{icon:r,variant:"white"}):null,h__default["default"].createElement("span",null,i),Ce(e)&&h__default["default"].createElement(Me,{className:L.dropdownIcon}));return Ce(e)?h__default["default"].createElement(C,{trigger:S,testId:c,onOpen:v,onClose:y},n):S}var Ce=e=>Boolean(e.children),te=h__default["default"].forwardRef(xo);var re=({estimatedWidth:e})=>{let o=xe();return h__default["default"].createElement(f36Skeleton.SkeletonContainer,{className:o.root,svgWidth:e,svgHeight:40,backgroundColor:a__default["default"].gray800,foregroundColor:a__default["default"].gray700},h__default["default"].createElement(f36Skeleton.SkeletonText,{lineHeight:6,numberOfLines:1,offsetTop:7,radiusX:a__default["default"].borderRadiusSmall,radiusY:a__default["default"].borderRadiusSmall}))};var ke=()=>({root:emotion.css({display:"flex",justifyContent:"flex-start",alignItems:"center"})});var Co="button";function To(e,o){let v=e,{as:t=Co,icon:r,title:i,className:n}=v,m=f(v,["as","icon","title","className"]),d=ke(),c=ko(e);return h__default["default"].createElement(f36Menu.Menu.Item,p(s({},m),{ref:o,as:t,className:emotion.cx(d.root,n)}),r?h__default["default"].createElement(F,{icon:r,variant:"secondary"}):c&&Re,h__default["default"].createElement("span",null,i),r&&c?Re:null)}var Re=h__default["default"].createElement(F,{icon:h__default["default"].createElement(f36Icons.ExternalLinkIcon,null),variant:"muted"}),ko=e=>e.as==="a"&&e.target==="_blank",ne=h__default["default"].forwardRef(To);var ae=({ariaLabel:e})=>h__default["default"].createElement(f36Menu.Menu.Item,null,h__default["default"].createElement(f36Core.Flex,{alignItems:"center",gap:a__default["default"].spacingXs},h__default["default"].createElement(f36Skeleton.SkeletonContainer,{svgHeight:16,svgWidth:18},h__default["default"].createElement(f36Skeleton.SkeletonImage,{width:16,height:16})),h__default["default"].createElement(f36Skeleton.SkeletonContainer,{svgHeight:16,svgWidth:190,ariaLabel:e},h__default["default"].createElement(f36Skeleton.SkeletonBodyText,{numberOfLines:1}))));var _e=()=>({root:emotion.css({margin:0,padding:0,background:"none",border:"none",color:a__default["default"].gray300,cursor:"pointer",fontSize:a__default["default"].fontSizeS,fontWeight:a__default["default"].fontWeightMedium,position:"relative","&:after":{content:'""',border:"1px solid #353A41",boxSizing:"border-box",height:"16px",right:"-1px",position:"absolute",width:0},"&:last-child:after":{display:"none"},"&:focus-visible":{boxShadow:`0px 0px 0px 2px ${a__default["default"].colorBlack}, 0px 0px 0px 5px ${a__default["default"].blue300}`,outline:"none",borderRadius:a__default["default"].borderRadiusMedium},"&:hover li":{backgroundColor:f36Utils.hexToRGBA(a__default["default"].colorWhite,.15)}}),breadcrumbs:emotion.css({listStyleType:"none",margin:0,padding:0,position:"relative"}),menuIcon:emotion.css({display:"none",[g.medium]:{display:"block"}})});function Do(e,o){let c=e,{children:t,className:r,logo:i,testId:n="cf-ui-navbar-switcher"}=c,m=f(c,["children","className","logo","testId"]),d=_e();return h__default["default"].createElement(f36Core.Flex,p(s({},m),{as:"button",ref:o,className:emotion.cx(d.root,r),testId:n,alignItems:"center",fullHeight:!0,gap:"spacingXs"}),i||h__default["default"].createElement(Ee,null),h__default["default"].createElement(f36Icons.MenuIcon,{className:d.menuIcon,size:"small",variant:"white"}),h__default["default"].createElement(f36Core.Flex,{as:"ul",alignItems:"center",className:d.breadcrumbs},t))}var se=h__default["default"].forwardRef(Do);var pe=({estimatedWidth:e})=>h__default["default"].createElement(f36Skeleton.SkeletonContainer,{svgWidth:e,svgHeight:24,backgroundColor:a__default["default"].gray800,foregroundColor:a__default["default"].gray700},h__default["default"].createElement(f36Skeleton.SkeletonDisplayText,{lineHeight:24,numberOfLines:1,radiusX:12,radiusY:12}));var ze=()=>({root:emotion.css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",alignItems:"center",justifyContent:"center",minWidth:a__default["default"].spacingL,transition:`color ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,"& svg":{fill:a__default["default"].gray300,transition:`fill ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`},"&:hover, & svg:hover":{color:a__default["default"].gray100,fill:a__default["default"].gray100},"&:focus-visible":{boxShadow:a__default["default"].glowPrimary,outline:"none",borderRadius:a__default["default"].borderRadiusMedium}})});function Uo(e,o){let m=e,{className:t,testId:r="cf-ui-navbar-search"}=m,i=f(m,["className","testId"]),n=ze();return h__default["default"].createElement(f36Core.Flex,p(s({"aria-label":"Quick Search"},i),{as:"button",ref:o,className:emotion.cx(n.root,t),testId:r}),h__default["default"].createElement(Ae,{size:"medium",variant:"white"}))}var Fe=h__default["default"].forwardRef(Uo);var De={display:"none","&:first-child":{display:"block"},[g.medium]:{display:"block","&:first-child":{display:"none"}}},Oe=()=>({breadcrumbsItem:emotion.css({position:"relative",alignItems:"center",justifyContent:"center",backgroundColor:f36Utils.hexToRGBA(a__default["default"].gray100,.1),boxShadow:`0px 0px 0px 2px ${a__default["default"].colorBlack}`,display:"inline-flex",margin:0,minWidth:0,padding:`0 ${a__default["default"].spacingXs}`,height:a__default["default"].spacingL,borderRadius:"3rem",zIndex:2,transition:`background-color ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,whiteSpace:"nowrap","&:not(:first-child)":{clipPath:"path('M0 24C6 24 10 18 10 10C10 5 6 0 0 0H400C400 0 400 5 400 24H0Z')"},"&:first-child":{minWidth:"24px"},"&:nth-child(2)":{zIndex:1,left:`-${a__default["default"].spacingXs}`,paddingLeft:a__default["default"].spacingM,borderRadius:"0 3rem 3rem 0",span:{maxWidth:"80px",textOverflow:"ellipsis",overflow:"hidden",[g.large]:{maxWidth:"100%"}}},"&:nth-child(3)":{left:`-${a__default["default"].spacingM}`,paddingLeft:a__default["default"].spacingM,borderRadius:"0 3rem 3rem 0",fontFamily:a__default["default"].fontStackMonospace,fontSize:a__default["default"].fontSizeS,fontWeight:a__default["default"].fontWeightMedium,zIndex:0,span:{maxWidth:"40px",textOverflow:"ellipsis",overflow:"hidden",[g.large]:{maxWidth:"100%"}},"> div":{[g.medium]:{gap:a__default["default"].spacing2Xs}}}}),breadcrumbsItemCircle:emotion.css({borderRadius:"50%",color:a__default["default"].gray400,padding:0,display:"flex",justifyContent:"center",fontSize:"11px",width:a__default["default"].spacingL,height:a__default["default"].spacingL}),breadcrumbsItemEnvMaster:emotion.css({color:a__default["default"].green400," svg":p(s({},De),{fill:a__default["default"].green400})}),breadcrumbsItemEnvNonMaster:emotion.css({color:a__default["default"].orange400," svg":p(s({},De),{fill:a__default["default"].orange400})})});function $e({isAlias:e}){return h__default["default"].createElement(h__default["default"].Fragment,null,h__default["default"].createElement(Se,{key:"mobile-icon",size:"tiny"}),e?h__default["default"].createElement(f36Icons.EnvironmentAliasIcon,{key:"full-icon",size:"tiny"}):h__default["default"].createElement(f36Icons.EnvironmentIcon,{key:"full-icon",size:"tiny"}))}function Qo(e,o){let I=e,{children:t,isCircle:r,className:i,envVariant:n,isAlias:m,testId:d="cf-ui-navbar-switcher-item"}=I,c=f(I,["children","isCircle","className","envVariant","isAlias","testId"]),v=Oe(),y=emotion.cx(v.breadcrumbsItem,i,{[v.breadcrumbsItemCircle]:r,[v.breadcrumbsItemEnvMaster]:n==="master",[v.breadcrumbsItemEnvNonMaster]:n==="non-master"});return h__default["default"].createElement("li",p(s({},c),{ref:o,className:y,"data-test-id":d}),h__default["default"].createElement(f36Core.Flex,{fullHeight:!0,justifyContent:"center",alignItems:"center"},n&&h__default["default"].createElement($e,{isAlias:m}),h__default["default"].createElement("span",null,t)))}var Ge=h__default["default"].forwardRef(Qo);var Ve=()=>({root:emotion.css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",alignItems:"center",justifyContent:"center",color:a__default["default"].gray300,fontSize:0,gap:0,minWidth:a__default["default"].spacingL,transition:`color ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,[g.medium]:{fontSize:a__default["default"].fontSizeS,gap:a__default["default"].spacing2Xs,fontWeight:a__default["default"].fontWeightMedium,marginRight:a__default["default"].spacingXs},"&:focus-visible":{boxShadow:a__default["default"].glowPrimary,outline:"none",borderRadius:a__default["default"].borderRadiusMedium},"&:hover, &:hover svg":{color:a__default["default"].gray100,fill:a__default["default"].gray100},"& svg":{fill:a__default["default"].gray300,transition:`fill ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`}})});function tt(e,o){let d=e,{children:t,className:r,testId:i="cf-ui-navbar-help-trigger"}=d,n=f(d,["children","className","testId"]),m=Ve();return h__default["default"].createElement(C,{testId:"cf-ui-navbar-help-menu",trigger:h__default["default"].createElement(f36Core.Flex,p(s({"aria-label":"Help Menu"},n),{as:"button",ref:o,className:emotion.cx(m.root,r),testId:i}),h__default["default"].createElement(we,{size:"medium",variant:"white"}),"Help")},t)}var Xe=h__default["default"].forwardRef(tt);var Ue=()=>({root:emotion.css({display:"flex",justifyContent:"center",alignItems:"center",background:"none",border:`1px solid ${a__default["default"].purple400}`,margin:0,outline:"none",fontSize:a__default["default"].fontSizeS,lineHeight:a__default["default"].lineHeightS,fontWeight:a__default["default"].fontWeightMedium,textAlign:"center",padding:`0 ${a__default["default"].spacingXs}`,textDecoration:"none",color:`${a__default["default"].purple400}!important`,borderRadius:"1.75rem"})});var at="div";function it(e,o){let c=e,{as:t=at,children:r,className:i,testId:n="cf-ui-navbar-badge"}=c,m=f(c,["as","children","className","testId"]),d=Ue();return h__default["default"].createElement(t,p(s({},m),{ref:o,className:emotion.cx(d.root,i),"data-test-id":n}),r)}var qe=h__default["default"].forwardRef(it);var Ze=()=>({root:emotion.css({margin:0,background:"none",border:"none",cursor:"pointer",display:"flex",gap:a__default["default"].spacing2Xs,alignItems:"center",color:a__default["default"].gray300,padding:`0 ${a__default["default"].spacing2Xs}`,minHeight:a__default["default"].spacingL,fontSize:a__default["default"].fontSizeS,fontWeight:a__default["default"].fontWeightMedium,"&:hover":{color:a__default["default"].gray100},"&:focus-visible":{boxShadow:a__default["default"].glowPrimary,outline:"none",borderRadius:a__default["default"].borderRadiusMedium},svg:{fill:"currentColor"}})});var mt="button";function ct(e,o){let c=e,{as:t=mt,children:r,className:i,testId:n="cf-ui-navbar-topbar-item"}=c,m=f(c,["as","children","className","testId"]),d=Ze();return h__default["default"].createElement(t,p(s({},m),{ref:o,className:emotion.cx(d.root,i),"data-test-id":n}),r)}var Ke=h__default["default"].forwardRef(ct);var b=be;b.Item=te;b.ItemSkeleton=re;b.MenuItem=ne;b.MenuItemSkeleton=ae;b.MenuDivider=f36Menu.MenuDivider;b.MenuSectionTitle=f36Menu.MenuSectionTitle;b.Switcher=se;b.SwitcherSkeleton=pe;b.SwitcherItem=Ge;b.Search=Fe;b.Help=Xe;b.Account=J;b.AccountSkeleton=ee;b.Badge=qe;b.TopbarItem=Ke;
20
+ var Ke=Object.defineProperty,eo=Object.defineProperties;var oo=Object.getOwnPropertyDescriptors;var V=Object.getOwnPropertySymbols;var de=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable;var le=(e,o,t)=>o in e?Ke(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,s=(e,o)=>{for(var t in o||(o={}))de.call(o,t)&&le(e,t,o[t]);if(V)for(var t of V(o))fe.call(o,t)&&le(e,t,o[t]);return e},p=(e,o)=>eo(e,oo(o));var f=(e,o)=>{var t={};for(var r in e)de.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(e!=null&&V)for(var r of V(e))o.indexOf(r)<0&&fe.call(e,r)&&(t[r]=e[r]);return t};var g={medium:"@media (min-width: 480px)",large:"@media (min-width: 768px)",xlarge:"@media (min-width: 1920px)"},h=(e=a__default["default"].glowPrimary)=>({"&:focus":{boxShadow:e},"&:focus:not(:focus-visible)":{boxShadow:"unset"},"&:focus-visible":{boxShadow:e}});var be=e=>({containerTop:emotion.css({justifyContent:"center",backgroundColor:"#0C141C"}),containerBottom:emotion.css({justifyContent:"center",borderTop:"1px solid #21262D",backgroundColor:"#161B22"}),containerTopContent:emotion.css({width:"100%",maxWidth:e,padding:`${a__default["default"].spacingXs}`,minHeight:"2.5rem",[g.medium]:{padding:`${a__default["default"].spacingXs} ${a__default["default"].spacingM}`}}),containerBottomContent:emotion.css({width:"100%",maxWidth:e,padding:0,minHeight:"2.5rem",overflow:"auto",[g.medium]:{padding:`0 ${a__default["default"].spacing2Xs}`}})});function no(e,o){let W=e,{children:t,account:r,search:i,switcher:n,help:m,badge:d,bottomRightItems:c,topRightItems:v,contentMaxWidth:y="100%",testId:I="cf-ui-navbar"}=W,H=f(W,["children","account","search","switcher","help","badge","bottomRightItems","topRightItems","contentMaxWidth","testId"]),M=be(y);return N__default["default"].createElement(f36Core.Box,p(s({},H),{ref:o,testId:I}),N__default["default"].createElement(f36Core.Flex,{className:M.containerTop},N__default["default"].createElement(f36Core.Flex,{className:M.containerTopContent,justifyContent:"space-between"},N__default["default"].createElement(f36Core.Flex,null,n),N__default["default"].createElement(f36Core.Flex,{alignItems:"center",gap:"spacingXs"},v,d,i,m,r))),N__default["default"].createElement(f36Core.Flex,{className:M.containerBottom},N__default["default"].createElement(f36Core.Flex,{className:M.containerBottomContent,justifyContent:"space-between"},N__default["default"].createElement(f36Core.Flex,{as:"nav","aria-label":"Main Navigation",alignItems:"stretch"},t),c&&N__default["default"].createElement(f36Core.Flex,null,c))))}var ge=N__default["default"].forwardRef(no);var ue=()=>({root:emotion.css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",position:"relative",alignItems:"center",justifyContent:"center",gap:a__default["default"].spacing2Xs,outline:"none",borderRadius:"50%"},h()),avatar:emotion.css({borderRadius:"50%",display:"block",height:"24px",width:"24px"}),notificationIcon:e=>emotion.css({position:"absolute",top:0,right:0,height:a__default["default"].spacingS,width:a__default["default"].spacingS,borderRadius:"50%",border:`2px solid ${a__default["default"].gray900}`,backgroundColor:e==="negative"?a__default["default"].colorNegative:a__default["default"].colorWarning,transform:"translate(30%, -30%)"})});var ve=()=>({menuList:emotion.css({minWidth:"250px"})});var k=e=>{let{trigger:o,children:t,testId:r="cf-ui-navbar-menu-list",onOpen:i,onClose:n}=e,m=ve();return N__default["default"].createElement(f36Menu.Menu,{onOpen:i,onClose:n},N__default["default"].createElement(f36Menu.Menu.Trigger,null,o),N__default["default"].createElement(f36Menu.Menu.List,{className:m.menuList,testId:r},t))};function po(e,o){let I=e,{children:t,className:r,testId:i="cf-ui-navbar-account-trigger",avatar:n,username:m,hasNotification:d,notificationVariant:c="warning"}=I,v=f(I,["children","className","testId","avatar","username","hasNotification","notificationVariant"]),y=ue();return N__default["default"].createElement(k,{trigger:N__default["default"].createElement(f36Core.Flex,p(s({},v),{as:"button",ref:o,className:emotion.cx(y.root,r),testId:i}),N__default["default"].createElement("img",{src:n,alt:`Avatar for user ${m}`,className:y.avatar}),d?N__default["default"].createElement("span",{className:y.notificationIcon(c)}):null)},t)}var ee=N__default["default"].forwardRef(po);function oe({ariaLabel:e}){return N__default["default"].createElement(f36Skeleton.SkeletonContainer,{svgWidth:24,svgHeight:24,ariaLabel:e,backgroundColor:a__default["default"].gray800,foregroundColor:a__default["default"].gray700},N__default["default"].createElement(f36Skeleton.SkeletonImage,{width:24,height:24,radiusX:12,radiusY:12}))}var ye=()=>emotion.css({"&":{color:a__default["default"].colorWhite,"& svg":{fill:a__default["default"].colorWhite}},"&::after":{content:'""',position:"absolute",width:`calc(100% - ${a__default["default"].spacingM})`,height:"2px",bottom:"0.5px",left:0,right:0,margin:"auto",backgroundColor:a__default["default"].colorWhite,zIndex:0}}),Ie={display:"flex",justifyContent:"center",padding:`10px ${a__default["default"].spacingS}`,alignItems:"center",background:"none"},xe=()=>({root:emotion.css(Ie,{alignItems:"center",background:"none",border:0,margin:0,outline:"none",fontSize:a__default["default"].fontSizeM,lineHeight:a__default["default"].lineHeightM,fontWeight:a__default["default"].fontWeightMedium,position:"relative",textAlign:"left",whiteSpace:"nowrap",cursor:"pointer",hyphens:"auto",textDecoration:"none",color:f36Utils.hexToRGBA(a__default["default"].gray300,.8),boxSizing:"border-box",transition:`color ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,borderRadius:a__default["default"].borderRadiusMedium,"&::before":{content:'""',position:"absolute",width:`calc(100% - ${a__default["default"].spacingXs})`,height:`calc(100% - ${a__default["default"].spacingS})`,top:`calc(${a__default["default"].spacingS} / 2)`,left:0,right:0,margin:"auto",borderRadius:a__default["default"].borderRadiusSmall,backgroundColor:f36Utils.hexToRGBA(a__default["default"].colorWhite,.08),opacity:0,zIndex:0,scale:0,transition:`all ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`},"&:hover::before":{opacity:1,scale:"1"},"&:active::before":{backgroundColor:"rgba(255, 255, 255, 0.1)"},"&:disabled":{cursor:"auto"},"& svg":{fill:f36Utils.hexToRGBA(a__default["default"].gray300,.8),transition:`fill ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,"&:first-child":{display:"none",[g.large]:{display:"block"}}},"& > svg, & > span":{zIndex:a__default["default"].zIndexDefault}},h(`inset ${a__default["default"].glowPrimary}`)),isActive:ye(),dropdownIcon:emotion.css({paddingLeft:a__default["default"].spacing2Xs})}),Pe=()=>({root:emotion.css(Ie)});var Se=()=>({root:emotion.css({"&:first-child":{marginRight:a__default["default"].spacing2Xs},"&:last-child":{marginLeft:a__default["default"].spacing2Xs},"img&":{borderRadius:a__default["default"].borderRadiusSmall,maxWidth:a__default["default"].spacingM,maxHeight:a__default["default"].spacingM}})});var z=e=>{var i,n;let{icon:o,variant:t}=e,r=Se();return N__default["default"].cloneElement(o,{className:emotion.cx(o.props.className,r.root),size:(i=o.props.size)!=null?i:"tiny",variant:(n=o.props.variant)!=null?n:t})};var Me=f36Icon.generateIcon({name:"CircleIcon",viewBox:"0 0 24 24",path:N__default["default"].createElement("path",{d:"M11.994 6.526A5.47 5.47 0 0 0 6.526 12a5.47 5.47 0 0 0 5.468 5.473A5.476 5.476 0 0 0 17.473 12a5.477 5.477 0 0 0-5.479-5.474ZM12 15.447a3.448 3.448 0 1 1 0-6.896 3.448 3.448 0 0 1 0 6.896Z",fill:"currentFill"})});var we=f36Icon.generateIcon({name:"ArrowDownIcon",viewBox:"0 0 12 20",path:N__default["default"].createElement("path",{d:"M3.03076 8C2.20109 8 1.73228 8.95209 2.23814 9.60971L5.20727 13.4696C5.60757 13.99 6.39223 13.99 6.79252 13.4696L9.76166 9.60971C10.2675 8.95209 9.79871 8 8.96904 8L3.03076 8Z",fill:"#9FA8B2"})});var Ee=f36Icon.generateIcon({name:"HelpIcon",viewBox:"0 0 24 24",path:N__default["default"].createElement(N__default["default"].Fragment,null,N__default["default"].createElement("g",{clipPath:"url(#HelpIcon_svg__a)"},N__default["default"].createElement("path",{d:"M12 2.25A9.75 9.75 0 1 0 21.75 12 9.769 9.769 0 0 0 12 2.25ZM12 18a1.125 1.125 0 1 1 0-2.25A1.125 1.125 0 0 1 12 18Zm.75-4.584v.084a.75.75 0 1 1-1.5 0v-.75A.75.75 0 0 1 12 12a1.875 1.875 0 1 0-1.875-1.875.75.75 0 1 1-1.5 0 3.375 3.375 0 1 1 4.125 3.29Z",fill:"currentFill"})),N__default["default"].createElement("defs",null,N__default["default"].createElement("clipPath",{id:"HelpIcon_svg__a"},N__default["default"].createElement("path",{fill:"currentFill",d:"M0 0h24v24H0z"}))))});var Ae=f36Icon.generateIcon({name:"SearchIcon",viewBox:"0 0 24 24",path:N__default["default"].createElement(N__default["default"].Fragment,null,N__default["default"].createElement("g",{clipPath:"url(#SearchIcon_svg__a)"},N__default["default"].createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6 11.125a5.125 5.125 0 1 1 10.25 0 5.125 5.125 0 0 1-10.25 0ZM11.125 4a7.125 7.125 0 1 0 4.282 12.82l2.886 2.887a1 1 0 0 0 1.414-1.414l-2.886-2.887A7.125 7.125 0 0 0 11.125 4Z",fill:"currentFill"})),N__default["default"].createElement("defs",null,N__default["default"].createElement("clipPath",{id:"SearchIcon_svg__a"},N__default["default"].createElement("path",{fill:"#fff",d:"M0 0h24v24H0z"}))))});var Ce=f36Icon.generateIcon({name:"ContentfulLogoIcon",viewBox:"0 0 21 24",path:N__default["default"].createElement("g",{transform:"translate(4 3)"},N__default["default"].createElement("path",{fill:"#fae501",d:"M3.3 13.7c-1.2-1.2-2-2.9-2-4.7S2 5.5 3.2 4.3c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0-2 2.2-3.3 5.2-3.3 8.5s1.3 6.3 3.4 8.5c1 1 2.6 1 3.6 0 .9-1.1.9-2.7 0-3.8z"}),N__default["default"].createElement("path",{fill:"#4fb5e1",d:"M3.3 4.3c1.2-1.3 2.8-2 4.6-2s3.4.8 4.6 1.9c1 1.1 2.6 1.1 3.6 0 1-1 1-2.7 0-3.8C13.9-1.6 11-3 7.8-3S1.7-1.6-.4.5c-1 1-1 2.7 0 3.8 1 .9 2.6.9 3.7 0z"}),N__default["default"].createElement("path",{fill:"#f05751",d:"M12.4 13.7c-1.2 1.3-2.8 2-4.6 2-1.8 0-3.4-.8-4.6-2-1-1.1-2.6-1.1-3.6 0-1 1-1 2.7 0 3.8 2.1 2.1 5 3.5 8.2 3.5s6.1-1.4 8.2-3.5c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0z"}),N__default["default"].createElement("ellipse",{cx:1.4,cy:2.4,fill:"#0681b6",rx:2.5,ry:2.6}),N__default["default"].createElement("ellipse",{cx:1.4,cy:15.6,fill:"#cd4739",rx:2.5,ry:2.6}))});var Po="button";function So(e,o){let W=e,{as:t=Po,icon:r,title:i,children:n,className:m,isActive:d,testId:c="cf-ui-navbar-item",onOpen:v,onClose:y}=W,I=f(W,["as","icon","title","children","className","isActive","testId","onOpen","onClose"]),H=xe(),M=N__default["default"].createElement(t,p(s({},I),{ref:o,"data-test-id":c,className:emotion.cx(H.root,d&&H.isActive,m)}),r?N__default["default"].createElement(z,{icon:r,variant:"white"}):null,N__default["default"].createElement("span",null,i),ke(e)&&N__default["default"].createElement(we,{className:H.dropdownIcon}));return ke(e)?N__default["default"].createElement(k,{trigger:M,testId:c,onOpen:v,onClose:y},n):M}var ke=e=>Boolean(e.children),re=N__default["default"].forwardRef(So);var ne=({estimatedWidth:e})=>{let o=Pe();return N__default["default"].createElement(f36Skeleton.SkeletonContainer,{className:o.root,svgWidth:e,svgHeight:40,backgroundColor:a__default["default"].gray800,foregroundColor:a__default["default"].gray700},N__default["default"].createElement(f36Skeleton.SkeletonText,{lineHeight:6,numberOfLines:1,offsetTop:7,radiusX:a__default["default"].borderRadiusSmall,radiusY:a__default["default"].borderRadiusSmall}))};var Re=()=>({root:emotion.css({display:"flex",justifyContent:"flex-start",alignItems:"center"})});var To="button";function Ro(e,o){let v=e,{as:t=To,icon:r,title:i,className:n}=v,m=f(v,["as","icon","title","className"]),d=Re(),c=Bo(e);return N__default["default"].createElement(f36Menu.Menu.Item,p(s({},m),{ref:o,as:t,className:emotion.cx(d.root,n)}),r?N__default["default"].createElement(z,{icon:r,variant:"secondary"}):c&&Be,N__default["default"].createElement("span",null,i),r&&c?Be:null)}var Be=N__default["default"].createElement(z,{icon:N__default["default"].createElement(f36Icons.ExternalLinkIcon,null),variant:"muted"}),Bo=e=>e.as==="a"&&e.target==="_blank",ae=N__default["default"].forwardRef(Ro);var ie=({ariaLabel:e})=>N__default["default"].createElement(f36Menu.Menu.Item,null,N__default["default"].createElement(f36Core.Flex,{alignItems:"center",gap:a__default["default"].spacingXs},N__default["default"].createElement(f36Skeleton.SkeletonContainer,{svgHeight:16,svgWidth:18},N__default["default"].createElement(f36Skeleton.SkeletonImage,{width:16,height:16})),N__default["default"].createElement(f36Skeleton.SkeletonContainer,{svgHeight:16,svgWidth:190,ariaLabel:e},N__default["default"].createElement(f36Skeleton.SkeletonBodyText,{numberOfLines:1}))));var Le=()=>({root:emotion.css({margin:0,padding:0,background:"none",border:"none",color:a__default["default"].gray300,cursor:"pointer",fontSize:a__default["default"].fontSizeS,fontWeight:a__default["default"].fontWeightMedium,position:"relative",outline:"none",borderRadius:a__default["default"].borderRadiusMedium,"&:after":{content:'""',border:"1px solid #353A41",boxSizing:"border-box",height:"16px",right:"-1px",position:"absolute",width:0},"&:last-child:after":{display:"none"},"&:hover li":{backgroundColor:f36Utils.hexToRGBA(a__default["default"].colorWhite,.15)}},h(`0px 0px 0px 2px ${a__default["default"].colorBlack}, 0px 0px 0px 5px ${a__default["default"].blue300}`)),breadcrumbs:emotion.css({listStyleType:"none",margin:0,padding:0,position:"relative"}),menuIcon:emotion.css({display:"none",[g.medium]:{display:"block"}})});function $o(e,o){let c=e,{children:t,className:r,logo:i,testId:n="cf-ui-navbar-switcher"}=c,m=f(c,["children","className","logo","testId"]),d=Le();return N__default["default"].createElement(f36Core.Flex,p(s({},m),{as:"button",ref:o,className:emotion.cx(d.root,r),testId:n,alignItems:"center",fullHeight:!0,gap:"spacingXs"}),i||N__default["default"].createElement(Ce,null),N__default["default"].createElement(f36Icons.MenuIcon,{className:d.menuIcon,size:"small",variant:"white"}),N__default["default"].createElement(f36Core.Flex,{as:"ul",alignItems:"center",className:d.breadcrumbs},t))}var pe=N__default["default"].forwardRef($o);var me=({estimatedWidth:e})=>N__default["default"].createElement(f36Skeleton.SkeletonContainer,{svgWidth:e,svgHeight:24,backgroundColor:a__default["default"].gray800,foregroundColor:a__default["default"].gray700},N__default["default"].createElement(f36Skeleton.SkeletonDisplayText,{lineHeight:24,numberOfLines:1,radiusX:12,radiusY:12}));var Oe=()=>({root:emotion.css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",alignItems:"center",justifyContent:"center",minWidth:a__default["default"].spacingL,transition:`color ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,outline:"none",borderRadius:a__default["default"].borderRadiusMedium,"& svg":{fill:a__default["default"].gray300,transition:`fill ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`},"&:hover, & svg:hover":{color:a__default["default"].gray100,fill:a__default["default"].gray100}},h())});function Zo(e,o){let m=e,{className:t,testId:r="cf-ui-navbar-search"}=m,i=f(m,["className","testId"]),n=Oe();return N__default["default"].createElement(f36Core.Flex,p(s({"aria-label":"Quick Search"},i),{as:"button",ref:o,className:emotion.cx(n.root,t),testId:r}),N__default["default"].createElement(Ae,{size:"medium",variant:"white"}))}var ze=N__default["default"].forwardRef(Zo);var De={display:"none","&:first-child":{display:"block"},[g.medium]:{display:"block","&:first-child":{display:"none"}}},$e=()=>({breadcrumbsItem:emotion.css({position:"relative",alignItems:"center",justifyContent:"center",backgroundColor:f36Utils.hexToRGBA(a__default["default"].gray100,.1),boxShadow:`0px 0px 0px 2px ${a__default["default"].colorBlack}`,display:"inline-flex",margin:0,minWidth:0,padding:`0 ${a__default["default"].spacingXs}`,height:a__default["default"].spacingL,borderRadius:"3rem",zIndex:2,transition:`background-color ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,whiteSpace:"nowrap","&:not(:first-child)":{clipPath:"path('M0 24C6 24 10 18 10 10C10 5 6 0 0 0H400C400 0 400 5 400 24H0Z')"},"&:first-child":{minWidth:"24px"},"&:nth-child(2)":{zIndex:1,left:`-${a__default["default"].spacingXs}`,paddingLeft:a__default["default"].spacingM,borderRadius:"0 3rem 3rem 0",span:{maxWidth:"80px",textOverflow:"ellipsis",overflow:"hidden",[g.large]:{maxWidth:"100%"}}},"&:nth-child(3)":{left:`-${a__default["default"].spacingM}`,paddingLeft:a__default["default"].spacingM,borderRadius:"0 3rem 3rem 0",fontFamily:a__default["default"].fontStackMonospace,fontSize:a__default["default"].fontSizeS,fontWeight:a__default["default"].fontWeightMedium,zIndex:0,span:{maxWidth:"40px",textOverflow:"ellipsis",overflow:"hidden",[g.large]:{maxWidth:"100%"}},"> div":{[g.medium]:{gap:a__default["default"].spacing2Xs}}}}),breadcrumbsItemCircle:emotion.css({borderRadius:"50%",color:a__default["default"].gray400,padding:0,display:"flex",justifyContent:"center",fontSize:"11px",width:a__default["default"].spacingL,height:a__default["default"].spacingL}),breadcrumbsItemEnvMaster:emotion.css({color:a__default["default"].green400," svg":p(s({},De),{fill:a__default["default"].green400})}),breadcrumbsItemEnvNonMaster:emotion.css({color:a__default["default"].orange400,svg:p(s({},De),{fill:a__default["default"].orange400})})});function Ge({isAlias:e}){return N__default["default"].createElement(N__default["default"].Fragment,null,N__default["default"].createElement(Me,{key:"mobile-icon",size:"tiny"}),e?N__default["default"].createElement(f36Icons.EnvironmentAliasIcon,{key:"full-icon",size:"tiny"}):N__default["default"].createElement(f36Icons.EnvironmentIcon,{key:"full-icon",size:"tiny"}))}function et(e,o){let I=e,{children:t,isCircle:r,className:i,envVariant:n,isAlias:m,testId:d="cf-ui-navbar-switcher-item"}=I,c=f(I,["children","isCircle","className","envVariant","isAlias","testId"]),v=$e(),y=emotion.cx(v.breadcrumbsItem,i,{[v.breadcrumbsItemCircle]:r,[v.breadcrumbsItemEnvMaster]:n==="master",[v.breadcrumbsItemEnvNonMaster]:n==="non-master"});return N__default["default"].createElement("li",p(s({},c),{ref:o,className:y,"data-test-id":d}),N__default["default"].createElement(f36Core.Flex,{fullHeight:!0,justifyContent:"center",alignItems:"center"},n&&N__default["default"].createElement(Ge,{isAlias:m}),N__default["default"].createElement("span",null,t)))}var Ve=N__default["default"].forwardRef(et);var Xe=()=>({root:emotion.css({margin:0,padding:0,background:"none",border:"none",cursor:"pointer",alignItems:"center",justifyContent:"center",color:a__default["default"].gray300,fontSize:0,gap:0,minWidth:a__default["default"].spacingL,transition:`color ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`,outline:"none",borderRadius:a__default["default"].borderRadiusMedium,[g.medium]:{fontSize:a__default["default"].fontSizeS,gap:a__default["default"].spacing2Xs,fontWeight:a__default["default"].fontWeightMedium,marginRight:a__default["default"].spacingXs},"&:hover, &:hover svg":{color:a__default["default"].gray100,fill:a__default["default"].gray100},"& svg":{fill:a__default["default"].gray300,transition:`fill ${a__default["default"].transitionDurationShort} ${a__default["default"].transitionEasingCubicBezier}`}},h())});function nt(e,o){let d=e,{children:t,className:r,testId:i="cf-ui-navbar-help-trigger"}=d,n=f(d,["children","className","testId"]),m=Xe();return N__default["default"].createElement(k,{testId:"cf-ui-navbar-help-menu",trigger:N__default["default"].createElement(f36Core.Flex,p(s({"aria-label":"Help Menu"},n),{as:"button",ref:o,className:emotion.cx(m.root,r),testId:i}),N__default["default"].createElement(Ee,{size:"medium",variant:"white"}),"Help")},t)}var Ue=N__default["default"].forwardRef(nt);var je=()=>({root:emotion.css({display:"flex",justifyContent:"center",alignItems:"center",background:"none",border:`1px solid ${a__default["default"].purple400}`,margin:0,outline:"none",fontSize:a__default["default"].fontSizeS,lineHeight:a__default["default"].lineHeightS,fontWeight:a__default["default"].fontWeightMedium,textAlign:"center",padding:`0 ${a__default["default"].spacingXs}`,textDecoration:"none",color:`${a__default["default"].purple400}!important`,borderRadius:"1.75rem"})});var st="div";function pt(e,o){let c=e,{as:t=st,children:r,className:i,testId:n="cf-ui-navbar-badge"}=c,m=f(c,["as","children","className","testId"]),d=je();return N__default["default"].createElement(t,p(s({},m),{ref:o,className:emotion.cx(d.root,i),"data-test-id":n}),r)}var qe=N__default["default"].forwardRef(pt);var Ye=()=>({root:emotion.css({margin:0,background:"none",border:"none",cursor:"pointer",display:"flex",gap:a__default["default"].spacing2Xs,alignItems:"center",color:a__default["default"].gray300,padding:`0 ${a__default["default"].spacing2Xs}`,minHeight:a__default["default"].spacingL,fontSize:a__default["default"].fontSizeS,fontWeight:a__default["default"].fontWeightMedium,outline:"none",borderRadius:a__default["default"].borderRadiusMedium,"&:hover":{color:a__default["default"].gray100},svg:{fill:"currentColor"}},h())});var lt="button";function dt(e,o){let c=e,{as:t=lt,children:r,className:i,testId:n="cf-ui-navbar-topbar-item"}=c,m=f(c,["as","children","className","testId"]),d=Ye();return N__default["default"].createElement(t,p(s({},m),{ref:o,className:emotion.cx(d.root,i),"data-test-id":n}),r)}var Je=N__default["default"].forwardRef(dt);var b=ge;b.Item=re;b.ItemSkeleton=ne;b.MenuItem=ae;b.MenuItemSkeleton=ie;b.MenuDivider=f36Menu.MenuDivider;b.MenuSectionTitle=f36Menu.MenuSectionTitle;b.Switcher=pe;b.SwitcherSkeleton=me;b.SwitcherItem=Ve;b.Search=ze;b.Help=Ue;b.Account=ee;b.AccountSkeleton=oe;b.Badge=qe;b.TopbarItem=Je;
21
21
 
22
22
  exports.Navbar = b;
23
- exports.getNavbarItemActiveStyles = Ne;
24
- exports.mqs = g;
23
+ exports.getNavbarItemActiveStyles = ye;
25
24
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/CompoundNavbar.ts","../src/Navbar.tsx","../src/Navbar.styles.ts","../src/utils.styles.ts","../src/NavbarAccount/NavbarAccount.tsx","../src/NavbarAccount/NavbarAccount.styles.ts","../src/NavbarMenu/NavbarMenu.tsx","../src/NavbarMenu/NavbarMenu.styles.ts","../src/NavbarAccount/NavbarAccountSkeleton.tsx","../src/NavbarItem/NavbarItem.tsx","../src/NavbarItem/NavbarItem.styles.ts","../src/NavbarItemIcon/NavbarItemIcon.tsx","../src/NavbarItemIcon/NavbarItemIcon.styles.ts","../src/icons/CircleIcon.tsx","../src/icons/ArrowDownIcon.tsx","../src/icons/HelpIcon.tsx","../src/icons/SearchIcon.tsx","../src/icons/ContentfulLogoIcon.tsx","../src/NavbarItem/NavbarItemSkeleton.tsx","../src/NavbarMenuItem/NavbarMenuItem.tsx","../src/NavbarMenuItem/NavbarMenuItem.styles.ts","../src/NavbarMenuItem/NavbarMenuItemSkeleton.tsx","../src/NavbarSwitcher/NavbarSwitcher.tsx","../src/NavbarSwitcher/NavbarSwitcher.styles.ts","../src/NavbarSwitcher/NavbarSwitcherSkeleton.tsx","../src/NavbarSearch/NavbarSearch.tsx","../src/NavbarSearch/NavbarSearch.styles.ts","../src/NavbarSwitcherItem/NavbarSwitcherItem.tsx","../src/NavbarSwitcherItem/NavbarSwitcherItem.styles.ts","../src/NavbarSwitcherItem/NavbarEnvVariant.tsx","../src/NavbarHelp/NavbarHelp.tsx","../src/NavbarHelp/NavbarHelp.styles.ts","../src/NavbarBadge/NavbarBadge.tsx","../src/NavbarBadge/NavbarBadge.styles.ts","../src/NavbarTopbarItem/NavbarTopbarItem.tsx","../src/NavbarTopbarItem/NavbarTopbarItem.styles.ts"],"names":["MenuDivider","MenuSectionTitle","Box","Flex","React","css","tokens","mqs","getNavbarStyles","maxWidth","_Navbar","props","ref","_a","children","account","search","switcher","help","badge","bottomRightItems","topRightItems","contentMaxWidth","testId","otherProps","__objRest","styles","__spreadProps","__spreadValues","Navbar","cx","getNavbarAccountStyles","variant","Menu","getNavbarMenuStyles","NavbarMenu","trigger","onOpen","onClose","_NavbarAccount","className","avatar","username","hasNotification","notificationVariant","NavbarAccount","SkeletonContainer","SkeletonImage","NavbarAccountSkeleton","ariaLabel","hexToRGBA","getNavbarItemActiveStyles","commonItemStyles","getNavbarItemStyles","getNavbarItemSkeletonStyles","getNavbarItemIconStyles","NavbarItemIcon","_b","icon","generateIcon","CircleIcon","ArrowDownIcon","HelpIcon","SearchIcon","ContentfulLogoIcon","NAVBAR_ITEM_DEFAULT_TAG","_NavbarItem","Comp","title","isActive","item","isNavbarItemHasMenu","NavbarItem","SkeletonText","NavbarItemSkeleton","estimatedWidth","getNavbarMenuItemStyles","ExternalLinkIcon","NAVBAR_MENU_ITEM_DEFAULT_TAG","_NavbarMenuItem","itemIsExternalLink","isExternalLink","externalIcon","NavbarMenuItem","SkeletonBodyText","NavbarMenuItemSkeleton","getNavbarSwitcherStyles","MenuIcon","_NavbarSwitcher","logo","NavbarSwitcher","SkeletonDisplayText","NavbarSwitcherSkeleton","getNavbarSearchStyles","_NavbarSearch","NavbarSearch","mobileIcon","getNavbarSwitcherItemStyles","EnvironmentAliasIcon","EnvironmentIcon","NavbarEnvVariant","isAlias","_NavbarSwitcherItem","isCircle","envVariant","classes","NavbarSwitcherItem","getNavbarHelpStyles","_NavbarHelp","NavbarHelp","getNavbarBadgeStyles","NAVBAR_BADGE_DEFAULT_TAG","_NavbarBadge","NavbarBadge","getNavbarTopbarItemStyles","_NavbarTopbarItem","NavbarTopbarItem"],"mappings":"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","sourcesContent":["import { MenuDivider } from '@contentful/f36-menu';\nimport { MenuSectionTitle } from '@contentful/f36-menu';\nimport { Navbar as OriginalNavbar } from './Navbar';\n\nimport { NavbarAccount, NavbarAccountSkeleton } from './NavbarAccount';\nimport { NavbarItem, NavbarItemSkeleton } from './NavbarItem';\nimport { NavbarMenuItem, NavbarMenuItemSkeleton } from './NavbarMenuItem';\nimport { NavbarSwitcher, NavbarSwitcherSkeleton } from './NavbarSwitcher';\n\nimport { NavbarSearch } from './NavbarSearch/NavbarSearch';\nimport { NavbarSwitcherItem } from './NavbarSwitcherItem/NavbarSwitcherItem';\nimport { NavbarHelp } from './NavbarHelp/NavbarHelp';\nimport { NavbarBadge } from './NavbarBadge/NavbarBadge';\nimport { NavbarTopbarItem } from './NavbarTopbarItem/NavbarTopbarItem';\n\ntype CompoundNavbar = typeof OriginalNavbar & {\n Item: typeof NavbarItem;\n ItemSkeleton: typeof NavbarItemSkeleton;\n MenuItem: typeof NavbarMenuItem;\n MenuItemSkeleton: typeof NavbarMenuItemSkeleton;\n MenuDivider: typeof MenuDivider;\n MenuSectionTitle: typeof MenuSectionTitle;\n Switcher: typeof NavbarSwitcher;\n SwitcherSkeleton: typeof NavbarSwitcherSkeleton;\n SwitcherItem: typeof NavbarSwitcherItem;\n Search: typeof NavbarSearch;\n Help: typeof NavbarHelp;\n Account: typeof NavbarAccount;\n AccountSkeleton: typeof NavbarAccountSkeleton;\n Badge: typeof NavbarBadge;\n TopbarItem: typeof NavbarTopbarItem;\n};\n\nexport const Navbar = OriginalNavbar as CompoundNavbar;\nNavbar.Item = NavbarItem;\nNavbar.ItemSkeleton = NavbarItemSkeleton;\nNavbar.MenuItem = NavbarMenuItem;\nNavbar.MenuItemSkeleton = NavbarMenuItemSkeleton;\nNavbar.MenuDivider = MenuDivider;\nNavbar.MenuSectionTitle = MenuSectionTitle;\nNavbar.Switcher = NavbarSwitcher;\nNavbar.SwitcherSkeleton = NavbarSwitcherSkeleton;\nNavbar.SwitcherItem = NavbarSwitcherItem;\nNavbar.Search = NavbarSearch;\nNavbar.Help = NavbarHelp;\nNavbar.Account = NavbarAccount;\nNavbar.AccountSkeleton = NavbarAccountSkeleton;\nNavbar.Badge = NavbarBadge;\nNavbar.TopbarItem = NavbarTopbarItem;\n","import {\n Box,\n type CommonProps,\n type ExpandProps,\n Flex,\n} from '@contentful/f36-core';\nimport React from 'react';\nimport { getNavbarStyles } from './Navbar.styles';\n\ntype NavbarOwnProps = CommonProps & {\n children?: React.ReactNode;\n account?: React.ReactNode;\n search?: React.ReactNode;\n switcher?: React.ReactNode;\n help?: React.ReactNode;\n badge?: React.ReactNode;\n /**\n * Items that will be rendered on the bottom-right of the navbar.\n * Useful for separating other navigation items from main ones, (e.g. separating \"Settings\" from all other navigation items).\n */\n bottomRightItems?: React.ReactNode;\n /**\n * Items that will be rendered on the top-right of the navbar.\n * Useful for providing additional context or actions to the user (e.g. a Feedback form link).\n */\n topRightItems?: React.ReactNode;\n /**\n * Defines the max-width of the content inside the navbar.\n * @default '100%'\n */\n contentMaxWidth?: string;\n};\n\n// expose only the HTML props that are needed to not pollute the API\ntype NavbarHTMLElementProps = Pick<React.ComponentPropsWithoutRef<'div'>, 'id'>;\n\nexport type NavbarProps = NavbarHTMLElementProps & NavbarOwnProps;\n\nfunction _Navbar(props: ExpandProps<NavbarProps>, ref: React.Ref<HTMLElement>) {\n const {\n children,\n account,\n search,\n switcher,\n help,\n badge,\n bottomRightItems,\n topRightItems,\n contentMaxWidth = '100%',\n testId = 'cf-ui-navbar',\n ...otherProps\n } = props;\n const styles = getNavbarStyles(contentMaxWidth);\n\n return (\n <Box {...otherProps} ref={ref} testId={testId}>\n <Flex className={styles.containerTop}>\n <Flex\n className={styles.containerTopContent}\n justifyContent=\"space-between\"\n >\n <Flex>{switcher}</Flex>\n <Flex alignItems=\"center\" gap=\"spacingXs\">\n {topRightItems}\n {badge}\n {search}\n {help}\n {account}\n </Flex>\n </Flex>\n </Flex>\n\n <Flex className={styles.containerBottom}>\n <Flex\n className={styles.containerBottomContent}\n justifyContent=\"space-between\"\n >\n <Flex as=\"nav\" aria-label=\"Main Navigation\" alignItems=\"stretch\">\n {children}\n </Flex>\n {bottomRightItems && <Flex>{bottomRightItems}</Flex>}\n </Flex>\n </Flex>\n </Box>\n );\n}\n\nexport const Navbar = React.forwardRef(_Navbar);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { mqs } from './utils.styles';\n\nexport const getNavbarStyles = (maxWidth: string) => ({\n containerTop: css({\n justifyContent: 'center',\n backgroundColor: '#0C141C',\n }),\n containerBottom: css({\n justifyContent: 'center',\n borderTop: `1px solid #21262D`,\n backgroundColor: '#161B22',\n }),\n containerTopContent: css({\n width: '100%',\n maxWidth: maxWidth,\n padding: `${tokens.spacingXs}`,\n minHeight: '2.5rem',\n [mqs.medium]: {\n padding: `${tokens.spacingXs} ${tokens.spacingM}`,\n },\n }),\n containerBottomContent: css({\n width: '100%',\n maxWidth: maxWidth,\n padding: 0,\n minHeight: '2.5rem',\n overflow: 'auto',\n [mqs.medium]: {\n padding: `0 ${tokens.spacing2Xs}`,\n },\n }),\n});\n\nexport const NAVBAR_FALLBACK_HEIGHT = 81;\n","type screens = 'medium' | 'large' | 'xlarge';\ntype mediaqueries = Record<screens, string>;\nexport const mqs: mediaqueries = {\n medium: '@media (min-width: 480px)',\n large: '@media (min-width: 768px)',\n xlarge: '@media (min-width: 1920px)',\n};\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarAccountStyles } from './NavbarAccount.styles';\nimport {\n Flex,\n type PropsWithHTMLElement,\n type CommonProps,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { NavbarMenu } from '../NavbarMenu/NavbarMenu';\n\ntype NavbarAccountOwnProps = CommonProps & {\n children: React.ReactNode;\n username: string;\n avatar: string;\n hasNotification?: boolean;\n /**\n * @default 'warning'\n */\n notificationVariant?: 'warning' | 'negative';\n};\n\nexport type NavbarAccountProps = PropsWithHTMLElement<\n NavbarAccountOwnProps,\n 'button'\n>;\n\nfunction _NavbarAccount(\n props: ExpandProps<NavbarAccountProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n testId = 'cf-ui-navbar-account-trigger',\n avatar,\n username,\n hasNotification,\n notificationVariant = 'warning',\n ...otherProps\n } = props;\n const styles = getNavbarAccountStyles();\n\n return (\n <NavbarMenu\n trigger={\n <Flex\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <img\n src={avatar}\n alt={`Avatar for user ${username}`}\n className={styles.avatar}\n />\n {hasNotification ? (\n <span className={styles.notificationIcon(notificationVariant)} />\n ) : null}\n </Flex>\n }\n >\n {children}\n </NavbarMenu>\n );\n}\n\nexport const NavbarAccount = React.forwardRef(_NavbarAccount);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { NavbarAccountProps } from './NavbarAccount';\n\nexport const getNavbarAccountStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n gap: tokens.spacing2Xs,\n\n '&:focus-visible': {\n boxShadow: tokens.glowPrimary,\n outline: 'none',\n borderRadius: '50%',\n },\n }),\n avatar: css({\n borderRadius: '50%',\n display: 'block',\n height: '24px',\n width: '24px',\n }),\n notificationIcon: (variant: NavbarAccountProps['notificationVariant']) =>\n css({\n position: 'absolute',\n top: 0,\n right: 0,\n height: tokens.spacingS,\n width: tokens.spacingS,\n borderRadius: '50%',\n border: `2px solid ${tokens.gray900}`,\n backgroundColor:\n variant === 'negative' ? tokens.colorNegative : tokens.colorWarning,\n transform: 'translate(30%, -30%)',\n }),\n});\n","import React from 'react';\nimport { Menu, type MenuListProps, type MenuProps } from '@contentful/f36-menu';\nimport { getNavbarMenuStyles } from './NavbarMenu.styles';\n\nexport type NavbarMenuProps = {\n trigger: React.ReactNode;\n children?: React.ReactNode;\n} & Pick<MenuListProps, 'testId'> &\n Pick<MenuProps, 'onOpen' | 'onClose'>;\n\nexport const NavbarMenu = (props: NavbarMenuProps) => {\n const {\n trigger,\n children,\n testId = 'cf-ui-navbar-menu-list',\n onOpen,\n onClose,\n } = props;\n const styles = getNavbarMenuStyles();\n\n return (\n <Menu onOpen={onOpen} onClose={onClose}>\n <Menu.Trigger>{trigger}</Menu.Trigger>\n <Menu.List className={styles.menuList} testId={testId}>\n {children}\n </Menu.List>\n </Menu>\n );\n};\n","import { css } from 'emotion';\n\nexport const getNavbarMenuStyles = () => ({\n menuList: css({\n minWidth: '250px',\n }),\n});\n","import React from 'react';\nimport { SkeletonContainer, SkeletonImage } from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\n\nexport function NavbarAccountSkeleton({ ariaLabel }: { ariaLabel?: string }) {\n return (\n <SkeletonContainer\n svgWidth={24}\n svgHeight={24}\n ariaLabel={ariaLabel}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonImage width={24} height={24} radiusX={12} radiusY={12} />\n </SkeletonContainer>\n );\n}\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarItemStyles } from './NavbarItem.styles';\nimport { NavbarMenu, type NavbarMenuProps } from '../NavbarMenu/NavbarMenu';\nimport {\n NavbarItemIcon,\n type NavbarItemIconProps,\n} from '../NavbarItemIcon/NavbarItemIcon';\nimport { ArrowDownIcon } from '../icons';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_ITEM_DEFAULT_TAG = 'button';\n\ntype NavbarItemTriggerProps = CommonProps & {\n title: string;\n icon?: NavbarItemIconProps['icon'];\n isActive?: boolean;\n as?: React.ElementType;\n};\n\ntype NavbarItemAsMenuProps = NavbarItemTriggerProps &\n Pick<NavbarMenuProps, 'onOpen' | 'onClose'> & {\n children: React.ReactNode;\n };\ntype NavbarItemAsItemProps = NavbarItemTriggerProps & {\n children?: never;\n onOpen?: never;\n onClose?: never;\n};\ntype NavbarItemOwnProps = NavbarItemAsItemProps | NavbarItemAsMenuProps;\n\nexport type NavbarItemProps<\n E extends React.ElementType = typeof NAVBAR_ITEM_DEFAULT_TAG,\n> = PolymorphicProps<NavbarItemOwnProps, E>;\n\nfunction _NavbarItem(\n props: NavbarItemProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_ITEM_DEFAULT_TAG,\n icon,\n title,\n children,\n className,\n isActive,\n testId = 'cf-ui-navbar-item',\n onOpen,\n onClose,\n ...otherProps\n } = props;\n const styles = getNavbarItemStyles();\n\n const item = (\n <Comp\n {...otherProps}\n ref={ref}\n data-test-id={testId}\n className={cx(styles.root, isActive && styles.isActive, className)}\n >\n {icon ? <NavbarItemIcon icon={icon} variant=\"white\" /> : null}\n <span>{title}</span>\n {isNavbarItemHasMenu(props) && (\n <ArrowDownIcon className={styles.dropdownIcon} />\n )}\n </Comp>\n );\n\n if (isNavbarItemHasMenu(props)) {\n return (\n <NavbarMenu\n trigger={item}\n testId={testId}\n onOpen={onOpen}\n onClose={onClose}\n >\n {children}\n </NavbarMenu>\n );\n }\n\n return item;\n}\n\nconst isNavbarItemHasMenu = <E extends React.ElementType>(\n props: NavbarItemProps<E>,\n): props is PolymorphicProps<NavbarItemAsMenuProps, E> =>\n Boolean(props.children);\n\nexport const NavbarItem: PolymorphicComponent<\n ExpandProps<NavbarItemOwnProps>,\n typeof NAVBAR_ITEM_DEFAULT_TAG\n> = React.forwardRef(_NavbarItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { mqs } from '../utils.styles';\n\nexport const getNavbarItemActiveStyles = () =>\n css({\n '&': {\n color: tokens.colorWhite,\n '& svg': {\n fill: tokens.colorWhite,\n },\n },\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n width: `calc(100% - ${tokens.spacingM})`,\n height: '2px',\n bottom: '0.5px',\n left: 0,\n right: 0,\n margin: 'auto',\n backgroundColor: tokens.colorWhite,\n zIndex: 0,\n },\n });\n\nconst commonItemStyles = {\n display: 'flex',\n justifyContent: 'center',\n padding: `10px ${tokens.spacingS}`,\n alignItems: 'center',\n background: 'none',\n};\n\nexport const getNavbarItemStyles = () => ({\n root: css(commonItemStyles, {\n alignItems: 'center',\n background: 'none',\n border: 0,\n margin: 0,\n outline: 'none',\n fontSize: tokens.fontSizeM,\n lineHeight: tokens.lineHeightM,\n fontWeight: tokens.fontWeightMedium,\n position: 'relative',\n textAlign: 'left',\n whiteSpace: 'nowrap',\n cursor: 'pointer',\n hyphens: 'auto',\n textDecoration: 'none',\n color: hexToRGBA(tokens.gray300, 0.8),\n boxSizing: 'border-box',\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n width: `calc(100% - ${tokens.spacingXs})`,\n height: `calc(100% - ${tokens.spacingS})`,\n top: `calc(${tokens.spacingS} / 2)`,\n left: 0,\n right: 0,\n margin: 'auto',\n borderRadius: tokens.borderRadiusSmall,\n backgroundColor: hexToRGBA(tokens.colorWhite, 0.08),\n opacity: 0,\n zIndex: 0,\n scale: 0,\n transition: `all ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n\n '&:hover::before': {\n opacity: 1,\n scale: '1',\n },\n\n '&:focus-visible': {\n boxShadow: `inset ${tokens.glowPrimary}`,\n borderRadius: tokens.borderRadiusMedium,\n },\n '&:active::before': {\n backgroundColor: `rgba(255, 255, 255, 0.1)`,\n },\n '&:disabled': {\n cursor: 'auto',\n },\n\n '& svg': {\n fill: hexToRGBA(tokens.gray300, 0.8),\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n\n '&:first-child': {\n display: 'none',\n [mqs.large]: {\n display: 'block',\n },\n },\n },\n '& > svg, & > span': {\n zIndex: tokens.zIndexDefault,\n },\n }),\n isActive: getNavbarItemActiveStyles(),\n dropdownIcon: css({\n paddingLeft: tokens.spacing2Xs,\n }),\n});\n\nexport const getNavbarItemSkeletonStyles = () => ({\n root: css(commonItemStyles),\n});\n","import React from 'react';\nimport type { IconProps } from '@contentful/f36-icons';\nimport { getNavbarItemIconStyles } from './NavbarItemIcon.styles';\nimport { cx } from 'emotion';\n\nexport type NavbarItemIconProps = {\n icon: React.ReactElement<IconProps>;\n} & Pick<IconProps, 'variant'>;\n\nexport const NavbarItemIcon = (props: NavbarItemIconProps) => {\n const { icon, variant } = props;\n const styles = getNavbarItemIconStyles();\n\n return React.cloneElement(icon, {\n className: cx(icon.props.className, styles.root),\n size: icon.props.size ?? 'tiny',\n variant: icon.props.variant ?? variant,\n });\n};\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarItemIconStyles = () => ({\n root: css({\n '&:first-child': {\n marginRight: tokens.spacing2Xs,\n },\n '&:last-child': {\n marginLeft: tokens.spacing2Xs,\n },\n 'img&': {\n borderRadius: tokens.borderRadiusSmall,\n maxWidth: tokens.spacingM,\n maxHeight: tokens.spacingM,\n },\n }),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const CircleIcon = /*#__PURE__*/ generateIcon({\n name: 'CircleIcon',\n viewBox: '0 0 24 24',\n path: (\n <path\n d=\"M11.994 6.526A5.47 5.47 0 0 0 6.526 12a5.47 5.47 0 0 0 5.468 5.473A5.476 5.476 0 0 0 17.473 12a5.477 5.477 0 0 0-5.479-5.474ZM12 15.447a3.448 3.448 0 1 1 0-6.896 3.448 3.448 0 0 1 0 6.896Z\"\n fill=\"currentFill\"\n />\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const ArrowDownIcon = /*#__PURE__*/ generateIcon({\n name: 'ArrowDownIcon',\n viewBox: '0 0 12 20',\n path: (\n <path\n d=\"M3.03076 8C2.20109 8 1.73228 8.95209 2.23814 9.60971L5.20727 13.4696C5.60757 13.99 6.39223 13.99 6.79252 13.4696L9.76166 9.60971C10.2675 8.95209 9.79871 8 8.96904 8L3.03076 8Z\"\n fill=\"#9FA8B2\"\n />\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const HelpIcon = /*#__PURE__*/ generateIcon({\n name: 'HelpIcon',\n viewBox: '0 0 24 24',\n path: (\n <>\n <g clipPath=\"url(#HelpIcon_svg__a)\">\n <path\n d=\"M12 2.25A9.75 9.75 0 1 0 21.75 12 9.769 9.769 0 0 0 12 2.25ZM12 18a1.125 1.125 0 1 1 0-2.25A1.125 1.125 0 0 1 12 18Zm.75-4.584v.084a.75.75 0 1 1-1.5 0v-.75A.75.75 0 0 1 12 12a1.875 1.875 0 1 0-1.875-1.875.75.75 0 1 1-1.5 0 3.375 3.375 0 1 1 4.125 3.29Z\"\n fill=\"currentFill\"\n />\n </g>\n <defs>\n <clipPath id=\"HelpIcon_svg__a\">\n <path fill=\"currentFill\" d=\"M0 0h24v24H0z\" />\n </clipPath>\n </defs>\n </>\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const SearchIcon = /*#__PURE__*/ generateIcon({\n name: 'SearchIcon',\n viewBox: '0 0 24 24',\n path: (\n <>\n <g clipPath=\"url(#SearchIcon_svg__a)\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6 11.125a5.125 5.125 0 1 1 10.25 0 5.125 5.125 0 0 1-10.25 0ZM11.125 4a7.125 7.125 0 1 0 4.282 12.82l2.886 2.887a1 1 0 0 0 1.414-1.414l-2.886-2.887A7.125 7.125 0 0 0 11.125 4Z\"\n fill=\"currentFill\"\n />\n </g>\n <defs>\n <clipPath id=\"SearchIcon_svg__a\">\n <path fill=\"#fff\" d=\"M0 0h24v24H0z\" />\n </clipPath>\n </defs>\n </>\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const ContentfulLogoIcon = /*#__PURE__*/ generateIcon({\n name: 'ContentfulLogoIcon',\n viewBox: '0 0 21 24',\n path: (\n <g transform=\"translate(4 3)\">\n <path\n fill=\"#fae501\"\n d=\"M3.3 13.7c-1.2-1.2-2-2.9-2-4.7S2 5.5 3.2 4.3c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0-2 2.2-3.3 5.2-3.3 8.5s1.3 6.3 3.4 8.5c1 1 2.6 1 3.6 0 .9-1.1.9-2.7 0-3.8z\"\n />\n <path\n fill=\"#4fb5e1\"\n d=\"M3.3 4.3c1.2-1.3 2.8-2 4.6-2s3.4.8 4.6 1.9c1 1.1 2.6 1.1 3.6 0 1-1 1-2.7 0-3.8C13.9-1.6 11-3 7.8-3S1.7-1.6-.4.5c-1 1-1 2.7 0 3.8 1 .9 2.6.9 3.7 0z\"\n />\n <path\n fill=\"#f05751\"\n d=\"M12.4 13.7c-1.2 1.3-2.8 2-4.6 2-1.8 0-3.4-.8-4.6-2-1-1.1-2.6-1.1-3.6 0-1 1-1 2.7 0 3.8 2.1 2.1 5 3.5 8.2 3.5s6.1-1.4 8.2-3.5c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0z\"\n />\n <ellipse cx={1.4} cy={2.4} fill=\"#0681b6\" rx={2.5} ry={2.6} />\n <ellipse cx={1.4} cy={15.6} fill=\"#cd4739\" rx={2.5} ry={2.6} />\n </g>\n ),\n});\n","import React from 'react';\nimport { SkeletonContainer, SkeletonText } from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\nimport { getNavbarItemSkeletonStyles } from './NavbarItem.styles';\n\nexport const NavbarItemSkeleton = ({\n estimatedWidth,\n}: {\n estimatedWidth: number;\n}) => {\n const styles = getNavbarItemSkeletonStyles();\n\n return (\n <SkeletonContainer\n className={styles.root}\n svgWidth={estimatedWidth}\n svgHeight={40}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonText\n lineHeight={6}\n numberOfLines={1}\n offsetTop={7}\n radiusX={tokens.borderRadiusSmall}\n radiusY={tokens.borderRadiusSmall}\n />\n </SkeletonContainer>\n );\n};\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarMenuItemStyles } from './NavbarMenuItem.styles';\nimport { Menu, type MenuItemProps } from '@contentful/f36-menu';\nimport {\n NavbarItemIcon,\n type NavbarItemIconProps,\n} from '../NavbarItemIcon/NavbarItemIcon';\nimport { ExternalLinkIcon } from '@contentful/f36-icons';\nimport type {\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_MENU_ITEM_DEFAULT_TAG = 'button';\n\ntype NavbarMenuItemOwnProps = {\n children?: null;\n title: string;\n icon?: NavbarItemIconProps['icon'];\n as?: React.ElementType;\n} & Omit<MenuItemProps, 'children' | 'as'>;\n\nexport type NavbarMenuItemProps<\n E extends React.ElementType = typeof NAVBAR_MENU_ITEM_DEFAULT_TAG,\n> = PolymorphicProps<NavbarMenuItemOwnProps, E>;\n\nfunction _NavbarMenuItem(\n props: NavbarMenuItemProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_MENU_ITEM_DEFAULT_TAG,\n icon,\n title,\n className,\n ...otherProps\n } = props;\n const styles = getNavbarMenuItemStyles();\n\n const itemIsExternalLink = isExternalLink(\n props as unknown as NavbarMenuItemProps<'a'>,\n );\n\n return (\n <Menu.Item\n {...otherProps}\n ref={ref}\n as={Comp as MenuItemProps['as']}\n className={cx(styles.root, className)}\n >\n {icon ? (\n <NavbarItemIcon icon={icon} variant=\"secondary\" />\n ) : (\n itemIsExternalLink && externalIcon\n )}\n <span>{title}</span>\n {icon && itemIsExternalLink ? externalIcon : null}\n </Menu.Item>\n );\n}\n\nconst externalIcon = (\n <NavbarItemIcon icon={<ExternalLinkIcon />} variant=\"muted\" />\n);\n\nconst isExternalLink = (props: NavbarMenuItemProps<'a'>) =>\n props.as === 'a' && props.target === '_blank';\n\nexport const NavbarMenuItem: PolymorphicComponent<\n ExpandProps<NavbarMenuItemOwnProps>,\n typeof NAVBAR_MENU_ITEM_DEFAULT_TAG\n> = React.forwardRef(_NavbarMenuItem);\n","import { css } from 'emotion';\n\nexport const getNavbarMenuItemStyles = () => ({\n root: css({\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n }),\n});\n","import React from 'react';\nimport { Menu } from '@contentful/f36-menu';\nimport {\n SkeletonBodyText,\n SkeletonContainer,\n SkeletonImage,\n} from '@contentful/f36-skeleton';\nimport { Flex } from '@contentful/f36-core';\n\nimport tokens from '@contentful/f36-tokens';\n\nexport const NavbarMenuItemSkeleton = ({\n ariaLabel,\n}: {\n ariaLabel?: string;\n}) => (\n <Menu.Item>\n <Flex alignItems=\"center\" gap={tokens.spacingXs}>\n <SkeletonContainer svgHeight={16} svgWidth={18}>\n <SkeletonImage width={16} height={16} />\n </SkeletonContainer>\n <SkeletonContainer svgHeight={16} svgWidth={190} ariaLabel={ariaLabel}>\n <SkeletonBodyText numberOfLines={1} />\n </SkeletonContainer>\n </Flex>\n </Menu.Item>\n);\n","import React from 'react';\nimport { getNavbarSwitcherStyles } from './NavbarSwitcher.styles';\nimport {\n Flex,\n type CommonProps,\n type PropsWithHTMLElement,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { MenuIcon } from '@contentful/f36-icons';\nimport { cx } from 'emotion';\nimport { ContentfulLogoIcon } from '../icons';\n\ntype NavbarSwitcherOwnProps = CommonProps & {\n children?: React.ReactNode;\n /**\n * Will be displayed instead of the default Contentful logo\n */\n logo?: React.ReactNode;\n};\n\nexport type NavbarSwitcherProps = PropsWithHTMLElement<\n NavbarSwitcherOwnProps,\n 'button'\n>;\n\nfunction _NavbarSwitcher(\n props: ExpandProps<NavbarSwitcherProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n logo,\n testId = 'cf-ui-navbar-switcher',\n ...otherProps\n } = props;\n const styles = getNavbarSwitcherStyles();\n\n return (\n <Flex\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n alignItems=\"center\"\n fullHeight\n gap=\"spacingXs\"\n >\n {logo || <ContentfulLogoIcon />}\n <MenuIcon className={styles.menuIcon} size=\"small\" variant=\"white\" />\n <Flex as=\"ul\" alignItems=\"center\" className={styles.breadcrumbs}>\n {children}\n </Flex>\n </Flex>\n );\n}\n\nexport const NavbarSwitcher = React.forwardRef(_NavbarSwitcher);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { mqs } from '../utils.styles';\n\nexport const getNavbarSwitcherStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n color: tokens.gray300,\n cursor: 'pointer',\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n position: 'relative',\n '&:after': {\n content: '\"\"',\n border: '1px solid #353A41',\n boxSizing: 'border-box',\n height: '16px',\n right: '-1px',\n position: 'absolute',\n width: 0,\n },\n '&:last-child:after': {\n display: 'none',\n },\n '&:focus-visible': {\n boxShadow: `0px 0px 0px 2px ${tokens.colorBlack}, 0px 0px 0px 5px ${tokens.blue300}`,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n },\n '&:hover li': {\n backgroundColor: hexToRGBA(tokens.colorWhite, 0.15),\n },\n }),\n breadcrumbs: css({\n listStyleType: 'none',\n margin: 0,\n padding: 0,\n position: 'relative',\n }),\n menuIcon: css({\n display: 'none',\n [mqs.medium]: {\n display: 'block',\n },\n }),\n});\n","import React from 'react';\nimport {\n SkeletonContainer,\n SkeletonDisplayText,\n} from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\n\nexport const NavbarSwitcherSkeleton = ({\n estimatedWidth,\n}: {\n estimatedWidth: number;\n}) => (\n <SkeletonContainer\n svgWidth={estimatedWidth}\n svgHeight={24}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonDisplayText\n lineHeight={24}\n numberOfLines={1}\n radiusX={12}\n radiusY={12}\n />\n </SkeletonContainer>\n);\n","import { cx } from 'emotion';\nimport React from 'react';\nimport { getNavbarSearchStyles } from './NavbarSearch.styles';\nimport { SearchIcon } from '../icons';\nimport {\n CommonProps,\n ExpandProps,\n Flex,\n PropsWithHTMLElement,\n} from '@contentful/f36-core';\n\ntype NavbarSearchOwnProps = CommonProps;\n\nexport type NavbarSearchProps = PropsWithHTMLElement<\n NavbarSearchOwnProps,\n 'button'\n>;\n\nfunction _NavbarSearch(\n props: ExpandProps<NavbarSearchProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const { className, testId = 'cf-ui-navbar-search', ...otherProps } = props;\n const styles = getNavbarSearchStyles();\n\n return (\n <Flex\n aria-label=\"Quick Search\"\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <SearchIcon size=\"medium\" variant=\"white\" />\n </Flex>\n );\n}\n\nexport const NavbarSearch = React.forwardRef(_NavbarSearch);\n","import tokens from '@contentful/f36-tokens';\nimport { css } from 'emotion';\n\nexport const getNavbarSearchStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: tokens.spacingL,\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n '& svg': {\n fill: tokens.gray300,\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n '&:hover, & svg:hover': {\n color: tokens.gray100,\n fill: tokens.gray100,\n },\n '&:focus-visible': {\n boxShadow: tokens.glowPrimary,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n },\n }),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarSwitcherItemStyles } from './NavbarSwitcherItem.styles';\nimport { NavbarEnvVariant } from './NavbarEnvVariant';\nimport {\n Flex,\n type CommonProps,\n type ExpandProps,\n type PropsWithHTMLElement,\n} from '@contentful/f36-core';\n\ntype NavbarSwitcherItemOwnProps = CommonProps & {\n children?: React.ReactNode;\n isCircle?: boolean;\n envVariant?: 'master' | 'non-master';\n isAlias?: boolean;\n};\n\nexport type NavbarSwitcherItemProps = PropsWithHTMLElement<\n NavbarSwitcherItemOwnProps,\n 'li'\n>;\n\nfunction _NavbarSwitcherItem(\n props: ExpandProps<NavbarSwitcherItemProps>,\n ref: React.Ref<HTMLLIElement>,\n) {\n const {\n children,\n isCircle,\n className,\n envVariant,\n isAlias,\n testId = 'cf-ui-navbar-switcher-item',\n ...otherProps\n } = props;\n const styles = getNavbarSwitcherItemStyles();\n const classes = cx(styles.breadcrumbsItem, className, {\n [styles.breadcrumbsItemCircle]: isCircle,\n [styles.breadcrumbsItemEnvMaster]: envVariant === 'master',\n [styles.breadcrumbsItemEnvNonMaster]: envVariant === 'non-master',\n });\n\n return (\n <li {...otherProps} ref={ref} className={classes} data-test-id={testId}>\n <Flex fullHeight justifyContent=\"center\" alignItems=\"center\">\n {envVariant && <NavbarEnvVariant isAlias={isAlias} />}\n <span>{children}</span>\n </Flex>\n </li>\n );\n}\n\nexport const NavbarSwitcherItem = React.forwardRef(_NavbarSwitcherItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { mqs } from '../utils.styles';\n\nconst mobileIcon = {\n display: 'none',\n '&:first-child': {\n display: 'block',\n },\n\n [mqs.medium]: {\n display: 'block',\n '&:first-child': {\n display: 'none',\n },\n },\n};\n\nexport const getNavbarSwitcherItemStyles = () => ({\n breadcrumbsItem: css({\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: hexToRGBA(tokens.gray100, 0.1),\n boxShadow: `0px 0px 0px 2px ${tokens.colorBlack}`,\n display: 'inline-flex',\n margin: 0,\n minWidth: 0,\n padding: `0 ${tokens.spacingXs}`,\n height: tokens.spacingL,\n borderRadius: '3rem',\n zIndex: 2,\n transition: `background-color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n whiteSpace: 'nowrap',\n '&:not(:first-child)': {\n clipPath: `path('M0 24C6 24 10 18 10 10C10 5 6 0 0 0H400C400 0 400 5 400 24H0Z')`,\n },\n '&:first-child': {\n minWidth: '24px',\n },\n '&:nth-child(2)': {\n zIndex: 1,\n left: `-${tokens.spacingXs}`,\n paddingLeft: tokens.spacingM,\n borderRadius: `0 3rem 3rem 0`,\n span: {\n maxWidth: '80px',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n [mqs.large]: {\n maxWidth: '100%',\n },\n },\n },\n '&:nth-child(3)': {\n left: `-${tokens.spacingM}`,\n paddingLeft: tokens.spacingM,\n borderRadius: `0 3rem 3rem 0`,\n fontFamily: tokens.fontStackMonospace,\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n zIndex: 0,\n span: {\n maxWidth: '40px',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n [mqs.large]: {\n maxWidth: '100%',\n },\n },\n '> div': {\n [mqs.medium]: {\n gap: tokens.spacing2Xs,\n },\n },\n },\n }),\n breadcrumbsItemCircle: css({\n borderRadius: '50%',\n color: tokens.gray400,\n padding: 0,\n display: 'flex',\n justifyContent: 'center',\n fontSize: '11px',\n width: tokens.spacingL,\n height: tokens.spacingL,\n }),\n breadcrumbsItemEnvMaster: css({\n color: tokens.green400,\n ' svg': {\n ...mobileIcon,\n fill: tokens.green400,\n },\n }),\n breadcrumbsItemEnvNonMaster: css({\n color: tokens.orange400,\n ' svg': {\n ...mobileIcon,\n fill: tokens.orange400,\n },\n }),\n});\n","import React from 'react';\nimport { NavbarSwitcherItemProps } from './NavbarSwitcherItem';\nimport { CircleIcon } from '../icons';\nimport { EnvironmentAliasIcon, EnvironmentIcon } from '@contentful/f36-icons';\n\nexport type NavbarEnvVariantProps = Pick<NavbarSwitcherItemProps, 'isAlias'>;\n\nexport function NavbarEnvVariant({ isAlias }: NavbarEnvVariantProps) {\n return (\n <>\n <CircleIcon key=\"mobile-icon\" size=\"tiny\" />\n {isAlias ? (\n <EnvironmentAliasIcon key=\"full-icon\" size=\"tiny\" />\n ) : (\n <EnvironmentIcon key=\"full-icon\" size=\"tiny\" />\n )}\n </>\n );\n}\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarHelpStyles } from './NavbarHelp.styles';\nimport { HelpIcon } from '../icons';\nimport {\n Flex,\n type CommonProps,\n type PropsWithHTMLElement,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { NavbarMenu } from '../NavbarMenu/NavbarMenu';\n\ntype NavbarHelpOwnProps = CommonProps & {\n children: React.ReactNode;\n};\n\nexport type NavbarHelpProps = PropsWithHTMLElement<\n NavbarHelpOwnProps,\n 'button'\n>;\n\nfunction _NavbarHelp(\n props: ExpandProps<NavbarHelpProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n testId = 'cf-ui-navbar-help-trigger',\n ...otherProps\n } = props;\n const styles = getNavbarHelpStyles();\n\n return (\n <NavbarMenu\n testId=\"cf-ui-navbar-help-menu\"\n trigger={\n <Flex\n aria-label=\"Help Menu\"\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <HelpIcon size=\"medium\" variant=\"white\" />\n Help\n </Flex>\n }\n >\n {children}\n </NavbarMenu>\n );\n}\n\nexport const NavbarHelp = React.forwardRef(_NavbarHelp);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { mqs } from '../utils.styles';\n\nexport const getNavbarHelpStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n color: tokens.gray300,\n fontSize: 0,\n gap: 0,\n minWidth: tokens.spacingL,\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n\n [mqs.medium]: {\n fontSize: tokens.fontSizeS,\n gap: tokens.spacing2Xs,\n fontWeight: tokens.fontWeightMedium,\n marginRight: tokens.spacingXs,\n },\n\n '&:focus-visible': {\n boxShadow: tokens.glowPrimary,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n },\n '&:hover, &:hover svg': {\n color: tokens.gray100,\n fill: tokens.gray100,\n },\n '& svg': {\n fill: tokens.gray300,\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n }),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarBadgeStyles } from './NavbarBadge.styles';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_BADGE_DEFAULT_TAG = 'div';\n\ntype NavbarBadgeOwnProps = CommonProps & {\n children?: React.ReactNode;\n as?: React.ElementType;\n};\n\nexport type NavbarBadgeProps<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n> = PolymorphicProps<NavbarBadgeOwnProps, E>;\n\nfunction _NavbarBadge(\n props: NavbarBadgeProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_BADGE_DEFAULT_TAG,\n children,\n className,\n testId = 'cf-ui-navbar-badge',\n ...otherProps\n } = props;\n const styles = getNavbarBadgeStyles();\n\n return (\n <Comp\n {...otherProps}\n ref={ref}\n className={cx(styles.root, className)}\n data-test-id={testId}\n >\n {children}\n </Comp>\n );\n}\n\nexport const NavbarBadge: PolymorphicComponent<\n ExpandProps<NavbarBadgeOwnProps>,\n typeof NAVBAR_BADGE_DEFAULT_TAG\n> = React.forwardRef(_NavbarBadge);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarBadgeStyles = () => ({\n root: css({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n background: 'none',\n border: `1px solid ${tokens.purple400}`,\n margin: 0,\n outline: 'none',\n fontSize: tokens.fontSizeS,\n lineHeight: tokens.lineHeightS,\n fontWeight: tokens.fontWeightMedium,\n textAlign: 'center',\n padding: `0 ${tokens.spacingXs}`,\n textDecoration: 'none',\n color: `${tokens.purple400}!important`,\n borderRadius: '1.75rem',\n }),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarTopbarItemStyles } from './NavbarTopbarItem.styles';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_BADGE_DEFAULT_TAG = 'button';\n\ntype NavbarTopbarItemOwnProps = CommonProps & {\n children?: React.ReactNode;\n};\n\nexport type NavbarTopbarItemProps<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n> = PolymorphicProps<NavbarTopbarItemOwnProps, E>;\n\nfunction _NavbarTopbarItem<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n>(props: NavbarTopbarItemProps<E>, ref: React.Ref<any>) {\n const {\n as: Comp = NAVBAR_BADGE_DEFAULT_TAG,\n children,\n className,\n testId = 'cf-ui-navbar-topbar-item',\n ...otherProps\n } = props;\n const styles = getNavbarTopbarItemStyles();\n\n return (\n <Comp\n {...otherProps}\n ref={ref}\n className={cx(styles.root, className)}\n data-test-id={testId}\n >\n {children}\n </Comp>\n );\n}\n\nexport const NavbarTopbarItem: PolymorphicComponent<\n ExpandProps<NavbarTopbarItemOwnProps>,\n typeof NAVBAR_BADGE_DEFAULT_TAG\n> = React.forwardRef(_NavbarTopbarItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarTopbarItemStyles = () => ({\n root: css({\n // default button reset styles\n margin: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n display: 'flex',\n gap: tokens.spacing2Xs,\n alignItems: 'center',\n color: tokens.gray300,\n padding: `0 ${tokens.spacing2Xs}`,\n minHeight: tokens.spacingL,\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n '&:hover': {\n color: tokens.gray100,\n },\n '&:focus-visible': {\n boxShadow: tokens.glowPrimary,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n },\n svg: {\n fill: 'currentColor',\n },\n }),\n});\n"]}
1
+ {"version":3,"sources":["../src/CompoundNavbar.ts","../src/Navbar.tsx","../src/Navbar.styles.ts","../src/utils.styles.ts","../src/NavbarAccount/NavbarAccount.tsx","../src/NavbarAccount/NavbarAccount.styles.ts","../src/NavbarMenu/NavbarMenu.tsx","../src/NavbarMenu/NavbarMenu.styles.ts","../src/NavbarAccount/NavbarAccountSkeleton.tsx","../src/NavbarItem/NavbarItem.tsx","../src/NavbarItem/NavbarItem.styles.ts","../src/NavbarItemIcon/NavbarItemIcon.tsx","../src/NavbarItemIcon/NavbarItemIcon.styles.ts","../src/icons/CircleIcon.tsx","../src/icons/ArrowDownIcon.tsx","../src/icons/HelpIcon.tsx","../src/icons/SearchIcon.tsx","../src/icons/ContentfulLogoIcon.tsx","../src/NavbarItem/NavbarItemSkeleton.tsx","../src/NavbarMenuItem/NavbarMenuItem.tsx","../src/NavbarMenuItem/NavbarMenuItem.styles.ts","../src/NavbarMenuItem/NavbarMenuItemSkeleton.tsx","../src/NavbarSwitcher/NavbarSwitcher.tsx","../src/NavbarSwitcher/NavbarSwitcher.styles.ts","../src/NavbarSwitcher/NavbarSwitcherSkeleton.tsx","../src/NavbarSearch/NavbarSearch.tsx","../src/NavbarSearch/NavbarSearch.styles.ts","../src/NavbarSwitcherItem/NavbarSwitcherItem.tsx","../src/NavbarSwitcherItem/NavbarSwitcherItem.styles.ts","../src/NavbarSwitcherItem/NavbarEnvVariant.tsx","../src/NavbarHelp/NavbarHelp.tsx","../src/NavbarHelp/NavbarHelp.styles.ts","../src/NavbarBadge/NavbarBadge.tsx","../src/NavbarBadge/NavbarBadge.styles.ts","../src/NavbarTopbarItem/NavbarTopbarItem.tsx","../src/NavbarTopbarItem/NavbarTopbarItem.styles.ts"],"names":["MenuDivider","MenuSectionTitle","Box","Flex","React","css","tokens","mqs","getGlowOnFocusStyles","shadow","getNavbarStyles","maxWidth","_Navbar","props","ref","_a","children","account","search","switcher","help","badge","bottomRightItems","topRightItems","contentMaxWidth","testId","otherProps","__objRest","styles","__spreadProps","__spreadValues","Navbar","cx","getNavbarAccountStyles","variant","Menu","getNavbarMenuStyles","NavbarMenu","trigger","onOpen","onClose","_NavbarAccount","className","avatar","username","hasNotification","notificationVariant","NavbarAccount","SkeletonContainer","SkeletonImage","NavbarAccountSkeleton","ariaLabel","hexToRGBA","getNavbarItemActiveStyles","commonItemStyles","getNavbarItemStyles","getNavbarItemSkeletonStyles","getNavbarItemIconStyles","NavbarItemIcon","_b","icon","generateIcon","CircleIcon","ArrowDownIcon","HelpIcon","SearchIcon","ContentfulLogoIcon","NAVBAR_ITEM_DEFAULT_TAG","_NavbarItem","Comp","title","isActive","item","isNavbarItemHasMenu","NavbarItem","SkeletonText","NavbarItemSkeleton","estimatedWidth","getNavbarMenuItemStyles","ExternalLinkIcon","NAVBAR_MENU_ITEM_DEFAULT_TAG","_NavbarMenuItem","itemIsExternalLink","isExternalLink","externalIcon","NavbarMenuItem","SkeletonBodyText","NavbarMenuItemSkeleton","getNavbarSwitcherStyles","MenuIcon","_NavbarSwitcher","logo","NavbarSwitcher","SkeletonDisplayText","NavbarSwitcherSkeleton","getNavbarSearchStyles","_NavbarSearch","NavbarSearch","mobileIcon","getNavbarSwitcherItemStyles","EnvironmentAliasIcon","EnvironmentIcon","NavbarEnvVariant","isAlias","_NavbarSwitcherItem","isCircle","envVariant","classes","NavbarSwitcherItem","getNavbarHelpStyles","_NavbarHelp","NavbarHelp","getNavbarBadgeStyles","NAVBAR_BADGE_DEFAULT_TAG","_NavbarBadge","NavbarBadge","getNavbarTopbarItemStyles","_NavbarTopbarItem","NavbarTopbarItem"],"mappings":"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","sourcesContent":["import { MenuDivider } from '@contentful/f36-menu';\nimport { MenuSectionTitle } from '@contentful/f36-menu';\nimport { Navbar as OriginalNavbar } from './Navbar';\n\nimport { NavbarAccount, NavbarAccountSkeleton } from './NavbarAccount';\nimport { NavbarItem, NavbarItemSkeleton } from './NavbarItem';\nimport { NavbarMenuItem, NavbarMenuItemSkeleton } from './NavbarMenuItem';\nimport { NavbarSwitcher, NavbarSwitcherSkeleton } from './NavbarSwitcher';\n\nimport { NavbarSearch } from './NavbarSearch/NavbarSearch';\nimport { NavbarSwitcherItem } from './NavbarSwitcherItem/NavbarSwitcherItem';\nimport { NavbarHelp } from './NavbarHelp/NavbarHelp';\nimport { NavbarBadge } from './NavbarBadge/NavbarBadge';\nimport { NavbarTopbarItem } from './NavbarTopbarItem/NavbarTopbarItem';\n\ntype CompoundNavbar = typeof OriginalNavbar & {\n Item: typeof NavbarItem;\n ItemSkeleton: typeof NavbarItemSkeleton;\n MenuItem: typeof NavbarMenuItem;\n MenuItemSkeleton: typeof NavbarMenuItemSkeleton;\n MenuDivider: typeof MenuDivider;\n MenuSectionTitle: typeof MenuSectionTitle;\n Switcher: typeof NavbarSwitcher;\n SwitcherSkeleton: typeof NavbarSwitcherSkeleton;\n SwitcherItem: typeof NavbarSwitcherItem;\n Search: typeof NavbarSearch;\n Help: typeof NavbarHelp;\n Account: typeof NavbarAccount;\n AccountSkeleton: typeof NavbarAccountSkeleton;\n Badge: typeof NavbarBadge;\n TopbarItem: typeof NavbarTopbarItem;\n};\n\nexport const Navbar = OriginalNavbar as CompoundNavbar;\nNavbar.Item = NavbarItem;\nNavbar.ItemSkeleton = NavbarItemSkeleton;\nNavbar.MenuItem = NavbarMenuItem;\nNavbar.MenuItemSkeleton = NavbarMenuItemSkeleton;\nNavbar.MenuDivider = MenuDivider;\nNavbar.MenuSectionTitle = MenuSectionTitle;\nNavbar.Switcher = NavbarSwitcher;\nNavbar.SwitcherSkeleton = NavbarSwitcherSkeleton;\nNavbar.SwitcherItem = NavbarSwitcherItem;\nNavbar.Search = NavbarSearch;\nNavbar.Help = NavbarHelp;\nNavbar.Account = NavbarAccount;\nNavbar.AccountSkeleton = NavbarAccountSkeleton;\nNavbar.Badge = NavbarBadge;\nNavbar.TopbarItem = NavbarTopbarItem;\n","import {\n Box,\n type CommonProps,\n type ExpandProps,\n Flex,\n} from '@contentful/f36-core';\nimport React from 'react';\nimport { getNavbarStyles } from './Navbar.styles';\n\ntype NavbarOwnProps = CommonProps & {\n children?: React.ReactNode;\n account?: React.ReactNode;\n search?: React.ReactNode;\n switcher?: React.ReactNode;\n help?: React.ReactNode;\n badge?: React.ReactNode;\n /**\n * Items that will be rendered on the bottom-right of the navbar.\n * Useful for separating other navigation items from main ones, (e.g. separating \"Settings\" from all other navigation items).\n */\n bottomRightItems?: React.ReactNode;\n /**\n * Items that will be rendered on the top-right of the navbar.\n * Useful for providing additional context or actions to the user (e.g. a Feedback form link).\n */\n topRightItems?: React.ReactNode;\n /**\n * Defines the max-width of the content inside the navbar.\n * @default '100%'\n */\n contentMaxWidth?: string;\n};\n\n// expose only the HTML props that are needed to not pollute the API\ntype NavbarHTMLElementProps = Pick<React.ComponentPropsWithoutRef<'div'>, 'id'>;\n\nexport type NavbarProps = NavbarHTMLElementProps & NavbarOwnProps;\n\nfunction _Navbar(props: ExpandProps<NavbarProps>, ref: React.Ref<HTMLElement>) {\n const {\n children,\n account,\n search,\n switcher,\n help,\n badge,\n bottomRightItems,\n topRightItems,\n contentMaxWidth = '100%',\n testId = 'cf-ui-navbar',\n ...otherProps\n } = props;\n const styles = getNavbarStyles(contentMaxWidth);\n\n return (\n <Box {...otherProps} ref={ref} testId={testId}>\n <Flex className={styles.containerTop}>\n <Flex\n className={styles.containerTopContent}\n justifyContent=\"space-between\"\n >\n <Flex>{switcher}</Flex>\n <Flex alignItems=\"center\" gap=\"spacingXs\">\n {topRightItems}\n {badge}\n {search}\n {help}\n {account}\n </Flex>\n </Flex>\n </Flex>\n\n <Flex className={styles.containerBottom}>\n <Flex\n className={styles.containerBottomContent}\n justifyContent=\"space-between\"\n >\n <Flex as=\"nav\" aria-label=\"Main Navigation\" alignItems=\"stretch\">\n {children}\n </Flex>\n {bottomRightItems && <Flex>{bottomRightItems}</Flex>}\n </Flex>\n </Flex>\n </Box>\n );\n}\n\nexport const Navbar = React.forwardRef(_Navbar);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { mqs } from './utils.styles';\n\nexport const getNavbarStyles = (maxWidth: string) => ({\n containerTop: css({\n justifyContent: 'center',\n backgroundColor: '#0C141C',\n }),\n containerBottom: css({\n justifyContent: 'center',\n borderTop: `1px solid #21262D`,\n backgroundColor: '#161B22',\n }),\n containerTopContent: css({\n width: '100%',\n maxWidth: maxWidth,\n padding: `${tokens.spacingXs}`,\n minHeight: '2.5rem',\n [mqs.medium]: {\n padding: `${tokens.spacingXs} ${tokens.spacingM}`,\n },\n }),\n containerBottomContent: css({\n width: '100%',\n maxWidth: maxWidth,\n padding: 0,\n minHeight: '2.5rem',\n overflow: 'auto',\n [mqs.medium]: {\n padding: `0 ${tokens.spacing2Xs}`,\n },\n }),\n});\n","import tokens from '@contentful/f36-tokens';\n\ntype screens = 'medium' | 'large' | 'xlarge';\ntype mediaqueries = Record<screens, string>;\nexport const mqs: mediaqueries = {\n medium: '@media (min-width: 480px)',\n large: '@media (min-width: 768px)',\n xlarge: '@media (min-width: 1920px)',\n};\n\nexport const getGlowOnFocusStyles = (shadow: string = tokens.glowPrimary) => ({\n '&:focus': {\n boxShadow: shadow,\n },\n '&:focus:not(:focus-visible)': {\n boxShadow: 'unset',\n },\n '&:focus-visible': {\n boxShadow: shadow,\n },\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarAccountStyles } from './NavbarAccount.styles';\nimport {\n Flex,\n type PropsWithHTMLElement,\n type CommonProps,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { NavbarMenu } from '../NavbarMenu/NavbarMenu';\n\ntype NavbarAccountOwnProps = CommonProps & {\n children: React.ReactNode;\n username: string;\n avatar: string;\n hasNotification?: boolean;\n /**\n * @default 'warning'\n */\n notificationVariant?: 'warning' | 'negative';\n};\n\nexport type NavbarAccountProps = PropsWithHTMLElement<\n NavbarAccountOwnProps,\n 'button'\n>;\n\nfunction _NavbarAccount(\n props: ExpandProps<NavbarAccountProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n testId = 'cf-ui-navbar-account-trigger',\n avatar,\n username,\n hasNotification,\n notificationVariant = 'warning',\n ...otherProps\n } = props;\n const styles = getNavbarAccountStyles();\n\n return (\n <NavbarMenu\n trigger={\n <Flex\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <img\n src={avatar}\n alt={`Avatar for user ${username}`}\n className={styles.avatar}\n />\n {hasNotification ? (\n <span className={styles.notificationIcon(notificationVariant)} />\n ) : null}\n </Flex>\n }\n >\n {children}\n </NavbarMenu>\n );\n}\n\nexport const NavbarAccount = React.forwardRef(_NavbarAccount);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { NavbarAccountProps } from './NavbarAccount';\nimport { getGlowOnFocusStyles } from '../utils.styles';\n\nexport const getNavbarAccountStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n gap: tokens.spacing2Xs,\n outline: 'none',\n borderRadius: '50%',\n },\n getGlowOnFocusStyles(),\n ),\n avatar: css({\n borderRadius: '50%',\n display: 'block',\n height: '24px',\n width: '24px',\n }),\n notificationIcon: (variant: NavbarAccountProps['notificationVariant']) =>\n css({\n position: 'absolute',\n top: 0,\n right: 0,\n height: tokens.spacingS,\n width: tokens.spacingS,\n borderRadius: '50%',\n border: `2px solid ${tokens.gray900}`,\n backgroundColor:\n variant === 'negative' ? tokens.colorNegative : tokens.colorWarning,\n transform: 'translate(30%, -30%)',\n }),\n});\n","import React from 'react';\nimport { Menu, type MenuListProps, type MenuProps } from '@contentful/f36-menu';\nimport { getNavbarMenuStyles } from './NavbarMenu.styles';\n\nexport type NavbarMenuProps = {\n trigger: React.ReactNode;\n children?: React.ReactNode;\n} & Pick<MenuListProps, 'testId'> &\n Pick<MenuProps, 'onOpen' | 'onClose'>;\n\nexport const NavbarMenu = (props: NavbarMenuProps) => {\n const {\n trigger,\n children,\n testId = 'cf-ui-navbar-menu-list',\n onOpen,\n onClose,\n } = props;\n const styles = getNavbarMenuStyles();\n\n return (\n <Menu onOpen={onOpen} onClose={onClose}>\n <Menu.Trigger>{trigger}</Menu.Trigger>\n <Menu.List className={styles.menuList} testId={testId}>\n {children}\n </Menu.List>\n </Menu>\n );\n};\n","import { css } from 'emotion';\n\nexport const getNavbarMenuStyles = () => ({\n menuList: css({\n minWidth: '250px',\n }),\n});\n","import React from 'react';\nimport { SkeletonContainer, SkeletonImage } from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\n\nexport function NavbarAccountSkeleton({ ariaLabel }: { ariaLabel?: string }) {\n return (\n <SkeletonContainer\n svgWidth={24}\n svgHeight={24}\n ariaLabel={ariaLabel}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonImage width={24} height={24} radiusX={12} radiusY={12} />\n </SkeletonContainer>\n );\n}\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarItemStyles } from './NavbarItem.styles';\nimport { NavbarMenu, type NavbarMenuProps } from '../NavbarMenu/NavbarMenu';\nimport {\n NavbarItemIcon,\n type NavbarItemIconProps,\n} from '../NavbarItemIcon/NavbarItemIcon';\nimport { ArrowDownIcon } from '../icons';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_ITEM_DEFAULT_TAG = 'button';\n\ntype NavbarItemTriggerProps = CommonProps & {\n title: string;\n icon?: NavbarItemIconProps['icon'];\n isActive?: boolean;\n as?: React.ElementType;\n};\n\ntype NavbarItemAsMenuProps = NavbarItemTriggerProps &\n Pick<NavbarMenuProps, 'onOpen' | 'onClose'> & {\n children: React.ReactNode;\n };\ntype NavbarItemAsItemProps = NavbarItemTriggerProps & {\n children?: never;\n onOpen?: never;\n onClose?: never;\n};\ntype NavbarItemOwnProps = NavbarItemAsItemProps | NavbarItemAsMenuProps;\n\nexport type NavbarItemProps<\n E extends React.ElementType = typeof NAVBAR_ITEM_DEFAULT_TAG,\n> = PolymorphicProps<NavbarItemOwnProps, E>;\n\nfunction _NavbarItem(\n props: NavbarItemProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_ITEM_DEFAULT_TAG,\n icon,\n title,\n children,\n className,\n isActive,\n testId = 'cf-ui-navbar-item',\n onOpen,\n onClose,\n ...otherProps\n } = props;\n const styles = getNavbarItemStyles();\n\n const item = (\n <Comp\n {...otherProps}\n ref={ref}\n data-test-id={testId}\n className={cx(styles.root, isActive && styles.isActive, className)}\n >\n {icon ? <NavbarItemIcon icon={icon} variant=\"white\" /> : null}\n <span>{title}</span>\n {isNavbarItemHasMenu(props) && (\n <ArrowDownIcon className={styles.dropdownIcon} />\n )}\n </Comp>\n );\n\n if (isNavbarItemHasMenu(props)) {\n return (\n <NavbarMenu\n trigger={item}\n testId={testId}\n onOpen={onOpen}\n onClose={onClose}\n >\n {children}\n </NavbarMenu>\n );\n }\n\n return item;\n}\n\nconst isNavbarItemHasMenu = <E extends React.ElementType>(\n props: NavbarItemProps<E>,\n): props is PolymorphicProps<NavbarItemAsMenuProps, E> =>\n Boolean(props.children);\n\nexport const NavbarItem: PolymorphicComponent<\n ExpandProps<NavbarItemOwnProps>,\n typeof NAVBAR_ITEM_DEFAULT_TAG\n> = React.forwardRef(_NavbarItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { getGlowOnFocusStyles, mqs } from '../utils.styles';\n\nexport const getNavbarItemActiveStyles = () =>\n css({\n '&': {\n color: tokens.colorWhite,\n '& svg': {\n fill: tokens.colorWhite,\n },\n },\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n width: `calc(100% - ${tokens.spacingM})`,\n height: '2px',\n bottom: '0.5px',\n left: 0,\n right: 0,\n margin: 'auto',\n backgroundColor: tokens.colorWhite,\n zIndex: 0,\n },\n });\n\nconst commonItemStyles = {\n display: 'flex',\n justifyContent: 'center',\n padding: `10px ${tokens.spacingS}`,\n alignItems: 'center',\n background: 'none',\n};\n\nexport const getNavbarItemStyles = () => ({\n root: css(\n commonItemStyles,\n {\n alignItems: 'center',\n background: 'none',\n border: 0,\n margin: 0,\n outline: 'none',\n fontSize: tokens.fontSizeM,\n lineHeight: tokens.lineHeightM,\n fontWeight: tokens.fontWeightMedium,\n position: 'relative',\n textAlign: 'left',\n whiteSpace: 'nowrap',\n cursor: 'pointer',\n hyphens: 'auto',\n textDecoration: 'none',\n color: hexToRGBA(tokens.gray300, 0.8),\n boxSizing: 'border-box',\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n borderRadius: tokens.borderRadiusMedium,\n\n '&::before': {\n content: '\"\"',\n position: 'absolute',\n width: `calc(100% - ${tokens.spacingXs})`,\n height: `calc(100% - ${tokens.spacingS})`,\n top: `calc(${tokens.spacingS} / 2)`,\n left: 0,\n right: 0,\n margin: 'auto',\n borderRadius: tokens.borderRadiusSmall,\n backgroundColor: hexToRGBA(tokens.colorWhite, 0.08),\n opacity: 0,\n zIndex: 0,\n scale: 0,\n transition: `all ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n\n '&:hover::before': {\n opacity: 1,\n scale: '1',\n },\n\n '&:active::before': {\n backgroundColor: `rgba(255, 255, 255, 0.1)`,\n },\n '&:disabled': {\n cursor: 'auto',\n },\n\n '& svg': {\n fill: hexToRGBA(tokens.gray300, 0.8),\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n\n '&:first-child': {\n display: 'none',\n [mqs.large]: {\n display: 'block',\n },\n },\n },\n '& > svg, & > span': {\n zIndex: tokens.zIndexDefault,\n },\n },\n getGlowOnFocusStyles(`inset ${tokens.glowPrimary}`),\n ),\n isActive: getNavbarItemActiveStyles(),\n dropdownIcon: css({\n paddingLeft: tokens.spacing2Xs,\n }),\n});\n\nexport const getNavbarItemSkeletonStyles = () => ({\n root: css(commonItemStyles),\n});\n","import React from 'react';\nimport type { IconProps } from '@contentful/f36-icons';\nimport { getNavbarItemIconStyles } from './NavbarItemIcon.styles';\nimport { cx } from 'emotion';\n\nexport type NavbarItemIconProps = {\n icon: React.ReactElement<IconProps>;\n} & Pick<IconProps, 'variant'>;\n\nexport const NavbarItemIcon = (props: NavbarItemIconProps) => {\n const { icon, variant } = props;\n const styles = getNavbarItemIconStyles();\n\n return React.cloneElement(icon, {\n className: cx(icon.props.className, styles.root),\n size: icon.props.size ?? 'tiny',\n variant: icon.props.variant ?? variant,\n });\n};\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarItemIconStyles = () => ({\n root: css({\n '&:first-child': {\n marginRight: tokens.spacing2Xs,\n },\n '&:last-child': {\n marginLeft: tokens.spacing2Xs,\n },\n 'img&': {\n borderRadius: tokens.borderRadiusSmall,\n maxWidth: tokens.spacingM,\n maxHeight: tokens.spacingM,\n },\n }),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const CircleIcon = /*#__PURE__*/ generateIcon({\n name: 'CircleIcon',\n viewBox: '0 0 24 24',\n path: (\n <path\n d=\"M11.994 6.526A5.47 5.47 0 0 0 6.526 12a5.47 5.47 0 0 0 5.468 5.473A5.476 5.476 0 0 0 17.473 12a5.477 5.477 0 0 0-5.479-5.474ZM12 15.447a3.448 3.448 0 1 1 0-6.896 3.448 3.448 0 0 1 0 6.896Z\"\n fill=\"currentFill\"\n />\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const ArrowDownIcon = /*#__PURE__*/ generateIcon({\n name: 'ArrowDownIcon',\n viewBox: '0 0 12 20',\n path: (\n <path\n d=\"M3.03076 8C2.20109 8 1.73228 8.95209 2.23814 9.60971L5.20727 13.4696C5.60757 13.99 6.39223 13.99 6.79252 13.4696L9.76166 9.60971C10.2675 8.95209 9.79871 8 8.96904 8L3.03076 8Z\"\n fill=\"#9FA8B2\"\n />\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const HelpIcon = /*#__PURE__*/ generateIcon({\n name: 'HelpIcon',\n viewBox: '0 0 24 24',\n path: (\n <>\n <g clipPath=\"url(#HelpIcon_svg__a)\">\n <path\n d=\"M12 2.25A9.75 9.75 0 1 0 21.75 12 9.769 9.769 0 0 0 12 2.25ZM12 18a1.125 1.125 0 1 1 0-2.25A1.125 1.125 0 0 1 12 18Zm.75-4.584v.084a.75.75 0 1 1-1.5 0v-.75A.75.75 0 0 1 12 12a1.875 1.875 0 1 0-1.875-1.875.75.75 0 1 1-1.5 0 3.375 3.375 0 1 1 4.125 3.29Z\"\n fill=\"currentFill\"\n />\n </g>\n <defs>\n <clipPath id=\"HelpIcon_svg__a\">\n <path fill=\"currentFill\" d=\"M0 0h24v24H0z\" />\n </clipPath>\n </defs>\n </>\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const SearchIcon = /*#__PURE__*/ generateIcon({\n name: 'SearchIcon',\n viewBox: '0 0 24 24',\n path: (\n <>\n <g clipPath=\"url(#SearchIcon_svg__a)\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M6 11.125a5.125 5.125 0 1 1 10.25 0 5.125 5.125 0 0 1-10.25 0ZM11.125 4a7.125 7.125 0 1 0 4.282 12.82l2.886 2.887a1 1 0 0 0 1.414-1.414l-2.886-2.887A7.125 7.125 0 0 0 11.125 4Z\"\n fill=\"currentFill\"\n />\n </g>\n <defs>\n <clipPath id=\"SearchIcon_svg__a\">\n <path fill=\"#fff\" d=\"M0 0h24v24H0z\" />\n </clipPath>\n </defs>\n </>\n ),\n});\n","import React from 'react';\nimport { generateIcon } from '@contentful/f36-icon';\n\nexport const ContentfulLogoIcon = /*#__PURE__*/ generateIcon({\n name: 'ContentfulLogoIcon',\n viewBox: '0 0 21 24',\n path: (\n <g transform=\"translate(4 3)\">\n <path\n fill=\"#fae501\"\n d=\"M3.3 13.7c-1.2-1.2-2-2.9-2-4.7S2 5.5 3.2 4.3c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0-2 2.2-3.3 5.2-3.3 8.5s1.3 6.3 3.4 8.5c1 1 2.6 1 3.6 0 .9-1.1.9-2.7 0-3.8z\"\n />\n <path\n fill=\"#4fb5e1\"\n d=\"M3.3 4.3c1.2-1.3 2.8-2 4.6-2s3.4.8 4.6 1.9c1 1.1 2.6 1.1 3.6 0 1-1 1-2.7 0-3.8C13.9-1.6 11-3 7.8-3S1.7-1.6-.4.5c-1 1-1 2.7 0 3.8 1 .9 2.6.9 3.7 0z\"\n />\n <path\n fill=\"#f05751\"\n d=\"M12.4 13.7c-1.2 1.3-2.8 2-4.6 2-1.8 0-3.4-.8-4.6-2-1-1.1-2.6-1.1-3.6 0-1 1-1 2.7 0 3.8 2.1 2.1 5 3.5 8.2 3.5s6.1-1.4 8.2-3.5c1-1 1-2.7 0-3.8-1-1-2.6-1-3.6 0z\"\n />\n <ellipse cx={1.4} cy={2.4} fill=\"#0681b6\" rx={2.5} ry={2.6} />\n <ellipse cx={1.4} cy={15.6} fill=\"#cd4739\" rx={2.5} ry={2.6} />\n </g>\n ),\n});\n","import React from 'react';\nimport { SkeletonContainer, SkeletonText } from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\nimport { getNavbarItemSkeletonStyles } from './NavbarItem.styles';\n\nexport const NavbarItemSkeleton = ({\n estimatedWidth,\n}: {\n estimatedWidth: number;\n}) => {\n const styles = getNavbarItemSkeletonStyles();\n\n return (\n <SkeletonContainer\n className={styles.root}\n svgWidth={estimatedWidth}\n svgHeight={40}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonText\n lineHeight={6}\n numberOfLines={1}\n offsetTop={7}\n radiusX={tokens.borderRadiusSmall}\n radiusY={tokens.borderRadiusSmall}\n />\n </SkeletonContainer>\n );\n};\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarMenuItemStyles } from './NavbarMenuItem.styles';\nimport { Menu, type MenuItemProps } from '@contentful/f36-menu';\nimport {\n NavbarItemIcon,\n type NavbarItemIconProps,\n} from '../NavbarItemIcon/NavbarItemIcon';\nimport { ExternalLinkIcon } from '@contentful/f36-icons';\nimport type {\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_MENU_ITEM_DEFAULT_TAG = 'button';\n\ntype NavbarMenuItemOwnProps = {\n children?: null;\n title: string;\n icon?: NavbarItemIconProps['icon'];\n as?: React.ElementType;\n} & Omit<MenuItemProps, 'children' | 'as'>;\n\nexport type NavbarMenuItemProps<\n E extends React.ElementType = typeof NAVBAR_MENU_ITEM_DEFAULT_TAG,\n> = PolymorphicProps<NavbarMenuItemOwnProps, E>;\n\nfunction _NavbarMenuItem(\n props: NavbarMenuItemProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_MENU_ITEM_DEFAULT_TAG,\n icon,\n title,\n className,\n ...otherProps\n } = props;\n const styles = getNavbarMenuItemStyles();\n\n const itemIsExternalLink = isExternalLink(\n props as unknown as NavbarMenuItemProps<'a'>,\n );\n\n return (\n <Menu.Item\n {...otherProps}\n ref={ref}\n as={Comp as MenuItemProps['as']}\n className={cx(styles.root, className)}\n >\n {icon ? (\n <NavbarItemIcon icon={icon} variant=\"secondary\" />\n ) : (\n itemIsExternalLink && externalIcon\n )}\n <span>{title}</span>\n {icon && itemIsExternalLink ? externalIcon : null}\n </Menu.Item>\n );\n}\n\nconst externalIcon = (\n <NavbarItemIcon icon={<ExternalLinkIcon />} variant=\"muted\" />\n);\n\nconst isExternalLink = (props: NavbarMenuItemProps<'a'>) =>\n props.as === 'a' && props.target === '_blank';\n\nexport const NavbarMenuItem: PolymorphicComponent<\n ExpandProps<NavbarMenuItemOwnProps>,\n typeof NAVBAR_MENU_ITEM_DEFAULT_TAG\n> = React.forwardRef(_NavbarMenuItem);\n","import { css } from 'emotion';\n\nexport const getNavbarMenuItemStyles = () => ({\n root: css({\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'center',\n }),\n});\n","import React from 'react';\nimport { Menu } from '@contentful/f36-menu';\nimport {\n SkeletonBodyText,\n SkeletonContainer,\n SkeletonImage,\n} from '@contentful/f36-skeleton';\nimport { Flex } from '@contentful/f36-core';\n\nimport tokens from '@contentful/f36-tokens';\n\nexport const NavbarMenuItemSkeleton = ({\n ariaLabel,\n}: {\n ariaLabel?: string;\n}) => (\n <Menu.Item>\n <Flex alignItems=\"center\" gap={tokens.spacingXs}>\n <SkeletonContainer svgHeight={16} svgWidth={18}>\n <SkeletonImage width={16} height={16} />\n </SkeletonContainer>\n <SkeletonContainer svgHeight={16} svgWidth={190} ariaLabel={ariaLabel}>\n <SkeletonBodyText numberOfLines={1} />\n </SkeletonContainer>\n </Flex>\n </Menu.Item>\n);\n","import React from 'react';\nimport { getNavbarSwitcherStyles } from './NavbarSwitcher.styles';\nimport {\n Flex,\n type CommonProps,\n type PropsWithHTMLElement,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { MenuIcon } from '@contentful/f36-icons';\nimport { cx } from 'emotion';\nimport { ContentfulLogoIcon } from '../icons';\n\ntype NavbarSwitcherOwnProps = CommonProps & {\n children?: React.ReactNode;\n /**\n * Will be displayed instead of the default Contentful logo\n */\n logo?: React.ReactNode;\n};\n\nexport type NavbarSwitcherProps = PropsWithHTMLElement<\n NavbarSwitcherOwnProps,\n 'button'\n>;\n\nfunction _NavbarSwitcher(\n props: ExpandProps<NavbarSwitcherProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n logo,\n testId = 'cf-ui-navbar-switcher',\n ...otherProps\n } = props;\n const styles = getNavbarSwitcherStyles();\n\n return (\n <Flex\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n alignItems=\"center\"\n fullHeight\n gap=\"spacingXs\"\n >\n {logo || <ContentfulLogoIcon />}\n <MenuIcon className={styles.menuIcon} size=\"small\" variant=\"white\" />\n <Flex as=\"ul\" alignItems=\"center\" className={styles.breadcrumbs}>\n {children}\n </Flex>\n </Flex>\n );\n}\n\nexport const NavbarSwitcher = React.forwardRef(_NavbarSwitcher);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { getGlowOnFocusStyles, mqs } from '../utils.styles';\n\nexport const getNavbarSwitcherStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n color: tokens.gray300,\n cursor: 'pointer',\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n position: 'relative',\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n\n '&:after': {\n content: '\"\"',\n border: '1px solid #353A41',\n boxSizing: 'border-box',\n height: '16px',\n right: '-1px',\n position: 'absolute',\n width: 0,\n },\n '&:last-child:after': {\n display: 'none',\n },\n '&:hover li': {\n backgroundColor: hexToRGBA(tokens.colorWhite, 0.15),\n },\n },\n getGlowOnFocusStyles(\n `0px 0px 0px 2px ${tokens.colorBlack}, 0px 0px 0px 5px ${tokens.blue300}`,\n ),\n ),\n breadcrumbs: css({\n listStyleType: 'none',\n margin: 0,\n padding: 0,\n position: 'relative',\n }),\n menuIcon: css({\n display: 'none',\n [mqs.medium]: {\n display: 'block',\n },\n }),\n});\n","import React from 'react';\nimport {\n SkeletonContainer,\n SkeletonDisplayText,\n} from '@contentful/f36-skeleton';\nimport tokens from '@contentful/f36-tokens';\n\nexport const NavbarSwitcherSkeleton = ({\n estimatedWidth,\n}: {\n estimatedWidth: number;\n}) => (\n <SkeletonContainer\n svgWidth={estimatedWidth}\n svgHeight={24}\n backgroundColor={tokens.gray800}\n foregroundColor={tokens.gray700}\n >\n <SkeletonDisplayText\n lineHeight={24}\n numberOfLines={1}\n radiusX={12}\n radiusY={12}\n />\n </SkeletonContainer>\n);\n","import { cx } from 'emotion';\nimport React from 'react';\nimport { getNavbarSearchStyles } from './NavbarSearch.styles';\nimport { SearchIcon } from '../icons';\nimport {\n CommonProps,\n ExpandProps,\n Flex,\n PropsWithHTMLElement,\n} from '@contentful/f36-core';\n\ntype NavbarSearchOwnProps = CommonProps;\n\nexport type NavbarSearchProps = PropsWithHTMLElement<\n NavbarSearchOwnProps,\n 'button'\n>;\n\nfunction _NavbarSearch(\n props: ExpandProps<NavbarSearchProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const { className, testId = 'cf-ui-navbar-search', ...otherProps } = props;\n const styles = getNavbarSearchStyles();\n\n return (\n <Flex\n aria-label=\"Quick Search\"\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <SearchIcon size=\"medium\" variant=\"white\" />\n </Flex>\n );\n}\n\nexport const NavbarSearch = React.forwardRef(_NavbarSearch);\n","import tokens from '@contentful/f36-tokens';\nimport { css } from 'emotion';\nimport { getGlowOnFocusStyles } from '../utils.styles';\n\nexport const getNavbarSearchStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: tokens.spacingL,\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n\n '& svg': {\n fill: tokens.gray300,\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n '&:hover, & svg:hover': {\n color: tokens.gray100,\n fill: tokens.gray100,\n },\n },\n getGlowOnFocusStyles(),\n ),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarSwitcherItemStyles } from './NavbarSwitcherItem.styles';\nimport { NavbarEnvVariant } from './NavbarEnvVariant';\nimport {\n Flex,\n type CommonProps,\n type ExpandProps,\n type PropsWithHTMLElement,\n} from '@contentful/f36-core';\n\ntype NavbarSwitcherItemOwnProps = CommonProps & {\n children?: React.ReactNode;\n isCircle?: boolean;\n envVariant?: 'master' | 'non-master';\n isAlias?: boolean;\n};\n\nexport type NavbarSwitcherItemProps = PropsWithHTMLElement<\n NavbarSwitcherItemOwnProps,\n 'li'\n>;\n\nfunction _NavbarSwitcherItem(\n props: ExpandProps<NavbarSwitcherItemProps>,\n ref: React.Ref<HTMLLIElement>,\n) {\n const {\n children,\n isCircle,\n className,\n envVariant,\n isAlias,\n testId = 'cf-ui-navbar-switcher-item',\n ...otherProps\n } = props;\n const styles = getNavbarSwitcherItemStyles();\n const classes = cx(styles.breadcrumbsItem, className, {\n [styles.breadcrumbsItemCircle]: isCircle,\n [styles.breadcrumbsItemEnvMaster]: envVariant === 'master',\n [styles.breadcrumbsItemEnvNonMaster]: envVariant === 'non-master',\n });\n\n return (\n <li {...otherProps} ref={ref} className={classes} data-test-id={testId}>\n <Flex fullHeight justifyContent=\"center\" alignItems=\"center\">\n {envVariant && <NavbarEnvVariant isAlias={isAlias} />}\n <span>{children}</span>\n </Flex>\n </li>\n );\n}\n\nexport const NavbarSwitcherItem = React.forwardRef(_NavbarSwitcherItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { hexToRGBA } from '@contentful/f36-utils';\nimport { mqs } from '../utils.styles';\n\nconst mobileIcon = {\n display: 'none',\n '&:first-child': {\n display: 'block',\n },\n\n [mqs.medium]: {\n display: 'block',\n '&:first-child': {\n display: 'none',\n },\n },\n};\n\nexport const getNavbarSwitcherItemStyles = () => ({\n breadcrumbsItem: css({\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: hexToRGBA(tokens.gray100, 0.1),\n boxShadow: `0px 0px 0px 2px ${tokens.colorBlack}`,\n display: 'inline-flex',\n margin: 0,\n minWidth: 0,\n padding: `0 ${tokens.spacingXs}`,\n height: tokens.spacingL,\n borderRadius: '3rem',\n zIndex: 2,\n transition: `background-color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n whiteSpace: 'nowrap',\n '&:not(:first-child)': {\n clipPath: `path('M0 24C6 24 10 18 10 10C10 5 6 0 0 0H400C400 0 400 5 400 24H0Z')`,\n },\n '&:first-child': {\n minWidth: '24px',\n },\n '&:nth-child(2)': {\n zIndex: 1,\n left: `-${tokens.spacingXs}`,\n paddingLeft: tokens.spacingM,\n borderRadius: `0 3rem 3rem 0`,\n span: {\n maxWidth: '80px',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n [mqs.large]: {\n maxWidth: '100%',\n },\n },\n },\n '&:nth-child(3)': {\n left: `-${tokens.spacingM}`,\n paddingLeft: tokens.spacingM,\n borderRadius: `0 3rem 3rem 0`,\n fontFamily: tokens.fontStackMonospace,\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n zIndex: 0,\n span: {\n maxWidth: '40px',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n [mqs.large]: {\n maxWidth: '100%',\n },\n },\n '> div': {\n [mqs.medium]: {\n gap: tokens.spacing2Xs,\n },\n },\n },\n }),\n breadcrumbsItemCircle: css({\n borderRadius: '50%',\n color: tokens.gray400,\n padding: 0,\n display: 'flex',\n justifyContent: 'center',\n fontSize: '11px',\n width: tokens.spacingL,\n height: tokens.spacingL,\n }),\n breadcrumbsItemEnvMaster: css({\n color: tokens.green400,\n ' svg': {\n ...mobileIcon,\n fill: tokens.green400,\n },\n }),\n breadcrumbsItemEnvNonMaster: css({\n color: tokens.orange400,\n svg: {\n ...mobileIcon,\n fill: tokens.orange400,\n },\n }),\n});\n","import React from 'react';\nimport { NavbarSwitcherItemProps } from './NavbarSwitcherItem';\nimport { CircleIcon } from '../icons';\nimport { EnvironmentAliasIcon, EnvironmentIcon } from '@contentful/f36-icons';\n\nexport type NavbarEnvVariantProps = Pick<NavbarSwitcherItemProps, 'isAlias'>;\n\nexport function NavbarEnvVariant({ isAlias }: NavbarEnvVariantProps) {\n return (\n <>\n <CircleIcon key=\"mobile-icon\" size=\"tiny\" />\n {isAlias ? (\n <EnvironmentAliasIcon key=\"full-icon\" size=\"tiny\" />\n ) : (\n <EnvironmentIcon key=\"full-icon\" size=\"tiny\" />\n )}\n </>\n );\n}\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarHelpStyles } from './NavbarHelp.styles';\nimport { HelpIcon } from '../icons';\nimport {\n Flex,\n type CommonProps,\n type PropsWithHTMLElement,\n type ExpandProps,\n} from '@contentful/f36-core';\nimport { NavbarMenu } from '../NavbarMenu/NavbarMenu';\n\ntype NavbarHelpOwnProps = CommonProps & {\n children: React.ReactNode;\n};\n\nexport type NavbarHelpProps = PropsWithHTMLElement<\n NavbarHelpOwnProps,\n 'button'\n>;\n\nfunction _NavbarHelp(\n props: ExpandProps<NavbarHelpProps>,\n ref: React.Ref<HTMLButtonElement>,\n) {\n const {\n children,\n className,\n testId = 'cf-ui-navbar-help-trigger',\n ...otherProps\n } = props;\n const styles = getNavbarHelpStyles();\n\n return (\n <NavbarMenu\n testId=\"cf-ui-navbar-help-menu\"\n trigger={\n <Flex\n aria-label=\"Help Menu\"\n {...otherProps}\n as=\"button\"\n ref={ref}\n className={cx(styles.root, className)}\n testId={testId}\n >\n <HelpIcon size=\"medium\" variant=\"white\" />\n Help\n </Flex>\n }\n >\n {children}\n </NavbarMenu>\n );\n}\n\nexport const NavbarHelp = React.forwardRef(_NavbarHelp);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { getGlowOnFocusStyles, mqs } from '../utils.styles';\n\nexport const getNavbarHelpStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n padding: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n alignItems: 'center',\n justifyContent: 'center',\n color: tokens.gray300,\n fontSize: 0,\n gap: 0,\n minWidth: tokens.spacingL,\n transition: `color ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n\n [mqs.medium]: {\n fontSize: tokens.fontSizeS,\n gap: tokens.spacing2Xs,\n fontWeight: tokens.fontWeightMedium,\n marginRight: tokens.spacingXs,\n },\n '&:hover, &:hover svg': {\n color: tokens.gray100,\n fill: tokens.gray100,\n },\n '& svg': {\n fill: tokens.gray300,\n transition: `fill ${tokens.transitionDurationShort} ${tokens.transitionEasingCubicBezier}`,\n },\n },\n getGlowOnFocusStyles(),\n ),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarBadgeStyles } from './NavbarBadge.styles';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_BADGE_DEFAULT_TAG = 'div';\n\ntype NavbarBadgeOwnProps = CommonProps & {\n children?: React.ReactNode;\n as?: React.ElementType;\n};\n\nexport type NavbarBadgeProps<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n> = PolymorphicProps<NavbarBadgeOwnProps, E>;\n\nfunction _NavbarBadge(\n props: NavbarBadgeProps<React.ElementType>,\n ref: React.Ref<any>,\n) {\n const {\n as: Comp = NAVBAR_BADGE_DEFAULT_TAG,\n children,\n className,\n testId = 'cf-ui-navbar-badge',\n ...otherProps\n } = props;\n const styles = getNavbarBadgeStyles();\n\n return (\n <Comp\n {...otherProps}\n ref={ref}\n className={cx(styles.root, className)}\n data-test-id={testId}\n >\n {children}\n </Comp>\n );\n}\n\nexport const NavbarBadge: PolymorphicComponent<\n ExpandProps<NavbarBadgeOwnProps>,\n typeof NAVBAR_BADGE_DEFAULT_TAG\n> = React.forwardRef(_NavbarBadge);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getNavbarBadgeStyles = () => ({\n root: css({\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n background: 'none',\n border: `1px solid ${tokens.purple400}`,\n margin: 0,\n outline: 'none',\n fontSize: tokens.fontSizeS,\n lineHeight: tokens.lineHeightS,\n fontWeight: tokens.fontWeightMedium,\n textAlign: 'center',\n padding: `0 ${tokens.spacingXs}`,\n textDecoration: 'none',\n color: `${tokens.purple400}!important`,\n borderRadius: '1.75rem',\n }),\n});\n","import React from 'react';\nimport { cx } from 'emotion';\nimport { getNavbarTopbarItemStyles } from './NavbarTopbarItem.styles';\nimport type {\n CommonProps,\n ExpandProps,\n PolymorphicComponent,\n PolymorphicProps,\n} from '@contentful/f36-core';\n\nconst NAVBAR_BADGE_DEFAULT_TAG = 'button';\n\ntype NavbarTopbarItemOwnProps = CommonProps & {\n children?: React.ReactNode;\n};\n\nexport type NavbarTopbarItemProps<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n> = PolymorphicProps<NavbarTopbarItemOwnProps, E>;\n\nfunction _NavbarTopbarItem<\n E extends React.ElementType = typeof NAVBAR_BADGE_DEFAULT_TAG,\n>(props: NavbarTopbarItemProps<E>, ref: React.Ref<any>) {\n const {\n as: Comp = NAVBAR_BADGE_DEFAULT_TAG,\n children,\n className,\n testId = 'cf-ui-navbar-topbar-item',\n ...otherProps\n } = props;\n const styles = getNavbarTopbarItemStyles();\n\n return (\n <Comp\n {...otherProps}\n ref={ref}\n className={cx(styles.root, className)}\n data-test-id={testId}\n >\n {children}\n </Comp>\n );\n}\n\nexport const NavbarTopbarItem: PolymorphicComponent<\n ExpandProps<NavbarTopbarItemOwnProps>,\n typeof NAVBAR_BADGE_DEFAULT_TAG\n> = React.forwardRef(_NavbarTopbarItem);\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { getGlowOnFocusStyles } from '../utils.styles';\n\nexport const getNavbarTopbarItemStyles = () => ({\n root: css(\n {\n // default button reset styles\n margin: 0,\n background: 'none',\n border: 'none',\n\n cursor: 'pointer',\n display: 'flex',\n gap: tokens.spacing2Xs,\n alignItems: 'center',\n color: tokens.gray300,\n padding: `0 ${tokens.spacing2Xs}`,\n minHeight: tokens.spacingL,\n fontSize: tokens.fontSizeS,\n fontWeight: tokens.fontWeightMedium,\n outline: 'none',\n borderRadius: tokens.borderRadiusMedium,\n\n '&:hover': {\n color: tokens.gray100,\n },\n svg: {\n fill: 'currentColor',\n },\n },\n getGlowOnFocusStyles(),\n ),\n});\n"]}
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@contentful/f36-navbar",
3
- "version": "4.0.1-alpha",
3
+ "version": "4.1.0",
4
4
  "description": "Forma 36: Navbar component",
5
5
  "scripts": {
6
6
  "build": "tsup"
7
7
  },
8
8
  "dependencies": {
9
- "@contentful/f36-core": "^4.35.0",
10
- "@contentful/f36-menu": "^4.35.0",
9
+ "@contentful/f36-core": "^4.45.0",
10
+ "@contentful/f36-menu": "^4.45.0",
11
11
  "@contentful/f36-tokens": "^4.0.1",
12
12
  "@contentful/f36-utils": "^4.23.2",
13
- "@contentful/f36-skeleton": "^4.35.0",
14
- "@contentful/f36-icon": "^4.35.0",
13
+ "@contentful/f36-skeleton": "^4.45.0",
14
+ "@contentful/f36-icon": "^4.45.0",
15
15
  "@contentful/f36-icons": "^4.23.2",
16
16
  "emotion": "^10.0.17"
17
17
  },