@redsift/design-system 6.0.0-alpha.6 → 6.0.0-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/esm/_internal/AppBar.js +2 -2
  2. package/esm/_internal/AppBar.js.map +1 -1
  3. package/esm/_internal/AppContainer.js +1 -1
  4. package/esm/_internal/AppContent.js +1 -1
  5. package/esm/_internal/AppSidePanel.js +2 -2
  6. package/esm/_internal/AppSidePanel.js.map +1 -1
  7. package/esm/_internal/Badge2.js +1 -1
  8. package/esm/_internal/BreadcrumbItem.js +1 -1
  9. package/esm/_internal/Breadcrumbs2.js +1 -1
  10. package/esm/_internal/Button2.js +1 -1
  11. package/esm/_internal/ButtonLink.js +1 -1
  12. package/esm/_internal/Checkbox2.js +2 -2
  13. package/esm/_internal/Checkbox2.js.map +1 -1
  14. package/esm/_internal/CheckboxGroup.js +1 -1
  15. package/esm/_internal/FloatingActionButton.js +1 -1
  16. package/esm/_internal/Icon2.js +1 -1
  17. package/esm/_internal/IconButton.js +1 -1
  18. package/esm/_internal/Link2.js +1 -1
  19. package/esm/_internal/LinkButton.js +1 -1
  20. package/esm/_internal/SideNavigationMenu.js +2 -2
  21. package/esm/_internal/SideNavigationMenu.js.map +1 -1
  22. package/esm/_internal/SideNavigationMenuItem.js +2 -2
  23. package/esm/_internal/SideNavigationMenuItem.js.map +1 -1
  24. package/esm/_internal/_rollupPluginBabelHelpers.js +1 -1
  25. package/esm/_internal/app-bar.js +1 -1
  26. package/esm/_internal/app-container.js +1 -1
  27. package/esm/_internal/app-side-panel.js +1 -1
  28. package/esm/_internal/checkbox.js +1 -1
  29. package/esm/_internal/icon.js +0 -1
  30. package/esm/_internal/icon.js.map +1 -1
  31. package/esm/_internal/side-navigation-menu-bar.js +1 -1
  32. package/esm/_internal/side-navigation-menu.js +1 -1
  33. package/esm/_internal/types.js.map +1 -1
  34. package/esm/_internal/useAppSidePanel.js +1 -1
  35. package/esm/_internal/useSideNavigationMenuBar.js +1 -1
  36. package/esm/index.js +3 -131
  37. package/esm/index.js.map +1 -1
  38. package/package.json +19 -17
  39. package/types.d.ts +2 -662
  40. package/esm/_internal/legacy/Alert.js +0 -10
  41. package/esm/_internal/legacy/Alert.js.map +0 -1
  42. package/esm/_internal/legacy/Alert2.js +0 -59
  43. package/esm/_internal/legacy/Alert2.js.map +0 -1
  44. package/esm/_internal/legacy/Button.js +0 -5
  45. package/esm/_internal/legacy/Button.js.map +0 -1
  46. package/esm/_internal/legacy/Button2.js +0 -56
  47. package/esm/_internal/legacy/Button2.js.map +0 -1
  48. package/esm/_internal/legacy/Card.js +0 -6
  49. package/esm/_internal/legacy/Card.js.map +0 -1
  50. package/esm/_internal/legacy/Card2.js +0 -33
  51. package/esm/_internal/legacy/Card2.js.map +0 -1
  52. package/esm/_internal/legacy/CardHeader.js +0 -7
  53. package/esm/_internal/legacy/CardHeader.js.map +0 -1
  54. package/esm/_internal/legacy/CardHeader2.js +0 -35
  55. package/esm/_internal/legacy/CardHeader2.js.map +0 -1
  56. package/esm/_internal/legacy/Checkbox.js +0 -7
  57. package/esm/_internal/legacy/Checkbox.js.map +0 -1
  58. package/esm/_internal/legacy/Checkbox2.js +0 -53
  59. package/esm/_internal/legacy/Checkbox2.js.map +0 -1
  60. package/esm/_internal/legacy/CheckboxTree.js +0 -8
  61. package/esm/_internal/legacy/CheckboxTree.js.map +0 -1
  62. package/esm/_internal/legacy/CheckboxTree2.js +0 -185
  63. package/esm/_internal/legacy/CheckboxTree2.js.map +0 -1
  64. package/esm/_internal/legacy/IconContainer.js +0 -6
  65. package/esm/_internal/legacy/IconContainer.js.map +0 -1
  66. package/esm/_internal/legacy/IconContainer2.js +0 -37
  67. package/esm/_internal/legacy/IconContainer2.js.map +0 -1
  68. package/esm/_internal/legacy/Input.js +0 -7
  69. package/esm/_internal/legacy/Input.js.map +0 -1
  70. package/esm/_internal/legacy/Input2.js +0 -185
  71. package/esm/_internal/legacy/Input2.js.map +0 -1
  72. package/esm/_internal/legacy/Pagination.js +0 -10
  73. package/esm/_internal/legacy/Pagination.js.map +0 -1
  74. package/esm/_internal/legacy/Pagination2.js +0 -82
  75. package/esm/_internal/legacy/Pagination2.js.map +0 -1
  76. package/esm/_internal/legacy/Radio.js +0 -7
  77. package/esm/_internal/legacy/Radio.js.map +0 -1
  78. package/esm/_internal/legacy/Radio2.js +0 -51
  79. package/esm/_internal/legacy/Radio2.js.map +0 -1
  80. package/esm/_internal/legacy/Select.js +0 -9
  81. package/esm/_internal/legacy/Select.js.map +0 -1
  82. package/esm/_internal/legacy/Select2.js +0 -458
  83. package/esm/_internal/legacy/Select2.js.map +0 -1
  84. package/esm/_internal/legacy/Switch.js +0 -7
  85. package/esm/_internal/legacy/Switch.js.map +0 -1
  86. package/esm/_internal/legacy/Switch2.js +0 -55
  87. package/esm/_internal/legacy/Switch2.js.map +0 -1
  88. package/esm/_internal/legacy/Table.js +0 -27
  89. package/esm/_internal/legacy/Table.js.map +0 -1
  90. package/esm/_internal/legacy/Table2.js +0 -1252
  91. package/esm/_internal/legacy/Table2.js.map +0 -1
  92. package/esm/_internal/legacy/Tabs.js +0 -7
  93. package/esm/_internal/legacy/Tabs.js.map +0 -1
  94. package/esm/_internal/legacy/Tabs2.js +0 -121
  95. package/esm/_internal/legacy/Tabs2.js.map +0 -1
  96. package/esm/_internal/legacy/Typography.js +0 -6
  97. package/esm/_internal/legacy/Typography.js.map +0 -1
  98. package/esm/_internal/legacy/Typography2.js +0 -75
  99. package/esm/_internal/legacy/Typography2.js.map +0 -1
  100. package/esm/_internal/legacy/icons/ActionsIcon.js +0 -20
  101. package/esm/_internal/legacy/icons/ActionsIcon.js.map +0 -1
  102. package/esm/_internal/legacy/icons/AddIcon.js +0 -16
  103. package/esm/_internal/legacy/icons/AddIcon.js.map +0 -1
  104. package/esm/_internal/legacy/icons/Arrow.js +0 -36
  105. package/esm/_internal/legacy/icons/Arrow.js.map +0 -1
  106. package/esm/_internal/legacy/icons/ArrowDown.js +0 -17
  107. package/esm/_internal/legacy/icons/ArrowDown.js.map +0 -1
  108. package/esm/_internal/legacy/icons/ArrowIcon.js +0 -29
  109. package/esm/_internal/legacy/icons/ArrowIcon.js.map +0 -1
  110. package/esm/_internal/legacy/icons/ArrowUp.js +0 -16
  111. package/esm/_internal/legacy/icons/ArrowUp.js.map +0 -1
  112. package/esm/_internal/legacy/icons/BarchartHorizontal.js +0 -26
  113. package/esm/_internal/legacy/icons/BarchartHorizontal.js.map +0 -1
  114. package/esm/_internal/legacy/icons/BellIcon.js +0 -27
  115. package/esm/_internal/legacy/icons/BellIcon.js.map +0 -1
  116. package/esm/_internal/legacy/icons/BimiSetupIcon.js +0 -21
  117. package/esm/_internal/legacy/icons/BimiSetupIcon.js.map +0 -1
  118. package/esm/_internal/legacy/icons/Chevron.js +0 -40
  119. package/esm/_internal/legacy/icons/Chevron.js.map +0 -1
  120. package/esm/_internal/legacy/icons/ChevronLeft.js +0 -16
  121. package/esm/_internal/legacy/icons/ChevronLeft.js.map +0 -1
  122. package/esm/_internal/legacy/icons/ChevronRight.js +0 -16
  123. package/esm/_internal/legacy/icons/ChevronRight.js.map +0 -1
  124. package/esm/_internal/legacy/icons/ClearIcon.js +0 -16
  125. package/esm/_internal/legacy/icons/ClearIcon.js.map +0 -1
  126. package/esm/_internal/legacy/icons/Cloud.js +0 -28
  127. package/esm/_internal/legacy/icons/Cloud.js.map +0 -1
  128. package/esm/_internal/legacy/icons/Cross.js +0 -26
  129. package/esm/_internal/legacy/icons/Cross.js.map +0 -1
  130. package/esm/_internal/legacy/icons/DeleteIcon.js +0 -24
  131. package/esm/_internal/legacy/icons/DeleteIcon.js.map +0 -1
  132. package/esm/_internal/legacy/icons/DynamicDmarcIcon.js +0 -36
  133. package/esm/_internal/legacy/icons/DynamicDmarcIcon.js.map +0 -1
  134. package/esm/_internal/legacy/icons/EditOutline.js +0 -16
  135. package/esm/_internal/legacy/icons/EditOutline.js.map +0 -1
  136. package/esm/_internal/legacy/icons/Email.js +0 -55
  137. package/esm/_internal/legacy/icons/Email.js.map +0 -1
  138. package/esm/_internal/legacy/icons/EmailSourcesIcon.js +0 -29
  139. package/esm/_internal/legacy/icons/EmailSourcesIcon.js.map +0 -1
  140. package/esm/_internal/legacy/icons/ExpandLayoutIcon.js +0 -35
  141. package/esm/_internal/legacy/icons/ExpandLayoutIcon.js.map +0 -1
  142. package/esm/_internal/legacy/icons/ExportIcon.js +0 -12
  143. package/esm/_internal/legacy/icons/ExportIcon.js.map +0 -1
  144. package/esm/_internal/legacy/icons/Eye.js +0 -35
  145. package/esm/_internal/legacy/icons/Eye.js.map +0 -1
  146. package/esm/_internal/legacy/icons/Facebook.js +0 -32
  147. package/esm/_internal/legacy/icons/Facebook.js.map +0 -1
  148. package/esm/_internal/legacy/icons/FilterList.js +0 -16
  149. package/esm/_internal/legacy/icons/FilterList.js.map +0 -1
  150. package/esm/_internal/legacy/icons/FindOutHowIcon.js +0 -41
  151. package/esm/_internal/legacy/icons/FindOutHowIcon.js.map +0 -1
  152. package/esm/_internal/legacy/icons/FlatArrow.js +0 -34
  153. package/esm/_internal/legacy/icons/FlatArrow.js.map +0 -1
  154. package/esm/_internal/legacy/icons/ForwardArrowIcon.js +0 -53
  155. package/esm/_internal/legacy/icons/ForwardArrowIcon.js.map +0 -1
  156. package/esm/_internal/legacy/icons/Github.js +0 -33
  157. package/esm/_internal/legacy/icons/Github.js.map +0 -1
  158. package/esm/_internal/legacy/icons/Globe.js +0 -61
  159. package/esm/_internal/legacy/icons/Globe.js.map +0 -1
  160. package/esm/_internal/legacy/icons/Hand.js +0 -25
  161. package/esm/_internal/legacy/icons/Hand.js.map +0 -1
  162. package/esm/_internal/legacy/icons/InfinityLoop.js +0 -22
  163. package/esm/_internal/legacy/icons/InfinityLoop.js.map +0 -1
  164. package/esm/_internal/legacy/icons/InfinityLoopBreak.js +0 -31
  165. package/esm/_internal/legacy/icons/InfinityLoopBreak.js.map +0 -1
  166. package/esm/_internal/legacy/icons/IngrainIcon.js +0 -39
  167. package/esm/_internal/legacy/icons/IngrainIcon.js.map +0 -1
  168. package/esm/_internal/legacy/icons/LanguageIcon.js +0 -37
  169. package/esm/_internal/legacy/icons/LanguageIcon.js.map +0 -1
  170. package/esm/_internal/legacy/icons/Linkedin.js +0 -29
  171. package/esm/_internal/legacy/icons/Linkedin.js.map +0 -1
  172. package/esm/_internal/legacy/icons/LocationPin.js +0 -31
  173. package/esm/_internal/legacy/icons/LocationPin.js.map +0 -1
  174. package/esm/_internal/legacy/icons/MicrosoftShield.js +0 -40
  175. package/esm/_internal/legacy/icons/MicrosoftShield.js.map +0 -1
  176. package/esm/_internal/legacy/icons/News.js +0 -44
  177. package/esm/_internal/legacy/icons/News.js.map +0 -1
  178. package/esm/_internal/legacy/icons/Nodes.js +0 -27
  179. package/esm/_internal/legacy/icons/Nodes.js.map +0 -1
  180. package/esm/_internal/legacy/icons/OnDmarcIcon.js +0 -34
  181. package/esm/_internal/legacy/icons/OnDmarcIcon.js.map +0 -1
  182. package/esm/_internal/legacy/icons/OnDmarcLogo.js +0 -52
  183. package/esm/_internal/legacy/icons/OnDmarcLogo.js.map +0 -1
  184. package/esm/_internal/legacy/icons/OnDomainIcon.js +0 -32
  185. package/esm/_internal/legacy/icons/OnDomainIcon.js.map +0 -1
  186. package/esm/_internal/legacy/icons/OnInboxIcon.js +0 -48
  187. package/esm/_internal/legacy/icons/OnInboxIcon.js.map +0 -1
  188. package/esm/_internal/legacy/icons/OnInboxLogo.js +0 -68
  189. package/esm/_internal/legacy/icons/OnInboxLogo.js.map +0 -1
  190. package/esm/_internal/legacy/icons/OnInboxManagerIcon.js +0 -49
  191. package/esm/_internal/legacy/icons/OnInboxManagerIcon.js.map +0 -1
  192. package/esm/_internal/legacy/icons/OpenInNewTabIcon.js +0 -23
  193. package/esm/_internal/legacy/icons/OpenInNewTabIcon.js.map +0 -1
  194. package/esm/_internal/legacy/icons/Padlock.js +0 -33
  195. package/esm/_internal/legacy/icons/Padlock.js.map +0 -1
  196. package/esm/_internal/legacy/icons/PlusIcon.js +0 -18
  197. package/esm/_internal/legacy/icons/PlusIcon.js.map +0 -1
  198. package/esm/_internal/legacy/icons/Question.js +0 -24
  199. package/esm/_internal/legacy/icons/Question.js.map +0 -1
  200. package/esm/_internal/legacy/icons/Recruiting.js +0 -23
  201. package/esm/_internal/legacy/icons/Recruiting.js.map +0 -1
  202. package/esm/_internal/legacy/icons/ReportsIcon.js +0 -21
  203. package/esm/_internal/legacy/icons/ReportsIcon.js.map +0 -1
  204. package/esm/_internal/legacy/icons/SearchIcon.js +0 -16
  205. package/esm/_internal/legacy/icons/SearchIcon.js.map +0 -1
  206. package/esm/_internal/legacy/icons/Shield.js +0 -22
  207. package/esm/_internal/legacy/icons/Shield.js.map +0 -1
  208. package/esm/_internal/legacy/icons/ShieldPassIcon.js +0 -19
  209. package/esm/_internal/legacy/icons/ShieldPassIcon.js.map +0 -1
  210. package/esm/_internal/legacy/icons/ShieldSolid.js +0 -31
  211. package/esm/_internal/legacy/icons/ShieldSolid.js.map +0 -1
  212. package/esm/_internal/legacy/icons/ShieldWarningIcon.js +0 -34
  213. package/esm/_internal/legacy/icons/ShieldWarningIcon.js.map +0 -1
  214. package/esm/_internal/legacy/icons/ShieldWarningInvertedIcon.js +0 -29
  215. package/esm/_internal/legacy/icons/ShieldWarningInvertedIcon.js.map +0 -1
  216. package/esm/_internal/legacy/icons/Spinner.js +0 -75
  217. package/esm/_internal/legacy/icons/Spinner.js.map +0 -1
  218. package/esm/_internal/legacy/icons/Team.js +0 -81
  219. package/esm/_internal/legacy/icons/Team.js.map +0 -1
  220. package/esm/_internal/legacy/icons/ThreeDotsIcon.js +0 -19
  221. package/esm/_internal/legacy/icons/ThreeDotsIcon.js.map +0 -1
  222. package/esm/_internal/legacy/icons/Thumb.js +0 -22
  223. package/esm/_internal/legacy/icons/Thumb.js.map +0 -1
  224. package/esm/_internal/legacy/icons/Traffic.js +0 -28
  225. package/esm/_internal/legacy/icons/Traffic.js.map +0 -1
  226. package/esm/_internal/legacy/icons/Twitter.js +0 -37
  227. package/esm/_internal/legacy/icons/Twitter.js.map +0 -1
  228. package/esm/_internal/legacy/icons/Upload.js +0 -25
  229. package/esm/_internal/legacy/icons/Upload.js.map +0 -1
  230. package/esm/_internal/legacy/icons/VerticalDots.js +0 -40
  231. package/esm/_internal/legacy/icons/VerticalDots.js.map +0 -1
  232. package/esm/_internal/legacy/icons/Warning.js +0 -36
  233. package/esm/_internal/legacy/icons/Warning.js.map +0 -1
  234. package/esm/_internal/legacy/icons/WarningTriangle.js +0 -39
  235. package/esm/_internal/legacy/icons/WarningTriangle.js.map +0 -1
  236. package/esm/_internal/legacy/icons/Youtube.js +0 -29
  237. package/esm/_internal/legacy/icons/Youtube.js.map +0 -1
