@raystack/apsara 0.48.4 → 0.48.5

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.
@@ -4,7 +4,6 @@ var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/rea
4
4
  var index$1 = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
5
5
  var React = require('react');
6
6
  var avatar = require('../avatar/avatar.cjs');
7
- var utils = require('../avatar/utils.cjs');
8
7
  var flex = require('../flex/flex.cjs');
9
8
  var tooltip = require('../tooltip/tooltip.cjs');
10
9
  var sidebar_module = require('./sidebar.module.css.cjs');
@@ -24,7 +23,11 @@ const SidebarHeader = React.forwardRef(({ className, children, ...props }, ref)
24
23
  const SidebarMain = React.forwardRef(({ className, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { ref: ref, className: sidebar_module.default.main, direction: 'column', role: 'group', "aria-label": 'Main navigation', ...props, children: children })));
25
24
  const SidebarFooter = React.forwardRef(({ className, children, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { ref: ref, className: sidebar_module.default.footer, direction: 'column', role: 'group', "aria-label": 'Footer navigation', ...props, children: children })));
26
25
  const SidebarItem = React.forwardRef(({ classNames, leadingIcon, children, active, disabled, as = jsxRuntime.jsxRuntimeExports.jsx("a", {}), ...props }, ref) => {
27
- const { isCollapsed, hideCollapsedItemTooltip } = React.useContext(SidebarContext); // To prevent prop drillng
26
+ const { isCollapsed, hideCollapsedItemTooltip } = React.useContext(SidebarContext);
27
+ const shouldShowFallback = leadingIcon == undefined &&
28
+ isCollapsed &&
29
+ typeof children === 'string' &&
30
+ children.length > 0;
28
31
  const content = React.cloneElement(as, {
29
32
  ref,
30
33
  className: index$1.cx(sidebar_module.default['nav-item'], classNames?.root),
@@ -34,8 +37,7 @@ const SidebarItem = React.forwardRef(({ classNames, leadingIcon, children, activ
34
37
  'aria-current': active ? 'page' : undefined,
35
38
  'aria-disabled': disabled,
36
39
  ...props
37
- }, jsxRuntime.jsxRuntimeExports.jsxs(jsxRuntime.jsxRuntimeExports.Fragment, { children: [jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { align: 'center', gap: 3, className: index$1.cx(sidebar_module.default['nav-leading-icon'], classNames?.leadingIcon), "aria-hidden": 'true', children: leadingIcon ||
38
- (typeof children === 'string' && children.length > 0 ? (jsxRuntime.jsxRuntimeExports.jsx(avatar.Avatar, { size: 1, variant: 'soft', color: utils.getAvatarColor(children), fallback: children[0].toUpperCase(), style: { cursor: 'pointer' } })) : null) }), !isCollapsed && jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-text'], children: children })] }));
40
+ }, jsxRuntime.jsxRuntimeExports.jsxs(jsxRuntime.jsxRuntimeExports.Fragment, { children: [jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { align: 'center', gap: 3, className: index$1.cx(sidebar_module.default['nav-leading-icon'], classNames?.leadingIcon), "aria-hidden": 'true', children: shouldShowFallback ? (jsxRuntime.jsxRuntimeExports.jsx(avatar.Avatar, { size: 1, variant: 'soft', color: 'neutral', fallback: children[0].toUpperCase(), style: { cursor: 'pointer' } })) : (leadingIcon) }), !isCollapsed && jsxRuntime.jsxRuntimeExports.jsx("span", { className: sidebar_module.default['nav-text'], children: children })] }));
39
41
  if (isCollapsed && !hideCollapsedItemTooltip) {
40
42
  return (jsxRuntime.jsxRuntimeExports.jsx(tooltip.Tooltip, { message: children, side: 'right', children: content }));
41
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.cjs","sources":["../../../components/sidebar/sidebar.tsx"],"sourcesContent":["import { cva, cx } from 'class-variance-authority';\nimport { Collapsible } from 'radix-ui';\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n ReactElement,\n ReactNode,\n cloneElement,\n createContext,\n forwardRef,\n useContext\n} from 'react';\nimport { Avatar, getAvatarColor } from '../avatar';\nimport { Flex } from '../flex';\nimport { Tooltip } from '../tooltip';\nimport styles from './sidebar.module.css';\n\ninterface SidebarContextValue {\n isCollapsed: boolean;\n hideCollapsedItemTooltip?: boolean;\n}\n\nconst SidebarContext = createContext<SidebarContextValue>({\n isCollapsed: false\n});\n\nconst root = cva(styles.root);\n\ninterface SidebarProps\n extends ComponentPropsWithoutRef<typeof Collapsible.Root> {\n position?: 'left' | 'right';\n hideCollapsedItemTooltip?: boolean;\n collapsible?: boolean;\n}\n\ninterface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {\n leadingIcon?: ReactNode;\n active?: boolean;\n disabled?: boolean;\n as?: ReactElement;\n classNames?: {\n root?: string;\n leadingIcon?: string;\n text?: string;\n };\n}\n\ninterface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {}\n\ninterface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {\n label: string;\n leadingIcon?: ReactNode;\n}\n\nconst SidebarRoot = forwardRef<\n ComponentRef<typeof Collapsible.Root>,\n SidebarProps\n>(\n (\n {\n className,\n position = 'left',\n open,\n onOpenChange,\n hideCollapsedItemTooltip,\n collapsible = true,\n children,\n ...props\n },\n ref\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}\n >\n <Tooltip.Provider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? 'expanded' : 'collapsed'}\n data-collapse-disabled={!collapsible}\n open={open}\n onOpenChange={collapsible ? onOpenChange : undefined}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n {collapsible && (\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\n sideOffset={10}\n >\n <div\n className={styles.resizeHandle}\n onClick={() => onOpenChange?.(!open)}\n role='button'\n tabIndex={0}\n aria-label={open ? 'Collapse sidebar' : 'Expand sidebar'}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onOpenChange?.(!open);\n }\n }}\n />\n </Tooltip>\n )}\n {children}\n </aside>\n </Collapsible.Root>\n </Tooltip.Provider>\n </SidebarContext.Provider>\n )\n);\n\nconst SidebarHeader = forwardRef<\n HTMLDivElement,\n ComponentPropsWithoutRef<'div'>\n>(({ className, children, ...props }, ref) => (\n <Flex\n align='center'\n ref={ref}\n className={styles.header}\n role='banner'\n {...props}\n >\n {children}\n </Flex>\n));\n\nconst SidebarMain = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>>(\n ({ className, children, ...props }, ref) => (\n <Flex\n ref={ref}\n className={styles.main}\n direction='column'\n role='group'\n aria-label='Main navigation'\n {...props}\n >\n {children}\n </Flex>\n )\n);\n\nconst SidebarFooter = forwardRef<HTMLDivElement, SidebarFooterProps>(\n ({ className, children, ...props }, ref) => (\n <Flex\n ref={ref}\n className={styles.footer}\n direction='column'\n role='group'\n aria-label='Footer navigation'\n {...props}\n >\n {children}\n </Flex>\n )\n);\n\nconst SidebarItem = forwardRef<HTMLAnchorElement, SidebarItemProps>(\n (\n {\n classNames,\n leadingIcon,\n children,\n active,\n disabled,\n as = <a />,\n ...props\n },\n ref\n ) => {\n const { isCollapsed, hideCollapsedItemTooltip } =\n useContext(SidebarContext); // To prevent prop drillng\n\n const content = cloneElement(\n as,\n {\n ref,\n className: cx(styles['nav-item'], classNames?.root),\n 'data-active': active,\n 'data-disabled': disabled,\n role: 'menuitem',\n 'aria-current': active ? 'page' : undefined,\n 'aria-disabled': disabled,\n ...props\n },\n <>\n <Flex\n align='center'\n gap={3}\n className={cx(styles['nav-leading-icon'], classNames?.leadingIcon)}\n aria-hidden='true'\n >\n {leadingIcon ||\n (typeof children === 'string' && children.length > 0 ? (\n <Avatar\n size={1}\n variant='soft'\n color={getAvatarColor(children)}\n fallback={children[0].toUpperCase()}\n style={{ cursor: 'pointer' }}\n />\n ) : null)}\n </Flex>\n {!isCollapsed && <span className={styles['nav-text']}>{children}</span>}\n </>\n );\n\n if (isCollapsed && !hideCollapsedItemTooltip) {\n return (\n <Tooltip message={children} side='right'>\n {content}\n </Tooltip>\n );\n }\n\n return content;\n }\n);\n\nconst SidebarNavigationGroup = forwardRef<\n HTMLElement,\n SidebarNavigationGroupProps\n>(({ className, label, leadingIcon, children, ...props }, ref) => (\n <section\n ref={ref}\n className={cx(styles['nav-group'], className)}\n aria-label={label}\n {...props}\n >\n <Flex align='center' gap={3} className={styles['nav-group-header']}>\n {leadingIcon && (\n <span className={styles['nav-leading-icon']}>{leadingIcon}</span>\n )}\n <span className={styles['nav-group-label']}>{label}</span>\n </Flex>\n <Flex direction='column' className={styles['nav-group-items']} role='list'>\n {children}\n </Flex>\n </section>\n));\n\nSidebarRoot.displayName = 'Sidebar.Root';\nSidebarHeader.displayName = 'Sidebar.Header';\nSidebarMain.displayName = 'Sidebar.Main';\nSidebarFooter.displayName = 'Sidebar.Footer';\nSidebarItem.displayName = 'Sidebar.Item';\nSidebarNavigationGroup.displayName = 'Sidebar.Group';\n\nexport const Sidebar = Object.assign(SidebarRoot, {\n Header: SidebarHeader,\n Main: SidebarMain,\n Footer: SidebarFooter,\n Item: SidebarItem,\n Group: SidebarNavigationGroup\n});\n"],"names":["createContext","cva","styles","forwardRef","_jsx","Tooltip","Collapsible.Root","_jsxs","Flex","useContext","cloneElement","cx","_Fragment","Avatar","getAvatarColor"],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.cjs","sources":["../../../components/sidebar/sidebar.tsx"],"sourcesContent":["import { cva, cx } from 'class-variance-authority';\nimport { Collapsible } from 'radix-ui';\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n ReactElement,\n ReactNode,\n cloneElement,\n createContext,\n forwardRef,\n useContext\n} from 'react';\nimport { Avatar } from '../avatar';\nimport { Flex } from '../flex';\nimport { Tooltip } from '../tooltip';\nimport styles from './sidebar.module.css';\n\ninterface SidebarContextValue {\n isCollapsed: boolean;\n hideCollapsedItemTooltip?: boolean;\n}\n\nconst SidebarContext = createContext<SidebarContextValue>({\n isCollapsed: false\n});\n\nconst root = cva(styles.root);\n\ninterface SidebarProps\n extends ComponentPropsWithoutRef<typeof Collapsible.Root> {\n position?: 'left' | 'right';\n hideCollapsedItemTooltip?: boolean;\n collapsible?: boolean;\n}\n\ninterface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {\n leadingIcon?: ReactNode;\n active?: boolean;\n disabled?: boolean;\n as?: ReactElement;\n classNames?: {\n root?: string;\n leadingIcon?: string;\n text?: string;\n };\n}\n\ninterface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {}\n\ninterface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {\n label: string;\n leadingIcon?: ReactNode;\n}\n\nconst SidebarRoot = forwardRef<\n ComponentRef<typeof Collapsible.Root>,\n SidebarProps\n>(\n (\n {\n className,\n position = 'left',\n open,\n onOpenChange,\n hideCollapsedItemTooltip,\n collapsible = true,\n children,\n ...props\n },\n ref\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}\n >\n <Tooltip.Provider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? 'expanded' : 'collapsed'}\n data-collapse-disabled={!collapsible}\n open={open}\n onOpenChange={collapsible ? onOpenChange : undefined}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n {collapsible && (\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\n sideOffset={10}\n >\n <div\n className={styles.resizeHandle}\n onClick={() => onOpenChange?.(!open)}\n role='button'\n tabIndex={0}\n aria-label={open ? 'Collapse sidebar' : 'Expand sidebar'}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onOpenChange?.(!open);\n }\n }}\n />\n </Tooltip>\n )}\n {children}\n </aside>\n </Collapsible.Root>\n </Tooltip.Provider>\n </SidebarContext.Provider>\n )\n);\n\nconst SidebarHeader = forwardRef<\n HTMLDivElement,\n ComponentPropsWithoutRef<'div'>\n>(({ className, children, ...props }, ref) => (\n <Flex\n align='center'\n ref={ref}\n className={styles.header}\n role='banner'\n {...props}\n >\n {children}\n </Flex>\n));\n\nconst SidebarMain = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>>(\n ({ className, children, ...props }, ref) => (\n <Flex\n ref={ref}\n className={styles.main}\n direction='column'\n role='group'\n aria-label='Main navigation'\n {...props}\n >\n {children}\n </Flex>\n )\n);\n\nconst SidebarFooter = forwardRef<HTMLDivElement, SidebarFooterProps>(\n ({ className, children, ...props }, ref) => (\n <Flex\n ref={ref}\n className={styles.footer}\n direction='column'\n role='group'\n aria-label='Footer navigation'\n {...props}\n >\n {children}\n </Flex>\n )\n);\n\nconst SidebarItem = forwardRef<HTMLAnchorElement, SidebarItemProps>(\n (\n {\n classNames,\n leadingIcon,\n children,\n active,\n disabled,\n as = <a />,\n ...props\n },\n ref\n ) => {\n const { isCollapsed, hideCollapsedItemTooltip } =\n useContext(SidebarContext);\n\n const shouldShowFallback =\n leadingIcon == undefined &&\n isCollapsed &&\n typeof children === 'string' &&\n children.length > 0;\n\n const content = cloneElement(\n as,\n {\n ref,\n className: cx(styles['nav-item'], classNames?.root),\n 'data-active': active,\n 'data-disabled': disabled,\n role: 'menuitem',\n 'aria-current': active ? 'page' : undefined,\n 'aria-disabled': disabled,\n ...props\n },\n <>\n <Flex\n align='center'\n gap={3}\n className={cx(styles['nav-leading-icon'], classNames?.leadingIcon)}\n aria-hidden='true'\n >\n {shouldShowFallback ? (\n <Avatar\n size={1}\n variant='soft'\n color='neutral'\n fallback={children[0].toUpperCase()}\n style={{ cursor: 'pointer' }}\n />\n ) : (\n leadingIcon\n )}\n </Flex>\n {!isCollapsed && <span className={styles['nav-text']}>{children}</span>}\n </>\n );\n\n if (isCollapsed && !hideCollapsedItemTooltip) {\n return (\n <Tooltip message={children} side='right'>\n {content}\n </Tooltip>\n );\n }\n\n return content;\n }\n);\n\nconst SidebarNavigationGroup = forwardRef<\n HTMLElement,\n SidebarNavigationGroupProps\n>(({ className, label, leadingIcon, children, ...props }, ref) => (\n <section\n ref={ref}\n className={cx(styles['nav-group'], className)}\n aria-label={label}\n {...props}\n >\n <Flex align='center' gap={3} className={styles['nav-group-header']}>\n {leadingIcon && (\n <span className={styles['nav-leading-icon']}>{leadingIcon}</span>\n )}\n <span className={styles['nav-group-label']}>{label}</span>\n </Flex>\n <Flex direction='column' className={styles['nav-group-items']} role='list'>\n {children}\n </Flex>\n </section>\n));\n\nSidebarRoot.displayName = 'Sidebar.Root';\nSidebarHeader.displayName = 'Sidebar.Header';\nSidebarMain.displayName = 'Sidebar.Main';\nSidebarFooter.displayName = 'Sidebar.Footer';\nSidebarItem.displayName = 'Sidebar.Item';\nSidebarNavigationGroup.displayName = 'Sidebar.Group';\n\nexport const Sidebar = Object.assign(SidebarRoot, {\n Header: SidebarHeader,\n Main: SidebarMain,\n Footer: SidebarFooter,\n Item: SidebarItem,\n Group: SidebarNavigationGroup\n});\n"],"names":["createContext","cva","styles","forwardRef","_jsx","Tooltip","Collapsible.Root","_jsxs","Flex","useContext","cloneElement","cx","Avatar"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../components/sidebar/sidebar.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EACL,wBAAwB,EAExB,YAAY,EACZ,SAAS,EAKV,MAAM,OAAO,CAAC;AAiBf,UAAU,YACR,SAAQ,wBAAwB,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,gBAAiB,SAAQ,wBAAwB,CAAC,GAAG,CAAC;IAC9D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,YAAY,CAAC;IAClB,UAAU,CAAC,EAAE;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,UAAU,kBAAmB,SAAQ,wBAAwB,CAAC,KAAK,CAAC;CAAG;AAEvE,UAAU,2BAA4B,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,SAAS,CAAC;CACzB;AA6MD,eAAO,MAAM,OAAO;;;;;;CAMlB,CAAC"}
1
+ {"version":3,"file":"sidebar.d.ts","sourceRoot":"","sources":["../../../components/sidebar/sidebar.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EACL,wBAAwB,EAExB,YAAY,EACZ,SAAS,EAKV,MAAM,OAAO,CAAC;AAiBf,UAAU,YACR,SAAQ,wBAAwB,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC;IACzD,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,gBAAiB,SAAQ,wBAAwB,CAAC,GAAG,CAAC;IAC9D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,YAAY,CAAC;IAClB,UAAU,CAAC,EAAE;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,UAAU,kBAAmB,SAAQ,wBAAwB,CAAC,KAAK,CAAC;CAAG;AAEvE,UAAU,2BAA4B,SAAQ,wBAAwB,CAAC,KAAK,CAAC;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,SAAS,CAAC;CACzB;AAoND,eAAO,MAAM,OAAO;;;;;;CAMlB,CAAC"}
@@ -2,7 +2,6 @@ import { j as jsxRuntimeExports } from '../../node_modules/.pnpm/react@18.2.0/no
2
2
  import { cx, cva } from '../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js';
3
3
  import { createContext, forwardRef, useContext, cloneElement } from 'react';
4
4
  import { Avatar } from '../avatar/avatar.js';
5
- import { getAvatarColor } from '../avatar/utils.js';
6
5
  import { Flex } from '../flex/flex.js';
7
6
  import { Tooltip } from '../tooltip/tooltip.js';
8
7
  import styles from './sidebar.module.css.js';
@@ -22,7 +21,11 @@ const SidebarHeader = forwardRef(({ className, children, ...props }, ref) => (js
22
21
  const SidebarMain = forwardRef(({ className, children, ...props }, ref) => (jsxRuntimeExports.jsx(Flex, { ref: ref, className: styles.main, direction: 'column', role: 'group', "aria-label": 'Main navigation', ...props, children: children })));
23
22
  const SidebarFooter = forwardRef(({ className, children, ...props }, ref) => (jsxRuntimeExports.jsx(Flex, { ref: ref, className: styles.footer, direction: 'column', role: 'group', "aria-label": 'Footer navigation', ...props, children: children })));
24
23
  const SidebarItem = forwardRef(({ classNames, leadingIcon, children, active, disabled, as = jsxRuntimeExports.jsx("a", {}), ...props }, ref) => {
25
- const { isCollapsed, hideCollapsedItemTooltip } = useContext(SidebarContext); // To prevent prop drillng
24
+ const { isCollapsed, hideCollapsedItemTooltip } = useContext(SidebarContext);
25
+ const shouldShowFallback = leadingIcon == undefined &&
26
+ isCollapsed &&
27
+ typeof children === 'string' &&
28
+ children.length > 0;
26
29
  const content = cloneElement(as, {
27
30
  ref,
28
31
  className: cx(styles['nav-item'], classNames?.root),
@@ -32,8 +35,7 @@ const SidebarItem = forwardRef(({ classNames, leadingIcon, children, active, dis
32
35
  'aria-current': active ? 'page' : undefined,
33
36
  'aria-disabled': disabled,
34
37
  ...props
35
- }, jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(Flex, { align: 'center', gap: 3, className: cx(styles['nav-leading-icon'], classNames?.leadingIcon), "aria-hidden": 'true', children: leadingIcon ||
36
- (typeof children === 'string' && children.length > 0 ? (jsxRuntimeExports.jsx(Avatar, { size: 1, variant: 'soft', color: getAvatarColor(children), fallback: children[0].toUpperCase(), style: { cursor: 'pointer' } })) : null) }), !isCollapsed && jsxRuntimeExports.jsx("span", { className: styles['nav-text'], children: children })] }));
38
+ }, jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [jsxRuntimeExports.jsx(Flex, { align: 'center', gap: 3, className: cx(styles['nav-leading-icon'], classNames?.leadingIcon), "aria-hidden": 'true', children: shouldShowFallback ? (jsxRuntimeExports.jsx(Avatar, { size: 1, variant: 'soft', color: 'neutral', fallback: children[0].toUpperCase(), style: { cursor: 'pointer' } })) : (leadingIcon) }), !isCollapsed && jsxRuntimeExports.jsx("span", { className: styles['nav-text'], children: children })] }));
37
39
  if (isCollapsed && !hideCollapsedItemTooltip) {
38
40
  return (jsxRuntimeExports.jsx(Tooltip, { message: children, side: 'right', children: content }));
39
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","sources":["../../../components/sidebar/sidebar.tsx"],"sourcesContent":["import { cva, cx } from 'class-variance-authority';\nimport { Collapsible } from 'radix-ui';\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n ReactElement,\n ReactNode,\n cloneElement,\n createContext,\n forwardRef,\n useContext\n} from 'react';\nimport { Avatar, getAvatarColor } from '../avatar';\nimport { Flex } from '../flex';\nimport { Tooltip } from '../tooltip';\nimport styles from './sidebar.module.css';\n\ninterface SidebarContextValue {\n isCollapsed: boolean;\n hideCollapsedItemTooltip?: boolean;\n}\n\nconst SidebarContext = createContext<SidebarContextValue>({\n isCollapsed: false\n});\n\nconst root = cva(styles.root);\n\ninterface SidebarProps\n extends ComponentPropsWithoutRef<typeof Collapsible.Root> {\n position?: 'left' | 'right';\n hideCollapsedItemTooltip?: boolean;\n collapsible?: boolean;\n}\n\ninterface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {\n leadingIcon?: ReactNode;\n active?: boolean;\n disabled?: boolean;\n as?: ReactElement;\n classNames?: {\n root?: string;\n leadingIcon?: string;\n text?: string;\n };\n}\n\ninterface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {}\n\ninterface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {\n label: string;\n leadingIcon?: ReactNode;\n}\n\nconst SidebarRoot = forwardRef<\n ComponentRef<typeof Collapsible.Root>,\n SidebarProps\n>(\n (\n {\n className,\n position = 'left',\n open,\n onOpenChange,\n hideCollapsedItemTooltip,\n collapsible = true,\n children,\n ...props\n },\n ref\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}\n >\n <Tooltip.Provider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? 'expanded' : 'collapsed'}\n data-collapse-disabled={!collapsible}\n open={open}\n onOpenChange={collapsible ? onOpenChange : undefined}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n {collapsible && (\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\n sideOffset={10}\n >\n <div\n className={styles.resizeHandle}\n onClick={() => onOpenChange?.(!open)}\n role='button'\n tabIndex={0}\n aria-label={open ? 'Collapse sidebar' : 'Expand sidebar'}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onOpenChange?.(!open);\n }\n }}\n />\n </Tooltip>\n )}\n {children}\n </aside>\n </Collapsible.Root>\n </Tooltip.Provider>\n </SidebarContext.Provider>\n )\n);\n\nconst SidebarHeader = forwardRef<\n HTMLDivElement,\n ComponentPropsWithoutRef<'div'>\n>(({ className, children, ...props }, ref) => (\n <Flex\n align='center'\n ref={ref}\n className={styles.header}\n role='banner'\n {...props}\n >\n {children}\n </Flex>\n));\n\nconst SidebarMain = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>>(\n ({ className, children, ...props }, ref) => (\n <Flex\n ref={ref}\n className={styles.main}\n direction='column'\n role='group'\n aria-label='Main navigation'\n {...props}\n >\n {children}\n </Flex>\n )\n);\n\nconst SidebarFooter = forwardRef<HTMLDivElement, SidebarFooterProps>(\n ({ className, children, ...props }, ref) => (\n <Flex\n ref={ref}\n className={styles.footer}\n direction='column'\n role='group'\n aria-label='Footer navigation'\n {...props}\n >\n {children}\n </Flex>\n )\n);\n\nconst SidebarItem = forwardRef<HTMLAnchorElement, SidebarItemProps>(\n (\n {\n classNames,\n leadingIcon,\n children,\n active,\n disabled,\n as = <a />,\n ...props\n },\n ref\n ) => {\n const { isCollapsed, hideCollapsedItemTooltip } =\n useContext(SidebarContext); // To prevent prop drillng\n\n const content = cloneElement(\n as,\n {\n ref,\n className: cx(styles['nav-item'], classNames?.root),\n 'data-active': active,\n 'data-disabled': disabled,\n role: 'menuitem',\n 'aria-current': active ? 'page' : undefined,\n 'aria-disabled': disabled,\n ...props\n },\n <>\n <Flex\n align='center'\n gap={3}\n className={cx(styles['nav-leading-icon'], classNames?.leadingIcon)}\n aria-hidden='true'\n >\n {leadingIcon ||\n (typeof children === 'string' && children.length > 0 ? (\n <Avatar\n size={1}\n variant='soft'\n color={getAvatarColor(children)}\n fallback={children[0].toUpperCase()}\n style={{ cursor: 'pointer' }}\n />\n ) : null)}\n </Flex>\n {!isCollapsed && <span className={styles['nav-text']}>{children}</span>}\n </>\n );\n\n if (isCollapsed && !hideCollapsedItemTooltip) {\n return (\n <Tooltip message={children} side='right'>\n {content}\n </Tooltip>\n );\n }\n\n return content;\n }\n);\n\nconst SidebarNavigationGroup = forwardRef<\n HTMLElement,\n SidebarNavigationGroupProps\n>(({ className, label, leadingIcon, children, ...props }, ref) => (\n <section\n ref={ref}\n className={cx(styles['nav-group'], className)}\n aria-label={label}\n {...props}\n >\n <Flex align='center' gap={3} className={styles['nav-group-header']}>\n {leadingIcon && (\n <span className={styles['nav-leading-icon']}>{leadingIcon}</span>\n )}\n <span className={styles['nav-group-label']}>{label}</span>\n </Flex>\n <Flex direction='column' className={styles['nav-group-items']} role='list'>\n {children}\n </Flex>\n </section>\n));\n\nSidebarRoot.displayName = 'Sidebar.Root';\nSidebarHeader.displayName = 'Sidebar.Header';\nSidebarMain.displayName = 'Sidebar.Main';\nSidebarFooter.displayName = 'Sidebar.Footer';\nSidebarItem.displayName = 'Sidebar.Item';\nSidebarNavigationGroup.displayName = 'Sidebar.Group';\n\nexport const Sidebar = Object.assign(SidebarRoot, {\n Header: SidebarHeader,\n Main: SidebarMain,\n Footer: SidebarFooter,\n Item: SidebarItem,\n Group: SidebarNavigationGroup\n});\n"],"names":["_jsx","Collapsible.Root","_jsxs","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.js","sources":["../../../components/sidebar/sidebar.tsx"],"sourcesContent":["import { cva, cx } from 'class-variance-authority';\nimport { Collapsible } from 'radix-ui';\nimport {\n ComponentPropsWithoutRef,\n ComponentRef,\n ReactElement,\n ReactNode,\n cloneElement,\n createContext,\n forwardRef,\n useContext\n} from 'react';\nimport { Avatar } from '../avatar';\nimport { Flex } from '../flex';\nimport { Tooltip } from '../tooltip';\nimport styles from './sidebar.module.css';\n\ninterface SidebarContextValue {\n isCollapsed: boolean;\n hideCollapsedItemTooltip?: boolean;\n}\n\nconst SidebarContext = createContext<SidebarContextValue>({\n isCollapsed: false\n});\n\nconst root = cva(styles.root);\n\ninterface SidebarProps\n extends ComponentPropsWithoutRef<typeof Collapsible.Root> {\n position?: 'left' | 'right';\n hideCollapsedItemTooltip?: boolean;\n collapsible?: boolean;\n}\n\ninterface SidebarItemProps extends ComponentPropsWithoutRef<'a'> {\n leadingIcon?: ReactNode;\n active?: boolean;\n disabled?: boolean;\n as?: ReactElement;\n classNames?: {\n root?: string;\n leadingIcon?: string;\n text?: string;\n };\n}\n\ninterface SidebarFooterProps extends ComponentPropsWithoutRef<'div'> {}\n\ninterface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<'div'> {\n label: string;\n leadingIcon?: ReactNode;\n}\n\nconst SidebarRoot = forwardRef<\n ComponentRef<typeof Collapsible.Root>,\n SidebarProps\n>(\n (\n {\n className,\n position = 'left',\n open,\n onOpenChange,\n hideCollapsedItemTooltip,\n collapsible = true,\n children,\n ...props\n },\n ref\n ) => (\n <SidebarContext.Provider\n value={{ isCollapsed: !open, hideCollapsedItemTooltip }}\n >\n <Tooltip.Provider>\n <Collapsible.Root\n ref={ref}\n className={root({ className })}\n data-position={position}\n data-state={open ? 'expanded' : 'collapsed'}\n data-collapse-disabled={!collapsible}\n open={open}\n onOpenChange={collapsible ? onOpenChange : undefined}\n aria-label='Navigation Sidebar'\n aria-expanded={open}\n role='navigation'\n {...props}\n asChild\n >\n <aside>\n {collapsible && (\n <Tooltip\n message={open ? 'Click to collapse' : 'Click to expand'}\n side={position === 'left' ? 'right' : 'left'}\n asChild\n followCursor\n sideOffset={10}\n >\n <div\n className={styles.resizeHandle}\n onClick={() => onOpenChange?.(!open)}\n role='button'\n tabIndex={0}\n aria-label={open ? 'Collapse sidebar' : 'Expand sidebar'}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n onOpenChange?.(!open);\n }\n }}\n />\n </Tooltip>\n )}\n {children}\n </aside>\n </Collapsible.Root>\n </Tooltip.Provider>\n </SidebarContext.Provider>\n )\n);\n\nconst SidebarHeader = forwardRef<\n HTMLDivElement,\n ComponentPropsWithoutRef<'div'>\n>(({ className, children, ...props }, ref) => (\n <Flex\n align='center'\n ref={ref}\n className={styles.header}\n role='banner'\n {...props}\n >\n {children}\n </Flex>\n));\n\nconst SidebarMain = forwardRef<HTMLDivElement, ComponentPropsWithoutRef<'div'>>(\n ({ className, children, ...props }, ref) => (\n <Flex\n ref={ref}\n className={styles.main}\n direction='column'\n role='group'\n aria-label='Main navigation'\n {...props}\n >\n {children}\n </Flex>\n )\n);\n\nconst SidebarFooter = forwardRef<HTMLDivElement, SidebarFooterProps>(\n ({ className, children, ...props }, ref) => (\n <Flex\n ref={ref}\n className={styles.footer}\n direction='column'\n role='group'\n aria-label='Footer navigation'\n {...props}\n >\n {children}\n </Flex>\n )\n);\n\nconst SidebarItem = forwardRef<HTMLAnchorElement, SidebarItemProps>(\n (\n {\n classNames,\n leadingIcon,\n children,\n active,\n disabled,\n as = <a />,\n ...props\n },\n ref\n ) => {\n const { isCollapsed, hideCollapsedItemTooltip } =\n useContext(SidebarContext);\n\n const shouldShowFallback =\n leadingIcon == undefined &&\n isCollapsed &&\n typeof children === 'string' &&\n children.length > 0;\n\n const content = cloneElement(\n as,\n {\n ref,\n className: cx(styles['nav-item'], classNames?.root),\n 'data-active': active,\n 'data-disabled': disabled,\n role: 'menuitem',\n 'aria-current': active ? 'page' : undefined,\n 'aria-disabled': disabled,\n ...props\n },\n <>\n <Flex\n align='center'\n gap={3}\n className={cx(styles['nav-leading-icon'], classNames?.leadingIcon)}\n aria-hidden='true'\n >\n {shouldShowFallback ? (\n <Avatar\n size={1}\n variant='soft'\n color='neutral'\n fallback={children[0].toUpperCase()}\n style={{ cursor: 'pointer' }}\n />\n ) : (\n leadingIcon\n )}\n </Flex>\n {!isCollapsed && <span className={styles['nav-text']}>{children}</span>}\n </>\n );\n\n if (isCollapsed && !hideCollapsedItemTooltip) {\n return (\n <Tooltip message={children} side='right'>\n {content}\n </Tooltip>\n );\n }\n\n return content;\n }\n);\n\nconst SidebarNavigationGroup = forwardRef<\n HTMLElement,\n SidebarNavigationGroupProps\n>(({ className, label, leadingIcon, children, ...props }, ref) => (\n <section\n ref={ref}\n className={cx(styles['nav-group'], className)}\n aria-label={label}\n {...props}\n >\n <Flex align='center' gap={3} className={styles['nav-group-header']}>\n {leadingIcon && (\n <span className={styles['nav-leading-icon']}>{leadingIcon}</span>\n )}\n <span className={styles['nav-group-label']}>{label}</span>\n </Flex>\n <Flex direction='column' className={styles['nav-group-items']} role='list'>\n {children}\n </Flex>\n </section>\n));\n\nSidebarRoot.displayName = 'Sidebar.Root';\nSidebarHeader.displayName = 'Sidebar.Header';\nSidebarMain.displayName = 'Sidebar.Main';\nSidebarFooter.displayName = 'Sidebar.Footer';\nSidebarItem.displayName = 'Sidebar.Item';\nSidebarNavigationGroup.displayName = 'Sidebar.Group';\n\nexport const Sidebar = Object.assign(SidebarRoot, {\n Header: SidebarHeader,\n Main: SidebarMain,\n Footer: SidebarFooter,\n Item: SidebarItem,\n Group: SidebarNavigationGroup\n});\n"],"names":["_jsx","Collapsible.Root","_jsxs"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raystack/apsara",
3
- "version": "0.48.4",
3
+ "version": "0.48.5",
4
4
  "types": "dist/index.d.ts",
5
5
  "sideEffects": false,
6
6
  "engines": {