@stenajs-webui/panels 17.5.0 → 17.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -0
- package/dist/components/action-menu-button/ActionMenuButton.d.ts +19 -19
- package/dist/components/action-menu-button/ActionMenuFlatButton.d.ts +5 -5
- package/dist/components/action-menu-button/ActionMenuPrimaryButton.d.ts +6 -6
- package/dist/components/action-menu-button/ActionMenuSecondaryButton.d.ts +5 -5
- package/dist/components/checkbox-menu/CheckboxMenu.d.ts +7 -7
- package/dist/components/collapsible/Collapsible.d.ts +18 -18
- package/dist/components/collapsible/CollapsibleClickableContent.d.ts +6 -6
- package/dist/components/collapsible/CollapsibleContent.d.ts +7 -7
- package/dist/components/collapsible/CollapsibleEmptyContent.d.ts +5 -5
- package/dist/components/collapsible/CollapsibleGroupHeading.d.ts +6 -6
- package/dist/components/collapsible/CollapsibleWithCheckbox.d.ts +6 -6
- package/dist/components/error-panel/ErrorPanel.d.ts +5 -5
- package/dist/components/error-panel/ErrorScreen.d.ts +3 -3
- package/dist/components/loading-panel/LoadingPanel.d.ts +5 -5
- package/dist/components/loading-panel/LoadingScreen.d.ts +3 -3
- package/dist/components/nav-bar/NavBar.d.ts +16 -16
- package/dist/components/nav-bar/NavBarButton.d.ts +6 -6
- package/dist/components/nav-bar/NavBarHeading.d.ts +6 -6
- package/dist/components/nav-bar/NavBarNotificationButton.d.ts +9 -9
- package/dist/components/nav-bar/NavBarPopoverButton.d.ts +12 -12
- package/dist/components/nav-bar/NavBarSearchField.d.ts +6 -6
- package/dist/components/nav-bar/NavBarSideMenuButton.d.ts +6 -6
- package/dist/components/nav-bar/NavBarUserButton.d.ts +9 -9
- package/dist/components/nav-bar/NavbarHeightStyleUtil.d.ts +2 -2
- package/dist/components/notifications/Notification.d.ts +16 -16
- package/dist/components/notifications/NotificationTheme.d.ts +7 -7
- package/dist/components/page-header/PageHeader.d.ts +9 -9
- package/dist/components/page-header/PageHeaderRow.d.ts +5 -5
- package/dist/components/page-header/PageHeading.d.ts +11 -11
- package/dist/components/selected-items-actions-panel/SelectedItemsActionsPanel.d.ts +10 -10
- package/dist/components/sidebar-menu/SidebarMenu.d.ts +12 -12
- package/dist/components/sidebar-menu/SidebarMenuCloseButton.d.ts +5 -5
- package/dist/components/sidebar-menu/SidebarMenuCollapsible.d.ts +10 -10
- package/dist/components/sidebar-menu/SidebarMenuHeading.d.ts +7 -7
- package/dist/components/sidebar-menu/SidebarMenuLink.d.ts +16 -16
- package/dist/components/sidebar-menu/SidebarMenuSeparator.d.ts +5 -5
- package/dist/components/sidebar-menu/rail/SidebarRailMenu.d.ts +10 -10
- package/dist/components/sidebar-menu/rail/renderer/RailRenderer.d.ts +8 -8
- package/dist/components/sidebar-menu/rail/renderer/types.d.ts +19 -19
- package/dist/index.d.ts +35 -35
- package/dist/index.es.js +1098 -587
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +1 -656
- package/dist/index.js.map +1 -1
- package/package.json +10 -11
- package/dist/components/action-menu-button/ActionMenuButton.stories.d.ts +0 -15
- package/dist/components/checkbox-menu/CheckboxMenu.stories.d.ts +0 -7
- package/dist/components/collapsible/Collapsible.stories.d.ts +0 -21
- package/dist/components/error-panel/ErrorPanel.stories.d.ts +0 -8
- package/dist/components/error-panel/ErrorScreen.stories.d.ts +0 -8
- package/dist/components/loading-panel/LoadingPanel.stories.d.ts +0 -8
- package/dist/components/loading-panel/LoadingScreen.stories.d.ts +0 -8
- package/dist/components/nav-bar/NavBar.stories.d.ts +0 -27
- package/dist/components/notifications/Notification.stories.d.ts +0 -7
- package/dist/components/page-header/PageHeader.stories.d.ts +0 -15
- package/dist/components/sidebar-menu/SidebarMenu.stories.d.ts +0 -14
package/dist/index.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":["../src/components/action-menu-button/ActionMenuButton.tsx","../src/components/action-menu-button/ActionMenuPrimaryButton.tsx","../src/components/action-menu-button/ActionMenuSecondaryButton.tsx","../src/components/action-menu-button/ActionMenuFlatButton.tsx","../src/components/checkbox-menu/CheckboxMenu.tsx","../../../node_modules/style-inject/dist/style-inject.es.js","../src/components/nav-bar/NavBarSideMenuButton.tsx","../src/components/nav-bar/NavbarHeightStyleUtil.ts","../src/components/nav-bar/NavBar.tsx","../src/components/nav-bar/NavBarButton.tsx","../src/components/nav-bar/NavBarHeading.tsx","../src/components/nav-bar/NavBarPopoverButton.tsx","../src/components/nav-bar/NavBarNotificationButton.tsx","../src/components/nav-bar/NavBarSearchField.tsx","../src/components/nav-bar/NavBarUserButton.tsx","../src/components/notifications/NotificationTheme.ts","../src/components/notifications/Notification.tsx","../src/components/collapsible/CollapsibleEmptyContent.tsx","../src/components/collapsible/CollapsibleContent.tsx","../src/components/collapsible/Collapsible.tsx","../src/components/collapsible/CollapsibleWithCheckbox.tsx","../src/components/collapsible/CollapsibleClickableContent.tsx","../src/components/collapsible/CollapsibleGroupHeading.tsx","../src/components/error-panel/ErrorPanel.tsx","../src/components/error-panel/ErrorScreen.tsx","../src/components/loading-panel/LoadingPanel.tsx","../src/components/loading-panel/LoadingScreen.tsx","../src/components/page-header/PageHeader.tsx","../src/components/page-header/PageHeaderRow.tsx","../src/components/page-header/PageHeading.tsx","../src/components/sidebar-menu/SidebarMenuCloseButton.tsx","../src/components/sidebar-menu/SidebarMenuSeparator.tsx","../src/components/sidebar-menu/SidebarMenu.tsx","../src/components/sidebar-menu/rail/SidebarRailMenu.tsx","../src/components/sidebar-menu/SidebarMenuLink.tsx","../src/components/sidebar-menu/SidebarMenuHeading.tsx","../src/components/sidebar-menu/SidebarMenuCollapsible.tsx","../src/components/sidebar-menu/rail/renderer/RailRenderer.tsx","../src/components/selected-items-actions-panel/SelectedItemsActionsPanel.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ReactNode, useMemo, useRef } from \"react\";\nimport {\n ActionMenu,\n ActionMenuContext,\n ActionMenuProps,\n FlatButton,\n PrimaryButton,\n PrimaryButtonProps,\n SecondaryButton,\n} from \"@stenajs-webui/elements\";\nimport { useBoolean } from \"@stenajs-webui/core\";\nimport { Popover, PopoverProps } from \"@stenajs-webui/tooltip\";\nimport { faAngleDown } from \"@fortawesome/free-solid-svg-icons\";\nimport { Plugin as TippyPlugin, Props as TippyProps } from \"tippy.js\";\n\nexport interface ActionMenuButtonProps\n extends Omit<\n PrimaryButtonProps,\n \"variant\" | \"loading\" | \"loadingLabel\" | \"success\" | \"successLabel\"\n > {\n /** The content of the Action Menu. */\n renderItems: (close: () => void) => ReactNode;\n /** The placement of the Action Menu. */\n placement?: PopoverProps[\"placement\"];\n /** Z-index of the Action Menu */\n zIndex?: number;\n /** Portal target, HTML element. If not set, portal is not used. */\n portalTarget?: PopoverProps[\"appendTo\"];\n menuWidth?: ActionMenuProps[\"width\"];\n menuTop?: ActionMenuProps[\"top\"];\n buttonComponent:\n | typeof PrimaryButton\n | typeof SecondaryButton\n | typeof FlatButton;\n disableArrow?: boolean;\n}\n\nexport const ActionMenuButton: React.FC<ActionMenuButtonProps> = ({\n renderItems,\n placement = \"bottom\",\n buttonComponent: Button,\n rightIcon = faAngleDown,\n portalTarget = \"parent\",\n zIndex,\n menuWidth,\n menuTop,\n onClick,\n disableArrow = false,\n ...buttonProps\n}) => {\n const [isOpen, open, close, toggle] = useBoolean(false);\n\n const buttonRef = useRef<HTMLButtonElement>(null);\n\n const focusManager: TippyPlugin<TippyProps> = {\n name: \"focusManager\",\n defaultValue: true,\n fn({ popper }) {\n let restoreFocus = false;\n\n const closeOnEscape = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n restoreFocus = true;\n close();\n }\n if (event.key === \"Enter\" || event.key === \" \") {\n restoreFocus = true;\n }\n };\n\n return {\n onCreate() {\n popper.addEventListener(\"keydown\", closeOnEscape);\n },\n onDestroy() {\n popper.removeEventListener(\"keydown\", closeOnEscape);\n },\n onMount() {\n restoreFocus = false;\n popper\n .querySelector<HTMLElement>(\"button:not([disabled]), a[href]\")\n ?.focus();\n },\n onHide() {\n if (buttonRef.current && restoreFocus) {\n buttonRef.current.focus();\n }\n },\n };\n },\n };\n\n const contextValue = useMemo(() => ({ open, close }), [open, close]);\n\n const handleClick = (\n event: React.MouseEvent<HTMLButtonElement, MouseEvent>\n ) => {\n onClick?.(event);\n toggle();\n };\n\n return (\n <Popover\n disablePadding\n visible={isOpen}\n onClickOutside={close}\n placement={placement}\n content={\n isOpen && (\n <ActionMenu\n variant={\"outlined\"}\n width={menuWidth}\n top={menuTop}\n trapFocus\n >\n <ActionMenuContext.Provider value={contextValue}>\n {renderItems(close)}\n </ActionMenuContext.Provider>\n </ActionMenu>\n )\n }\n arrow={false}\n appendTo={portalTarget}\n zIndex={zIndex}\n plugins={[focusManager]}\n lazy\n >\n <Button\n rightIcon={disableArrow ? undefined : rightIcon}\n {...buttonProps}\n ref={buttonRef}\n onClick={handleClick}\n />\n </Popover>\n );\n};\n","import * as React from \"react\";\nimport { PrimaryButton, PrimaryButtonProps } from \"@stenajs-webui/elements\";\nimport { ActionMenuButton, ActionMenuButtonProps } from \"./ActionMenuButton\";\n\nexport interface ActionMenuPrimaryButtonProps\n extends Omit<ActionMenuButtonProps, \"buttonComponent\">,\n Pick<PrimaryButtonProps, \"variant\"> {}\n\nexport const ActionMenuPrimaryButton: React.FC<ActionMenuPrimaryButtonProps> = (\n props\n) => {\n return <ActionMenuButton buttonComponent={PrimaryButton} {...props} />;\n};\n","import * as React from \"react\";\nimport { SecondaryButton } from \"@stenajs-webui/elements\";\nimport { ActionMenuButton, ActionMenuButtonProps } from \"./ActionMenuButton\";\n\nexport interface ActionMenuSecondaryButtonProps\n extends Omit<ActionMenuButtonProps, \"buttonComponent\"> {}\n\nexport const ActionMenuSecondaryButton: React.FC<\n ActionMenuSecondaryButtonProps\n> = (props) => {\n return <ActionMenuButton buttonComponent={SecondaryButton} {...props} />;\n};\n","import * as React from \"react\";\nimport { FlatButton } from \"@stenajs-webui/elements\";\nimport { ActionMenuButton, ActionMenuButtonProps } from \"./ActionMenuButton\";\n\nexport interface ActionMenuFlatButtonProps\n extends Omit<ActionMenuButtonProps, \"buttonComponent\"> {}\n\nexport const ActionMenuFlatButton: React.FC<ActionMenuFlatButtonProps> = (\n props\n) => {\n return <ActionMenuButton buttonComponent={FlatButton} {...props} />;\n};\n","import * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { Box, Column, Indent, Row, useBoolean } from \"@stenajs-webui/core\";\nimport { ActionMenu, FlatButton } from \"@stenajs-webui/elements\";\nimport { Popover } from \"@stenajs-webui/tooltip\";\nimport { faAngleDown } from \"@fortawesome/free-solid-svg-icons/faAngleDown\";\nimport { Checkbox, CheckboxProps } from \"@stenajs-webui/forms\";\n\nexport interface CheckboxMenuProps extends CheckboxProps {\n renderMenu: (close: () => void) => ReactNode;\n}\n\nconst border = `1px solid var(--lhds-color-ui-300)`;\n\nexport const CheckboxMenu: React.FC<CheckboxMenuProps> = ({\n renderMenu,\n ...checkboxProps\n}) => {\n const [isOpen, open, close] = useBoolean(false);\n return (\n <Popover\n onClickOutside={close}\n arrow={false}\n visible={isOpen}\n disablePadding\n content={\n renderMenu ? (\n <Column>\n <ActionMenu>{renderMenu(close)}</ActionMenu>\n </Column>\n ) : undefined\n }\n placement={\"bottom-start\"}\n variant={\"outlined\"}\n >\n <Box display={\"inline-block\"}>\n <Row\n spacing={0.5}\n indent\n alignItems={\"center\"}\n border={border}\n borderRadius={\"4px\"}\n >\n <Checkbox {...checkboxProps} />\n <Indent num={0.5} />\n <FlatButton size={\"small\"} onClick={open} leftIcon={faAngleDown} />\n </Row>\n </Box>\n </Popover>\n );\n};\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarSideMenuButton.module.css\";\nimport { DivProps } from \"@stenajs-webui/core\";\nimport { ReactComponent as Hamburger } from \"./svg/bars.svg\";\n\nexport interface SidebarMenuButtonProps extends Pick<DivProps, \"className\"> {\n onClick?: (ev: React.MouseEvent<HTMLButtonElement>) => void;\n}\n\nexport const NavBarSideMenuButton: React.FC<SidebarMenuButtonProps> = ({\n className,\n onClick,\n}) => {\n return (\n <button\n onClick={onClick}\n className={cx(styles.sidebarMenuButton, className)}\n >\n <Hamburger className={styles.icon} />\n </button>\n );\n};\n","import { NavBarVariant } from \"./NavBar\";\n\nconst variantToHeight: Record<NavBarVariant, number> = {\n compact: 40,\n standard: 48,\n relaxed: 64,\n};\n\nexport const getNavbarHeight = (variant: NavBarVariant) =>\n variantToHeight[variant] + \"px\";\n","import { Box, Indent, Row } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBar.module.css\";\nimport {\n NavBarSideMenuButton,\n SidebarMenuButtonProps,\n} from \"./NavBarSideMenuButton\";\nimport { getNavbarHeight } from \"./NavbarHeightStyleUtil\";\n\nexport type NavBarVariant = \"compact\" | \"standard\" | \"relaxed\";\n\nexport interface NavBarProps {\n className?: string;\n showMenuButton?: boolean;\n menuButtonVisibility?: \"visible\" | \"hidden\";\n onClickMenuButton?: SidebarMenuButtonProps[\"onClick\"];\n right?: ReactNode;\n center?: ReactNode;\n left?: ReactNode;\n variant?: NavBarVariant;\n children?: ReactNode;\n}\n\nexport const NavBar: React.FC<NavBarProps> = ({\n left,\n className,\n showMenuButton = false,\n menuButtonVisibility = \"visible\",\n children,\n right,\n center,\n variant = \"standard\",\n onClickMenuButton,\n}) => {\n const currentFlex = center ? 1 : undefined;\n const height = getNavbarHeight(variant);\n return (\n <Row\n height={height}\n minHeight={height}\n justifyContent={\"space-between\"}\n style={{ [\"--swui-nav-bar-height\" as string]: height }}\n className={cx(styles.navBar, className)}\n >\n <Row\n flex={currentFlex}\n justifyContent={\"flex-start\"}\n alignItems={\"center\"}\n >\n {showMenuButton ? (\n <>\n {menuButtonVisibility === \"hidden\" ? (\n <Box width={\"var(--swui-nav-bar-height)\"} />\n ) : (\n <NavBarSideMenuButton onClick={onClickMenuButton} />\n )}\n <Indent />\n </>\n ) : (\n <Indent num={2} />\n )}\n {left ? (\n <>\n {left}\n <Indent num={2} />\n </>\n ) : (\n <Indent num={2} />\n )}\n {children && (\n <>\n <Row justifyContent={\"center\"} alignItems={\"center\"}>\n {React.Children.map(children, (child, index) => (\n <>\n {index > 0 && <Indent />}\n {child}\n </>\n ))}\n </Row>\n </>\n )}\n </Row>\n {center && (\n <Row justifyContent={\"center\"} alignItems={\"center\"}>\n {center}\n </Row>\n )}\n <Row justifyContent={\"flex-end\"} alignItems={\"center\"} flex={currentFlex}>\n {right}\n <Indent num={2} />\n </Row>\n </Row>\n );\n};\n","import { FlatButton, FlatButtonProps } from \"@stenajs-webui/elements\";\nimport * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarButton.module.css\";\n\nexport interface NavBarButtonProps extends FlatButtonProps {\n selected?: boolean;\n}\n\nexport const NavBarButton: React.FC<NavBarButtonProps> = ({\n selected,\n className,\n ...buttonProps\n}) => {\n return (\n <FlatButton\n {...buttonProps}\n className={cx(\n styles.navBarButton,\n selected && styles.selected,\n className\n )}\n />\n );\n};\n","import * as React from \"react\";\nimport { Heading, HeadingProps } from \"@stenajs-webui/core\";\n\ninterface NavBarHeadingProps extends HeadingProps {}\n\nexport const NavBarHeading: React.FC<NavBarHeadingProps> = (headingProps) => {\n return <Heading whiteSpace={\"nowrap\"} color={\"#fff\"} {...headingProps} />;\n};\n","import { useBoolean } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { NavBarButton, NavBarButtonProps } from \"./NavBarButton\";\nimport { Popover } from \"@stenajs-webui/tooltip\";\n\ntype RenderProp = (args: RenderPropArgs) => ReactNode;\n\ninterface RenderPropArgs {\n close: () => void;\n}\n\nexport interface NavBarPopoverButtonProps\n extends Omit<NavBarButtonProps, \"onClick\"> {\n content?: RenderProp;\n}\n\nexport const NavBarPopoverButton: React.FC<NavBarPopoverButtonProps> = ({\n content,\n children,\n ...navBarButtonProps\n}) => {\n const [isOpen, open, close] = useBoolean(false);\n\n return (\n <Popover\n onClickOutside={close}\n triggerTarget={document.body}\n visible={isOpen}\n content={\n <>\n {content && content({ close })}\n {children}\n </>\n }\n >\n <NavBarButton {...navBarButtonProps} onClick={open} />\n </Popover>\n );\n};\n","import { FlatButton, FlatButtonProps } from \"@stenajs-webui/elements\";\nimport * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarNotificationButton.module.css\";\nimport { faBell } from \"@fortawesome/free-solid-svg-icons/faBell\";\nimport { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\n\nexport interface NavBarNotificationButtonProps\n extends Omit<FlatButtonProps, \"leftIcon\" | \"rightIcon\" | \"label\"> {\n count: number;\n unread: boolean;\n icon?: IconDefinition;\n}\n\nexport const NavBarNotificationButton: React.FC<\n NavBarNotificationButtonProps\n> = ({\n count,\n unread = false,\n className,\n labelClassName,\n iconClassName,\n icon = faBell,\n ...buttonProps\n}) => {\n const hasCount = count > 0;\n\n return (\n <FlatButton\n {...buttonProps}\n leftIcon={icon}\n className={cx(\n { [styles.unread]: unread },\n { [styles.hasCount]: hasCount },\n styles.navBarNotificationButton,\n className\n )}\n label={hasCount ? String(count) : undefined}\n labelClassName={cx(labelClassName, styles.label)}\n iconClassName={cx(iconClassName, styles.icon)}\n />\n );\n};\n","import * as React from \"react\";\nimport { TextInput, TextInputProps } from \"@stenajs-webui/forms\";\nimport { Clickable } from \"@stenajs-webui/core\";\nimport { Icon, stenaSearch } from \"@stenajs-webui/elements\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarSearchField.module.css\";\n\ninterface NavBarSearchFieldProps extends TextInputProps {}\n\nexport const NavBarSearchField: React.FC<NavBarSearchFieldProps> = ({\n placeholder = \"Search...\",\n className,\n wrapperClassName,\n ...textInputProps\n}) => {\n return (\n <TextInput\n wrapperClassName={cx(styles.navBarSearchField, wrapperClassName)}\n className={cx(styles.navBarSearchFieldInput, className)}\n placeholder={placeholder}\n contentRight={\n <Clickable>\n <Icon icon={stenaSearch} />\n </Clickable>\n }\n {...textInputProps}\n />\n );\n};\n","import * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarUserButton.module.css\";\nimport { faUser } from \"@fortawesome/free-solid-svg-icons/faUser\";\nimport { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport {\n ActionMenuFlatButton,\n ActionMenuFlatButtonProps,\n} from \"../action-menu-button/ActionMenuFlatButton\";\n\nexport interface NavBarUserButtonProps\n extends Omit<ActionMenuFlatButtonProps, \"label\" | \"leftIcon\" | \"rightIcon\"> {\n username?: string;\n initials?: string;\n icon?: IconDefinition;\n}\n\nexport const NavBarUserButton: React.FC<NavBarUserButtonProps> = ({\n className,\n username,\n initials,\n icon = faUser,\n iconClassName,\n ...buttonProps\n}) => {\n return (\n <ActionMenuFlatButton\n {...buttonProps}\n className={cx(\n { [styles.initials]: initials != null },\n styles.navBarUserButton,\n className\n )}\n leftIcon={username != null ? faUser : undefined}\n label={initials ?? username}\n disableArrow\n />\n );\n};\n","export interface NotificationTheme {\n notificationBg: string;\n notificationHoverBg: string;\n notificationDismissedBg: string;\n notificationDismissedHoverBg: string;\n}\n\nexport const defaultNotificationTheme: NotificationTheme = {\n notificationBg: \"#eaeaea\",\n notificationHoverBg: \"#eeeeee\",\n notificationDismissedBg: \"#ffffff\",\n notificationDismissedHoverBg: \"#f4f4f4\",\n};\n","import { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport { Box, Clickable, Column, Row, Space, Text } from \"@stenajs-webui/core\";\nimport { Icon } from \"@stenajs-webui/elements\";\nimport { cssColor } from \"@stenajs-webui/theme\";\nimport { formatDistance } from \"date-fns\";\nimport * as React from \"react\";\nimport { ReactNode, useMemo } from \"react\";\nimport {\n defaultNotificationTheme,\n NotificationTheme,\n} from \"./NotificationTheme\";\n\nexport interface NotificationProps {\n title?: string;\n text?: string;\n content?: ReactNode;\n dismissed?: boolean;\n date?: Date;\n icon?: IconDefinition;\n iconColor?: string;\n onClick?: () => void;\n theme?: NotificationTheme;\n}\n\nexport const Notification: React.FC<NotificationProps> = ({\n onClick,\n icon,\n iconColor,\n title,\n text,\n content,\n date,\n dismissed,\n theme = defaultNotificationTheme,\n}) => {\n const agoLabel = useMemo(() => {\n if (date) {\n return `${formatDistance(date, new Date())} ago`;\n }\n return undefined;\n }, [date]);\n\n return (\n <Clickable onClick={onClick} style={{ textAlign: \"left\" }}>\n <Box\n background={\n dismissed ? theme.notificationDismissedBg : theme.notificationBg\n }\n hoverBackground={\n dismissed\n ? theme.notificationDismissedHoverBg\n : theme.notificationHoverBg\n }\n spacing\n indent\n >\n <Row width={\"250px\"}>\n {icon && (\n <Row width={\"34px\"} alignItems={\"center\"}>\n <Icon icon={icon} color={iconColor} />\n </Row>\n )}\n <Column flex={1}>\n {title && (\n <>\n <Text>{title}</Text>\n <Space half />\n </>\n )}\n {text && (\n <>\n <Text size={\"small\"}>{text}</Text>\n <Space half />\n </>\n )}\n {content && (\n <>\n {content}\n <Space half />\n </>\n )}\n <Text size={\"small\"} color={cssColor(\"--swui-text-disabled-color\")}>\n {agoLabel}\n </Text>\n </Column>\n </Row>\n </Box>\n </Clickable>\n );\n};\n","import { faInbox } from \"@fortawesome/free-solid-svg-icons/faInbox\";\nimport { Column, Space, Text } from \"@stenajs-webui/core\";\nimport { Icon } from \"@stenajs-webui/elements\";\nimport { cssColor } from \"@stenajs-webui/theme\";\nimport * as React from \"react\";\n\ninterface Props {}\n\nexport const CollapsibleEmptyContent: React.FC<Props> = () => {\n return (\n <Column indent spacing flex={1} alignItems={\"center\"}>\n <Icon icon={faInbox} color={cssColor(\"--lhds-color-ui-500\")} />\n <Space />\n <Text size={\"small\"} color={cssColor(\"--lhds-color-ui-500\")}>\n No content\n </Text>\n </Column>\n );\n};\n","import cx from \"classnames\";\nimport * as React from \"react\";\nimport { HTMLAttributes, ReactNode } from \"react\";\nimport styles from \"./Collapsible.module.css\";\nimport { CollapsibleEmptyContent } from \"./CollapsibleEmptyContent\";\n\nexport interface CollapsibleSimpleContentProps {\n contentLeft?: ReactNode;\n contentRight?: ReactNode;\n}\n\nexport const CollapsibleContent: React.FC<\n CollapsibleSimpleContentProps & HTMLAttributes<HTMLDivElement>\n> = ({ contentLeft, contentRight, className, children, ...props }) => {\n return (\n <div className={cx(styles.content, className)} {...props}>\n {contentLeft && <div className={styles.contentLeft}>{contentLeft}</div>}\n {children ?? <CollapsibleEmptyContent />}\n {contentRight && (\n <div className={styles.contentRight}>{contentRight}</div>\n )}\n </div>\n );\n};\n","import { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport { faChevronDown } from \"@fortawesome/free-solid-svg-icons\";\nimport { faChevronUp } from \"@fortawesome/free-solid-svg-icons/faChevronUp\";\nimport { Clickable, ClickableProps, DivProps, Text } from \"@stenajs-webui/core\";\nimport { Icon } from \"@stenajs-webui/elements\";\nimport cx from \"classnames\";\nimport * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { CSSTransition } from \"react-transition-group\";\nimport styles from \"./Collapsible.module.css\";\nimport { CollapsibleContent } from \"./CollapsibleContent\";\nimport { CollapsibleEmptyContent } from \"./CollapsibleEmptyContent\";\n\nexport interface CollapsibleProps\n extends Omit<DivProps, \"onClick\">,\n Pick<ClickableProps, \"onClick\"> {\n label: string;\n contentLeft?: React.ReactNode;\n contentRight?: React.ReactNode;\n collapsed?: boolean;\n disabled?: boolean;\n unmountOnCollapse?: boolean;\n mountOnEnter?: boolean;\n icon?: IconDefinition;\n iconCollapsed?: IconDefinition;\n iconSize?: number;\n autoFocus?: boolean;\n}\n\nexport const mapCSSTime = (value: string): number => {\n const num = parseFloat(value);\n const match = value.match(/m?s/);\n\n switch (match?.[0]) {\n case \"s\":\n return num * 1000;\n case \"ms\":\n return num;\n default:\n return 0;\n }\n};\n\nexport const Collapsible = forwardRef<HTMLButtonElement, CollapsibleProps>(\n function Collapsible(\n {\n label,\n contentLeft,\n contentRight,\n collapsed = false,\n onClick,\n className,\n disabled = false,\n unmountOnCollapse = false,\n mountOnEnter = true,\n icon = faChevronUp,\n iconCollapsed = faChevronDown,\n iconSize = 8,\n children,\n autoFocus = false,\n ...divProps\n },\n ref\n ) {\n const divRef = React.useRef<HTMLDivElement>(null);\n\n const timeout = divRef.current\n ? mapCSSTime(\n getComputedStyle(divRef.current).getPropertyValue(\n \"--swui-collapsible-animation-time\"\n )\n )\n : undefined;\n\n return (\n <div\n className={cx(styles.collapsible, className)}\n aria-expanded={!collapsed}\n ref={divRef}\n {...divProps}\n >\n <Clickable\n disableFocusHighlight\n disableOpacityOnClick\n className={styles.header}\n onClick={onClick}\n disabled={disabled}\n autoFocus={autoFocus}\n ref={ref}\n >\n {contentLeft && (\n <div className={styles.contentLeft}>{contentLeft}</div>\n )}\n <div className={styles.label}>\n <Text\n color={\"var(--swui-collapsible-header-text-color)\"}\n className={styles.headerText}\n >\n {label}\n </Text>\n </div>\n {contentRight && (\n <div className={styles.contentRight}>{contentRight}</div>\n )}\n <Icon\n icon={collapsed ? iconCollapsed : icon}\n className={styles.indicator}\n size={iconSize}\n fixedWidth\n />\n </Clickable>\n <CSSTransition\n in={!collapsed}\n timeout={{\n enter: timeout,\n }}\n classNames={{\n enter: styles.contentEnter,\n enterActive: styles.contentEnterActive,\n exit: styles.contentExit,\n exitActive: styles.contentExitActive,\n exitDone: styles.contentExitDone,\n }}\n mountOnEnter={mountOnEnter}\n unmountOnExit={unmountOnCollapse}\n >\n <div role={\"region\"}>\n {children ?? (\n <CollapsibleContent>\n <CollapsibleEmptyContent />\n </CollapsibleContent>\n )}\n </div>\n </CSSTransition>\n </div>\n );\n }\n);\n","import { Checkbox, CheckboxProps } from \"@stenajs-webui/forms\";\nimport * as React from \"react\";\nimport { Collapsible, CollapsibleProps } from \"./Collapsible\";\n\nexport interface CollapsibleWithCheckboxProps\n extends Omit<CollapsibleProps, \"contentLeft\" | \"onChange\">,\n Pick<\n CheckboxProps,\n \"value\" | \"onValueChange\" | \"onChange\" | \"indeterminate\"\n > {}\n\nexport const CollapsibleWithCheckbox: React.FC<\n CollapsibleWithCheckboxProps\n> = ({\n value,\n onValueChange,\n onChange,\n indeterminate,\n ...collapsibleProps\n}) => {\n return (\n <Collapsible\n contentLeft={\n <Checkbox\n value={value}\n indeterminate={indeterminate}\n onValueChange={onValueChange}\n onChange={onChange}\n onClick={(ev) => ev.stopPropagation()}\n />\n }\n {...collapsibleProps}\n />\n );\n};\n","import { ButtonElementProps, Clickable } from \"@stenajs-webui/core\";\nimport cx from \"classnames\";\nimport * as React from \"react\";\nimport styles from \"./Collapsible.module.css\";\nimport { CollapsibleSimpleContentProps } from \"./CollapsibleContent\";\nimport { CollapsibleEmptyContent } from \"./CollapsibleEmptyContent\";\n\nexport interface CollapsibleClickableContentProps\n extends CollapsibleSimpleContentProps,\n ButtonElementProps {}\n\nexport const CollapsibleClickableContent: React.FC<\n CollapsibleClickableContentProps\n> = ({ contentLeft, contentRight, className, onClick, children, ...props }) => {\n return (\n <Clickable\n disableFocusHighlight\n disableOpacityOnClick\n className={cx(styles.content, className)}\n onClick={onClick}\n {...props}\n >\n {contentLeft && <div className={styles.contentLeft}>{contentLeft}</div>}\n {children ?? <CollapsibleEmptyContent />}\n {contentRight && (\n <div className={styles.contentRight}>{contentRight}</div>\n )}\n </Clickable>\n );\n};\n","import { DivProps } from \"@stenajs-webui/core\";\nimport cx from \"classnames\";\nimport * as React from \"react\";\nimport styles from \"./Collapsible.module.css\";\nimport {\n CollapsibleContent,\n CollapsibleSimpleContentProps,\n} from \"./CollapsibleContent\";\n\nexport interface CollapsibleGroupHeadingProps\n extends CollapsibleSimpleContentProps,\n DivProps {}\n\nexport const CollapsibleGroupHeading: React.FC<\n CollapsibleGroupHeadingProps\n> = ({ className, ...props }) => (\n <CollapsibleContent\n className={cx(styles.groupHeading, className)}\n {...props}\n />\n);\n","import { Box } from \"@stenajs-webui/core\";\nimport { Banner } from \"@stenajs-webui/elements\";\nimport * as React from \"react\";\n\nexport interface ErrorPanelProps {\n text?: string;\n}\n\nexport const ErrorPanel: React.FC<ErrorPanelProps> = ({\n text = \"Something unexpected happened.\",\n}) => {\n return (\n <Box justifyContent={\"center\"} alignItems={\"center\"}>\n <Banner variant={\"error\"} headerText={text} />\n </Box>\n );\n};\n","import { Box } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { ErrorPanel, ErrorPanelProps } from \"./ErrorPanel\";\n\nexport const ErrorScreen: React.FC<ErrorPanelProps> = (props) => {\n return (\n <Box\n width={\"100%\"}\n height={\"100%\"}\n justifyContent={\"center\"}\n alignItems={\"center\"}\n >\n <ErrorPanel {...props} />\n </Box>\n );\n};\n","import { Box, Heading, Space } from \"@stenajs-webui/core\";\nimport { Spinner } from \"@stenajs-webui/elements\";\nimport * as React from \"react\";\n\nexport interface LoadingPanelProps {\n text?: string;\n}\n\nexport const LoadingPanel: React.FC<LoadingPanelProps> = ({\n text = \"Loading...\",\n}) => {\n return (\n <Box alignItems={\"center\"}>\n <Spinner size={\"small\"} />\n <Space num={4} />\n <Heading variant={\"h4\"}>{text}</Heading>\n </Box>\n );\n};\n","import { Box } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { LoadingPanel, LoadingPanelProps } from \"./LoadingPanel\";\n\nexport const LoadingScreen: React.FC<LoadingPanelProps> = (props) => {\n return (\n <Box\n width={\"100%\"}\n height={\"100%\"}\n justifyContent={\"center\"}\n alignItems={\"center\"}\n >\n <LoadingPanel {...props} />\n </Box>\n );\n};\n","import { Box, Row, SeparatorLine, Space } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { cssColor } from \"@stenajs-webui/theme\";\n\nexport interface PageHeaderProps {\n renderBreadCrumbs?: () => ReactNode;\n renderPageHeading?: () => ReactNode;\n renderTabs?: () => ReactNode;\n children?: ReactNode;\n}\n\nexport const PageHeader: React.FC<PageHeaderProps> = ({\n renderBreadCrumbs,\n renderPageHeading,\n renderTabs,\n children,\n}) => {\n return (\n <Box shadow={\"box\"} background={cssColor(\"--lhds-color-ui-50\")}>\n <Box indent={3}>\n {renderBreadCrumbs && <Row spacing={1.25}>{renderBreadCrumbs()}</Row>}\n {renderPageHeading?.()}\n {renderTabs?.()}\n </Box>\n {children && (\n <>\n {!renderTabs && <Space />}\n <SeparatorLine />\n {children}\n </>\n )}\n </Box>\n );\n};\n","import * as React from \"react\";\nimport { BoxProps, Row } from \"@stenajs-webui/core\";\n\nexport interface PageHeaderRowProps extends BoxProps {}\n\nexport const PageHeaderRow: React.FC<PageHeaderRowProps> = (props) => (\n <Row indent={3} spacing {...props} />\n);\n","import * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { Heading, Row } from \"@stenajs-webui/core\";\n\nexport type PageHeadingVariant = \"compact\" | \"standard\" | \"relaxed\";\n\ninterface PageHeadingProps {\n contentLeft?: ReactNode;\n contentRight?: ReactNode;\n heading: string;\n variant?: PageHeadingVariant;\n}\n\nconst variantToSpacing: Record<PageHeadingVariant, number> = {\n compact: 1,\n standard: 1.5,\n relaxed: 2,\n};\n\nexport const PageHeading: React.VFC<PageHeadingProps> = ({\n heading,\n variant = \"standard\",\n contentLeft,\n contentRight,\n}) => (\n <Row spacing={variantToSpacing[variant]} alignItems={\"center\"} gap={2}>\n <Heading variant={\"h3\"}>{heading}</Heading>\n <Row alignItems={\"center\"}>{contentLeft}</Row>\n <Row style={{ marginLeft: \"auto\" }} alignItems={\"center\"}>\n {contentRight}\n </Row>\n </Row>\n);\n","import * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./SidebarMenuCloseButton.module.css\";\nimport { Box, ButtonElementProps } from \"@stenajs-webui/core\";\nimport { ReactComponent as CloseIcon } from \"./svg/close.svg\";\n\nexport interface SidebarMenuCloseButtonProps extends ButtonElementProps {}\n\nexport const SidebarMenuCloseButton: React.FC<SidebarMenuCloseButtonProps> = ({\n className,\n onClick,\n}) => {\n return (\n <button\n onClick={onClick}\n className={cx(styles.sidebarMenuCloseButton, className)}\n >\n <Box className={styles.iconWrapper}>\n <CloseIcon className={styles.icon} />\n </Box>\n </button>\n );\n};\n","import { SeparatorLine, SeparatorLineProps } from \"@stenajs-webui/core\";\nimport { cssColor } from \"@stenajs-webui/theme\";\nimport * as React from \"react\";\n\nexport interface SidebarMenuSeparatorProps extends SeparatorLineProps {}\n\nexport const SidebarMenuSeparator: React.FC<SidebarMenuSeparatorProps> = (\n separatorLineProps\n) => (\n <SeparatorLine\n color={cssColor(\"--lhds-color-blue-600\")}\n {...separatorLineProps}\n />\n);\n","import { Box, BoxProps, Column, Space } from \"@stenajs-webui/core\";\nimport cx from \"classnames\";\nimport * as React from \"react\";\nimport styles from \"./SidebarMenu.module.css\";\nimport {\n SidebarMenuCloseButton,\n SidebarMenuCloseButtonProps,\n} from \"./SidebarMenuCloseButton\";\nimport { getNavbarHeight } from \"../nav-bar/NavbarHeightStyleUtil\";\nimport { NavBarVariant } from \"../nav-bar/NavBar\";\nimport { SidebarMenuSeparator } from \"./SidebarMenuSeparator\";\n\nexport type SidebarMenuVariant = NavBarVariant;\n\nexport interface SidebarMenuProps extends BoxProps {\n onCloseClick?: SidebarMenuCloseButtonProps[\"onClick\"];\n hideCloseButton?: boolean;\n collapsed?: boolean;\n variant?: SidebarMenuVariant;\n}\n\nexport const SidebarMenu: React.FC<SidebarMenuProps> = ({\n className,\n children,\n onCloseClick,\n collapsed = false,\n hideCloseButton = false,\n variant = \"standard\",\n ...boxProps\n}) => {\n const height = getNavbarHeight(variant);\n\n return (\n <Box\n className={cx(\n styles.sidebarMenu,\n collapsed ? styles.collapsed : null,\n className\n )}\n style={{\n [\"--swui-sidebar-menu-item-height\" as string]: height,\n [\"--swui-nav-bar-height\" as string]: height,\n }}\n data-collapsed={collapsed || undefined}\n {...boxProps}\n >\n {!hideCloseButton && (\n <>\n <SidebarMenuCloseButton onClick={onCloseClick} />\n <SidebarMenuSeparator />\n <Space />\n </>\n )}\n <Box\n className={styles.sidebarMenuContent}\n height={\"100%\"}\n background={\"var(--current-background-color)\"}\n >\n <Column flex={1}>{children}</Column>\n </Box>\n </Box>\n );\n};\n","import * as React from \"react\";\nimport { SidebarMenu, SidebarMenuVariant } from \"../SidebarMenu\";\nimport { NavBarSideMenuButton } from \"../../nav-bar/NavBarSideMenuButton\";\nimport { ReactNode } from \"react\";\n\ninterface RailMenuProps {\n variant?: SidebarMenuVariant;\n onClickMenuButton?: () => void;\n children?: ReactNode;\n}\n\nexport const SidebarRailMenu: React.FC<RailMenuProps> = ({\n variant,\n onClickMenuButton,\n children,\n}) => {\n return (\n <SidebarMenu\n collapsed\n position={\"fixed\"}\n left={0}\n top={0}\n hideCloseButton\n variant={variant}\n >\n <NavBarSideMenuButton onClick={onClickMenuButton} />\n {children}\n </SidebarMenu>\n );\n};\n","import { ButtonElementProps, Indent, Row } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { CSSProperties, ReactNode } from \"react\";\nimport { ButtonContent, ButtonContentProps } from \"@stenajs-webui/elements\";\nimport contentStyles from \"./SidebarMenuContent.module.css\";\nimport cx from \"classnames\";\n\nexport type RenderLinkProps = ButtonElementProps & { activeClassName: string };\n\nexport interface SidebarMenuLinkProps\n extends ButtonElementProps,\n Pick<\n ButtonContentProps,\n | \"label\"\n | \"loading\"\n | \"left\"\n | \"leftIcon\"\n | \"right\"\n | \"rightIcon\"\n | \"success\"\n > {\n renderLink?: SidebarLinkRenderer;\n width?: CSSProperties[\"width\"];\n selected?: boolean;\n indent?: boolean;\n}\n\nexport type SidebarLinkRenderer = (props: RenderLinkProps) => ReactNode;\n\nexport const defaultRenderLink: SidebarLinkRenderer = ({\n activeClassName,\n ...props\n}) => {\n return <button {...props} />;\n};\n\nexport const SidebarMenuLink: React.FC<SidebarMenuLinkProps> = ({\n className,\n children,\n selected,\n indent,\n label,\n loading,\n left,\n leftIcon,\n right,\n rightIcon,\n success,\n width,\n renderLink = defaultRenderLink,\n style,\n ...buttonProps\n}) => {\n const hasContentLeft = left || leftIcon || loading || success;\n\n const innerClassName = cx(\n contentStyles.button,\n selected ? contentStyles.selected : undefined,\n className\n );\n\n const innerStyle = {\n ...style,\n width,\n height: \"var(--swui-sidebar-menu-item-height)\",\n };\n\n const innerChildren = (\n <Row spacing={1} flex={1} alignItems={\"center\"}>\n {!hasContentLeft && <Indent />}\n {indent && <Indent num={3.5} />}\n <ButtonContent\n label={label}\n loading={loading}\n left={left}\n leftIcon={leftIcon}\n right={right}\n rightIcon={rightIcon}\n success={success}\n labelClassName={contentStyles.label}\n spinnerClassName={contentStyles.spinner}\n iconClassName={cx(contentStyles.icon)}\n leftWrapperClassName={contentStyles.leftWrapper}\n />\n </Row>\n );\n\n return (\n <>\n {renderLink({\n ...buttonProps,\n activeClassName: contentStyles.selected,\n className: innerClassName,\n children: innerChildren,\n style: innerStyle,\n })}\n </>\n );\n};\n","import { Box, Text, TextProps } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport styles from \"./SidebarMenuHeading.module.css\";\nimport {\n CollapsibleContent,\n CollapsibleSimpleContentProps,\n} from \"../collapsible/CollapsibleContent\";\n\nexport interface SidebarMenuHeadingProps\n extends Pick<CollapsibleSimpleContentProps, \"contentLeft\" | \"contentRight\">,\n TextProps {\n label?: string;\n}\n\nexport const SidebarMenuHeading: React.FC<SidebarMenuHeadingProps> = ({\n className,\n label,\n contentLeft,\n contentRight,\n ...textProps\n}) => {\n return (\n <Box spacing={2} indent={2}>\n <CollapsibleContent\n className={styles.sidebarMenuHeading}\n contentLeft={contentLeft}\n contentRight={contentRight}\n >\n <Text\n variant={\"overline\"}\n color={\"var(--swui-sidebar-menu-heading-text-color)\"}\n {...textProps}\n >\n {label}\n </Text>\n </CollapsibleContent>\n </Box>\n );\n};\n","import * as React from \"react\";\nimport { ReactNode, useState } from \"react\";\nimport { Collapsible } from \"../collapsible/Collapsible\";\nimport { Box, Column, Indent } from \"@stenajs-webui/core\";\nimport { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport styles from \"./SidebarMenuCollapsible.module.css\";\nimport { Icon } from \"@stenajs-webui/elements\";\n\nexport interface SidebarMenuCollapsibleProps {\n label: string;\n collapsed?: boolean;\n leftIcon?: IconDefinition;\n children?: ReactNode;\n}\n\nexport const SidebarMenuCollapsible: React.FC<SidebarMenuCollapsibleProps> = ({\n children,\n label,\n leftIcon,\n}) => {\n const [collapsed, setCollapsed] = useState<boolean>(false);\n\n return (\n <Box background={\"var(--current-background-color)\"}>\n <Collapsible\n className={styles.sidebarMenuCollapsible}\n label={label}\n collapsed={collapsed}\n onClick={() => setCollapsed(!collapsed)}\n contentLeft={\n leftIcon ? (\n <Box\n width={\"var(--swui-sidebar-menu-item-height)\"}\n alignItems={\"center\"}\n justifyContent={\"center\"}\n >\n <Icon\n icon={leftIcon}\n size={16}\n color={\"var(--current-text-color)\"}\n data-hover={true}\n />\n </Box>\n ) : (\n <Indent num={1} />\n )\n }\n >\n <Column flex={1}>{children}</Column>\n </Collapsible>\n </Box>\n );\n};\n","import { SidebarMenuLink } from \"../../SidebarMenuLink\";\nimport * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { SidebarMenuHeading } from \"../../SidebarMenuHeading\";\nimport { SidebarMenuSeparator } from \"../../SidebarMenuSeparator\";\nimport { SidebarMenuCollapsible } from \"../../SidebarMenuCollapsible\";\nimport { Box, exhaustSwitchCaseElseThrow } from \"@stenajs-webui/core\";\nimport { Popover } from \"@stenajs-webui/tooltip\";\nimport { SidebarItem } from \"./types\";\n\nexport const renderItemsExpanded = (\n items: SidebarItem[],\n indent = false\n): ReactNode[] => {\n return items.map((item, index) => {\n switch (item.type) {\n case \"heading\":\n return <SidebarMenuHeading key={index} label={item.label} />;\n case \"separator\":\n return <SidebarMenuSeparator key={index} />;\n case \"link\": {\n const { type, ...linkProps } = item;\n return <SidebarMenuLink key={index} indent={indent} {...linkProps} />;\n }\n case \"grouped\":\n return (\n <SidebarMenuCollapsible\n key={index}\n leftIcon={item.leftIcon}\n label={item.label}\n >\n {renderItemsExpanded(item.items, true)}\n </SidebarMenuCollapsible>\n );\n default:\n return exhaustSwitchCaseElseThrow(item);\n }\n });\n};\n\ninterface RailRendererOptions {\n popupMinWidth: string | number;\n}\n\nexport const renderItemsInRail = (\n items: SidebarItem[],\n { popupMinWidth }: RailRendererOptions\n): ReactNode[] => {\n return items.map((item, index) => {\n switch (item.type) {\n case \"heading\":\n return null;\n case \"separator\":\n return <SidebarMenuSeparator key={index} />;\n case \"link\": {\n const { type, label, ...linkProps } = item;\n return (\n <SidebarMenuLink\n key={index}\n title={label}\n width={\"var(--swui-sidebar-menu-item-height)\"}\n {...linkProps}\n />\n );\n }\n case \"grouped\":\n return (\n <div key={index}>\n <Popover\n appendTo={\"parent\"}\n arrow={false}\n offset={[0, 0]}\n placement={\"right-start\"}\n trigger={\"focusin mouseenter click\"}\n disablePadding\n lazy\n content={\n <Box\n minWidth={popupMinWidth}\n background={\"var(--lhds-color-blue-500)\"}\n >\n <SidebarMenuHeading label={item.label} />\n {renderItemsExpanded(item.items)}\n </Box>\n }\n >\n <SidebarMenuLink\n title={item.label}\n width={\"var(--swui-sidebar-menu-item-height)\"}\n leftIcon={item.leftIcon}\n />\n </Popover>\n </div>\n );\n default:\n return exhaustSwitchCaseElseThrow(item);\n }\n });\n};\n","import * as React from \"react\";\nimport { Box, Indent, Row, Space, Text } from \"@stenajs-webui/core\";\nimport { ReactNode } from \"react\";\nimport { cssColor } from \"@stenajs-webui/theme\";\n\ninterface SelectedItemsActionsProps {\n numItemsSelected?: number;\n label?: ReactNode | string;\n afterLabelContent?: ReactNode;\n rightContent?: ReactNode;\n}\n\nconst borderTop = `1px solid ${cssColor(\"--lhds-color-orange-400\")}`;\n\nexport const SelectedItemsActionsPanel: React.FC<SelectedItemsActionsProps> = ({\n numItemsSelected,\n label,\n afterLabelContent,\n rightContent,\n}) => (\n <Row\n indent={3}\n spacing\n minHeight={\"56px\"}\n justifyContent={\"space-between\"}\n alignItems={\"center\"}\n borderTop={borderTop}\n background={cssColor(\"--lhds-color-orange-50\")}\n >\n <Row alignItems={\"center\"}>\n {numItemsSelected != null || label != null ? (\n <>\n {numItemsSelected != null ? (\n <>\n <Text variant={\"bold\"}>{numItemsSelected}</Text>\n <Space />\n <Text>item{numItemsSelected === 1 ? \"\" : \"s\"} selected</Text>\n </>\n ) : label != null ? (\n <>{typeof label === \"string\" ? <Text>{label}</Text> : label}</>\n ) : null}\n </>\n ) : null}\n {afterLabelContent ? (\n <>\n <Indent />\n <Box>{afterLabelContent}</Box>\n </>\n ) : null}\n </Row>\n <Box>{rightContent}</Box>\n </Row>\n);\n"],"names":["faAngleDown","styles","Hamburger","CloseIcon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../src/components/action-menu-button/ActionMenuButton.tsx","../src/components/action-menu-button/ActionMenuPrimaryButton.tsx","../src/components/action-menu-button/ActionMenuSecondaryButton.tsx","../src/components/action-menu-button/ActionMenuFlatButton.tsx","../src/components/checkbox-menu/CheckboxMenu.tsx","../src/components/nav-bar/svg/bars.svg","../src/components/nav-bar/NavBarSideMenuButton.tsx","../src/components/nav-bar/NavbarHeightStyleUtil.ts","../src/components/nav-bar/NavBar.tsx","../src/components/nav-bar/NavBarButton.tsx","../src/components/nav-bar/NavBarHeading.tsx","../src/components/nav-bar/NavBarPopoverButton.tsx","../src/components/nav-bar/NavBarNotificationButton.tsx","../src/components/nav-bar/NavBarSearchField.tsx","../src/components/nav-bar/NavBarUserButton.tsx","../src/components/notifications/NotificationTheme.ts","../src/components/notifications/Notification.tsx","../src/components/collapsible/CollapsibleEmptyContent.tsx","../src/components/collapsible/CollapsibleContent.tsx","../src/components/collapsible/Collapsible.tsx","../src/components/collapsible/CollapsibleWithCheckbox.tsx","../src/components/collapsible/CollapsibleClickableContent.tsx","../src/components/collapsible/CollapsibleGroupHeading.tsx","../src/components/error-panel/ErrorPanel.tsx","../src/components/error-panel/ErrorScreen.tsx","../src/components/loading-panel/LoadingPanel.tsx","../src/components/loading-panel/LoadingScreen.tsx","../src/components/page-header/PageHeader.tsx","../src/components/page-header/PageHeaderRow.tsx","../src/components/page-header/PageHeading.tsx","../src/components/sidebar-menu/svg/close.svg","../src/components/sidebar-menu/SidebarMenuCloseButton.tsx","../src/components/sidebar-menu/SidebarMenuSeparator.tsx","../src/components/sidebar-menu/SidebarMenu.tsx","../src/components/sidebar-menu/rail/SidebarRailMenu.tsx","../src/components/sidebar-menu/SidebarMenuLink.tsx","../src/components/sidebar-menu/SidebarMenuHeading.tsx","../src/components/sidebar-menu/SidebarMenuCollapsible.tsx","../src/components/sidebar-menu/rail/renderer/RailRenderer.tsx","../src/components/selected-items-actions-panel/SelectedItemsActionsPanel.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { ReactNode, useMemo, useRef } from \"react\";\nimport {\n ActionMenu,\n ActionMenuContext,\n ActionMenuProps,\n FlatButton,\n PrimaryButton,\n PrimaryButtonProps,\n SecondaryButton,\n stenaAngleDown,\n} from \"@stenajs-webui/elements\";\nimport { useBoolean } from \"@stenajs-webui/core\";\nimport { Popover, PopoverProps } from \"@stenajs-webui/tooltip\";\nimport { Plugin as TippyPlugin, Props as TippyProps } from \"tippy.js\";\n\nexport interface ActionMenuButtonProps\n extends Omit<\n PrimaryButtonProps,\n \"variant\" | \"loading\" | \"loadingLabel\" | \"success\" | \"successLabel\"\n > {\n /** The content of the Action Menu. */\n renderItems: (close: () => void) => ReactNode;\n /** The placement of the Action Menu. */\n placement?: PopoverProps[\"placement\"];\n /** Z-index of the Action Menu */\n zIndex?: number;\n /** Portal target, HTML element. If not set, portal is not used. */\n portalTarget?: PopoverProps[\"appendTo\"];\n menuWidth?: ActionMenuProps[\"width\"];\n menuTop?: ActionMenuProps[\"top\"];\n buttonComponent:\n | typeof PrimaryButton\n | typeof SecondaryButton\n | typeof FlatButton;\n disableArrow?: boolean;\n}\n\nexport const ActionMenuButton: React.FC<ActionMenuButtonProps> = ({\n renderItems,\n placement = \"bottom\",\n buttonComponent: Button,\n rightIcon = stenaAngleDown,\n portalTarget = \"parent\",\n zIndex,\n menuWidth,\n menuTop,\n onClick,\n disableArrow = false,\n ...buttonProps\n}) => {\n const [isOpen, open, close, toggle] = useBoolean(false);\n\n const buttonRef = useRef<HTMLButtonElement>(null);\n\n const focusManager: TippyPlugin<TippyProps> = {\n name: \"focusManager\",\n defaultValue: true,\n fn({ popper }) {\n let restoreFocus = false;\n\n const closeOnEscape = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n restoreFocus = true;\n close();\n }\n if (event.key === \"Enter\" || event.key === \" \") {\n restoreFocus = true;\n }\n };\n\n return {\n onCreate() {\n popper.addEventListener(\"keydown\", closeOnEscape);\n },\n onDestroy() {\n popper.removeEventListener(\"keydown\", closeOnEscape);\n },\n onMount() {\n restoreFocus = false;\n popper\n .querySelector<HTMLElement>(\"button:not([disabled]), a[href]\")\n ?.focus();\n },\n onHide() {\n if (buttonRef.current && restoreFocus) {\n buttonRef.current.focus();\n }\n },\n };\n },\n };\n\n const contextValue = useMemo(() => ({ open, close }), [open, close]);\n\n const handleClick = (\n event: React.MouseEvent<HTMLButtonElement, MouseEvent>\n ) => {\n onClick?.(event);\n toggle();\n };\n\n return (\n <Popover\n disablePadding\n visible={isOpen}\n onClickOutside={close}\n placement={placement}\n content={\n isOpen && (\n <ActionMenu\n variant={\"outlined\"}\n width={menuWidth}\n top={menuTop}\n trapFocus\n >\n <ActionMenuContext.Provider value={contextValue}>\n {renderItems(close)}\n </ActionMenuContext.Provider>\n </ActionMenu>\n )\n }\n arrow={false}\n appendTo={portalTarget}\n zIndex={zIndex}\n plugins={[focusManager]}\n lazy\n >\n <Button\n rightIcon={disableArrow ? undefined : rightIcon}\n {...buttonProps}\n ref={buttonRef}\n onClick={handleClick}\n />\n </Popover>\n );\n};\n","import * as React from \"react\";\nimport { PrimaryButton, PrimaryButtonProps } from \"@stenajs-webui/elements\";\nimport { ActionMenuButton, ActionMenuButtonProps } from \"./ActionMenuButton\";\n\nexport interface ActionMenuPrimaryButtonProps\n extends Omit<ActionMenuButtonProps, \"buttonComponent\">,\n Pick<PrimaryButtonProps, \"variant\"> {}\n\nexport const ActionMenuPrimaryButton: React.FC<ActionMenuPrimaryButtonProps> = (\n props\n) => {\n return <ActionMenuButton buttonComponent={PrimaryButton} {...props} />;\n};\n","import * as React from \"react\";\nimport { SecondaryButton } from \"@stenajs-webui/elements\";\nimport { ActionMenuButton, ActionMenuButtonProps } from \"./ActionMenuButton\";\n\nexport interface ActionMenuSecondaryButtonProps\n extends Omit<ActionMenuButtonProps, \"buttonComponent\"> {}\n\nexport const ActionMenuSecondaryButton: React.FC<\n ActionMenuSecondaryButtonProps\n> = (props) => {\n return <ActionMenuButton buttonComponent={SecondaryButton} {...props} />;\n};\n","import * as React from \"react\";\nimport { FlatButton } from \"@stenajs-webui/elements\";\nimport { ActionMenuButton, ActionMenuButtonProps } from \"./ActionMenuButton\";\n\nexport interface ActionMenuFlatButtonProps\n extends Omit<ActionMenuButtonProps, \"buttonComponent\"> {}\n\nexport const ActionMenuFlatButton: React.FC<ActionMenuFlatButtonProps> = (\n props\n) => {\n return <ActionMenuButton buttonComponent={FlatButton} {...props} />;\n};\n","import * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { Box, Column, Indent, Row, useBoolean } from \"@stenajs-webui/core\";\nimport {\n ActionMenu,\n FlatButton,\n stenaAngleDown,\n} from \"@stenajs-webui/elements\";\nimport { Popover } from \"@stenajs-webui/tooltip\";\nimport { Checkbox, CheckboxProps } from \"@stenajs-webui/forms\";\n\nexport interface CheckboxMenuProps extends CheckboxProps {\n renderMenu: (close: () => void) => ReactNode;\n}\n\nconst border = `1px solid var(--lhds-color-ui-300)`;\n\nexport const CheckboxMenu: React.FC<CheckboxMenuProps> = ({\n renderMenu,\n ...checkboxProps\n}) => {\n const [isOpen, open, close] = useBoolean(false);\n return (\n <Popover\n onClickOutside={close}\n arrow={false}\n visible={isOpen}\n disablePadding\n content={\n renderMenu ? (\n <Column>\n <ActionMenu>{renderMenu(close)}</ActionMenu>\n </Column>\n ) : undefined\n }\n placement={\"bottom-start\"}\n variant={\"outlined\"}\n >\n <Box display={\"inline-block\"}>\n <Row\n spacing={0.5}\n indent\n alignItems={\"center\"}\n border={border}\n borderRadius={\"4px\"}\n >\n <Checkbox {...checkboxProps} />\n <Indent num={0.5} />\n <FlatButton size={\"small\"} onClick={open} leftIcon={stenaAngleDown} />\n </Row>\n </Box>\n </Popover>\n );\n};\n","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMiw1IEwyLDUgQzIuMTE5OTIzNzMsNSAyLDQuODUwNzYxNTggMiw1IEwyLDMgQzIsMy4xNDkyMzg0MiAyLjExOTkyMzczLDMgMiwzIEwyMiwzIEMyMS44ODAwNzYzLDMgMjIsMy4xNDkyMzg0MiAyMiwzIEwyMiw1IEMyMiw0Ljg1MDc2MTU4IDIxLjg4MDA3NjMsNSAyMiw1IFogTTIyLDEzIEwyLDEzIEMyLjExOTkyMzczLDEzIDIsMTIuODUwNzYxNiAyLDEzIEwyLDExIEMyLDExLjE0OTIzODQgMi4xMTk5MjM3MywxMSAyLDExIEwyMiwxMSBDMjEuODgwMDc2MywxMSAyMiwxMS4xNDkyMzg0IDIyLDExIEwyMiwxMyBDMjIsMTIuODUwNzYxNiAyMS44ODAwNzYzLDEzIDIyLDEzIFogTTIyLDIxIEwyLDIxIEMyLjExOTkyMzczLDIxIDIsMjAuODUwNzYxNiAyLDIxIEwyLDE5IEMyLDE5LjE0OTIzODQgMi4xMTk5MjM3MywxOSAyLDE5IEwyMiwxOSBDMjEuODgwMDc2MywxOSAyMiwxOS4xNDkyMzg0IDIyLDE5IEwyMiwyMSBDMjIsMjAuODUwNzYxNiAyMS44ODAwNzYzLDIxIDIyLDIxIFoiLz4KPC9zdmc+Cg==\"","import * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarSideMenuButton.module.css\";\nimport { DivProps } from \"@stenajs-webui/core\";\nimport { ReactComponent as Hamburger } from \"./svg/bars.svg\";\n\nexport interface SidebarMenuButtonProps extends Pick<DivProps, \"className\"> {\n onClick?: (ev: React.MouseEvent<HTMLButtonElement>) => void;\n}\n\nexport const NavBarSideMenuButton: React.FC<SidebarMenuButtonProps> = ({\n className,\n onClick,\n}) => {\n return (\n <button\n onClick={onClick}\n className={cx(styles.sidebarMenuButton, className)}\n >\n <Hamburger className={styles.icon} />\n </button>\n );\n};\n","import { NavBarVariant } from \"./NavBar\";\n\nconst variantToHeight: Record<NavBarVariant, number> = {\n compact: 40,\n standard: 48,\n relaxed: 64,\n};\n\nexport const getNavbarHeight = (variant: NavBarVariant) =>\n variantToHeight[variant] + \"px\";\n","import { Box, Indent, Row } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBar.module.css\";\nimport {\n NavBarSideMenuButton,\n SidebarMenuButtonProps,\n} from \"./NavBarSideMenuButton\";\nimport { getNavbarHeight } from \"./NavbarHeightStyleUtil\";\n\nexport type NavBarVariant = \"compact\" | \"standard\" | \"relaxed\";\n\nexport interface NavBarProps {\n className?: string;\n showMenuButton?: boolean;\n menuButtonVisibility?: \"visible\" | \"hidden\";\n onClickMenuButton?: SidebarMenuButtonProps[\"onClick\"];\n right?: ReactNode;\n center?: ReactNode;\n left?: ReactNode;\n variant?: NavBarVariant;\n children?: ReactNode;\n}\n\nexport const NavBar: React.FC<NavBarProps> = ({\n left,\n className,\n showMenuButton = false,\n menuButtonVisibility = \"visible\",\n children,\n right,\n center,\n variant = \"standard\",\n onClickMenuButton,\n}) => {\n const currentFlex = center ? 1 : undefined;\n const height = getNavbarHeight(variant);\n return (\n <Row\n height={height}\n minHeight={height}\n justifyContent={\"space-between\"}\n style={{ [\"--swui-nav-bar-height\" as string]: height }}\n className={cx(styles.navBar, className)}\n >\n <Row\n flex={currentFlex}\n justifyContent={\"flex-start\"}\n alignItems={\"center\"}\n >\n {showMenuButton ? (\n <>\n {menuButtonVisibility === \"hidden\" ? (\n <Box width={\"var(--swui-nav-bar-height)\"} />\n ) : (\n <NavBarSideMenuButton onClick={onClickMenuButton} />\n )}\n <Indent />\n </>\n ) : (\n <Indent num={2} />\n )}\n {left ? (\n <>\n {left}\n <Indent num={2} />\n </>\n ) : (\n <Indent num={2} />\n )}\n {children && (\n <>\n <Row justifyContent={\"center\"} alignItems={\"center\"}>\n {React.Children.map(children, (child, index) => (\n <>\n {index > 0 && <Indent />}\n {child}\n </>\n ))}\n </Row>\n </>\n )}\n </Row>\n {center && (\n <Row justifyContent={\"center\"} alignItems={\"center\"}>\n {center}\n </Row>\n )}\n <Row justifyContent={\"flex-end\"} alignItems={\"center\"} flex={currentFlex}>\n {right}\n <Indent num={2} />\n </Row>\n </Row>\n );\n};\n","import { FlatButton, FlatButtonProps } from \"@stenajs-webui/elements\";\nimport * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarButton.module.css\";\n\nexport interface NavBarButtonProps extends FlatButtonProps {\n selected?: boolean;\n}\n\nexport const NavBarButton: React.FC<NavBarButtonProps> = ({\n selected,\n className,\n ...buttonProps\n}) => {\n return (\n <FlatButton\n {...buttonProps}\n className={cx(\n styles.navBarButton,\n selected && styles.selected,\n className\n )}\n />\n );\n};\n","import * as React from \"react\";\nimport { Heading, HeadingProps } from \"@stenajs-webui/core\";\n\ninterface NavBarHeadingProps extends HeadingProps {}\n\nexport const NavBarHeading: React.FC<NavBarHeadingProps> = (headingProps) => {\n return <Heading whiteSpace={\"nowrap\"} color={\"#fff\"} {...headingProps} />;\n};\n","import { useBoolean } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { NavBarButton, NavBarButtonProps } from \"./NavBarButton\";\nimport { Popover } from \"@stenajs-webui/tooltip\";\n\ntype RenderProp = (args: RenderPropArgs) => ReactNode;\n\ninterface RenderPropArgs {\n close: () => void;\n}\n\nexport interface NavBarPopoverButtonProps\n extends Omit<NavBarButtonProps, \"onClick\"> {\n content?: RenderProp;\n}\n\nexport const NavBarPopoverButton: React.FC<NavBarPopoverButtonProps> = ({\n content,\n children,\n ...navBarButtonProps\n}) => {\n const [isOpen, open, close] = useBoolean(false);\n\n return (\n <Popover\n onClickOutside={close}\n triggerTarget={document.body}\n visible={isOpen}\n content={\n <>\n {content && content({ close })}\n {children}\n </>\n }\n >\n <NavBarButton {...navBarButtonProps} onClick={open} />\n </Popover>\n );\n};\n","import { FlatButton, FlatButtonProps } from \"@stenajs-webui/elements\";\nimport * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarNotificationButton.module.css\";\nimport { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport { stenaBell } from \"@stenajs-webui/elements\";\n\nexport interface NavBarNotificationButtonProps\n extends Omit<FlatButtonProps, \"leftIcon\" | \"rightIcon\" | \"label\"> {\n count: number;\n unread: boolean;\n icon?: IconDefinition;\n}\n\nexport const NavBarNotificationButton: React.FC<\n NavBarNotificationButtonProps\n> = ({\n count,\n unread = false,\n className,\n labelClassName,\n iconClassName,\n icon = stenaBell,\n ...buttonProps\n}) => {\n const hasCount = count > 0;\n\n return (\n <FlatButton\n {...buttonProps}\n leftIcon={icon}\n className={cx(\n { [styles.unread]: unread },\n { [styles.hasCount]: hasCount },\n styles.navBarNotificationButton,\n className\n )}\n label={hasCount ? String(count) : undefined}\n labelClassName={cx(labelClassName, styles.label)}\n iconClassName={cx(iconClassName, styles.icon)}\n />\n );\n};\n","import * as React from \"react\";\nimport { TextInput, TextInputProps } from \"@stenajs-webui/forms\";\nimport { Clickable } from \"@stenajs-webui/core\";\nimport { Icon, stenaSearch } from \"@stenajs-webui/elements\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarSearchField.module.css\";\n\ninterface NavBarSearchFieldProps extends TextInputProps {}\n\nexport const NavBarSearchField: React.FC<NavBarSearchFieldProps> = ({\n placeholder = \"Search...\",\n className,\n wrapperClassName,\n ...textInputProps\n}) => {\n return (\n <TextInput\n wrapperClassName={cx(styles.navBarSearchField, wrapperClassName)}\n className={cx(styles.navBarSearchFieldInput, className)}\n placeholder={placeholder}\n contentRight={\n <Clickable>\n <Icon icon={stenaSearch} />\n </Clickable>\n }\n {...textInputProps}\n />\n );\n};\n","import * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./NavBarUserButton.module.css\";\nimport { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport {\n ActionMenuFlatButton,\n ActionMenuFlatButtonProps,\n} from \"../action-menu-button/ActionMenuFlatButton\";\nimport { stenaUser } from \"@stenajs-webui/elements\";\nexport interface NavBarUserButtonProps\n extends Omit<ActionMenuFlatButtonProps, \"label\" | \"leftIcon\" | \"rightIcon\"> {\n username?: string;\n initials?: string;\n icon?: IconDefinition;\n}\n\nexport const NavBarUserButton: React.FC<NavBarUserButtonProps> = ({\n className,\n username,\n initials,\n icon = stenaUser,\n iconClassName,\n ...buttonProps\n}) => {\n return (\n <ActionMenuFlatButton\n {...buttonProps}\n className={cx(\n { [styles.initials]: initials != null },\n styles.navBarUserButton,\n className\n )}\n leftIcon={username != null ? stenaUser : undefined}\n label={initials ?? username}\n disableArrow\n />\n );\n};\n","export interface NotificationTheme {\n notificationBg: string;\n notificationHoverBg: string;\n notificationDismissedBg: string;\n notificationDismissedHoverBg: string;\n}\n\nexport const defaultNotificationTheme: NotificationTheme = {\n notificationBg: \"#eaeaea\",\n notificationHoverBg: \"#eeeeee\",\n notificationDismissedBg: \"#ffffff\",\n notificationDismissedHoverBg: \"#f4f4f4\",\n};\n","import { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport { Box, Clickable, Column, Row, Space, Text } from \"@stenajs-webui/core\";\nimport { Icon } from \"@stenajs-webui/elements\";\nimport { cssColor } from \"@stenajs-webui/theme\";\nimport { formatDistance } from \"date-fns\";\nimport * as React from \"react\";\nimport { ReactNode, useMemo } from \"react\";\nimport {\n defaultNotificationTheme,\n NotificationTheme,\n} from \"./NotificationTheme\";\n\nexport interface NotificationProps {\n title?: string;\n text?: string;\n content?: ReactNode;\n dismissed?: boolean;\n date?: Date;\n icon?: IconDefinition;\n iconColor?: string;\n onClick?: () => void;\n theme?: NotificationTheme;\n}\n\nexport const Notification: React.FC<NotificationProps> = ({\n onClick,\n icon,\n iconColor,\n title,\n text,\n content,\n date,\n dismissed,\n theme = defaultNotificationTheme,\n}) => {\n const agoLabel = useMemo(() => {\n if (date) {\n return `${formatDistance(date, new Date())} ago`;\n }\n return undefined;\n }, [date]);\n\n return (\n <Clickable onClick={onClick} style={{ textAlign: \"left\" }}>\n <Box\n background={\n dismissed ? theme.notificationDismissedBg : theme.notificationBg\n }\n hoverBackground={\n dismissed\n ? theme.notificationDismissedHoverBg\n : theme.notificationHoverBg\n }\n spacing\n indent\n >\n <Row width={\"250px\"}>\n {icon && (\n <Row width={\"34px\"} alignItems={\"center\"}>\n <Icon icon={icon} color={iconColor} />\n </Row>\n )}\n <Column flex={1}>\n {title && (\n <>\n <Text>{title}</Text>\n <Space half />\n </>\n )}\n {text && (\n <>\n <Text size={\"small\"}>{text}</Text>\n <Space half />\n </>\n )}\n {content && (\n <>\n {content}\n <Space half />\n </>\n )}\n <Text size={\"small\"} color={cssColor(\"--swui-text-disabled-color\")}>\n {agoLabel}\n </Text>\n </Column>\n </Row>\n </Box>\n </Clickable>\n );\n};\n","import { faInbox } from \"@fortawesome/free-solid-svg-icons/faInbox\";\nimport { Column, Space, Text } from \"@stenajs-webui/core\";\nimport { Icon } from \"@stenajs-webui/elements\";\nimport { cssColor } from \"@stenajs-webui/theme\";\nimport * as React from \"react\";\n\ninterface Props {}\n\nexport const CollapsibleEmptyContent: React.FC<Props> = () => {\n return (\n <Column indent spacing flex={1} alignItems={\"center\"}>\n <Icon icon={faInbox} color={cssColor(\"--lhds-color-ui-500\")} />\n <Space />\n <Text size={\"small\"} color={cssColor(\"--lhds-color-ui-500\")}>\n No content\n </Text>\n </Column>\n );\n};\n","import cx from \"classnames\";\nimport * as React from \"react\";\nimport { HTMLAttributes, ReactNode } from \"react\";\nimport styles from \"./Collapsible.module.css\";\nimport { CollapsibleEmptyContent } from \"./CollapsibleEmptyContent\";\n\nexport interface CollapsibleSimpleContentProps {\n contentLeft?: ReactNode;\n contentRight?: ReactNode;\n}\n\nexport const CollapsibleContent: React.FC<\n CollapsibleSimpleContentProps & HTMLAttributes<HTMLDivElement>\n> = ({ contentLeft, contentRight, className, children, ...props }) => {\n return (\n <div className={cx(styles.content, className)} {...props}>\n {contentLeft && <div className={styles.contentLeft}>{contentLeft}</div>}\n {children ?? <CollapsibleEmptyContent />}\n {contentRight && (\n <div className={styles.contentRight}>{contentRight}</div>\n )}\n </div>\n );\n};\n","import { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport { faChevronDown } from \"@fortawesome/free-solid-svg-icons\";\nimport { faChevronUp } from \"@fortawesome/free-solid-svg-icons/faChevronUp\";\nimport { Clickable, ClickableProps, DivProps, Text } from \"@stenajs-webui/core\";\nimport { Icon } from \"@stenajs-webui/elements\";\nimport cx from \"classnames\";\nimport * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { CSSTransition } from \"react-transition-group\";\nimport styles from \"./Collapsible.module.css\";\nimport { CollapsibleContent } from \"./CollapsibleContent\";\nimport { CollapsibleEmptyContent } from \"./CollapsibleEmptyContent\";\n\nexport interface CollapsibleProps\n extends Omit<DivProps, \"onClick\">,\n Pick<ClickableProps, \"onClick\"> {\n label: string;\n contentLeft?: React.ReactNode;\n contentRight?: React.ReactNode;\n collapsed?: boolean;\n disabled?: boolean;\n unmountOnCollapse?: boolean;\n mountOnEnter?: boolean;\n icon?: IconDefinition;\n iconCollapsed?: IconDefinition;\n iconSize?: number;\n autoFocus?: boolean;\n}\n\nexport const mapCSSTime = (value: string): number => {\n const num = parseFloat(value);\n const match = value.match(/m?s/);\n\n switch (match?.[0]) {\n case \"s\":\n return num * 1000;\n case \"ms\":\n return num;\n default:\n return 0;\n }\n};\n\nexport const Collapsible = forwardRef<HTMLButtonElement, CollapsibleProps>(\n function Collapsible(\n {\n label,\n contentLeft,\n contentRight,\n collapsed = false,\n onClick,\n className,\n disabled = false,\n unmountOnCollapse = false,\n mountOnEnter = true,\n icon = faChevronUp,\n iconCollapsed = faChevronDown,\n iconSize = 8,\n children,\n autoFocus = false,\n ...divProps\n },\n ref\n ) {\n const divRef = React.useRef<HTMLDivElement>(null);\n\n const timeout = divRef.current\n ? mapCSSTime(\n getComputedStyle(divRef.current).getPropertyValue(\n \"--swui-collapsible-animation-time\"\n )\n )\n : undefined;\n\n return (\n <div\n className={cx(styles.collapsible, className)}\n aria-expanded={!collapsed}\n ref={divRef}\n {...divProps}\n >\n <Clickable\n disableFocusHighlight\n disableOpacityOnClick\n className={styles.header}\n onClick={onClick}\n disabled={disabled}\n autoFocus={autoFocus}\n ref={ref}\n >\n {contentLeft && (\n <div className={styles.contentLeft}>{contentLeft}</div>\n )}\n <div className={styles.label}>\n <Text\n color={\"var(--swui-collapsible-header-text-color)\"}\n className={styles.headerText}\n >\n {label}\n </Text>\n </div>\n {contentRight && (\n <div className={styles.contentRight}>{contentRight}</div>\n )}\n <Icon\n icon={collapsed ? iconCollapsed : icon}\n className={styles.indicator}\n size={iconSize}\n fixedWidth\n />\n </Clickable>\n <CSSTransition\n in={!collapsed}\n timeout={{\n enter: timeout,\n }}\n classNames={{\n enter: styles.contentEnter,\n enterActive: styles.contentEnterActive,\n exit: styles.contentExit,\n exitActive: styles.contentExitActive,\n exitDone: styles.contentExitDone,\n }}\n mountOnEnter={mountOnEnter}\n unmountOnExit={unmountOnCollapse}\n >\n <div role={\"region\"}>\n {children ?? (\n <CollapsibleContent>\n <CollapsibleEmptyContent />\n </CollapsibleContent>\n )}\n </div>\n </CSSTransition>\n </div>\n );\n }\n);\n","import { Checkbox, CheckboxProps } from \"@stenajs-webui/forms\";\nimport * as React from \"react\";\nimport { Collapsible, CollapsibleProps } from \"./Collapsible\";\n\nexport interface CollapsibleWithCheckboxProps\n extends Omit<CollapsibleProps, \"contentLeft\" | \"onChange\">,\n Pick<\n CheckboxProps,\n \"value\" | \"onValueChange\" | \"onChange\" | \"indeterminate\"\n > {}\n\nexport const CollapsibleWithCheckbox: React.FC<\n CollapsibleWithCheckboxProps\n> = ({\n value,\n onValueChange,\n onChange,\n indeterminate,\n ...collapsibleProps\n}) => {\n return (\n <Collapsible\n contentLeft={\n <Checkbox\n value={value}\n indeterminate={indeterminate}\n onValueChange={onValueChange}\n onChange={onChange}\n onClick={(ev) => ev.stopPropagation()}\n />\n }\n {...collapsibleProps}\n />\n );\n};\n","import { ButtonElementProps, Clickable } from \"@stenajs-webui/core\";\nimport cx from \"classnames\";\nimport * as React from \"react\";\nimport styles from \"./Collapsible.module.css\";\nimport { CollapsibleSimpleContentProps } from \"./CollapsibleContent\";\nimport { CollapsibleEmptyContent } from \"./CollapsibleEmptyContent\";\n\nexport interface CollapsibleClickableContentProps\n extends CollapsibleSimpleContentProps,\n ButtonElementProps {}\n\nexport const CollapsibleClickableContent: React.FC<\n CollapsibleClickableContentProps\n> = ({ contentLeft, contentRight, className, onClick, children, ...props }) => {\n return (\n <Clickable\n disableFocusHighlight\n disableOpacityOnClick\n className={cx(styles.content, className)}\n onClick={onClick}\n {...props}\n >\n {contentLeft && <div className={styles.contentLeft}>{contentLeft}</div>}\n {children ?? <CollapsibleEmptyContent />}\n {contentRight && (\n <div className={styles.contentRight}>{contentRight}</div>\n )}\n </Clickable>\n );\n};\n","import { DivProps } from \"@stenajs-webui/core\";\nimport cx from \"classnames\";\nimport * as React from \"react\";\nimport styles from \"./Collapsible.module.css\";\nimport {\n CollapsibleContent,\n CollapsibleSimpleContentProps,\n} from \"./CollapsibleContent\";\n\nexport interface CollapsibleGroupHeadingProps\n extends CollapsibleSimpleContentProps,\n DivProps {}\n\nexport const CollapsibleGroupHeading: React.FC<\n CollapsibleGroupHeadingProps\n> = ({ className, ...props }) => (\n <CollapsibleContent\n className={cx(styles.groupHeading, className)}\n {...props}\n />\n);\n","import { Box } from \"@stenajs-webui/core\";\nimport { Banner } from \"@stenajs-webui/elements\";\nimport * as React from \"react\";\n\nexport interface ErrorPanelProps {\n text?: string;\n}\n\nexport const ErrorPanel: React.FC<ErrorPanelProps> = ({\n text = \"Something unexpected happened.\",\n}) => {\n return (\n <Box justifyContent={\"center\"} alignItems={\"center\"}>\n <Banner variant={\"error\"} headerText={text} />\n </Box>\n );\n};\n","import { Box } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { ErrorPanel, ErrorPanelProps } from \"./ErrorPanel\";\n\nexport const ErrorScreen: React.FC<ErrorPanelProps> = (props) => {\n return (\n <Box\n width={\"100%\"}\n height={\"100%\"}\n justifyContent={\"center\"}\n alignItems={\"center\"}\n >\n <ErrorPanel {...props} />\n </Box>\n );\n};\n","import { Box, Heading, Space } from \"@stenajs-webui/core\";\nimport { Spinner } from \"@stenajs-webui/elements\";\nimport * as React from \"react\";\n\nexport interface LoadingPanelProps {\n text?: string;\n}\n\nexport const LoadingPanel: React.FC<LoadingPanelProps> = ({\n text = \"Loading...\",\n}) => {\n return (\n <Box alignItems={\"center\"}>\n <Spinner size={\"small\"} />\n <Space num={4} />\n <Heading variant={\"h4\"}>{text}</Heading>\n </Box>\n );\n};\n","import { Box } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { LoadingPanel, LoadingPanelProps } from \"./LoadingPanel\";\n\nexport const LoadingScreen: React.FC<LoadingPanelProps> = (props) => {\n return (\n <Box\n width={\"100%\"}\n height={\"100%\"}\n justifyContent={\"center\"}\n alignItems={\"center\"}\n >\n <LoadingPanel {...props} />\n </Box>\n );\n};\n","import { Box, Row, SeparatorLine, Space } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { cssColor } from \"@stenajs-webui/theme\";\n\nexport interface PageHeaderProps {\n renderBreadCrumbs?: () => ReactNode;\n renderPageHeading?: () => ReactNode;\n renderTabs?: () => ReactNode;\n children?: ReactNode;\n}\n\nexport const PageHeader: React.FC<PageHeaderProps> = ({\n renderBreadCrumbs,\n renderPageHeading,\n renderTabs,\n children,\n}) => {\n return (\n <Box shadow={\"box\"} background={cssColor(\"--lhds-color-ui-50\")}>\n <Box indent={3}>\n {renderBreadCrumbs && <Row spacing={1.25}>{renderBreadCrumbs()}</Row>}\n {renderPageHeading?.()}\n {renderTabs?.()}\n </Box>\n {children && (\n <>\n {!renderTabs && <Space />}\n <SeparatorLine />\n {children}\n </>\n )}\n </Box>\n );\n};\n","import * as React from \"react\";\nimport { BoxProps, Row } from \"@stenajs-webui/core\";\n\nexport interface PageHeaderRowProps extends BoxProps {}\n\nexport const PageHeaderRow: React.FC<PageHeaderRowProps> = (props) => (\n <Row indent={3} spacing {...props} />\n);\n","import * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { Heading, Row } from \"@stenajs-webui/core\";\n\nexport type PageHeadingVariant = \"compact\" | \"standard\" | \"relaxed\";\n\ninterface PageHeadingProps {\n contentLeft?: ReactNode;\n contentRight?: ReactNode;\n heading: string;\n variant?: PageHeadingVariant;\n}\n\nconst variantToSpacing: Record<PageHeadingVariant, number> = {\n compact: 1,\n standard: 1.5,\n relaxed: 2,\n};\n\nexport const PageHeading: React.VFC<PageHeadingProps> = ({\n heading,\n variant = \"standard\",\n contentLeft,\n contentRight,\n}) => (\n <Row spacing={variantToSpacing[variant]} alignItems={\"center\"} gap={2}>\n <Heading variant={\"h3\"}>{heading}</Heading>\n <Row alignItems={\"center\"}>{contentLeft}</Row>\n <Row style={{ marginLeft: \"auto\" }} alignItems={\"center\"}>\n {contentRight}\n </Row>\n </Row>\n);\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTZweCIgaGVpZ2h0PSIxNnB4IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMC45Mjg5MzIxODgsMC45Mjg5MzIxODggQzEuMzE5NDU2NDgsMC41Mzg0MDc4OTYgMS45NTI2MjE0NiwwLjUzODQwNzg5NiAyLjM0MzE0NTc1LDAuOTI4OTMyMTg4IEwyLjM0MzE0NTc1LDAuOTI4OTMyMTg4IEw4LjAwMDAzODk3LDYuNTg1MDM4OTcgTDEzLjY1Njg1NDIsMC45Mjg5MzIxODggQzE0LjA0NzM3ODUsMC41Mzg0MDc4OTYgMTQuNjgwNTQzNSwwLjUzODQwNzg5NiAxNS4wNzEwNjc4LDAuOTI4OTMyMTg4IEMxNS40NjE1OTIxLDEuMzE5NDU2NDggMTUuNDYxNTkyMSwxLjk1MjYyMTQ2IDE1LjA3MTA2NzgsMi4zNDMxNDU3NSBMOS40MTUwMzg5Nyw4LjAwMDAzODk3IEwxNS4wNzEwNjc4LDEzLjY1Njg1NDIgQzE1LjQzMTU1MTgsMTQuMDE3MzM4MiAxNS40NTkyODEzLDE0LjU4NDU2OTMgMTUuMTU0MjU2NCwxNC45NzY4NjA1IEwxNS4wNzEwNjc4LDE1LjA3MTA2NzggQzE0LjY4MDU0MzUsMTUuNDYxNTkyMSAxNC4wNDczNzg1LDE1LjQ2MTU5MjEgMTMuNjU2ODU0MiwxNS4wNzEwNjc4IEwxMy42NTY4NTQyLDE1LjA3MTA2NzggTDguMDAwMDM4OTcsOS40MTUwMzg5NyBMMi4zNDMxNDU3NSwxNS4wNzEwNjc4IEMxLjk1MjYyMTQ2LDE1LjQ2MTU5MjEgMS4zMTk0NTY0OCwxNS40NjE1OTIxIDAuOTI4OTMyMTg4LDE1LjA3MTA2NzggQzAuNTM4NDA3ODk2LDE0LjY4MDU0MzUgMC41Mzg0MDc4OTYsMTQuMDQ3Mzc4NSAwLjkyODkzMjE4OCwxMy42NTY4NTQyIEw2LjU4NTAzODk3LDguMDAwMDM4OTcgTDAuOTI4OTMyMTg4LDIuMzQzMTQ1NzUgQzAuNTY4NDQ4MjI3LDEuOTgyNjYxNzkgMC41NDA3MTg2OTEsMS40MTU0MzA3MyAwLjg0NTc0MzU4MiwxLjAyMzEzOTUzIFoiIGlkPSJDb21iaW5lZC1TaGFwZSIgZmlsbD0iI0ZGRkZGRiIgLz4KPC9zdmc+Cg==\"","import * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./SidebarMenuCloseButton.module.css\";\nimport { Box, ButtonElementProps } from \"@stenajs-webui/core\";\nimport { ReactComponent as CloseIcon } from \"./svg/close.svg\";\n\nexport interface SidebarMenuCloseButtonProps extends ButtonElementProps {}\n\nexport const SidebarMenuCloseButton: React.FC<SidebarMenuCloseButtonProps> = ({\n className,\n onClick,\n}) => {\n return (\n <button\n onClick={onClick}\n className={cx(styles.sidebarMenuCloseButton, className)}\n >\n <Box className={styles.iconWrapper}>\n <CloseIcon className={styles.icon} />\n </Box>\n </button>\n );\n};\n","import { SeparatorLine, SeparatorLineProps } from \"@stenajs-webui/core\";\nimport { cssColor } from \"@stenajs-webui/theme\";\nimport * as React from \"react\";\n\nexport interface SidebarMenuSeparatorProps extends SeparatorLineProps {}\n\nexport const SidebarMenuSeparator: React.FC<SidebarMenuSeparatorProps> = (\n separatorLineProps\n) => (\n <SeparatorLine\n color={cssColor(\"--lhds-color-blue-600\")}\n {...separatorLineProps}\n />\n);\n","import { Box, BoxProps, Column, Space } from \"@stenajs-webui/core\";\nimport cx from \"classnames\";\nimport * as React from \"react\";\nimport styles from \"./SidebarMenu.module.css\";\nimport {\n SidebarMenuCloseButton,\n SidebarMenuCloseButtonProps,\n} from \"./SidebarMenuCloseButton\";\nimport { getNavbarHeight } from \"../nav-bar/NavbarHeightStyleUtil\";\nimport { NavBarVariant } from \"../nav-bar/NavBar\";\nimport { SidebarMenuSeparator } from \"./SidebarMenuSeparator\";\n\nexport type SidebarMenuVariant = NavBarVariant;\n\nexport interface SidebarMenuProps extends BoxProps {\n onCloseClick?: SidebarMenuCloseButtonProps[\"onClick\"];\n hideCloseButton?: boolean;\n collapsed?: boolean;\n variant?: SidebarMenuVariant;\n}\n\nexport const SidebarMenu: React.FC<SidebarMenuProps> = ({\n className,\n children,\n onCloseClick,\n collapsed = false,\n hideCloseButton = false,\n variant = \"standard\",\n ...boxProps\n}) => {\n const height = getNavbarHeight(variant);\n\n return (\n <Box\n className={cx(\n styles.sidebarMenu,\n collapsed ? styles.collapsed : null,\n className\n )}\n style={{\n [\"--swui-sidebar-menu-item-height\" as string]: height,\n [\"--swui-nav-bar-height\" as string]: height,\n }}\n data-collapsed={collapsed || undefined}\n {...boxProps}\n >\n {!hideCloseButton && (\n <>\n <SidebarMenuCloseButton onClick={onCloseClick} />\n <SidebarMenuSeparator />\n <Space />\n </>\n )}\n <Box\n className={styles.sidebarMenuContent}\n height={\"100%\"}\n background={\"var(--current-background-color)\"}\n >\n <Column flex={1}>{children}</Column>\n </Box>\n </Box>\n );\n};\n","import * as React from \"react\";\nimport { SidebarMenu, SidebarMenuVariant } from \"../SidebarMenu\";\nimport { NavBarSideMenuButton } from \"../../nav-bar/NavBarSideMenuButton\";\nimport { ReactNode } from \"react\";\n\ninterface RailMenuProps {\n variant?: SidebarMenuVariant;\n onClickMenuButton?: () => void;\n children?: ReactNode;\n}\n\nexport const SidebarRailMenu: React.FC<RailMenuProps> = ({\n variant,\n onClickMenuButton,\n children,\n}) => {\n return (\n <SidebarMenu\n collapsed\n position={\"fixed\"}\n left={0}\n top={0}\n hideCloseButton\n variant={variant}\n >\n <NavBarSideMenuButton onClick={onClickMenuButton} />\n {children}\n </SidebarMenu>\n );\n};\n","import { ButtonElementProps, Indent, Row } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport { CSSProperties, ReactNode } from \"react\";\nimport { ButtonContent, ButtonContentProps } from \"@stenajs-webui/elements\";\nimport contentStyles from \"./SidebarMenuContent.module.css\";\nimport cx from \"classnames\";\n\nexport type RenderLinkProps = ButtonElementProps & { activeClassName: string };\n\nexport interface SidebarMenuLinkProps\n extends ButtonElementProps,\n Pick<\n ButtonContentProps,\n | \"label\"\n | \"loading\"\n | \"left\"\n | \"leftIcon\"\n | \"right\"\n | \"rightIcon\"\n | \"success\"\n > {\n renderLink?: SidebarLinkRenderer;\n width?: CSSProperties[\"width\"];\n selected?: boolean;\n indent?: boolean;\n}\n\nexport type SidebarLinkRenderer = (props: RenderLinkProps) => ReactNode;\n\nexport const defaultRenderLink: SidebarLinkRenderer = ({\n activeClassName,\n ...props\n}) => {\n return <button {...props} />;\n};\n\nexport const SidebarMenuLink: React.FC<SidebarMenuLinkProps> = ({\n className,\n children,\n selected,\n indent,\n label,\n loading,\n left,\n leftIcon,\n right,\n rightIcon,\n success,\n width,\n renderLink = defaultRenderLink,\n style,\n ...buttonProps\n}) => {\n const hasContentLeft = left || leftIcon || loading || success;\n\n const innerClassName = cx(\n contentStyles.button,\n selected ? contentStyles.selected : undefined,\n className\n );\n\n const innerStyle = {\n ...style,\n width,\n height: \"var(--swui-sidebar-menu-item-height)\",\n };\n\n const innerChildren = (\n <Row spacing={1} flex={1} alignItems={\"center\"}>\n {!hasContentLeft && <Indent />}\n {indent && <Indent num={3.5} />}\n <ButtonContent\n label={label}\n loading={loading}\n left={left}\n leftIcon={leftIcon}\n right={right}\n rightIcon={rightIcon}\n success={success}\n labelClassName={contentStyles.label}\n spinnerClassName={contentStyles.spinner}\n iconClassName={cx(contentStyles.icon)}\n leftWrapperClassName={contentStyles.leftWrapper}\n />\n </Row>\n );\n\n return (\n <>\n {renderLink({\n ...buttonProps,\n activeClassName: contentStyles.selected,\n className: innerClassName,\n children: innerChildren,\n style: innerStyle,\n })}\n </>\n );\n};\n","import { Box, Text, TextProps } from \"@stenajs-webui/core\";\nimport * as React from \"react\";\nimport styles from \"./SidebarMenuHeading.module.css\";\nimport {\n CollapsibleContent,\n CollapsibleSimpleContentProps,\n} from \"../collapsible/CollapsibleContent\";\n\nexport interface SidebarMenuHeadingProps\n extends Pick<CollapsibleSimpleContentProps, \"contentLeft\" | \"contentRight\">,\n TextProps {\n label?: string;\n}\n\nexport const SidebarMenuHeading: React.FC<SidebarMenuHeadingProps> = ({\n className,\n label,\n contentLeft,\n contentRight,\n ...textProps\n}) => {\n return (\n <Box spacing={2} indent={2}>\n <CollapsibleContent\n className={styles.sidebarMenuHeading}\n contentLeft={contentLeft}\n contentRight={contentRight}\n >\n <Text\n variant={\"overline\"}\n color={\"var(--swui-sidebar-menu-heading-text-color)\"}\n {...textProps}\n >\n {label}\n </Text>\n </CollapsibleContent>\n </Box>\n );\n};\n","import * as React from \"react\";\nimport { ReactNode, useState } from \"react\";\nimport { Collapsible } from \"../collapsible/Collapsible\";\nimport { Box, Column, Indent } from \"@stenajs-webui/core\";\nimport { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport styles from \"./SidebarMenuCollapsible.module.css\";\nimport { Icon } from \"@stenajs-webui/elements\";\n\nexport interface SidebarMenuCollapsibleProps {\n label: string;\n collapsed?: boolean;\n leftIcon?: IconDefinition;\n children?: ReactNode;\n}\n\nexport const SidebarMenuCollapsible: React.FC<SidebarMenuCollapsibleProps> = ({\n children,\n label,\n leftIcon,\n}) => {\n const [collapsed, setCollapsed] = useState<boolean>(false);\n\n return (\n <Box background={\"var(--current-background-color)\"}>\n <Collapsible\n className={styles.sidebarMenuCollapsible}\n label={label}\n collapsed={collapsed}\n onClick={() => setCollapsed(!collapsed)}\n contentLeft={\n leftIcon ? (\n <Box\n width={\"var(--swui-sidebar-menu-item-height)\"}\n alignItems={\"center\"}\n justifyContent={\"center\"}\n >\n <Icon\n icon={leftIcon}\n size={16}\n color={\"var(--current-text-color)\"}\n data-hover={true}\n />\n </Box>\n ) : (\n <Indent num={1} />\n )\n }\n >\n <Column flex={1}>{children}</Column>\n </Collapsible>\n </Box>\n );\n};\n","import { SidebarMenuLink } from \"../../SidebarMenuLink\";\nimport * as React from \"react\";\nimport { ReactNode } from \"react\";\nimport { SidebarMenuHeading } from \"../../SidebarMenuHeading\";\nimport { SidebarMenuSeparator } from \"../../SidebarMenuSeparator\";\nimport { SidebarMenuCollapsible } from \"../../SidebarMenuCollapsible\";\nimport { Box, exhaustSwitchCaseElseThrow } from \"@stenajs-webui/core\";\nimport { Popover } from \"@stenajs-webui/tooltip\";\nimport { SidebarItem } from \"./types\";\n\nexport const renderItemsExpanded = (\n items: SidebarItem[],\n indent = false\n): ReactNode[] => {\n return items.map((item, index) => {\n switch (item.type) {\n case \"heading\":\n return <SidebarMenuHeading key={index} label={item.label} />;\n case \"separator\":\n return <SidebarMenuSeparator key={index} />;\n case \"link\": {\n const { type, ...linkProps } = item;\n return <SidebarMenuLink key={index} indent={indent} {...linkProps} />;\n }\n case \"grouped\":\n return (\n <SidebarMenuCollapsible\n key={index}\n leftIcon={item.leftIcon}\n label={item.label}\n >\n {renderItemsExpanded(item.items, true)}\n </SidebarMenuCollapsible>\n );\n default:\n return exhaustSwitchCaseElseThrow(item);\n }\n });\n};\n\ninterface RailRendererOptions {\n popupMinWidth: string | number;\n}\n\nexport const renderItemsInRail = (\n items: SidebarItem[],\n { popupMinWidth }: RailRendererOptions\n): ReactNode[] => {\n return items.map((item, index) => {\n switch (item.type) {\n case \"heading\":\n return null;\n case \"separator\":\n return <SidebarMenuSeparator key={index} />;\n case \"link\": {\n const { type, label, ...linkProps } = item;\n return (\n <SidebarMenuLink\n key={index}\n title={label}\n width={\"var(--swui-sidebar-menu-item-height)\"}\n {...linkProps}\n />\n );\n }\n case \"grouped\":\n return (\n <div key={index}>\n <Popover\n appendTo={\"parent\"}\n arrow={false}\n offset={[0, 0]}\n placement={\"right-start\"}\n trigger={\"focusin mouseenter click\"}\n disablePadding\n lazy\n content={\n <Box\n minWidth={popupMinWidth}\n background={\"var(--lhds-color-blue-500)\"}\n >\n <SidebarMenuHeading label={item.label} />\n {renderItemsExpanded(item.items)}\n </Box>\n }\n >\n <SidebarMenuLink\n title={item.label}\n width={\"var(--swui-sidebar-menu-item-height)\"}\n leftIcon={item.leftIcon}\n />\n </Popover>\n </div>\n );\n default:\n return exhaustSwitchCaseElseThrow(item);\n }\n });\n};\n","import * as React from \"react\";\nimport { Box, Indent, Row, Space, Text } from \"@stenajs-webui/core\";\nimport { ReactNode } from \"react\";\nimport { cssColor } from \"@stenajs-webui/theme\";\n\ninterface SelectedItemsActionsProps {\n numItemsSelected?: number;\n label?: ReactNode | string;\n afterLabelContent?: ReactNode;\n rightContent?: ReactNode;\n}\n\nconst borderTop = `1px solid ${cssColor(\"--lhds-color-orange-400\")}`;\n\nexport const SelectedItemsActionsPanel: React.FC<SelectedItemsActionsProps> = ({\n numItemsSelected,\n label,\n afterLabelContent,\n rightContent,\n}) => (\n <Row\n indent={3}\n spacing\n minHeight={\"56px\"}\n justifyContent={\"space-between\"}\n alignItems={\"center\"}\n borderTop={borderTop}\n background={cssColor(\"--lhds-color-orange-50\")}\n >\n <Row alignItems={\"center\"}>\n {numItemsSelected != null || label != null ? (\n <>\n {numItemsSelected != null ? (\n <>\n <Text variant={\"bold\"}>{numItemsSelected}</Text>\n <Space />\n <Text>item{numItemsSelected === 1 ? \"\" : \"s\"} selected</Text>\n </>\n ) : label != null ? (\n <>{typeof label === \"string\" ? <Text>{label}</Text> : label}</>\n ) : null}\n </>\n ) : null}\n {afterLabelContent ? (\n <>\n <Indent />\n <Box>{afterLabelContent}</Box>\n </>\n ) : null}\n </Row>\n <Box>{rightContent}</Box>\n </Row>\n);\n"],"names":["ActionMenuButton","renderItems","placement","buttonComponent","Button","rightIcon","stenaAngleDown","portalTarget","zIndex","menuWidth","menuTop","onClick","disableArrow","buttonProps","isOpen","open","close","toggle","useBoolean","buttonRef","useRef","focusManager","name","defaultValue","fn","popper","restoreFocus","closeOnEscape","event","key","onCreate","addEventListener","onDestroy","removeEventListener","onMount","querySelector","focus","onHide","current","contextValue","useMemo","handleClick","_jsx","undefined","ActionMenuPrimaryButton","props","PrimaryButton","ActionMenuSecondaryButton","SecondaryButton","ActionMenuFlatButton","FlatButton","border","CheckboxMenu","renderMenu","checkboxProps","NavBarSideMenuButton","className","cx","styles","sidebarMenuButton","Hamburger","icon","NavBar","left","showMenuButton","menuButtonVisibility","children","right","center","variant","onClickMenuButton","currentFlex","height","getNavbarHeight","navBar","_jsxs","_Fragment","React","Children","map","child","index","NavBarButton","selected","navBarButton","NavBarHeading","headingProps","NavBarPopoverButton","content","navBarButtonProps","document","body","NavBarNotificationButton","count","unread","labelClassName","iconClassName","stenaBell","hasCount","navBarNotificationButton","String","label","NavBarSearchField","placeholder","wrapperClassName","textInputProps","navBarSearchField","navBarSearchFieldInput","stenaSearch","NavBarUserButton","username","initials","stenaUser","navBarUserButton","Notification","iconColor","title","text","date","dismissed","theme","defaultNotificationTheme","agoLabel","formatDistance","Date","textAlign","notificationDismissedBg","notificationBg","notificationDismissedHoverBg","notificationHoverBg","cssColor","CollapsibleEmptyContent","faInbox","CollapsibleContent","contentLeft","contentRight","mapCSSTime","value","num","parseFloat","match","Collapsible","forwardRef","collapsed","disabled","unmountOnCollapse","mountOnEnter","faChevronUp","iconCollapsed","faChevronDown","iconSize","autoFocus","divProps","ref","divRef","timeout","getComputedStyle","getPropertyValue","collapsible","header","headerText","indicator","enter","contentEnter","enterActive","contentEnterActive","exit","contentExit","exitActive","contentExitActive","exitDone","contentExitDone","CollapsibleWithCheckbox","onValueChange","onChange","indeterminate","collapsibleProps","ev","stopPropagation","CollapsibleClickableContent","CollapsibleGroupHeading","groupHeading","ErrorPanel","ErrorScreen","LoadingPanel","LoadingScreen","PageHeader","renderBreadCrumbs","renderPageHeading","renderTabs","PageHeaderRow","variantToSpacing","compact","standard","relaxed","PageHeading","heading","marginLeft","SidebarMenuCloseButton","sidebarMenuCloseButton","iconWrapper","CloseIcon","SidebarMenuSeparator","separatorLineProps","SidebarMenu","onCloseClick","hideCloseButton","boxProps","sidebarMenu","sidebarMenuContent","SidebarRailMenu","defaultRenderLink","activeClassName","SidebarMenuLink","indent","loading","leftIcon","success","width","renderLink","style","hasContentLeft","innerClassName","contentStyles","button","innerStyle","innerChildren","spinner","leftWrapper","SidebarMenuHeading","textProps","sidebarMenuHeading","SidebarMenuCollapsible","setCollapsed","useState","sidebarMenuCollapsible","renderItemsExpanded","items","item","type","linkProps","exhaustSwitchCaseElseThrow","renderItemsInRail","popupMinWidth","borderTop","SelectedItemsActionsPanel","numItemsSelected","afterLabelContent","rightContent"],"mappings":"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"}
|