@@ -1,11 +1,11 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef, useContext } from 'react';
3
3
  import classNames from 'classnames';
4
+ import { mdiMenu } from '@redsift/icons';
4
5
  import { A as AppContainerContext } from './context.js';
5
6
  import { u as useIsLoaded } from './useIsLoaded.js';
6
7
  import styled, { css } from 'styled-components';
7
8
  import { a as IconButton } from './IconButton.js';
8
- import { mdiMenu } from '@mdi/js';
9
9
 
10
10
  var _templateObject, _templateObject2, _templateObject3;
11
11
 
@@ -1 +1 @@
1
- {"version":3,"file":"AppBar.js","sources":["../../../src/components/app-bar/styles.ts","../../../src/components/app-bar/AppBar.tsx"],"sourcesContent":["import styled, { css } from 'styled-components';\nimport { StyledAppBarProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppBar = styled.header<StyledAppBarProps>`\n align-content: center;\n align-items: center;\n background-color: var(--redsift-color-primary-main);\n color: var(--redsift-color-primary-contrast);\n display: flex;\n flex-direction: row;\n height: 72px;\n justify-content: space-between;\n left: 0;\n position: fixed;\n top: 0;\n z-index: 1;\n\n ${({ $isSidePanelCollapsed }) => !$isSidePanelCollapsed ? css`\n transform: translate(240px);\n width: calc(100% - 240px);\n `: `\n transform: translate(0px);\n width: 100%;\n `}\n \n ${({ $isLoaded }) => $isLoaded ? css`\n transition: transform .25s ease-out, width .25s ease-out;\n `: ''}\n\n h1 {\n margin: unset;\n padding: unset;\n }\n\n .redsift-app-bar__left {\n align-content: center;\n align-items: center;\n display: inline-flex;\n flex-direction: row;\n gap: 16px;\n justify-content: center;\n margin-left: 32px;\n }\n\n .redsift-app-bar-left__expand-button {\n margin-left: -16px;\n \n i {\n color: var(--redsift-color-primary-contrast);\n }\n }\n\n .redsift-app-bar-left__expand-button:hover,\n .redsift-app-bar-left__expand-button:focus-visible {\n background-color: var(--redsift-color-primary-contained-hover);\n }\n\n .redsift-app-bar__right {\n display: inline-flex;\n margin: 16px;\n }\n`\n","import React, { forwardRef, RefObject, useContext, useRef } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { mdiMenu } from '~/components/icon';\nimport { IconButton } from '~/components/icon-button';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { useIsLoaded } from '~/hooks/useIsLoaded';\nimport { StyledAppBar } from './styles';\nimport { AppBarProps } from './types';\n\nconst COMPONENT_NAME = 'RedSiftAppBar';\nconst CLASSNAME = 'redsift-app-bar';\nconst DEFAULT_PROPS: Partial<AppBarProps> = {};\n\n/**\n * The AppBar component.\n */\nexport const AppBar: Comp<AppBarProps, HTMLHeadingElement> = forwardRef((props, ref) => {\n const barRef = ref || useRef<HTMLHeadingElement>();\n\n const {\n children,\n className,\n fallbackTitle,\n iconButtonProps,\n iconButtonRef = useRef<HTMLButtonElement>(),\n title: propsTitle,\n ...forwardedProps\n } = props;\n\n const { isLoaded } = useIsLoaded();\n const appContainerState = useContext(AppContainerContext);\n\n return (\n <StyledAppBar\n {...forwardedProps}\n $isLoaded={isLoaded}\n $isSidePanelCollapsed={appContainerState ? appContainerState.isSidePanelCollapsed : true}\n className={classNames(AppBar.className, className)}\n ref={barRef as RefObject<HTMLHeadingElement>}\n >\n <div className={`${AppBar.className}__left`}>\n {appContainerState && appContainerState.isSidePanelCollapsed ? (\n <IconButton\n className={`${AppBar.className}-left__expand-button`}\n {...iconButtonProps}\n aria-label=\"Expand left side panel\"\n icon={mdiMenu}\n onPress={appContainerState.expandSidePanel}\n ref={iconButtonRef as RefObject<HTMLButtonElement>}\n />\n ) : null}\n {propsTitle && typeof propsTitle !== 'string' ? (\n <>{propsTitle}</>\n ) : typeof propsTitle === 'string' ? (\n <h1>{propsTitle}</h1>\n ) : appContainerState && appContainerState.title ? (\n <h1>{appContainerState.title}</h1>\n ) : fallbackTitle ? (\n <h1>{fallbackTitle}</h1>\n ) : null}\n </div>\n <div className={`${AppBar.className}__right`}>\n {children}\n </div>\n </StyledAppBar>\n );\n});\nAppBar.className = CLASSNAME;\nAppBar.defaultProps = DEFAULT_PROPS;\nAppBar.displayName = COMPONENT_NAME;\n"],"names":["StyledAppBar","styled","header","$isSidePanelCollapsed","css","$isLoaded","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","AppBar","forwardRef","props","ref","barRef","useRef","children","className","fallbackTitle","iconButtonProps","iconButtonRef","title","propsTitle","forwardedProps","isLoaded","useIsLoaded","appContainerState","useContext","AppContainerContext","isSidePanelCollapsed","classNames","mdiMenu","expandSidePanel","defaultProps","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"AppBar.js","sources":["../../../src/components/app-bar/styles.ts","../../../src/components/app-bar/AppBar.tsx"],"sourcesContent":["import styled, { css } from 'styled-components';\nimport { StyledAppBarProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppBar = styled.header<StyledAppBarProps>`\n align-content: center;\n align-items: center;\n background-color: var(--redsift-color-primary-main);\n color: var(--redsift-color-primary-contrast);\n display: flex;\n flex-direction: row;\n height: 72px;\n justify-content: space-between;\n left: 0;\n position: fixed;\n top: 0;\n z-index: 1;\n\n ${({ $isSidePanelCollapsed }) => !$isSidePanelCollapsed ? css`\n transform: translate(240px);\n width: calc(100% - 240px);\n `: `\n transform: translate(0px);\n width: 100%;\n `}\n \n ${({ $isLoaded }) => $isLoaded ? css`\n transition: transform .25s ease-out, width .25s ease-out;\n `: ''}\n\n h1 {\n margin: unset;\n padding: unset;\n }\n\n .redsift-app-bar__left {\n align-content: center;\n align-items: center;\n display: inline-flex;\n flex-direction: row;\n gap: 16px;\n justify-content: center;\n margin-left: 32px;\n }\n\n .redsift-app-bar-left__expand-button {\n margin-left: -16px;\n \n i {\n color: var(--redsift-color-primary-contrast);\n }\n }\n\n .redsift-app-bar-left__expand-button:hover,\n .redsift-app-bar-left__expand-button:focus-visible {\n background-color: var(--redsift-color-primary-contained-hover);\n }\n\n .redsift-app-bar__right {\n display: inline-flex;\n margin: 16px;\n }\n`\n","import React, { forwardRef, RefObject, useContext, useRef } from 'react';\nimport classNames from 'classnames';\nimport { mdiMenu } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { IconButton } from '~/components/icon-button';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { useIsLoaded } from '~/hooks/useIsLoaded';\nimport { StyledAppBar } from './styles';\nimport { AppBarProps } from './types';\n\nconst COMPONENT_NAME = 'RedSiftAppBar';\nconst CLASSNAME = 'redsift-app-bar';\nconst DEFAULT_PROPS: Partial<AppBarProps> = {};\n\n/**\n * The AppBar component.\n */\nexport const AppBar: Comp<AppBarProps, HTMLHeadingElement> = forwardRef((props, ref) => {\n const barRef = ref || useRef<HTMLHeadingElement>();\n\n const {\n children,\n className,\n fallbackTitle,\n iconButtonProps,\n iconButtonRef = useRef<HTMLButtonElement>(),\n title: propsTitle,\n ...forwardedProps\n } = props;\n\n const { isLoaded } = useIsLoaded();\n const appContainerState = useContext(AppContainerContext);\n\n return (\n <StyledAppBar\n {...forwardedProps}\n $isLoaded={isLoaded}\n $isSidePanelCollapsed={appContainerState ? appContainerState.isSidePanelCollapsed : true}\n className={classNames(AppBar.className, className)}\n ref={barRef as RefObject<HTMLHeadingElement>}\n >\n <div className={`${AppBar.className}__left`}>\n {appContainerState && appContainerState.isSidePanelCollapsed ? (\n <IconButton\n className={`${AppBar.className}-left__expand-button`}\n {...iconButtonProps}\n aria-label=\"Expand left side panel\"\n icon={mdiMenu}\n onPress={appContainerState.expandSidePanel}\n ref={iconButtonRef as RefObject<HTMLButtonElement>}\n />\n ) : null}\n {propsTitle && typeof propsTitle !== 'string' ? (\n <>{propsTitle}</>\n ) : typeof propsTitle === 'string' ? (\n <h1>{propsTitle}</h1>\n ) : appContainerState && appContainerState.title ? (\n <h1>{appContainerState.title}</h1>\n ) : fallbackTitle ? (\n <h1>{fallbackTitle}</h1>\n ) : null}\n </div>\n <div className={`${AppBar.className}__right`}>\n {children}\n </div>\n </StyledAppBar>\n );\n});\nAppBar.className = CLASSNAME;\nAppBar.defaultProps = DEFAULT_PROPS;\nAppBar.displayName = COMPONENT_NAME;\n"],"names":["StyledAppBar","styled","header","$isSidePanelCollapsed","css","$isLoaded","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","AppBar","forwardRef","props","ref","barRef","useRef","children","className","fallbackTitle","iconButtonProps","iconButtonRef","title","propsTitle","forwardedProps","isLoaded","useIsLoaded","appContainerState","useContext","AppContainerContext","isSidePanelCollapsed","classNames","mdiMenu","expandSidePanel","defaultProps","displayName"],"mappings":";;;;;;;;;;;AAGA;AACA;AACA;AACO,MAAMA,YAAY,GAAGC,MAAM,CAACC,MAAV,CAcrB,eAAA,KAAA,eAAA,GAAA,sBAAA,CAAA,CAAA,2TAAA,EAAA,UAAA,EAAA,0qBAAA,CAAA,CAAA,CAAA,EAAA,IAAA,IAAA;EAAA,IAAC;AAAEC,IAAAA,qBAAAA;GAAH,GAAA,IAAA,CAAA;AAAA,EAAA,OAA+B,CAACA,qBAAD,GAAyBC,GAAzB,CAA/B,gBAAA,KAAA,gBAAA,GAAA,sBAAA,CAAA,CAAA,wEAAA,CAAA,CAAA,CAAA,CAAA,GAAA,wDAAA,CAAA;AAAA,CAdqB,EAsBrB,KAAA,IAAA;EAAA,IAAC;AAAEC,IAAAA,SAAAA;GAAH,GAAA,KAAA,CAAA;AAAA,EAAA,OAAmBA,SAAS,GAAGD,GAAH,CAAA,gBAAA,KAAA,gBAAA,GAAA,sBAAA,CAAA,CAAA,qEAAA,CAAA,CAAA,CAAA,CAAA,GAE3B,EAFD,CAAA;AAAA,CAtBqB,CAAlB;;;ACIP,MAAME,cAAc,GAAG,eAAvB,CAAA;AACA,MAAMC,SAAS,GAAG,iBAAlB,CAAA;AACA,MAAMC,aAAmC,GAAG,EAA5C,CAAA;AAEA;AACA;AACA;;AACO,MAAMC,MAA6C,gBAAGC,UAAU,CAAC,CAACC,KAAD,EAAQC,GAAR,KAAgB;AACtF,EAAA,MAAMC,MAAM,GAAGD,GAAG,IAAIE,MAAM,EAA5B,CAAA;;EAEA,MAAM;IACJC,QADI;IAEJC,SAFI;IAGJC,aAHI;IAIJC,eAJI;IAKJC,aAAa,GAAGL,MAAM,EALlB;AAMJM,IAAAA,KAAK,EAAEC,UAAAA;AANH,GAAA,GAQFV,KARJ;QAOKW,cAPL,4BAQIX,KARJ,EAAA,SAAA,CAAA,CAAA;;EAUA,MAAM;AAAEY,IAAAA,QAAAA;AAAF,GAAA,GAAeC,WAAW,EAAhC,CAAA;AACA,EAAA,MAAMC,iBAAiB,GAAGC,UAAU,CAACC,mBAAD,CAApC,CAAA;EAEA,oBACE,KAAA,CAAA,aAAA,CAAC,YAAD,EAAA,QAAA,CAAA,EAAA,EACML,cADN,EAAA;AAEE,IAAA,SAAS,EAAEC,QAFb;AAGE,IAAA,qBAAqB,EAAEE,iBAAiB,GAAGA,iBAAiB,CAACG,oBAArB,GAA4C,IAHtF;IAIE,SAAS,EAAEC,UAAU,CAACpB,MAAM,CAACO,SAAR,EAAmBA,SAAnB,CAJvB;AAKE,IAAA,GAAG,EAAEH,MAAAA;GAEL,CAAA,eAAA,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;IAAK,SAAS,EAAA,EAAA,CAAA,MAAA,CAAKJ,MAAM,CAACO,SAAZ,EAAA,QAAA,CAAA;AAAd,GAAA,EACGS,iBAAiB,IAAIA,iBAAiB,CAACG,oBAAvC,gBACC,oBAAC,UAAD,EAAA,QAAA,CAAA;IACE,SAAS,EAAA,EAAA,CAAA,MAAA,CAAKnB,MAAM,CAACO,SAAZ,EAAA,sBAAA,CAAA;AADX,GAAA,EAEME,eAFN,EAAA;AAGE,IAAA,YAAA,EAAW,wBAHb;AAIE,IAAA,IAAI,EAAEY,OAJR;IAKE,OAAO,EAAEL,iBAAiB,CAACM,eAL7B;AAME,IAAA,GAAG,EAAEZ,aAAAA;AANP,GAAA,CAAA,CADD,GASK,IAVR,EAWGE,UAAU,IAAI,OAAOA,UAAP,KAAsB,QAApC,gBACC,KAAGA,CAAAA,aAAAA,CAAAA,KAAAA,CAAAA,QAAAA,EAAAA,IAAAA,EAAAA,UAAH,CADD,GAEG,OAAOA,UAAP,KAAsB,QAAtB,gBACF,KAAKA,CAAAA,aAAAA,CAAAA,IAAAA,EAAAA,IAAAA,EAAAA,UAAL,CADE,GAEAI,iBAAiB,IAAIA,iBAAiB,CAACL,KAAvC,gBACF,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA,IAAA,EAAKK,iBAAiB,CAACL,KAAvB,CADE,GAEEH,aAAa,gBACjB,KAAKA,CAAAA,aAAAA,CAAAA,IAAAA,EAAAA,IAAAA,EAAAA,aAAL,CADiB,GAEf,IAnBN,CAPF,eA4BE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA;IAAK,SAAS,EAAA,EAAA,CAAA,MAAA,CAAKR,MAAM,CAACO,SAAZ,EAAA,SAAA,CAAA;GACXD,EAAAA,QADH,CA5BF,CADF,CAAA;AAkCD,CAlDsE,EAAhE;AAmDPN,MAAM,CAACO,SAAP,GAAmBT,SAAnB,CAAA;AACAE,MAAM,CAACuB,YAAP,GAAsBxB,aAAtB,CAAA;AACAC,MAAM,CAACwB,WAAP,GAAqB3B,cAArB;;;;"}
@@ -1,4 +1,4 @@
1
- import { c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef, useMemo, useState } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { A as AppContainerContext } from './context.js';
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef, useContext } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { A as AppContainerContext } from './context.js';
@@ -1,10 +1,10 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef, useContext } from 'react';
3
3
  import classNames from 'classnames';
4
+ import { mdiChevronLeft } from '@redsift/icons';
4
5
  import { A as AppContainerContext } from './context.js';
5
6
  import styled from 'styled-components';
6
7
  import { a as IconButton } from './IconButton.js';
7
- import { mdiChevronLeft } from '@mdi/js';
8
8
 
9
9
  var _templateObject;
10
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"AppSidePanel.js","sources":["../../../src/components/app-side-panel/styles.ts","../../../src/components/app-side-panel/AppSidePanel.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { StyledAppSidePanelProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppSidePanel = styled.div<StyledAppSidePanelProps>`\n align-items: center;\n background-color: var(--redsift-color-side-navigation-background);\n flex-direction: column;\n height: 100%;\n left: 0px;\n overflow: hidden;\n position: fixed;\n top: 0;\n transform: ${({ $isCollapsed }) => !$isCollapsed ? 'translate(0px)' : 'translate(-240px)'};\n transition: transform .25s ease-out, visibility .25s ease-out;\n visibility: ${({ $isCollapsed }) => !$isCollapsed ? 'visible' : 'hidden'};\n width: 240px;\n z-index: 1;\n\n .redsift-app-side-panel__header {\n align-items: center;\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n gap: 8px;\n justify-content: space-between;\n padding: 16px;\n width: 100%;\n height: 72px;\n }\n\n .redsift-app-side-panel__header > img {\n max-height: 36px;\n max-width: 160px;\n }\n\n .redsift-app-side-panel-header__collapse-button {\n padding: 4px;\n \n i {\n color: var(--redsift-color-side-navigation-menu-item-text-resting);\n }\n }\n\n .redsift-app-side-panel-header__collapse-button:hover,\n .redsift-app-side-panel-header__collapse-button:focus-visible {\n background-color: var(--redsift-color-side-navigation-menu-item-background-hover);\n\n i {\n color: var(--redsift-color-side-navigation-menu-item-text-hover);\n }\n }\n\n .redsift-app-side-panel__featured {\n box-sizing: border-box;\n margin-bottom: 16px;\n padding: 0px 16px;\n width: 100%;\n }\n\n [dir=\"rtl\"] & {\n left: unset;\n right: 0px;\n transform: unset;\n transition: unset;\n\n .redsift-app-side-panel-header__collapse-button {\n margin-left: unset;\n margin-right: auto;\n }\n }\n`","import React, { forwardRef, RefObject, useContext, useRef } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { mdiChevronLeft } from '~/components/icon';\nimport { IconButton } from '~/components/icon-button';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { StyledAppSidePanel } from './styles';\nimport { AppSidePanelProps } from './types';\n\nconst COMPONENT_NAME = 'RedSiftAppSidePanel';\nconst CLASSNAME = 'redsift-app-side-panel';\nconst DEFAULT_PROPS: Partial<AppSidePanelProps> = {};\n\n/**\n * The AppSidePanel component.\n */\nexport const AppSidePanel: Comp<AppSidePanelProps, HTMLDivElement> = forwardRef((props, ref) => {\n const panelRef = (ref || useRef<HTMLDivElement>()) as RefObject<HTMLDivElement>;\n\n const {\n children,\n className,\n featuredElements,\n iconButtonProps,\n iconButtonRef = useRef<HTMLButtonElement>(),\n isCollapsed = false,\n logo,\n onClose,\n ...forwardedProps\n } = props;\n\n const appContainerState = useContext(AppContainerContext);\n\n const handleClose = (event: PressEvent) => {\n onClose?.(event);\n appContainerState?.collapseSidePanel();\n }\n\n return (\n <StyledAppSidePanel\n {...forwardedProps}\n $isCollapsed={!!(isCollapsed || appContainerState?.isSidePanelCollapsed)}\n className={classNames(AppSidePanel.className, className)}\n ref={panelRef as RefObject<HTMLDivElement>}\n >\n {logo || (onClose || appContainerState) ? (\n <div className={`${AppSidePanel.className}__header`}>\n {logo ? (\n React.isValidElement(logo) ? logo : <img src={logo.src} alt={logo.alt} />\n ) : null}\n {(onClose || appContainerState) ? (\n <IconButton\n aria-label=\"Collapse left side panel\"\n {...iconButtonProps}\n className={`${AppSidePanel.className}-header__collapse-button`}\n icon={mdiChevronLeft}\n onPress={handleClose}\n ref={iconButtonRef as RefObject<HTMLButtonElement>}\n />\n ) : null }\n </div>\n ) : null}\n {featuredElements ? (\n <div className={`${AppSidePanel.className}__featured`}>\n {featuredElements}\n </div>\n ) : null}\n {children}\n </StyledAppSidePanel>\n );\n});\nAppSidePanel.className = CLASSNAME;\nAppSidePanel.defaultProps = DEFAULT_PROPS;\nAppSidePanel.displayName = COMPONENT_NAME;\n"],"names":["StyledAppSidePanel","styled","div","$isCollapsed","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","AppSidePanel","forwardRef","props","ref","panelRef","useRef","children","className","featuredElements","iconButtonProps","iconButtonRef","isCollapsed","logo","onClose","forwardedProps","appContainerState","useContext","AppContainerContext","handleClose","event","collapseSidePanel","isSidePanelCollapsed","classNames","React","isValidElement","src","alt","mdiChevronLeft","defaultProps","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"AppSidePanel.js","sources":["../../../src/components/app-side-panel/styles.ts","../../../src/components/app-side-panel/AppSidePanel.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { StyledAppSidePanelProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppSidePanel = styled.div<StyledAppSidePanelProps>`\n align-items: center;\n background-color: var(--redsift-color-side-navigation-background);\n flex-direction: column;\n height: 100%;\n left: 0px;\n overflow: hidden;\n position: fixed;\n top: 0;\n transform: ${({ $isCollapsed }) => !$isCollapsed ? 'translate(0px)' : 'translate(-240px)'};\n transition: transform .25s ease-out, visibility .25s ease-out;\n visibility: ${({ $isCollapsed }) => !$isCollapsed ? 'visible' : 'hidden'};\n width: 240px;\n z-index: 1;\n\n .redsift-app-side-panel__header {\n align-items: center;\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n gap: 8px;\n justify-content: space-between;\n padding: 16px;\n width: 100%;\n height: 72px;\n }\n\n .redsift-app-side-panel__header > img {\n max-height: 36px;\n max-width: 160px;\n }\n\n .redsift-app-side-panel-header__collapse-button {\n padding: 4px;\n \n i {\n color: var(--redsift-color-side-navigation-menu-item-text-resting);\n }\n }\n\n .redsift-app-side-panel-header__collapse-button:hover,\n .redsift-app-side-panel-header__collapse-button:focus-visible {\n background-color: var(--redsift-color-side-navigation-menu-item-background-hover);\n\n i {\n color: var(--redsift-color-side-navigation-menu-item-text-hover);\n }\n }\n\n .redsift-app-side-panel__featured {\n box-sizing: border-box;\n margin-bottom: 16px;\n padding: 0px 16px;\n width: 100%;\n }\n\n [dir=\"rtl\"] & {\n left: unset;\n right: 0px;\n transform: unset;\n transition: unset;\n\n .redsift-app-side-panel-header__collapse-button {\n margin-left: unset;\n margin-right: auto;\n }\n }\n`","import React, { forwardRef, RefObject, useContext, useRef } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport classNames from 'classnames';\nimport { mdiChevronLeft } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { IconButton } from '~/components/icon-button';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { StyledAppSidePanel } from './styles';\nimport { AppSidePanelProps } from './types';\n\nconst COMPONENT_NAME = 'RedSiftAppSidePanel';\nconst CLASSNAME = 'redsift-app-side-panel';\nconst DEFAULT_PROPS: Partial<AppSidePanelProps> = {};\n\n/**\n * The AppSidePanel component.\n */\nexport const AppSidePanel: Comp<AppSidePanelProps, HTMLDivElement> = forwardRef((props, ref) => {\n const panelRef = (ref || useRef<HTMLDivElement>()) as RefObject<HTMLDivElement>;\n\n const {\n children,\n className,\n featuredElements,\n iconButtonProps,\n iconButtonRef = useRef<HTMLButtonElement>(),\n isCollapsed = false,\n logo,\n onClose,\n ...forwardedProps\n } = props;\n\n const appContainerState = useContext(AppContainerContext);\n\n const handleClose = (event: PressEvent) => {\n onClose?.(event);\n appContainerState?.collapseSidePanel();\n }\n\n return (\n <StyledAppSidePanel\n {...forwardedProps}\n $isCollapsed={!!(isCollapsed || appContainerState?.isSidePanelCollapsed)}\n className={classNames(AppSidePanel.className, className)}\n ref={panelRef as RefObject<HTMLDivElement>}\n >\n {logo || (onClose || appContainerState) ? (\n <div className={`${AppSidePanel.className}__header`}>\n {logo ? (\n React.isValidElement(logo) ? logo : <img src={logo.src} alt={logo.alt} />\n ) : null}\n {(onClose || appContainerState) ? (\n <IconButton\n aria-label=\"Collapse left side panel\"\n {...iconButtonProps}\n className={`${AppSidePanel.className}-header__collapse-button`}\n icon={mdiChevronLeft}\n onPress={handleClose}\n ref={iconButtonRef as RefObject<HTMLButtonElement>}\n />\n ) : null }\n </div>\n ) : null}\n {featuredElements ? (\n <div className={`${AppSidePanel.className}__featured`}>\n {featuredElements}\n </div>\n ) : null}\n {children}\n </StyledAppSidePanel>\n );\n});\nAppSidePanel.className = CLASSNAME;\nAppSidePanel.defaultProps = DEFAULT_PROPS;\nAppSidePanel.displayName = COMPONENT_NAME;\n"],"names":["StyledAppSidePanel","styled","div","$isCollapsed","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","AppSidePanel","forwardRef","props","ref","panelRef","useRef","children","className","featuredElements","iconButtonProps","iconButtonRef","isCollapsed","logo","onClose","forwardedProps","appContainerState","useContext","AppContainerContext","handleClose","event","collapseSidePanel","isSidePanelCollapsed","classNames","React","isValidElement","src","alt","mdiChevronLeft","defaultProps","displayName"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import styled, { css } from 'styled-components';
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { T as Theme } from './types.js';
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { T as Theme } from './types.js';
@@ -1,4 +1,4 @@
1
- import { b as _objectSpread2, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { c as _objectSpread2, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { useButton } from '@react-aria/button';
@@ -1,4 +1,4 @@
1
- import { c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { C as ColorPalette } from './types.js';
@@ -1,13 +1,13 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef, useContext, useState, useEffect, useCallback } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { useFocusRing } from '@react-aria/focus';
5
+ import { mdiCheckboxMarked, mdiMinusBox, mdiCheckboxBlankOutline } from '@redsift/icons';
5
6
  import { C as ColorPalette } from './types.js';
6
7
  import { C as CheckboxGroupContext } from './context2.js';
7
8
  import { w as warnIfNoAccessibleLabelFound } from './warnIfNoAccessibleLabelFound.js';
8
9
  import styled, { css } from 'styled-components';
9
10
  import { a as Icon } from './Icon2.js';
10
- import { mdiCheckboxMarked, mdiMinusBox, mdiCheckboxBlankOutline } from '@mdi/js';
11
11
 
12
12
  /**
13
13
  * Component size.
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox2.js","sources":["../../../src/components/checkbox/types.ts","../../../src/components/checkbox/styles.ts","../../../src/components/checkbox/Checkbox.tsx"],"sourcesContent":["import { ChangeEvent, ComponentProps, MutableRefObject } from 'react';\nimport { ColorPalette, ValueOf } from '~/types';\nimport { CheckboxGroupState } from '../checkbox-group';\n\n/**\n * Component size.\n */\n export const CheckboxSize = {\n large: 'large',\n small: 'small',\n} as const;\nexport type CheckboxSize = ValueOf<typeof CheckboxSize>;\n\n/**\n * Component props.\n */\nexport interface CheckboxProps extends Omit<ComponentProps<'label'>, 'onChange'> {\n /** Whether the component can be autofocused. */\n autoFocus?: boolean;\n /** Color variant. */\n color?: ColorPalette;\n /**\n * Default select status.\n * Used for uncontrolled version.\n * Shouldn't be used inside a group unless isControlled is force to true.\n */\n defaultSelected?: boolean;\n /** Custom props to pass to the input element. */\n inputProps?: ComponentProps<'input'>;\n /** Custom ref object to pass to the input element. */\n inputRef?: MutableRefObject<HTMLInputElement>;\n /** Indicates that the component is forced to be controlled. */\n isControlled?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the checkbox status is indeterminate or not. */\n isIndeterminate?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Whether the component is read only or not. */\n isReadOnly?: boolean;\n /** Whether the component is required or not. */\n isRequired?: boolean;\n /**\n * Whether the component is selected or not.\n * Used for controlled version.\n * Shouldn't be used inside a group unless isControlled is force to true.\n */\n isSelected?: boolean;\n /** Name to pass to the input element. */\n name?: HTMLInputElement[\"name\"];\n /** Method to handle component change. */\n onChange?(isChecked: boolean, value?: string, name?: string, event?: ChangeEvent<HTMLInputElement>, state?: CheckboxGroupState): void;\n /** Size of the checkbox. */\n size?: CheckboxSize;\n /**\n * Value to pass to the input element.\n * Required within a group.\n */\n value?: HTMLInputElement[\"value\"];\n}\n\nexport type StyledCheckboxProps = Omit<CheckboxProps, 'color' | 'isDisabled' | 'isInvalid' | 'isSelected' | 'isRequired' | 'size'> & {\n $color: CheckboxProps['color'];\n $isDisabled: CheckboxProps['isDisabled'];\n $isInvalid: CheckboxProps['isInvalid'];\n $isFocusVisible: boolean;\n $isRequired: CheckboxProps['isRequired'];\n $isSelected: CheckboxProps['isSelected'];\n $size: CheckboxProps['size'];\n};\n","import styled, { css } from 'styled-components';\nimport { CheckboxSize, StyledCheckboxProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCheckbox = styled.label<StyledCheckboxProps>`\n align-items: center;\n background-color: ${({ $color }) => css`var(--redsift-color-${$color}-contrast)`};\n border: none;\n display: inline-flex;\n position: relative;\n width: fit-content;\n \n input {\n height: 100%;\n margin: 0;\n opacity: 0;\n overflow: visible;\n padding: 0;\n position: absolute;\n width: 100%;\n }\n \n span {\n ${({ $isDisabled, $isInvalid }) => $isDisabled ? css`\n color: var(--redsift-color-action-disabled);\n ` : $isInvalid ? css`\n color: var(--redsift-color-error-main);\n ` : css`\n color: var(--redsift-color-text-primary);\n `}\n\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n\n padding-right: 16px;\n\n [dir=\"rtl\"] & {\n padding-left: 16px;\n padding-right: 0px;\n }\n }\n\n i {\n padding: 8px;\n\n ${({ $size, $isDisabled, $isInvalid, $isFocusVisible, $color }) => css`\n font-size: ${$size === CheckboxSize.large ? '24px' : '20px'};\n height: ${$size === CheckboxSize.large ? '24px' : '20px'};\n line-height: ${$size === CheckboxSize.large ? '24px' : '20px'};\n width: ${$size === CheckboxSize.large ? '24px' : '20px'};\n\n ${$isDisabled ? css`\n color: var(--redsift-color-action-disabled);\n ` : $isInvalid ? css`\n color: var(--redsift-color-error-main);\n ` : ''}\n\n ${$isFocusVisible ? css`\n background-color: var(--redsift-color-${$color}-outlined-hover);\n border-radius: 21px;\n ` : ''}\n `}\n }\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isDisabled, $color }) => !$isDisabled ? css`\n i {\n background-color: var(--redsift-color-${$color}-outlined-hover);\n border-radius: 21px;\n }\n ` : ''}\n }\n\n ${({ $isFocusVisible, $color }) => $isFocusVisible ? css`\n i {\n background-color: var(--redsift-color-${$color}-outlined-hover);\n border-radius: 21px;\n }\n ` : ''}\n`\n","import React, { ComponentProps, forwardRef, MutableRefObject, useCallback, useContext, useEffect, useRef, useState } from 'react';\nimport classNames from 'classnames';\nimport { useFocusRing } from '@react-aria/focus';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon, mdiCheckboxBlankOutline, mdiMinusBox, mdiCheckboxMarked } from '~/components/icon';\nimport { CheckboxGroupContext } from '~/components/checkbox-group/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { CheckboxProps, CheckboxSize } from './types';\nimport { StyledCheckbox } from './styles';\n\nconst COMPONENT_NAME = 'RedSiftCheckbox';\nconst CLASSNAME = 'redsift-checkbox';\nconst DEFAULT_PROPS: Partial<CheckboxProps> = {\n color: ColorPalette.primary,\n size: CheckboxSize.large,\n};\n\n/**\n * The Checkbox component.\n * Works both inside a CheckboxGroup or as standalone.\n * Can be used as controlled or uncontrolled.\n */\nexport const Checkbox: Comp<CheckboxProps, HTMLLabelElement> = forwardRef((props, ref) => {\n const labelRef = ref || useRef<HTMLLabelElement>();\n const groupState = useContext(CheckboxGroupContext);\n \n let {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n autoFocus,\n children,\n className,\n color,\n defaultSelected,\n inputProps,\n inputRef,\n isControlled,\n isDisabled,\n isIndeterminate,\n isInvalid,\n isReadOnly,\n isRequired,\n isSelected: propsIsSelected,\n name,\n onChange,\n size,\n value,\n ...forwardedProps\n } = props;\n \n const { isFocusVisible, focusProps } = useFocusRing({ autoFocus });\n inputRef = (inputRef || useRef<HTMLInputElement>()) as MutableRefObject<HTMLInputElement>;\n isDisabled = isDisabled || groupState?.isDisabled;\n isReadOnly = isReadOnly || groupState?.isReadOnly;\n\n const [isSelected, setSelected] = useState(propsIsSelected || defaultSelected || groupState?.value.includes(value as string));\n useEffect(() => {\n if (groupState) {\n setSelected(groupState.value.includes(value as string));\n }\n }, [groupState?.value]);\n\n warnIfNoAccessibleLabelFound(props as ComponentProps<'label'>, [children]);\n\n if (groupState && !isControlled) {\n if (propsIsSelected != null) {\n console.warn(`isSelected is unsupported on individual <Checkbox> elements within a <CheckboxGroup> unless the <Checkbox> is controlled. Please apply this prop to the group instead or pass isControlled to the component.`);\n }\n if (defaultSelected != null) {\n console.warn(`defaultSelected is unsupported on individual <Checkbox> elements within a <CheckboxGroup> unless the <Checkbox> is controlled. Please apply this prop to the group instead or pass isControlled to the component.`);\n }\n if (props.value == null) {\n console.warn('A <Checkbox> element within a <CheckboxGroup> requires a `value` property unless the <Checkbox> is controlled.');\n }\n }\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n if (isDisabled || isReadOnly) {\n return;\n }\n\n if (groupState) {\n if (!groupState.value.includes(value as string)) {\n groupState.addValue(value as string);\n } else {\n groupState.removeValue(value as string);\n }\n }\n \n if (onChange) {\n onChange(!isSelected, value, name, event, groupState!);\n }\n setSelected(event.target.checked);\n },\n [onChange, groupState]\n );\n\n return (\n <StyledCheckbox\n {...forwardedProps}\n $color={color}\n $isDisabled={isDisabled}\n $isFocusVisible={isFocusVisible}\n $isInvalid={isInvalid || (isRequired && !isSelected)}\n $isRequired={isRequired}\n $isSelected={isSelected}\n $size={size}\n className={classNames(Checkbox.className, className)}\n ref={labelRef as MutableRefObject<HTMLLabelElement>}\n >\n <input\n {...inputProps}\n {...focusProps}\n aria-checked={isSelected || (isControlled && propsIsSelected) ? 'true' : isIndeterminate ? 'mixed' : 'false'}\n aria-disabled={isDisabled}\n aria-invalid={isInvalid || (isRequired && !isSelected)}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-readonly={isReadOnly}\n aria-required={isRequired}\n checked={isSelected ? true : false}\n disabled={isDisabled}\n name={name}\n onChange={handleChange}\n ref={inputRef as MutableRefObject<HTMLInputElement>}\n type=\"checkbox\"\n value={value}\n />\n {\n isSelected || (isControlled && propsIsSelected) ? <Icon icon={mdiCheckboxMarked} color={isDisabled ? undefined : color} /> :\n isIndeterminate ? <Icon icon={mdiMinusBox} color={isDisabled ? undefined : color} /> :\n <Icon icon={mdiCheckboxBlankOutline} />\n }\n {children ? <span>{children}</span> : null}\n </StyledCheckbox>\n );\n});\nCheckbox.className = CLASSNAME;\nCheckbox.defaultProps = DEFAULT_PROPS;\nCheckbox.displayName = COMPONENT_NAME;\n"],"names":["CheckboxSize","large","small","StyledCheckbox","styled","label","$color","css","$isDisabled","$isInvalid","$size","$isFocusVisible","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","color","ColorPalette","primary","size","Checkbox","forwardRef","props","ref","labelRef","useRef","groupState","useContext","CheckboxGroupContext","ariaLabel","ariaLabelledby","autoFocus","children","className","defaultSelected","inputProps","inputRef","isControlled","isDisabled","isIndeterminate","isInvalid","isReadOnly","isRequired","isSelected","propsIsSelected","name","onChange","value","forwardedProps","isFocusVisible","focusProps","useFocusRing","setSelected","useState","includes","useEffect","warnIfNoAccessibleLabelFound","console","warn","handleChange","useCallback","event","addValue","removeValue","target","checked","classNames","mdiCheckboxMarked","undefined","mdiMinusBox","mdiCheckboxBlankOutline","defaultProps","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Checkbox2.js","sources":["../../../src/components/checkbox/types.ts","../../../src/components/checkbox/styles.ts","../../../src/components/checkbox/Checkbox.tsx"],"sourcesContent":["import { ChangeEvent, ComponentProps, MutableRefObject } from 'react';\nimport { ColorPalette, ValueOf } from '~/types';\nimport { CheckboxGroupState } from '../checkbox-group';\n\n/**\n * Component size.\n */\n export const CheckboxSize = {\n large: 'large',\n small: 'small',\n} as const;\nexport type CheckboxSize = ValueOf<typeof CheckboxSize>;\n\n/**\n * Component props.\n */\nexport interface CheckboxProps extends Omit<ComponentProps<'label'>, 'onChange'> {\n /** Whether the component can be autofocused. */\n autoFocus?: boolean;\n /** Color variant. */\n color?: ColorPalette;\n /**\n * Default select status.\n * Used for uncontrolled version.\n * Shouldn't be used inside a group unless isControlled is force to true.\n */\n defaultSelected?: boolean;\n /** Custom props to pass to the input element. */\n inputProps?: ComponentProps<'input'>;\n /** Custom ref object to pass to the input element. */\n inputRef?: MutableRefObject<HTMLInputElement>;\n /** Indicates that the component is forced to be controlled. */\n isControlled?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the checkbox status is indeterminate or not. */\n isIndeterminate?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Whether the component is read only or not. */\n isReadOnly?: boolean;\n /** Whether the component is required or not. */\n isRequired?: boolean;\n /**\n * Whether the component is selected or not.\n * Used for controlled version.\n * Shouldn't be used inside a group unless isControlled is force to true.\n */\n isSelected?: boolean;\n /** Name to pass to the input element. */\n name?: HTMLInputElement[\"name\"];\n /** Method to handle component change. */\n onChange?(isChecked: boolean, value?: string, name?: string, event?: ChangeEvent<HTMLInputElement>, state?: CheckboxGroupState): void;\n /** Size of the checkbox. */\n size?: CheckboxSize;\n /**\n * Value to pass to the input element.\n * Required within a group.\n */\n value?: HTMLInputElement[\"value\"];\n}\n\nexport type StyledCheckboxProps = Omit<CheckboxProps, 'color' | 'isDisabled' | 'isInvalid' | 'isSelected' | 'isRequired' | 'size'> & {\n $color: CheckboxProps['color'];\n $isDisabled: CheckboxProps['isDisabled'];\n $isInvalid: CheckboxProps['isInvalid'];\n $isFocusVisible: boolean;\n $isRequired: CheckboxProps['isRequired'];\n $isSelected: CheckboxProps['isSelected'];\n $size: CheckboxProps['size'];\n};\n","import styled, { css } from 'styled-components';\nimport { CheckboxSize, StyledCheckboxProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCheckbox = styled.label<StyledCheckboxProps>`\n align-items: center;\n background-color: ${({ $color }) => css`var(--redsift-color-${$color}-contrast)`};\n border: none;\n display: inline-flex;\n position: relative;\n width: fit-content;\n \n input {\n height: 100%;\n margin: 0;\n opacity: 0;\n overflow: visible;\n padding: 0;\n position: absolute;\n width: 100%;\n }\n \n span {\n ${({ $isDisabled, $isInvalid }) => $isDisabled ? css`\n color: var(--redsift-color-action-disabled);\n ` : $isInvalid ? css`\n color: var(--redsift-color-error-main);\n ` : css`\n color: var(--redsift-color-text-primary);\n `}\n\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n\n padding-right: 16px;\n\n [dir=\"rtl\"] & {\n padding-left: 16px;\n padding-right: 0px;\n }\n }\n\n i {\n padding: 8px;\n\n ${({ $size, $isDisabled, $isInvalid, $isFocusVisible, $color }) => css`\n font-size: ${$size === CheckboxSize.large ? '24px' : '20px'};\n height: ${$size === CheckboxSize.large ? '24px' : '20px'};\n line-height: ${$size === CheckboxSize.large ? '24px' : '20px'};\n width: ${$size === CheckboxSize.large ? '24px' : '20px'};\n\n ${$isDisabled ? css`\n color: var(--redsift-color-action-disabled);\n ` : $isInvalid ? css`\n color: var(--redsift-color-error-main);\n ` : ''}\n\n ${$isFocusVisible ? css`\n background-color: var(--redsift-color-${$color}-outlined-hover);\n border-radius: 21px;\n ` : ''}\n `}\n }\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isDisabled, $color }) => !$isDisabled ? css`\n i {\n background-color: var(--redsift-color-${$color}-outlined-hover);\n border-radius: 21px;\n }\n ` : ''}\n }\n\n ${({ $isFocusVisible, $color }) => $isFocusVisible ? css`\n i {\n background-color: var(--redsift-color-${$color}-outlined-hover);\n border-radius: 21px;\n }\n ` : ''}\n`\n","import React, { ComponentProps, forwardRef, MutableRefObject, useCallback, useContext, useEffect, useRef, useState } from 'react';\nimport classNames from 'classnames';\nimport { useFocusRing } from '@react-aria/focus';\nimport { mdiCheckboxBlankOutline, mdiMinusBox, mdiCheckboxMarked } from '@redsift/icons';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { CheckboxGroupContext } from '~/components/checkbox-group/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { CheckboxProps, CheckboxSize } from './types';\nimport { StyledCheckbox } from './styles';\n\nconst COMPONENT_NAME = 'RedSiftCheckbox';\nconst CLASSNAME = 'redsift-checkbox';\nconst DEFAULT_PROPS: Partial<CheckboxProps> = {\n color: ColorPalette.primary,\n size: CheckboxSize.large,\n};\n\n/**\n * The Checkbox component.\n * Works both inside a CheckboxGroup or as standalone.\n * Can be used as controlled or uncontrolled.\n */\nexport const Checkbox: Comp<CheckboxProps, HTMLLabelElement> = forwardRef((props, ref) => {\n const labelRef = ref || useRef<HTMLLabelElement>();\n const groupState = useContext(CheckboxGroupContext);\n \n let {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n autoFocus,\n children,\n className,\n color,\n defaultSelected,\n inputProps,\n inputRef,\n isControlled,\n isDisabled,\n isIndeterminate,\n isInvalid,\n isReadOnly,\n isRequired,\n isSelected: propsIsSelected,\n name,\n onChange,\n size,\n value,\n ...forwardedProps\n } = props;\n \n const { isFocusVisible, focusProps } = useFocusRing({ autoFocus });\n inputRef = (inputRef || useRef<HTMLInputElement>()) as MutableRefObject<HTMLInputElement>;\n isDisabled = isDisabled || groupState?.isDisabled;\n isReadOnly = isReadOnly || groupState?.isReadOnly;\n\n const [isSelected, setSelected] = useState(propsIsSelected || defaultSelected || groupState?.value.includes(value as string));\n useEffect(() => {\n if (groupState) {\n setSelected(groupState.value.includes(value as string));\n }\n }, [groupState?.value]);\n\n warnIfNoAccessibleLabelFound(props as ComponentProps<'label'>, [children]);\n\n if (groupState && !isControlled) {\n if (propsIsSelected != null) {\n console.warn(`isSelected is unsupported on individual <Checkbox> elements within a <CheckboxGroup> unless the <Checkbox> is controlled. Please apply this prop to the group instead or pass isControlled to the component.`);\n }\n if (defaultSelected != null) {\n console.warn(`defaultSelected is unsupported on individual <Checkbox> elements within a <CheckboxGroup> unless the <Checkbox> is controlled. Please apply this prop to the group instead or pass isControlled to the component.`);\n }\n if (props.value == null) {\n console.warn('A <Checkbox> element within a <CheckboxGroup> requires a `value` property unless the <Checkbox> is controlled.');\n }\n }\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n if (isDisabled || isReadOnly) {\n return;\n }\n\n if (groupState) {\n if (!groupState.value.includes(value as string)) {\n groupState.addValue(value as string);\n } else {\n groupState.removeValue(value as string);\n }\n }\n \n if (onChange) {\n onChange(!isSelected, value, name, event, groupState!);\n }\n setSelected(event.target.checked);\n },\n [onChange, groupState]\n );\n\n return (\n <StyledCheckbox\n {...forwardedProps}\n $color={color}\n $isDisabled={isDisabled}\n $isFocusVisible={isFocusVisible}\n $isInvalid={isInvalid || (isRequired && !isSelected)}\n $isRequired={isRequired}\n $isSelected={isSelected}\n $size={size}\n className={classNames(Checkbox.className, className)}\n ref={labelRef as MutableRefObject<HTMLLabelElement>}\n >\n <input\n {...inputProps}\n {...focusProps}\n aria-checked={isSelected || (isControlled && propsIsSelected) ? 'true' : isIndeterminate ? 'mixed' : 'false'}\n aria-disabled={isDisabled}\n aria-invalid={isInvalid || (isRequired && !isSelected)}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-readonly={isReadOnly}\n aria-required={isRequired}\n checked={isSelected ? true : false}\n disabled={isDisabled}\n name={name}\n onChange={handleChange}\n ref={inputRef as MutableRefObject<HTMLInputElement>}\n type=\"checkbox\"\n value={value}\n />\n {\n isSelected || (isControlled && propsIsSelected) ? <Icon icon={mdiCheckboxMarked} color={isDisabled ? undefined : color} /> :\n isIndeterminate ? <Icon icon={mdiMinusBox} color={isDisabled ? undefined : color} /> :\n <Icon icon={mdiCheckboxBlankOutline} />\n }\n {children ? <span>{children}</span> : null}\n </StyledCheckbox>\n );\n});\nCheckbox.className = CLASSNAME;\nCheckbox.defaultProps = DEFAULT_PROPS;\nCheckbox.displayName = COMPONENT_NAME;\n"],"names":["CheckboxSize","large","small","StyledCheckbox","styled","label","$color","css","$isDisabled","$isInvalid","$size","$isFocusVisible","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","color","ColorPalette","primary","size","Checkbox","forwardRef","props","ref","labelRef","useRef","groupState","useContext","CheckboxGroupContext","ariaLabel","ariaLabelledby","autoFocus","children","className","defaultSelected","inputProps","inputRef","isControlled","isDisabled","isIndeterminate","isInvalid","isReadOnly","isRequired","isSelected","propsIsSelected","name","onChange","value","forwardedProps","isFocusVisible","focusProps","useFocusRing","setSelected","useState","includes","useEffect","warnIfNoAccessibleLabelFound","console","warn","handleChange","useCallback","event","addValue","removeValue","target","checked","classNames","mdiCheckboxMarked","undefined","mdiMinusBox","mdiCheckboxBlankOutline","defaultProps","displayName"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef, useState, useEffect } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { C as ColorPalette } from './types.js';
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, b as _objectSpread2, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, c as _objectSpread2, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { useButton } from '@react-aria/button';
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import styled, { css } from 'styled-components';
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, b as _objectSpread2, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, c as _objectSpread2, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { useButton } from '@react-aria/button';
@@ -1,4 +1,4 @@
1
- import { c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { S as StyledLink } from './styles2.js';
@@ -1,4 +1,4 @@
1
- import { b as _objectSpread2, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { c as _objectSpread2, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { useButton } from '@react-aria/button';
@@ -1,11 +1,11 @@
1
- import { _ as _taggedTemplateLiteral, b as _objectSpread2, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, c as _objectSpread2, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef, useContext, useState, useReducer, useCallback, useMemo, useEffect } from 'react';
3
3
  import classNames from 'classnames';
4
+ import { mdiChevronDown, mdiChevronRight } from '@redsift/icons';
4
5
  import styled, { css } from 'styled-components';
5
6
  import { a as SideNavigationMenuBarContext, S as SideNavigationMenuItem, b as SideNavigationMenuContext } from './SideNavigationMenuItem.js';
6
7
  import { w as warnIfNoAccessibleLabelFound } from './warnIfNoAccessibleLabelFound.js';
7
8
  import { a as Icon } from './Icon2.js';
8
- import { mdiChevronDown, mdiChevronRight } from '@mdi/js';
9
9
 
10
10
  /**
11
11
  * Context props.
@@ -1 +1 @@
1
- {"version":3,"file":"SideNavigationMenu.js","sources":["../../../src/components/side-navigation-menu/types.ts","../../../src/components/side-navigation-menu/styles.ts","../../../src/components/side-navigation-menu/reducer.ts","../../../src/components/side-navigation-menu/SideNavigationMenu.tsx"],"sourcesContent":["import { ComponentProps, MutableRefObject } from 'react';\nimport { IconProps } from '~/components/icon';\n\n/**\n * Context props.\n */\n export type SideNavigationMenuContextProps = {\n menuItems: Set<HTMLAnchorElement | HTMLButtonElement>;\n};\n\n/**\n * Reducer props.\n */\nexport type SideNavigationMenuReducerState = {\n isExpanded: boolean;\n currentIndex: number;\n previousIndex: number;\n};\n\nexport enum SideNavigationMenuReducerActionType {\n Expand = \"expand\",\n Collapse = \"collapse\",\n Move = \"move\"\n}\n\nexport type SideNavigationMenuReducerAction = {\n type: SideNavigationMenuReducerActionType;\n index?: number;\n};\n\n/**\n * Component props.\n */\nexport interface SideNavigationMenuProps extends ComponentProps<'div'> {\n /** Custom props to pass to the button. */\n buttonProps?: ComponentProps<'button'>;\n /** Custom ref to pass to the button. */\n buttonRef?: MutableRefObject<HTMLButtonElement>;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon?: string;\n /** Custom props to pass to the Icon component. */\n iconProps?: Omit<IconProps, 'icon'>;\n /** Custom ref to pass to the Icon component. */\n iconRef?: MutableRefObject<HTMLElement>;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the menu is expanded or not. */\n isExpanded?: boolean;\n /** Custom props to pass to the menu. */\n menuProps?: ComponentProps<'ul'>;\n /** Custom ref to pass to the menu. */\n menuRef?: MutableRefObject<HTMLUListElement>;\n /** Whether the component should hide icons or not. */\n withoutIcons?: boolean;\n}\n\nexport type StyledSideNavigationMenuProps = Omit<SideNavigationMenuProps, 'isDisabled' | 'isExpanded' | 'withoutIcons'> & {\n $isDisabled: SideNavigationMenuProps['isDisabled'];\n $isExpanded: SideNavigationMenuProps['isExpanded'];\n $withoutIcons: SideNavigationMenuProps['withoutIcons'];\n};\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenu = styled.div<StyledSideNavigationMenuProps>`\n > button {\n background-color: var(--redsift-color-side-navigation-background);\n border: none;\n ${({ $isDisabled }) => !$isDisabled ? css`\n color: var(--redsift-color-side-navigation-menu-item-text-resting);\n ` : css`\n color: var(--redsift-color-side-navigation-menu-item-text-disabled);\n `}\n align-items: center;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding: 8px 16px;\n text-decoration: none;\n width: 100%;\n }\n\n ul {\n list-style: none;\n margin: unset;\n padding: unset;\n }\n\n i:first-child {\n font-size: 20px;\n height: 20px;\n line-height: 20px;\n padding-right: 16px;\n width: 20px;\n }\n\n [dir=\"rtl\"] & {\n i:first-child {\n padding-left: 16px;\n padding-right: unset;\n }\n }\n\n > button:hover,\n > button:focus-visible {\n outline: none;\n\n ${({ $isDisabled }) => !$isDisabled ? css`\n background-color: var(--redsift-color-side-navigation-menu-item-background-hover);\n color: var(--redsift-color-side-navigation-menu-item-text-hover);\n cursor: pointer;\n\n .redsift-side-navigation-menu__expand-icon {\n color: var(--redsift-color-side-navigation-menu-item-text-hover);\n }\n ` : ''}\n }\n\n .redsift-side-navigation-menu__expand-icon {\n ${({ $isDisabled }) => !$isDisabled ? css`\n color: var(--redsift-color-side-navigation-menu-item-text-resting);\n ` : css`\n color: var(--redsift-color-side-navigation-menu-item-text-disabled);\n `}\n width: 20px;\n height: 20px;\n font-size: 20px;\n line-height: 20px;\n margin-left: auto;\n }\n\n [dir=\"rtl\"] & {\n .redsift-side-navigation-menu__expand-icon {\n margin-left: unset;\n margin-right: auto;\n }\n }\n\n /**\n * Display children or not\n */\n\n > ul {\n ${({ $isExpanded }) => $isExpanded ? css`\n display: block;\n `: css`\n display: none;\n `}\n }\n`\n","import { SideNavigationMenuReducerState, SideNavigationMenuReducerAction, SideNavigationMenuReducerActionType } from './types';\n\nexport const SideNavigationMenuReducer = \n (state: SideNavigationMenuReducerState, action: SideNavigationMenuReducerAction): SideNavigationMenuReducerState => {\n switch (action.type) {\n case SideNavigationMenuReducerActionType.Expand:\n return { ...state, isExpanded: true };\n case SideNavigationMenuReducerActionType.Collapse:\n return {\n isExpanded: false,\n currentIndex: null!,\n previousIndex: null!\n };\n case SideNavigationMenuReducerActionType.Move:\n return {\n ...state,\n isExpanded: true,\n currentIndex: action.index!,\n previousIndex: state.currentIndex\n };\n }\n }","import React, {\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n MutableRefObject,\n ReactElement,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { SideNavigationMenuItem, SideNavigationMenuItemProps } from '~/components/side-navigation-menu-item';\nimport { Icon, mdiChevronDown, mdiChevronRight } from '~/components/icon';\nimport { StyledSideNavigationMenu } from './styles';\nimport { SideNavigationMenuContextProps, SideNavigationMenuProps, SideNavigationMenuReducerActionType } from './types';\nimport { SideNavigationMenuContext } from './context';\nimport { SideNavigationMenuReducer } from './reducer';\nimport { SideNavigationMenuBarContext } from '../side-navigation-menu-bar/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\n\nconst COMPONENT_NAME = 'RedSiftSideNavigationMenu';\nconst CLASSNAME = 'redsift-side-navigation-menu';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuProps> = {};\n\n/**\n * The SideNavigationMenu component.\n */\nexport const SideNavigationMenu: Comp<SideNavigationMenuProps, HTMLDivElement> = forwardRef((props, ref) => {\n const divRef = (ref || useRef<HTMLDivElement>()) as MutableRefObject<HTMLDivElement>;\n\n const {\n 'aria-label': ariaLabel,\n buttonProps = {},\n buttonRef = useRef<HTMLButtonElement>() as MutableRefObject<HTMLButtonElement>,\n children,\n className,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isDisabled,\n isExpanded: propsIsExpanded,\n menuProps = {},\n menuRef = useRef<HTMLUListElement>(),\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n const sideNavigationMenuBarContext = useContext(SideNavigationMenuBarContext);\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems: menubarItems } = sideNavigationMenuBarContext || {};\n\n /**\n * Create an array containing only valid children which can only be SideNavigationMenuItem.\n * This prevent the navigation menubar to have more than two levels.\n */\n const childArray: ReactElement[] = [];\n React.Children.forEach(children, child => {\n if (React.isValidElement(child) && (child.type as Comp<SideNavigationMenuItemProps>).displayName === SideNavigationMenuItem.displayName) {\n childArray.push(child);\n }\n });\n const renderedMenuItems = childArray.map((child, index) => {\n return (\n <li key={child.key ?? index} role=\"none\">\n {React.cloneElement(child, {\n icon: undefined, // Second-level item should not have icon\n isDisabled: child.props.isDisabled || isDisabled || undefined,\n isSecondLevel: true,\n key: child.key ?? index,\n withoutIcons,\n })}\n </li>\n );\n });\n\n const menuItems = useRef<Set<HTMLAnchorElement | HTMLButtonElement>>(new Set()).current;\n const [state, dispatch] = useReducer(\n SideNavigationMenuReducer,\n {\n currentIndex: null!,\n isExpanded: Boolean(propsIsExpanded),\n previousIndex: null!\n }\n );\n const { isExpanded, currentIndex, previousIndex } = state;\n\n const first = useCallback(\n () => dispatch({ type: SideNavigationMenuReducerActionType.Move, index: 0 }),\n []\n );\n\n const last = useCallback(\n () => dispatch({ type: SideNavigationMenuReducerActionType.Move, index: menuItems.size - 1 }),\n [menuItems.size]\n );\n\n const move = useCallback(\n (index: number) => dispatch({ type: SideNavigationMenuReducerActionType.Move, index }),\n []\n );\n\n const open = useCallback(\n () => dispatch({ type: SideNavigationMenuReducerActionType.Expand }),\n []\n );\n\n const close = useCallback(\n (focusButton?: boolean) => {\n if (isExpanded) {\n if (focusButton) {\n buttonRef.current.focus();\n }\n\n dispatch({ type: SideNavigationMenuReducerActionType.Collapse });\n }\n },\n [isExpanded]\n );\n\n const previous = () => {\n const index = currentIndex === 0 ? menuItems.size - 1 : currentIndex - 1;\n move(index);\n };\n\n const next = () => {\n const index = currentIndex === menuItems.size - 1 ? 0 : currentIndex + 1;\n move(index);\n };\n\n const match = (e: React.KeyboardEvent<HTMLUListElement>) => {\n const items = Array.from(menuItems);\n\n // Reorder the array, starting with the currentNode\n const reorderedItems = [\n ...items.slice(currentIndex),\n ...items.slice(0, currentIndex)\n ];\n\n // Find all nodes that begin with the pressed letter\n const matches = reorderedItems.filter((menuItem) => {\n const { textContent } = menuItem;\n // istanbul ignore next\n const firstLetter = textContent?.toLowerCase().charAt(0);\n return e.key === firstLetter;\n });\n\n // Exit early if there are no matches\n if (!matches.length) {\n return;\n }\n\n // If the focused item is a match, focus the next match.\n // Otherwise, focus the first match\n const currentNode = items[currentIndex];\n const nextMatch = matches.includes(currentNode) ? matches[1] : matches[0];\n const index = items.findIndex((item) => {\n return item === nextMatch;\n });\n\n move(index);\n };\n\n const value = useMemo<SideNavigationMenuContextProps>(\n () => ({ menuItems }),\n [menuItems]\n );\n\n useEffect(() => {\n const items = Array.from(menuItems);\n\n if (currentIndex !== previousIndex) {\n const currentNode = items[currentIndex] as HTMLElement;\n currentNode?.focus();\n }\n }, [menuItems, currentIndex, previousIndex]);\n\n useEffect(() => {\n if (!sideNavigationMenuBarContext) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (buttonRef as MutableRefObject<HTMLButtonElement>).current;\n\n if (menuItemNode) {\n menubarItems.add(menuItemNode);\n }\n\n return () => {\n menubarItems.delete(menuItemNode);\n };\n }, [menubarItems]);\n\n const keyDownOnButton = (e: KeyboardEvent<HTMLButtonElement>) => {\n if (isDisabled) {\n return;\n }\n const currentNode = e.target as HTMLUListElement;\n\n switch (e.code) {\n case 'Enter':\n case 'Space':\n e.stopPropagation();\n currentNode.click();\n first();\n break;\n case 'ArrowRight':\n e.stopPropagation();\n first();\n break;\n case 'ArrowLeft':\n last();\n break;\n default:\n break;\n }\n };\n\n const buttonEventHandler = {\n onClick: (event: MouseEvent<HTMLButtonElement>) => {\n if (isDisabled) {\n return;\n }\n \n buttonProps.onClick?.(event);\n event.stopPropagation();\n if (isExpanded) {\n close();\n } else {\n open();\n }\n },\n onKeyDown: (event: KeyboardEvent<HTMLButtonElement>) => {\n buttonProps.onKeyDown?.(event);\n keyDownOnButton(event);\n },\n };\n\n const keyDownOnMenuItemList = (e: KeyboardEvent<HTMLUListElement>) => {\n const currentNode = e.target as HTMLUListElement;\n\n switch (e.code) {\n case 'ArrowUp':\n e.stopPropagation();\n e.preventDefault();\n previous();\n break;\n case 'ArrowDown':\n e.stopPropagation();\n e.preventDefault();\n next();\n break;\n case 'ArrowLeft':\n e.preventDefault();\n e.stopPropagation();\n close(true);\n break;\n case 'ArrowRight':\n e.preventDefault();\n close(!sideNavigationMenuBarContext);\n break;\n case 'Home':\n e.stopPropagation();\n e.preventDefault();\n first();\n break;\n case 'End':\n e.stopPropagation();\n e.preventDefault();\n last();\n break;\n case 'Enter':\n case 'Space':\n e.preventDefault();\n currentNode.click();\n break;\n case 'Escape':\n e.stopPropagation();\n e.preventDefault();\n close(true);\n break;\n default:\n e.stopPropagation();\n match(e);\n break;\n }\n };\n\n const menuItemListEventHandler = {\n onKeyDown: (event: KeyboardEvent<HTMLUListElement>) => {\n menuProps.onKeyDown?.(event);\n keyDownOnMenuItemList(event);\n },\n onClick: (event: MouseEvent<HTMLUListElement>) => {\n if (isDisabled) {\n return;\n }\n menuProps.onClick?.(event);\n }\n };\n\n return (\n <StyledSideNavigationMenu\n {...forwardedProps}\n $isDisabled={isDisabled}\n $isExpanded={isExpanded}\n $withoutIcons={withoutIcons}\n className={classNames(SideNavigationMenu.className, className)}\n ref={divRef as MutableRefObject<HTMLDivElement>}\n tabIndex={undefined}\n >\n <SideNavigationMenuContext.Provider value={value}>\n <button\n {...buttonProps}\n aria-disabled={isDisabled}\n aria-expanded={isExpanded ? 'true' : 'false'}\n aria-haspopup=\"true\"\n ref={buttonRef as MutableRefObject<HTMLButtonElement>}\n role=\"menuitem\"\n tabIndex={isFirstChild ? 0 : -1}\n type=\"button\"\n {...buttonEventHandler}\n >\n {icon ? \n <Icon\n color=\"var(--redsift-color-side-navigation-menu-item-text-resting)\"\n {...iconProps}\n icon={icon}\n ref={iconRef as MutableRefObject<HTMLElement>}\n /> : null}\n <span>{ariaLabel}</span>\n {isExpanded ?\n <Icon icon={mdiChevronDown} className={`${SideNavigationMenu.className}__expand-icon`} /> :\n <Icon icon={mdiChevronRight} className={`${SideNavigationMenu.className}__expand-icon`} />\n }\n </button>\n <ul\n {...menuProps}\n aria-label={ariaLabel}\n aria-orientation=\"vertical\"\n hidden={!isExpanded}\n ref={menuRef as MutableRefObject<HTMLUListElement>}\n role=\"menu\"\n {...menuItemListEventHandler}\n >\n {renderedMenuItems}\n </ul>\n </SideNavigationMenuContext.Provider>\n </StyledSideNavigationMenu>\n );\n});\nSideNavigationMenu.className = CLASSNAME;\nSideNavigationMenu.defaultProps = DEFAULT_PROPS;\nSideNavigationMenu.displayName = COMPONENT_NAME;\n"],"names":["SideNavigationMenuReducerActionType","StyledSideNavigationMenu","styled","div","$isDisabled","css","$isExpanded","SideNavigationMenuReducer","state","action","type","Expand","_objectSpread","isExpanded","Collapse","currentIndex","previousIndex","Move","index","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","SideNavigationMenu","forwardRef","props","ref","divRef","useRef","ariaLabel","buttonProps","buttonRef","children","className","icon","iconProps","iconRef","isDisabled","propsIsExpanded","menuProps","menuRef","withoutIcons","forwardedProps","warnIfNoAccessibleLabelFound","sideNavigationMenuBarContext","useContext","SideNavigationMenuBarContext","isFirstChild","setIsFirstChild","useState","menuItems","menubarItems","childArray","React","Children","forEach","child","isValidElement","displayName","SideNavigationMenuItem","push","renderedMenuItems","map","key","cloneElement","undefined","isSecondLevel","Set","current","dispatch","useReducer","Boolean","first","useCallback","last","size","move","open","close","focusButton","focus","previous","next","match","e","items","Array","from","reorderedItems","slice","matches","filter","menuItem","textContent","firstLetter","toLowerCase","charAt","length","currentNode","nextMatch","includes","findIndex","item","value","useMemo","useEffect","menuItemNode","add","delete","keyDownOnButton","target","code","stopPropagation","click","buttonEventHandler","onClick","event","onKeyDown","keyDownOnMenuItemList","preventDefault","menuItemListEventHandler","classNames","mdiChevronDown","mdiChevronRight","defaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"SideNavigationMenu.js","sources":["../../../src/components/side-navigation-menu/types.ts","../../../src/components/side-navigation-menu/styles.ts","../../../src/components/side-navigation-menu/reducer.ts","../../../src/components/side-navigation-menu/SideNavigationMenu.tsx"],"sourcesContent":["import { ComponentProps, MutableRefObject } from 'react';\nimport { IconProps } from '~/components/icon';\n\n/**\n * Context props.\n */\n export type SideNavigationMenuContextProps = {\n menuItems: Set<HTMLAnchorElement | HTMLButtonElement>;\n};\n\n/**\n * Reducer props.\n */\nexport type SideNavigationMenuReducerState = {\n isExpanded: boolean;\n currentIndex: number;\n previousIndex: number;\n};\n\nexport enum SideNavigationMenuReducerActionType {\n Expand = \"expand\",\n Collapse = \"collapse\",\n Move = \"move\"\n}\n\nexport type SideNavigationMenuReducerAction = {\n type: SideNavigationMenuReducerActionType;\n index?: number;\n};\n\n/**\n * Component props.\n */\nexport interface SideNavigationMenuProps extends ComponentProps<'div'> {\n /** Custom props to pass to the button. */\n buttonProps?: ComponentProps<'button'>;\n /** Custom ref to pass to the button. */\n buttonRef?: MutableRefObject<HTMLButtonElement>;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon?: string;\n /** Custom props to pass to the Icon component. */\n iconProps?: Omit<IconProps, 'icon'>;\n /** Custom ref to pass to the Icon component. */\n iconRef?: MutableRefObject<HTMLElement>;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the menu is expanded or not. */\n isExpanded?: boolean;\n /** Custom props to pass to the menu. */\n menuProps?: ComponentProps<'ul'>;\n /** Custom ref to pass to the menu. */\n menuRef?: MutableRefObject<HTMLUListElement>;\n /** Whether the component should hide icons or not. */\n withoutIcons?: boolean;\n}\n\nexport type StyledSideNavigationMenuProps = Omit<SideNavigationMenuProps, 'isDisabled' | 'isExpanded' | 'withoutIcons'> & {\n $isDisabled: SideNavigationMenuProps['isDisabled'];\n $isExpanded: SideNavigationMenuProps['isExpanded'];\n $withoutIcons: SideNavigationMenuProps['withoutIcons'];\n};\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenu = styled.div<StyledSideNavigationMenuProps>`\n > button {\n background-color: var(--redsift-color-side-navigation-background);\n border: none;\n ${({ $isDisabled }) => !$isDisabled ? css`\n color: var(--redsift-color-side-navigation-menu-item-text-resting);\n ` : css`\n color: var(--redsift-color-side-navigation-menu-item-text-disabled);\n `}\n align-items: center;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding: 8px 16px;\n text-decoration: none;\n width: 100%;\n }\n\n ul {\n list-style: none;\n margin: unset;\n padding: unset;\n }\n\n i:first-child {\n font-size: 20px;\n height: 20px;\n line-height: 20px;\n padding-right: 16px;\n width: 20px;\n }\n\n [dir=\"rtl\"] & {\n i:first-child {\n padding-left: 16px;\n padding-right: unset;\n }\n }\n\n > button:hover,\n > button:focus-visible {\n outline: none;\n\n ${({ $isDisabled }) => !$isDisabled ? css`\n background-color: var(--redsift-color-side-navigation-menu-item-background-hover);\n color: var(--redsift-color-side-navigation-menu-item-text-hover);\n cursor: pointer;\n\n .redsift-side-navigation-menu__expand-icon {\n color: var(--redsift-color-side-navigation-menu-item-text-hover);\n }\n ` : ''}\n }\n\n .redsift-side-navigation-menu__expand-icon {\n ${({ $isDisabled }) => !$isDisabled ? css`\n color: var(--redsift-color-side-navigation-menu-item-text-resting);\n ` : css`\n color: var(--redsift-color-side-navigation-menu-item-text-disabled);\n `}\n width: 20px;\n height: 20px;\n font-size: 20px;\n line-height: 20px;\n margin-left: auto;\n }\n\n [dir=\"rtl\"] & {\n .redsift-side-navigation-menu__expand-icon {\n margin-left: unset;\n margin-right: auto;\n }\n }\n\n /**\n * Display children or not\n */\n\n > ul {\n ${({ $isExpanded }) => $isExpanded ? css`\n display: block;\n `: css`\n display: none;\n `}\n }\n`\n","import { SideNavigationMenuReducerState, SideNavigationMenuReducerAction, SideNavigationMenuReducerActionType } from './types';\n\nexport const SideNavigationMenuReducer = \n (state: SideNavigationMenuReducerState, action: SideNavigationMenuReducerAction): SideNavigationMenuReducerState => {\n switch (action.type) {\n case SideNavigationMenuReducerActionType.Expand:\n return { ...state, isExpanded: true };\n case SideNavigationMenuReducerActionType.Collapse:\n return {\n isExpanded: false,\n currentIndex: null!,\n previousIndex: null!\n };\n case SideNavigationMenuReducerActionType.Move:\n return {\n ...state,\n isExpanded: true,\n currentIndex: action.index!,\n previousIndex: state.currentIndex\n };\n }\n }","import React, {\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n MutableRefObject,\n ReactElement,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { mdiChevronDown, mdiChevronRight } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { SideNavigationMenuItem, SideNavigationMenuItemProps } from '~/components/side-navigation-menu-item';\nimport { Icon } from '~/components/icon';\nimport { StyledSideNavigationMenu } from './styles';\nimport { SideNavigationMenuContextProps, SideNavigationMenuProps, SideNavigationMenuReducerActionType } from './types';\nimport { SideNavigationMenuContext } from './context';\nimport { SideNavigationMenuReducer } from './reducer';\nimport { SideNavigationMenuBarContext } from '../side-navigation-menu-bar/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\n\nconst COMPONENT_NAME = 'RedSiftSideNavigationMenu';\nconst CLASSNAME = 'redsift-side-navigation-menu';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuProps> = {};\n\n/**\n * The SideNavigationMenu component.\n */\nexport const SideNavigationMenu: Comp<SideNavigationMenuProps, HTMLDivElement> = forwardRef((props, ref) => {\n const divRef = (ref || useRef<HTMLDivElement>()) as MutableRefObject<HTMLDivElement>;\n\n const {\n 'aria-label': ariaLabel,\n buttonProps = {},\n buttonRef = useRef<HTMLButtonElement>() as MutableRefObject<HTMLButtonElement>,\n children,\n className,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isDisabled,\n isExpanded: propsIsExpanded,\n menuProps = {},\n menuRef = useRef<HTMLUListElement>(),\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n const sideNavigationMenuBarContext = useContext(SideNavigationMenuBarContext);\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems: menubarItems } = sideNavigationMenuBarContext || {};\n\n /**\n * Create an array containing only valid children which can only be SideNavigationMenuItem.\n * This prevent the navigation menubar to have more than two levels.\n */\n const childArray: ReactElement[] = [];\n React.Children.forEach(children, child => {\n if (React.isValidElement(child) && (child.type as Comp<SideNavigationMenuItemProps>).displayName === SideNavigationMenuItem.displayName) {\n childArray.push(child);\n }\n });\n const renderedMenuItems = childArray.map((child, index) => {\n return (\n <li key={child.key ?? index} role=\"none\">\n {React.cloneElement(child, {\n icon: undefined, // Second-level item should not have icon\n isDisabled: child.props.isDisabled || isDisabled || undefined,\n isSecondLevel: true,\n key: child.key ?? index,\n withoutIcons,\n })}\n </li>\n );\n });\n\n const menuItems = useRef<Set<HTMLAnchorElement | HTMLButtonElement>>(new Set()).current;\n const [state, dispatch] = useReducer(\n SideNavigationMenuReducer,\n {\n currentIndex: null!,\n isExpanded: Boolean(propsIsExpanded),\n previousIndex: null!\n }\n );\n const { isExpanded, currentIndex, previousIndex } = state;\n\n const first = useCallback(\n () => dispatch({ type: SideNavigationMenuReducerActionType.Move, index: 0 }),\n []\n );\n\n const last = useCallback(\n () => dispatch({ type: SideNavigationMenuReducerActionType.Move, index: menuItems.size - 1 }),\n [menuItems.size]\n );\n\n const move = useCallback(\n (index: number) => dispatch({ type: SideNavigationMenuReducerActionType.Move, index }),\n []\n );\n\n const open = useCallback(\n () => dispatch({ type: SideNavigationMenuReducerActionType.Expand }),\n []\n );\n\n const close = useCallback(\n (focusButton?: boolean) => {\n if (isExpanded) {\n if (focusButton) {\n buttonRef.current.focus();\n }\n\n dispatch({ type: SideNavigationMenuReducerActionType.Collapse });\n }\n },\n [isExpanded]\n );\n\n const previous = () => {\n const index = currentIndex === 0 ? menuItems.size - 1 : currentIndex - 1;\n move(index);\n };\n\n const next = () => {\n const index = currentIndex === menuItems.size - 1 ? 0 : currentIndex + 1;\n move(index);\n };\n\n const match = (e: React.KeyboardEvent<HTMLUListElement>) => {\n const items = Array.from(menuItems);\n\n // Reorder the array, starting with the currentNode\n const reorderedItems = [\n ...items.slice(currentIndex),\n ...items.slice(0, currentIndex)\n ];\n\n // Find all nodes that begin with the pressed letter\n const matches = reorderedItems.filter((menuItem) => {\n const { textContent } = menuItem;\n // istanbul ignore next\n const firstLetter = textContent?.toLowerCase().charAt(0);\n return e.key === firstLetter;\n });\n\n // Exit early if there are no matches\n if (!matches.length) {\n return;\n }\n\n // If the focused item is a match, focus the next match.\n // Otherwise, focus the first match\n const currentNode = items[currentIndex];\n const nextMatch = matches.includes(currentNode) ? matches[1] : matches[0];\n const index = items.findIndex((item) => {\n return item === nextMatch;\n });\n\n move(index);\n };\n\n const value = useMemo<SideNavigationMenuContextProps>(\n () => ({ menuItems }),\n [menuItems]\n );\n\n useEffect(() => {\n const items = Array.from(menuItems);\n\n if (currentIndex !== previousIndex) {\n const currentNode = items[currentIndex] as HTMLElement;\n currentNode?.focus();\n }\n }, [menuItems, currentIndex, previousIndex]);\n\n useEffect(() => {\n if (!sideNavigationMenuBarContext) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (buttonRef as MutableRefObject<HTMLButtonElement>).current;\n\n if (menuItemNode) {\n menubarItems.add(menuItemNode);\n }\n\n return () => {\n menubarItems.delete(menuItemNode);\n };\n }, [menubarItems]);\n\n const keyDownOnButton = (e: KeyboardEvent<HTMLButtonElement>) => {\n if (isDisabled) {\n return;\n }\n const currentNode = e.target as HTMLUListElement;\n\n switch (e.code) {\n case 'Enter':\n case 'Space':\n e.stopPropagation();\n currentNode.click();\n first();\n break;\n case 'ArrowRight':\n e.stopPropagation();\n first();\n break;\n case 'ArrowLeft':\n last();\n break;\n default:\n break;\n }\n };\n\n const buttonEventHandler = {\n onClick: (event: MouseEvent<HTMLButtonElement>) => {\n if (isDisabled) {\n return;\n }\n \n buttonProps.onClick?.(event);\n event.stopPropagation();\n if (isExpanded) {\n close();\n } else {\n open();\n }\n },\n onKeyDown: (event: KeyboardEvent<HTMLButtonElement>) => {\n buttonProps.onKeyDown?.(event);\n keyDownOnButton(event);\n },\n };\n\n const keyDownOnMenuItemList = (e: KeyboardEvent<HTMLUListElement>) => {\n const currentNode = e.target as HTMLUListElement;\n\n switch (e.code) {\n case 'ArrowUp':\n e.stopPropagation();\n e.preventDefault();\n previous();\n break;\n case 'ArrowDown':\n e.stopPropagation();\n e.preventDefault();\n next();\n break;\n case 'ArrowLeft':\n e.preventDefault();\n e.stopPropagation();\n close(true);\n break;\n case 'ArrowRight':\n e.preventDefault();\n close(!sideNavigationMenuBarContext);\n break;\n case 'Home':\n e.stopPropagation();\n e.preventDefault();\n first();\n break;\n case 'End':\n e.stopPropagation();\n e.preventDefault();\n last();\n break;\n case 'Enter':\n case 'Space':\n e.preventDefault();\n currentNode.click();\n break;\n case 'Escape':\n e.stopPropagation();\n e.preventDefault();\n close(true);\n break;\n default:\n e.stopPropagation();\n match(e);\n break;\n }\n };\n\n const menuItemListEventHandler = {\n onKeyDown: (event: KeyboardEvent<HTMLUListElement>) => {\n menuProps.onKeyDown?.(event);\n keyDownOnMenuItemList(event);\n },\n onClick: (event: MouseEvent<HTMLUListElement>) => {\n if (isDisabled) {\n return;\n }\n menuProps.onClick?.(event);\n }\n };\n\n return (\n <StyledSideNavigationMenu\n {...forwardedProps}\n $isDisabled={isDisabled}\n $isExpanded={isExpanded}\n $withoutIcons={withoutIcons}\n className={classNames(SideNavigationMenu.className, className)}\n ref={divRef as MutableRefObject<HTMLDivElement>}\n tabIndex={undefined}\n >\n <SideNavigationMenuContext.Provider value={value}>\n <button\n {...buttonProps}\n aria-disabled={isDisabled}\n aria-expanded={isExpanded ? 'true' : 'false'}\n aria-haspopup=\"true\"\n ref={buttonRef as MutableRefObject<HTMLButtonElement>}\n role=\"menuitem\"\n tabIndex={isFirstChild ? 0 : -1}\n type=\"button\"\n {...buttonEventHandler}\n >\n {icon ? \n <Icon\n color=\"var(--redsift-color-side-navigation-menu-item-text-resting)\"\n {...iconProps}\n icon={icon}\n ref={iconRef as MutableRefObject<HTMLElement>}\n /> : null}\n <span>{ariaLabel}</span>\n {isExpanded ?\n <Icon icon={mdiChevronDown} className={`${SideNavigationMenu.className}__expand-icon`} /> :\n <Icon icon={mdiChevronRight} className={`${SideNavigationMenu.className}__expand-icon`} />\n }\n </button>\n <ul\n {...menuProps}\n aria-label={ariaLabel}\n aria-orientation=\"vertical\"\n hidden={!isExpanded}\n ref={menuRef as MutableRefObject<HTMLUListElement>}\n role=\"menu\"\n {...menuItemListEventHandler}\n >\n {renderedMenuItems}\n </ul>\n </SideNavigationMenuContext.Provider>\n </StyledSideNavigationMenu>\n );\n});\nSideNavigationMenu.className = CLASSNAME;\nSideNavigationMenu.defaultProps = DEFAULT_PROPS;\nSideNavigationMenu.displayName = COMPONENT_NAME;\n"],"names":["SideNavigationMenuReducerActionType","StyledSideNavigationMenu","styled","div","$isDisabled","css","$isExpanded","SideNavigationMenuReducer","state","action","type","Expand","_objectSpread","isExpanded","Collapse","currentIndex","previousIndex","Move","index","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","SideNavigationMenu","forwardRef","props","ref","divRef","useRef","ariaLabel","buttonProps","buttonRef","children","className","icon","iconProps","iconRef","isDisabled","propsIsExpanded","menuProps","menuRef","withoutIcons","forwardedProps","warnIfNoAccessibleLabelFound","sideNavigationMenuBarContext","useContext","SideNavigationMenuBarContext","isFirstChild","setIsFirstChild","useState","menuItems","menubarItems","childArray","React","Children","forEach","child","isValidElement","displayName","SideNavigationMenuItem","push","renderedMenuItems","map","key","cloneElement","undefined","isSecondLevel","Set","current","dispatch","useReducer","Boolean","first","useCallback","last","size","move","open","close","focusButton","focus","previous","next","match","e","items","Array","from","reorderedItems","slice","matches","filter","menuItem","textContent","firstLetter","toLowerCase","charAt","length","currentNode","nextMatch","includes","findIndex","item","value","useMemo","useEffect","menuItemNode","add","delete","keyDownOnButton","target","code","stopPropagation","click","buttonEventHandler","onClick","event","onKeyDown","keyDownOnMenuItemList","preventDefault","menuItemListEventHandler","classNames","mdiChevronDown","mdiChevronRight","defaultProps"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { _ as _taggedTemplateLiteral, c as _objectWithoutProperties, a as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _taggedTemplateLiteral, a as _objectWithoutProperties, b as _extends } from './_rollupPluginBabelHelpers.js';
2
2
  import React, { forwardRef, useRef, useContext, useEffect, useState } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { w as warnIfNoAccessibleLabelFound } from './warnIfNoAccessibleLabelFound.js';
@@ -112,7 +112,7 @@ const SideNavigationMenuItem = /*#__PURE__*/forwardRef((props, ref) => {
112
112
  $isDisabled: isDisabled,
113
113
  $isSecondLevel: isSecondLevel,
114
114
  $withoutIcons: withoutIcons,
115
- "aria-current": isCurrent,
115
+ "aria-current": isCurrent ? 'page' : undefined,
116
116
  "aria-disabled": isDisabled,
117
117
  className: classNames(SideNavigationMenuItem.className, className),
118
118
  href: !isDisabled ? href : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"SideNavigationMenuItem.js","sources":["../../../src/components/side-navigation-menu-bar/context.ts","../../../src/components/side-navigation-menu/context.ts","../../../src/components/side-navigation-menu-item/styles.ts","../../../src/components/side-navigation-menu-item/SideNavigationMenuItem.tsx"],"sourcesContent":["import React from 'react';\nimport { SideNavigationMenuBarContextProps } from './types';\n\nexport const SideNavigationMenuBarContext = React.createContext<SideNavigationMenuBarContextProps>(null!);\n","import React from 'react';\nimport { SideNavigationMenuContextProps } from './types';\n\nexport const SideNavigationMenuContext = React.createContext<SideNavigationMenuContextProps>(null!);\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenuItem = styled.a<StyledSideNavigationMenuItemProps>`\n /**\n * Common style\n */\n ${({ $isDisabled }) => !$isDisabled ? css`\n color: var(--redsift-color-side-navigation-menu-item-text-resting);\n ` : css`\n color: var(--redsift-color-side-navigation-menu-item-text-disabled);\n `}\n align-items: center;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n text-decoration: none;\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isDisabled }) => !$isDisabled ? css`\n background-color: var(--redsift-color-side-navigation-menu-item-background-hover);\n color: var(--redsift-color-side-navigation-menu-item-text-hover);\n ` : ''}\n }\n\n ${({ $isSecondLevel, $withoutIcons }) => !$isSecondLevel ? css`\n /**\n * First-level items\n */\n\n background-color: var(--redsift-color-side-navigation-background);\n padding: 8px 16px;\n\n i:first-child {\n font-size: 20px;\n height: 20px;\n line-height: 20px;\n padding-right: 16px;\n width: 20px;\n }\n\n [dir=\"rtl\"] & {\n padding-right: unset;\n\n i:first-child {\n padding-left: 16px;\n padding-right: unset;\n }\n }\n `: `\n /**\n * Second-level items\n */\n\n background-color: var(--redsift-color-side-navigation-menu-item-background-secondary);\n padding-bottom: 8px;\n padding-left: ${!$withoutIcons ? '50px' : '16px'};\n padding-top: 8px;\n\n [dir=\"rtl\"] & {\n padding-left: unset;\n padding-right: 16px;\n }\n `}\n\n ${({ $isCurrent, $isDisabled }) => $isCurrent && !$isDisabled ? css`\n background-color: var(--redsift-color-side-navigation-menu-item-background-active);\n box-shadow: inset -4px 0px 0px var(--redsift-color-side-navigation-menu-item-active);\n ` : ''}\n`\n","import React, {\n forwardRef,\n MutableRefObject,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { SideNavigationMenuBarContext } from '~/components/side-navigation-menu-bar/context';\nimport { SideNavigationMenuContext } from '~/components/side-navigation-menu/context';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { StyledSideNavigationMenuItem } from './styles';\nimport { SideNavigationMenuItemProps } from './types';\n\nconst COMPONENT_NAME = 'RedSiftSideNavigationMenuItem';\nconst CLASSNAME = 'redsift-side-navigation-menu-item';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuItemProps> = {};\n\n/**\n * The SideNavigationMenuItem component.\n */\nexport const SideNavigationMenuItem: Comp<\n SideNavigationMenuItemProps,\n HTMLAnchorElement\n> = forwardRef((props, ref) => {\n const menuItemRef = ref || useRef<HTMLAnchorElement>();\n\n const {\n children,\n className,\n href,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isCurrent,\n isDisabled,\n isSecondLevel,\n onClick,\n onKeyDown,\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props, [children]);\n\n const appContainerState = useContext(AppContainerContext);\n useEffect(() => {\n if (appContainerState && isCurrent && typeof children === 'string') {\n appContainerState.setTitle(children);\n }\n\n return () => {\n if (appContainerState) {\n appContainerState.setTitle(undefined);\n }\n }\n }, [isCurrent]);\n\n const sideNavigationMenuBarContext = useContext(SideNavigationMenuBarContext);\n const sideNavigationMenuContext = useContext(SideNavigationMenuContext);\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems } =\n sideNavigationMenuContext || sideNavigationMenuBarContext || {};\n\n useEffect(() => {\n if (!(sideNavigationMenuContext || sideNavigationMenuBarContext)) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (menuItemRef as MutableRefObject<HTMLAnchorElement>)\n .current;\n\n if (menuItemNode) {\n if (!menuItems.size) {\n setIsFirstChild(true);\n }\n\n menuItems.add(menuItemNode);\n }\n\n return () => {\n menuItems.delete(menuItemNode);\n };\n }, [menuItems]);\n\n return (\n <StyledSideNavigationMenuItem\n role=\"menuitem\"\n {...forwardedProps}\n $isCurrent={isCurrent}\n $isDisabled={isDisabled}\n $isSecondLevel={isSecondLevel}\n $withoutIcons={withoutIcons}\n aria-current={isCurrent}\n aria-disabled={isDisabled}\n className={classNames(SideNavigationMenuItem.className, className)}\n href={!isDisabled ? href : undefined}\n onClick={isDisabled ? undefined : onClick}\n onKeyDown={isDisabled ? undefined : onKeyDown}\n ref={menuItemRef as MutableRefObject<HTMLAnchorElement>}\n tabIndex={!sideNavigationMenuContext && isFirstChild ? 0 : -1}\n >\n {icon ? (\n <Icon\n color=\"var(--redsift-color-side-navigation-menu-item-text-resting)\"\n {...iconProps}\n icon={icon}\n ref={iconRef as MutableRefObject<HTMLElement>}\n />\n ) : null}\n <span>{children}</span>\n </StyledSideNavigationMenuItem>\n );\n});\nSideNavigationMenuItem.className = CLASSNAME;\nSideNavigationMenuItem.defaultProps = DEFAULT_PROPS;\nSideNavigationMenuItem.displayName = COMPONENT_NAME;\n"],"names":["SideNavigationMenuBarContext","React","createContext","SideNavigationMenuContext","StyledSideNavigationMenuItem","styled","a","$isDisabled","css","$isSecondLevel","$withoutIcons","$isCurrent","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","SideNavigationMenuItem","forwardRef","props","ref","menuItemRef","useRef","children","className","href","icon","iconProps","iconRef","isCurrent","isDisabled","isSecondLevel","onClick","onKeyDown","withoutIcons","forwardedProps","warnIfNoAccessibleLabelFound","appContainerState","useContext","AppContainerContext","useEffect","setTitle","undefined","sideNavigationMenuBarContext","sideNavigationMenuContext","isFirstChild","setIsFirstChild","useState","menuItems","menuItemNode","current","size","add","delete","classNames","defaultProps","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"SideNavigationMenuItem.js","sources":["../../../src/components/side-navigation-menu-bar/context.ts","../../../src/components/side-navigation-menu/context.ts","../../../src/components/side-navigation-menu-item/styles.ts","../../../src/components/side-navigation-menu-item/SideNavigationMenuItem.tsx"],"sourcesContent":["import React from 'react';\nimport { SideNavigationMenuBarContextProps } from './types';\n\nexport const SideNavigationMenuBarContext = React.createContext<SideNavigationMenuBarContextProps>(null!);\n","import React from 'react';\nimport { SideNavigationMenuContextProps } from './types';\n\nexport const SideNavigationMenuContext = React.createContext<SideNavigationMenuContextProps>(null!);\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenuItem = styled.a<StyledSideNavigationMenuItemProps>`\n /**\n * Common style\n */\n ${({ $isDisabled }) => !$isDisabled ? css`\n color: var(--redsift-color-side-navigation-menu-item-text-resting);\n ` : css`\n color: var(--redsift-color-side-navigation-menu-item-text-disabled);\n `}\n align-items: center;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n text-decoration: none;\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isDisabled }) => !$isDisabled ? css`\n background-color: var(--redsift-color-side-navigation-menu-item-background-hover);\n color: var(--redsift-color-side-navigation-menu-item-text-hover);\n ` : ''}\n }\n\n ${({ $isSecondLevel, $withoutIcons }) => !$isSecondLevel ? css`\n /**\n * First-level items\n */\n\n background-color: var(--redsift-color-side-navigation-background);\n padding: 8px 16px;\n\n i:first-child {\n font-size: 20px;\n height: 20px;\n line-height: 20px;\n padding-right: 16px;\n width: 20px;\n }\n\n [dir=\"rtl\"] & {\n padding-right: unset;\n\n i:first-child {\n padding-left: 16px;\n padding-right: unset;\n }\n }\n `: `\n /**\n * Second-level items\n */\n\n background-color: var(--redsift-color-side-navigation-menu-item-background-secondary);\n padding-bottom: 8px;\n padding-left: ${!$withoutIcons ? '50px' : '16px'};\n padding-top: 8px;\n\n [dir=\"rtl\"] & {\n padding-left: unset;\n padding-right: 16px;\n }\n `}\n\n ${({ $isCurrent, $isDisabled }) => $isCurrent && !$isDisabled ? css`\n background-color: var(--redsift-color-side-navigation-menu-item-background-active);\n box-shadow: inset -4px 0px 0px var(--redsift-color-side-navigation-menu-item-active);\n ` : ''}\n`\n","import React, {\n forwardRef,\n MutableRefObject,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { SideNavigationMenuBarContext } from '~/components/side-navigation-menu-bar/context';\nimport { SideNavigationMenuContext } from '~/components/side-navigation-menu/context';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { StyledSideNavigationMenuItem } from './styles';\nimport { SideNavigationMenuItemProps } from './types';\n\nconst COMPONENT_NAME = 'RedSiftSideNavigationMenuItem';\nconst CLASSNAME = 'redsift-side-navigation-menu-item';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuItemProps> = {};\n\n/**\n * The SideNavigationMenuItem component.\n */\nexport const SideNavigationMenuItem: Comp<\n SideNavigationMenuItemProps,\n HTMLAnchorElement\n> = forwardRef((props, ref) => {\n const menuItemRef = ref || useRef<HTMLAnchorElement>();\n\n const {\n children,\n className,\n href,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isCurrent,\n isDisabled,\n isSecondLevel,\n onClick,\n onKeyDown,\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props, [children]);\n\n const appContainerState = useContext(AppContainerContext);\n useEffect(() => {\n if (appContainerState && isCurrent && typeof children === 'string') {\n appContainerState.setTitle(children);\n }\n\n return () => {\n if (appContainerState) {\n appContainerState.setTitle(undefined);\n }\n }\n }, [isCurrent]);\n\n const sideNavigationMenuBarContext = useContext(SideNavigationMenuBarContext);\n const sideNavigationMenuContext = useContext(SideNavigationMenuContext);\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems } =\n sideNavigationMenuContext || sideNavigationMenuBarContext || {};\n\n useEffect(() => {\n if (!(sideNavigationMenuContext || sideNavigationMenuBarContext)) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (menuItemRef as MutableRefObject<HTMLAnchorElement>)\n .current;\n\n if (menuItemNode) {\n if (!menuItems.size) {\n setIsFirstChild(true);\n }\n\n menuItems.add(menuItemNode);\n }\n\n return () => {\n menuItems.delete(menuItemNode);\n };\n }, [menuItems]);\n\n return (\n <StyledSideNavigationMenuItem\n role=\"menuitem\"\n {...forwardedProps}\n $isCurrent={isCurrent}\n $isDisabled={isDisabled}\n $isSecondLevel={isSecondLevel}\n $withoutIcons={withoutIcons}\n aria-current={isCurrent ? 'page' : undefined}\n aria-disabled={isDisabled}\n className={classNames(SideNavigationMenuItem.className, className)}\n href={!isDisabled ? href : undefined}\n onClick={isDisabled ? undefined : onClick}\n onKeyDown={isDisabled ? undefined : onKeyDown}\n ref={menuItemRef as MutableRefObject<HTMLAnchorElement>}\n tabIndex={!sideNavigationMenuContext && isFirstChild ? 0 : -1}\n >\n {icon ? (\n <Icon\n color=\"var(--redsift-color-side-navigation-menu-item-text-resting)\"\n {...iconProps}\n icon={icon}\n ref={iconRef as MutableRefObject<HTMLElement>}\n />\n ) : null}\n <span>{children}</span>\n </StyledSideNavigationMenuItem>\n );\n});\nSideNavigationMenuItem.className = CLASSNAME;\nSideNavigationMenuItem.defaultProps = DEFAULT_PROPS;\nSideNavigationMenuItem.displayName = COMPONENT_NAME;\n"],"names":["SideNavigationMenuBarContext","React","createContext","SideNavigationMenuContext","StyledSideNavigationMenuItem","styled","a","$isDisabled","css","$isSecondLevel","$withoutIcons","$isCurrent","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","SideNavigationMenuItem","forwardRef","props","ref","menuItemRef","useRef","children","className","href","icon","iconProps","iconRef","isCurrent","isDisabled","isSecondLevel","onClick","onKeyDown","withoutIcons","forwardedProps","warnIfNoAccessibleLabelFound","appContainerState","useContext","AppContainerContext","useEffect","setTitle","undefined","sideNavigationMenuBarContext","sideNavigationMenuContext","isFirstChild","setIsFirstChild","useState","menuItems","menuItemNode","current","size","add","delete","classNames","defaultProps","displayName"],"mappings":"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"}
@@ -104,5 +104,5 @@ function _taggedTemplateLiteral(strings, raw) {
104
104
  }));
105
105
  }
106
106
 
107
- export { _taggedTemplateLiteral as _, _extends as a, _objectSpread2 as b, _objectWithoutProperties as c };
107
+ export { _taggedTemplateLiteral as _, _objectWithoutProperties as a, _extends as b, _objectSpread2 as c };
108
108
  //# sourceMappingURL=_rollupPluginBabelHelpers.js.map
@@ -2,6 +2,7 @@ export { A as AppBar } from './AppBar.js';
2
2
  import './_rollupPluginBabelHelpers.js';
3
3
  import 'react';
4
4
  import 'classnames';
5
+ import '@redsift/icons';
5
6
  import './context.js';
6
7
  import './useIsLoaded.js';
7
8
  import 'styled-components';
@@ -10,5 +11,4 @@ import '@react-aria/button';
10
11
  import './types.js';
11
12
  import './warnIfNoAccessibleLabelFound.js';
12
13
  import './Icon2.js';
13
- import '@mdi/js';
14
14
  //# sourceMappingURL=app-bar.js.map