UNPKG

@rdsaude/pulso-react-components

Version:

Biblioteca de componentes React do Pulso Design System da RD Saúde oferece componentes consistentes e de alto desempenho, alinhados com os padrões da RDSaúde. Ideal para desenvolver aplicações modernas e acessíveis.

1 lines 26.2 kB
{"version":3,"sources":["../../../src/components/content/index.ts","../../../src/components/content/content.tsx","../../../src/utils/tv.ts","../../../src/components/content/components/content-actions/content-actions.styles.ts","../../../src/components/content/components/content-actions/index.tsx","../../../src/components/content/components/content-actions-text/content-actions-text-styles.ts","../../../src/components/content/components/content-actions-text/index.tsx","../../../src/components/icon/index.tsx","../../../src/hooks/use-theme.ts","../../../src/components/theme-provider/index.tsx","../../../src/components/content/components/content-icon/index.tsx","../../../src/components/link/link.tsx","../../../src/components/link/components/link-icon.tsx","../../../src/components/link/link.styles.ts","../../../src/components/content/components/content-link/index.tsx","../../../src/components/content/components/content-subtitle/content-subtitlte.styles.ts","../../../src/components/content/components/content-subtitle/index.tsx","../../../src/components/content/components/content-title/content-titlte.styles.ts","../../../src/components/content/components/content-title/index.tsx","../../../src/components/content/content.styles.ts"],"sourcesContent":["export { Content } from './content'\nexport type { ContentProps } from './content.types'\n","import { type Scope, createContextScope } from '@radix-ui/react-context'\nimport type { ButtonHTMLAttributes } from 'react'\nimport { ContentActions } from './components/content-actions'\nimport { ContentActionsText } from './components/content-actions-text'\nimport { ContentIcon } from './components/content-icon'\nimport { ContentLink } from './components/content-link'\nimport { ContentSubtitle } from './components/content-subtitle'\nimport { ContentTitle } from './components/content-title'\nimport { ContentRootVariants } from './content.styles'\nimport type {\n ContentContext,\n ContentProps,\n ContentScopedProps,\n} from './content.types'\n\nexport const DISPLAY_NAME = 'Content'\n\ntype ContentRootProps = ContentProps & ButtonHTMLAttributes<HTMLButtonElement>\n\nfunction ContentRoot(props: ContentRootProps) {\n const { children, variants, size, __scopeContent } =\n props as ContentScopedProps<ContentRootProps>\n const contentProviderProps = {\n scope: __scopeContent,\n variants,\n size,\n }\n\n return (\n <ContentProvider {...contentProviderProps}>\n <button\n disabled={variants === 'title'}\n type=\"button\"\n className={ContentRootVariants({ variants })}\n data-testid=\"content-root\"\n >\n {children}\n </button>\n </ContentProvider>\n )\n}\n\nconst [createContentContext] = createContextScope(DISPLAY_NAME)\n\nexport const [ContentProvider, useContentContext]: readonly [\n ProviderType<ContentContext>,\n (consumerName: string, scope: Scope) => ContentContext,\n] = createContentContext<ContentContext>(DISPLAY_NAME)\n\n/*\n----------------------------------------------------------------\nComposition Export\n----------------------------------------------------------------\n*/\n\nexport const Content = {\n Root: ContentRoot,\n Icon: ContentIcon,\n ActionsText: ContentActionsText,\n Title: ContentTitle,\n Subtitle: ContentSubtitle,\n Actions: ContentActions,\n Link: ContentLink,\n}\n","import { type VariantProps, createTV } from 'tailwind-variants'\n\nexport const tv = createTV({\n twMerge: true,\n twMergeConfig: {\n extend: {\n classGroups: {\n 'font-size': [\n {\n text: ['threepulse', 'threeandhalfpulse'],\n },\n ],\n 'border-width': [\n {\n border: ['quarterpulse', 'halfpulse'],\n },\n ],\n '--tw-ring-inset': [\n {\n ring: ['none', 'quarterpulse', 'halfpulse'],\n },\n ],\n },\n },\n },\n})\n\nexport type { VariantProps }\n","import { tv } from '~/utils/tv'\n\nexport const ContentActionsVariants = tv({\n base: `\n justify-end flex-shrink-0\n `,\n variants: {},\n})\n","import { DISPLAY_NAME, useContentContext } from '../../content'\nimport type { ContentScopedProps } from '../../content.types'\nimport { ContentActionsVariants } from './content-actions.styles'\n\ntype ContentActionsProps = {\n children: React.ReactNode\n}\n\nexport function ContentActions(props: ContentActionsProps) {\n const { children, __scopeContent } =\n props as ContentScopedProps<ContentActionsProps>\n\n const { variants } = useContentContext(DISPLAY_NAME, __scopeContent)\n\n if (variants !== 'title') {\n return\n }\n\n return (\n <div className={ContentActionsVariants()} data-testid=\"content-actions\">\n {children}\n </div>\n )\n}\n","import { tv } from '~/utils/tv'\n\nexport const ContentActionsTextVariants = tv({\n base: `\n flex flex-col w-full items-start justify-start min-w-[2rem] flex-shrink bg-transparent gap-twopulse\n `,\n variants: {},\n})\n","import type { ContentScopedProps } from '../../content.types'\nimport { ContentActionsTextVariants } from './content-actions-text-styles'\n\ntype ContentActionsTextProps = {\n children: React.ReactNode\n}\nexport function ContentActionsText(props: ContentActionsTextProps) {\n const { children } = props as ContentScopedProps<ContentActionsTextProps>\n\n return (\n <div\n className={ContentActionsTextVariants()}\n data-testid=\"content-actions-text\"\n >\n {children}\n </div>\n )\n}\n","import * as React from 'react'\n\nimport type { RDSAUDESISTEMAS_TOKENS } from '@raiadrogasil/pulso-design-tokens'\nimport type { IconName } from '@raiadrogasil/pulso-icons'\n\nimport { useTheme } from '~/hooks/use-theme'\n\ntype IconVisualSize = 'tiny' | 'extra-small' | 'small' | 'medium'\ntype DesignTokens = typeof RDSAUDESISTEMAS_TOKENS\n\ntype TokenColorKeys = {\n [K in keyof DesignTokens as K extends `color${string}`\n ? K\n : never]: DesignTokens[K]\n}\n\n/**\n * Propriedades do componente Icon.\n */\nexport type IconProps = React.ComponentProps<'i'> & {\n /**\n * Define o ícone a ser exibido, com base na lista de nomes disponíveis em `@raiadrogasil/pulso-icons`.\n *\n * @default 'rdicon-default'\n */\n symbol?: IconName\n\n /**\n * Define o tamanho visual do ícone, controlando o `font-size` com base nos tokens de espaçamento.\n *\n * Valores possíveis: 'tiny', 'extra-small', 'small', 'medium'.\n *\n * @default 'small'\n */\n size?: IconVisualSize\n\n /**\n * Define a cor do ícone usando uma chave de token de cor do design system.\n * A cor é aplicada via `style.color`.\n *\n * @default 'colorActionFillBrandPrimaryEnabled'\n */\n color?: keyof TokenColorKeys\n}\n\nexport function Icon({\n symbol = 'rdicon-default',\n size = 'small',\n color = 'colorActionFillBrandPrimaryEnabled',\n ...props\n}: IconProps) {\n const theme = useTheme()\n\n const resolvedFontSizes = React.useMemo(() => {\n return {\n tiny: theme.sizingTiny,\n 'extra-small': theme.sizingExtrasmall,\n small: theme.sizingSmall,\n medium: theme.sizingMedium,\n }\n }, [])\n\n return (\n <i\n {...props}\n className={symbol}\n style={{\n fontSize: resolvedFontSizes[size],\n color: theme[color],\n display: 'inline-flex',\n }}\n />\n )\n}\n\nIcon.displayName = 'Icon'\n\nexport * from './deprecated'\n","import * as React from 'react'\n\nimport {\n DROGASIL_TOKENS,\n GLOBALS_TOKENS,\n PRIME_TOKENS,\n RAIA_TOKENS,\n RDSAUDESISTEMAS_TOKENS,\n SUBSCRIPTION_TOKENS,\n} from '@raiadrogasil/pulso-design-tokens'\n\nimport { ThemeContext } from '~/components/theme-provider'\n\ntype ThemeTokens = typeof RDSAUDESISTEMAS_TOKENS & typeof GLOBALS_TOKENS\n\nexport function useTheme(): ThemeTokens {\n const mappedTheme = React.useMemo(() => {\n return {\n rdsaudesistemas: RDSAUDESISTEMAS_TOKENS,\n drogasil: DROGASIL_TOKENS,\n raia: RAIA_TOKENS,\n subscription: SUBSCRIPTION_TOKENS,\n prime: PRIME_TOKENS,\n }\n }, [])\n\n const context = React.useContext(ThemeContext)\n\n if (!context) {\n throw new Error(\n '[Pulso] useTheme precisa estar dentro de um <ThemeProvider>. Verifique se o provedor está corretamente configurado na raiz da aplicação.'\n )\n }\n\n const { currentTheme } = context\n\n const result = {\n ...GLOBALS_TOKENS,\n ...mappedTheme[currentTheme],\n } as ThemeTokens\n\n return result\n}\n","import * as React from 'react'\n\nimport type { Themes } from '@raiadrogasil/pulso-design-tokens'\n\nexport const ThemeContext = React.createContext({\n currentTheme: 'rdsaudesistemas',\n} as {\n currentTheme: Themes\n})\n\ntype ThemeProviderProps = {\n children: React.ReactNode\n theme?: Themes\n}\n\nexport function ThemeProvider({\n children,\n theme = 'rdsaudesistemas',\n}: ThemeProviderProps) {\n if (typeof window !== 'undefined') {\n document.documentElement.setAttribute('class', theme)\n }\n\n return (\n <ThemeContext.Provider\n value={{\n currentTheme: theme,\n }}\n >\n {children}\n </ThemeContext.Provider>\n )\n}\n","import type { IconName } from '@raiadrogasil/pulso-icons'\nimport { Icon, type TIconProps } from '~/components/icon'\nimport { DISPLAY_NAME, useContentContext } from '../../content'\nimport type { ContentScopedProps } from '../../content.types'\n\ninterface IContentIconProps extends TIconProps {}\n\nexport function ContentIcon({ symbol, ...props }: IContentIconProps) {\n const { __scopeContent } = props as ContentScopedProps<IContentIconProps>\n\n const { size } = useContentContext(DISPLAY_NAME, __scopeContent)\n\n const renderIconSize = (): TIconProps['size'] => {\n return size === 'tiny' ? 'extra-small' : 'small'\n }\n\n const renderSymbolIcon = (): IconName => {\n if (!symbol) return 'rdicon-default'\n return symbol as IconName\n }\n\n return (\n <Icon\n symbol={renderSymbolIcon()}\n size={renderIconSize()}\n data-testid=\"content-icon\"\n color=\"colorTextNeutralAlternative\"\n {...props}\n />\n )\n}\n","import { type Scope, createContextScope } from '@radix-ui/react-context'\nimport { forwardRef } from 'react'\nimport { LinkIcon } from './components/link-icon'\nimport {\n iconLinkVariants,\n labelLinkVariants,\n linkVariants,\n} from './link.styles'\nimport type { LinkProps } from './link.types'\n\ntype LinkContext = Pick<LinkProps, 'size' | 'disabled'>\n\nconst DISPLAY_NAME = 'Link'\n\nconst LinkRoot = forwardRef<HTMLAnchorElement, LinkProps>(\n (props: LinkScopedProps<LinkProps>, ref) => {\n const {\n children,\n icon,\n size,\n disabled,\n full,\n __scopeLink,\n href,\n onClick,\n ...rest\n } = props\n\n const linkClassName = linkVariants({\n size,\n disabled,\n full,\n })\n\n const handleClick = (\n event: React.MouseEvent<HTMLAnchorElement, MouseEvent>\n ) => {\n if (disabled) {\n event.preventDefault()\n event.stopPropagation()\n return\n }\n if (onClick) {\n onClick(event)\n }\n }\n\n return (\n <LinkProvider scope={__scopeLink} size={size} disabled={disabled}>\n <a\n {...rest}\n ref={ref}\n href={disabled ? undefined : href}\n className={linkClassName}\n aria-disabled={disabled}\n role=\"link\"\n onClick={handleClick}\n >\n <div className={labelLinkVariants()}>{children}</div>\n {icon && <LinkIcon className={iconLinkVariants()} />}\n </a>\n </LinkProvider>\n )\n }\n)\n\nLinkRoot.displayName = DISPLAY_NAME\n\n/*\nScope Definition\n*/\n\nexport type LinkScopedProps<P> = P & {\n __scopeLink?: Scope\n}\n\nconst [createLinkContext] = createContextScope(DISPLAY_NAME)\n\nexport const [LinkProvider, useLinkContext]: readonly [\n ProviderType<LinkContext>,\n (consumerName: string, scope: Scope) => LinkContext,\n] = createLinkContext<LinkContext>(DISPLAY_NAME)\n\n/*\nComposition Export\n*/\n\nexport const Link = {\n Root: LinkRoot,\n}\n","import { Icon, type TIconProps } from '~/components/icon'\nimport { useLinkContext } from '../link'\nimport type { LinkIconProps, LinkScopedProps } from '../link.types'\n\nexport function LinkIcon({\n __scopeLink,\n color = 'colorTextNeutralDefault',\n className,\n ...props\n}: LinkScopedProps<LinkIconProps> & { className?: string }) {\n const { size, disabled } = useLinkContext('LinkIcon', __scopeLink)\n\n const iconSizeMapper: Record<string, TIconProps['size']> = {\n md: 'tiny',\n ml: 'tiny',\n } as const\n\n return (\n <div\n className={`flex items-center ${className && className}`}\n role=\"figure\"\n >\n <Icon\n {...props}\n symbol=\"rdicon-open\"\n color={disabled ? 'colorTextNeutralDisabled' : color}\n size={iconSizeMapper[size!]}\n />\n </div>\n )\n}\n","import { tv } from '~/utils/tv'\n\nexport const linkVariants = tv({\n base: 'letter-spacing-default inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md rounded-pill border-action-border-neutral-tertiary-enabled bg-action-fill-neutral-tertiary-enabled px-fourpulse text-text-neutral hover:border-action-border-neutral-tertiary-hovered hover:bg-action-fill-neutral-tertiary-hovered focus:border-action-border-focused focus:border-halfpulse active:border-action-border-neutral-tertiary-pressed active:bg-action-fill-neutral-tertiary-pressed focus:active:border-action-border-focused',\n variants: {\n size: {\n md: 'h-medium min-w-medium font-semibold text-threepulse leading-medium',\n ml: 'h-mediumlarge min-w-mediumlarge font-semibold text-threeandhalfpulse leading-small',\n },\n disabled: {\n true: 'cursor-not-allowed border-action-border-neutral-tertiary-disabled bg-action-fill-neutral-tertiary-disabled text-text-neutral-disabled hover:bg-action-fill-neutral-tertiary-disabled active:bg-action-fill-neutral-tertiary-disabled',\n false: '',\n },\n full: {\n true: 'w-full',\n },\n withIcon: {\n true: 'pl-1',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n})\nexport const labelLinkVariants = tv({\n base: 'inline-flex h-small items-center justify-center underline decoration-solid',\n})\nexport const iconLinkVariants = tv({\n base: 'pl-onepulse no-underline',\n})\n","import { Link, type LinkProps } from '~/components/link'\nimport { DISPLAY_NAME, useContentContext } from '../../content'\nimport type { ContentScopedProps } from '../../content.types'\n\ntype IContentLinkProps = LinkProps\n\nexport function ContentLink(props: IContentLinkProps) {\n const { children, __scopeContent } =\n props as ContentScopedProps<IContentLinkProps>\n const { size } = useContentContext(DISPLAY_NAME, __scopeContent)\n\n const renderLabelSize = (): LinkProps['size'] => {\n return size === 'tiny' ? 'md' : 'ml'\n }\n\n return (\n <Link.Root size={renderLabelSize()} data-testid=\"content-link\" icon>\n {children}\n </Link.Root>\n )\n}\n","import { tv } from '~/utils/tv'\n\nexport const ContentSubtitleVariants = tv({\n base: `\n text-text-neutral-alternative !font-rdmodern font-regular leading-medium\n line-clamp-2 text-start overflow-ellipsis\n `,\n variants: {\n size: {\n tiny: 'text-threepulse',\n xs: 'text-threeandhalfpulse',\n },\n },\n})\n","import { DISPLAY_NAME, useContentContext } from '../../content'\nimport type { ContentScopedProps } from '../../content.types'\nimport { ContentSubtitleVariants } from './content-subtitlte.styles'\n\ntype ContentSubtitleProps = {\n children: React.ReactNode\n}\n\nexport function ContentSubtitle(props: ContentSubtitleProps) {\n const { children, __scopeContent } =\n props as ContentScopedProps<ContentSubtitleProps>\n const { size } = useContentContext(DISPLAY_NAME, __scopeContent)\n\n return (\n <p\n className={ContentSubtitleVariants({ size })}\n data-testid=\"content-subtitle\"\n >\n {children}\n </p>\n )\n}\n","import { tv } from '~/utils/tv'\n\nexport const ContentContainerTitleVariants = tv({\n base: `\n flex w-full items-center gap-twopulse min-w-[1rem] flex-shrink\n `,\n})\n\nexport const ContentTitleVariants = tv({\n base: `\n text-text-neutral !font-rdmodern font-bold leading-small text-start\n overflow-hidden text-ellipsis whitespace-nowrap w-full block\n `,\n variants: {\n size: {\n tiny: 'text-threeandhalfpulse',\n xs: 'text-fivepulse',\n },\n },\n})\n","import { DISPLAY_NAME, useContentContext } from '../../content'\nimport type { ContentScopedProps } from '../../content.types'\nimport { ContentIcon } from '../content-icon'\nimport {\n ContentContainerTitleVariants,\n ContentTitleVariants,\n} from './content-titlte.styles'\n\ntype ContentTitleProps = {\n children: React.ReactNode\n}\n\nexport function ContentTitle(props: ContentTitleProps) {\n const { children, __scopeContent } =\n props as ContentScopedProps<ContentTitleProps>\n\n const { variants, size } = useContentContext(DISPLAY_NAME, __scopeContent)\n\n return (\n <div\n className={ContentContainerTitleVariants()}\n data-testid=\"content-title\"\n >\n <p className={ContentTitleVariants({ size })}>{children}</p>\n {variants === 'interactive' && (\n <ContentIcon\n symbol=\"rdicon-chevron-right\"\n color=\"colorTextNeutralDefault\"\n data-testid=\"content-icon-chevron\"\n />\n )}\n </div>\n )\n}\n","import { tv } from '~/utils/tv'\n\nexport const ContentRootVariants = tv({\n base: `\n flex flex-row w-[320px] min-w-[260px] p-fourpulse gap-twopulse items-center\n border-action-border-neutral-tertiary-enabled bg-action-fill-neutral-tertiary-enabled\n rounded-pill outline-none\n `,\n variants: {\n variants: {\n title: '',\n interactive: `\n hover:border-action-border-neutral-tertiary-hovered hover:bg-action-fill-neutral-tertiary-hovered\n active:bg-action-fill-neutral-tertiary-pressed active:border-action-border-neutral-tertiary-pressed\n focus:border-halfpulse focus:border-action-border-focused\n focus:active:border-action-border-focused\n `,\n },\n },\n})\n"],"mappings":"ikCAAA,IAAAA,GAAA,GAAAC,GAAAD,GAAA,aAAAE,KAAA,eAAAC,GAAAH,ICAA,IAAAI,GAA+C,mCCA/C,IAAAC,EAA4C,6BAE/BC,KAAK,YAAS,CACzB,QAAS,GACT,cAAe,CACb,OAAQ,CACN,YAAa,CACX,YAAa,CACX,CACE,KAAM,CAAC,aAAc,mBAAmB,CAC1C,CACF,EACA,eAAgB,CACd,CACE,OAAQ,CAAC,eAAgB,WAAW,CACtC,CACF,EACA,kBAAmB,CACjB,CACE,KAAM,CAAC,OAAQ,eAAgB,WAAW,CAC5C,CACF,CACF,CACF,CACF,CACF,CAAC,ECvBM,IAAMC,EAAyBC,EAAG,CACvC,KAAM;AAAA;AAAA,IAGN,SAAU,CAAC,CACb,CAAC,ECYG,IAAAC,EAAA,6BAXG,SAASC,EAAeC,EAA4B,CACzD,GAAM,CAAE,SAAAC,EAAU,eAAAC,CAAe,EAC/BF,EAEI,CAAE,SAAAG,CAAS,EAAIC,EAAkBC,EAAcH,CAAc,EAEnE,GAAIC,IAAa,QAIjB,SACE,OAAC,OAAI,UAAWG,EAAuB,EAAG,cAAY,kBACnD,SAAAL,EACH,CAEJ,CCrBO,IAAMM,EAA6BC,EAAG,CAC3C,KAAM;AAAA;AAAA,IAGN,SAAU,CAAC,CACb,CAAC,ECGG,IAAAC,EAAA,6BAJG,SAASC,EAAmBC,EAAgC,CACjE,GAAM,CAAE,SAAAC,CAAS,EAAID,EAErB,SACE,OAAC,OACC,UAAWE,EAA2B,EACtC,cAAY,uBAEX,SAAAD,EACH,CAEJ,CCjBA,IAAAE,EAAuB,sBCAvB,IAAAC,EAAuB,sBAEvBC,EAOO,6CCTP,IAAAC,EAAuB,sBAwBnBC,GAAA,6BApBSC,EAAqB,gBAAc,CAC9C,aAAc,iBAChB,CAEC,EDOM,SAASC,GAAwB,CACtC,IAAMC,EAAoB,UAAQ,KACzB,CACL,gBAAiB,yBACjB,SAAU,kBACV,KAAM,cACN,aAAc,sBACd,MAAO,cACT,GACC,CAAC,CAAC,EAECC,EAAgB,aAAWC,CAAY,EAE7C,GAAI,CAACD,EACH,MAAM,IAAI,MACR,mJACF,EAGF,GAAM,CAAE,aAAAE,CAAa,EAAIF,EAOzB,OALeG,IAAA,GACV,kBACAJ,EAAYG,CAAY,EAI/B,CDqBI,IAAAE,EAAA,6BAlBG,SAASC,EAAKC,EAKP,CALO,IAAAC,EAAAD,EACnB,QAAAE,EAAS,iBACT,KAAAC,EAAO,QACP,MAAAC,EAAQ,oCAhDV,EA6CqBH,EAIhBI,EAAAC,EAJgBL,EAIhB,CAHH,SACA,OACA,UAGA,IAAMM,EAAQC,EAAS,EAEjBC,EAA0B,UAAQ,KAC/B,CACL,KAAMF,EAAM,WACZ,cAAeA,EAAM,iBACrB,MAAOA,EAAM,YACb,OAAQA,EAAM,YAChB,GACC,CAAC,CAAC,EAEL,SACE,OAAC,IAAAG,EAAAC,EAAA,GACKN,GADL,CAEC,UAAWH,EACX,MAAO,CACL,SAAUO,EAAkBN,CAAI,EAChC,MAAOI,EAAMH,CAAK,EAClB,QAAS,aACX,GACF,CAEJ,CAEAL,EAAK,YAAc,OGrDf,IAAAa,EAAA,6BAfG,SAASC,EAAYC,EAAyC,CAAzC,IAAAC,EAAAD,EAAE,QAAAE,CAP9B,EAO4BD,EAAaE,EAAAC,EAAbH,EAAa,CAAX,WAC5B,GAAM,CAAE,eAAAI,CAAe,EAAIF,EAErB,CAAE,KAAAG,CAAK,EAAIC,EAAkBC,EAAcH,CAAc,EAEzDI,EAAiB,IACdH,IAAS,OAAS,cAAgB,QAQ3C,SACE,OAACI,EAAAC,EAAA,CACC,OANGT,GAAe,iBAOlB,KAAMO,EAAe,EACrB,cAAY,eACZ,MAAM,+BACFN,EACN,CAEJ,CC9BA,IAAAS,EAA+C,mCAC/CC,GAA2B,iBCqBrB,IAAAC,EAAA,6BAlBC,SAASC,EAASC,EAKmC,CALnC,IAAAC,EAAAD,EACvB,aAAAE,EACA,MAAAC,EAAQ,0BACR,UAAAC,CAPF,EAIyBH,EAIpBI,EAAAC,EAJoBL,EAIpB,CAHH,cACA,QACA,cAGA,GAAM,CAAE,KAAAM,EAAM,SAAAC,CAAS,EAAIC,EAAe,WAAYP,CAAW,EAE3DQ,EAAqD,CACzD,GAAI,OACJ,GAAI,MACN,EAEA,SACE,OAAC,OACC,UAAW,qBAAqBN,GAAaA,CAAS,GACtD,KAAK,SAEL,mBAACO,EAAAC,EAAAC,EAAA,GACKR,GADL,CAEC,OAAO,cACP,MAAOG,EAAW,2BAA6BL,EAC/C,KAAMO,EAAeH,CAAK,GAC5B,EACF,CAEJ,CC5BO,IAAMO,EAAeC,EAAG,CAC7B,KAAM,ghBACN,SAAU,CACR,KAAM,CACJ,GAAI,qEACJ,GAAI,oFACN,EACA,SAAU,CACR,KAAM,uOACN,MAAO,EACT,EACA,KAAM,CACJ,KAAM,QACR,EACA,SAAU,CACR,KAAM,MACR,CACF,EACA,gBAAiB,CACf,KAAM,IACR,CACF,CAAC,EACYC,EAAoBD,EAAG,CAClC,KAAM,4EACR,CAAC,EACYE,EAAmBF,EAAG,CACjC,KAAM,0BACR,CAAC,EFoBO,IAAAG,EAAA,6BArCFC,EAAe,OAEfC,MAAW,eACf,CAACC,EAAmCC,IAAQ,CAC1C,IAUIC,EAAAF,EATF,UAAAG,EACA,KAAAC,EACA,KAAAC,EACA,SAAAC,EACA,KAAAC,EACA,YAAAC,EACA,KAAAC,EACA,QAAAC,CAxBN,EA0BQR,EADCS,GAAAC,EACDV,EADC,CARH,WACA,OACA,OACA,WACA,OACA,cACA,OACA,YAIIW,GAAgBC,EAAa,CACjC,KAAAT,EACA,SAAAC,EACA,KAAAC,CACF,CAAC,EAEKQ,GACJC,GACG,CACH,GAAIV,EAAU,CACZU,EAAM,eAAe,EACrBA,EAAM,gBAAgB,EACtB,MACF,CACIN,GACFA,EAAQM,CAAK,CAEjB,EAEA,SACE,OAACC,GAAA,CAAa,MAAOT,EAAa,KAAMH,EAAM,SAAUC,EACtD,oBAAC,IAAAY,EAAAC,EAAA,GACKR,IADL,CAEC,IAAKV,EACL,KAAMK,EAAW,OAAYG,EAC7B,UAAWI,GACX,gBAAeP,EACf,KAAK,OACL,QAASS,GAET,oBAAC,OAAI,UAAWK,EAAkB,EAAI,SAAAjB,EAAS,EAC9CC,MAAQ,OAACiB,EAAA,CAAS,UAAWC,EAAiB,EAAG,IACpD,EACF,CAEJ,CACF,EAEAvB,GAAS,YAAcD,EAUvB,GAAM,CAACyB,EAAiB,KAAI,sBAAmBzB,CAAY,EAE9C,CAACmB,GAAcO,CAAc,EAGtCD,GAA+BzB,CAAY,EAMlC2B,EAAO,CAClB,KAAM1B,EACR,EGzEI,IAAA2B,GAAA,6BAVG,SAASC,GAAYC,EAA0B,CACpD,GAAM,CAAE,SAAAC,EAAU,eAAAC,CAAe,EAC/BF,EACI,CAAE,KAAAG,CAAK,EAAIC,EAAkBC,EAAcH,CAAc,EAEzDI,EAAkB,IACfH,IAAS,OAAS,KAAO,KAGlC,SACE,QAACI,EAAK,KAAL,CAAU,KAAMD,EAAgB,EAAG,cAAY,eAAe,KAAI,GAChE,SAAAL,EACH,CAEJ,CClBO,IAAMO,GAA0BC,EAAG,CACxC,KAAM;AAAA;AAAA;AAAA,IAIN,SAAU,CACR,KAAM,CACJ,KAAM,kBACN,GAAI,wBACN,CACF,CACF,CAAC,ECCG,IAAAC,GAAA,6BANG,SAASC,GAAgBC,EAA6B,CAC3D,GAAM,CAAE,SAAAC,EAAU,eAAAC,CAAe,EAC/BF,EACI,CAAE,KAAAG,CAAK,EAAIC,EAAkBC,EAAcH,CAAc,EAE/D,SACE,QAAC,KACC,UAAWI,GAAwB,CAAE,KAAAH,CAAK,CAAC,EAC3C,cAAY,mBAEX,SAAAF,EACH,CAEJ,CCnBO,IAAMM,GAAgCC,EAAG,CAC9C,KAAM;AAAA;AAAA,GAGR,CAAC,EAEYC,GAAuBD,EAAG,CACrC,KAAM;AAAA;AAAA;AAAA,IAIN,SAAU,CACR,KAAM,CACJ,KAAM,yBACN,GAAI,gBACN,CACF,CACF,CAAC,ECAG,IAAAE,EAAA,6BAPG,SAASC,GAAaC,EAA0B,CACrD,GAAM,CAAE,SAAAC,EAAU,eAAAC,CAAe,EAC/BF,EAEI,CAAE,SAAAG,EAAU,KAAAC,CAAK,EAAIC,EAAkBC,EAAcJ,CAAc,EAEzE,SACE,QAAC,OACC,UAAWK,GAA8B,EACzC,cAAY,gBAEZ,oBAAC,KAAE,UAAWC,GAAqB,CAAE,KAAAJ,CAAK,CAAC,EAAI,SAAAH,EAAS,EACvDE,IAAa,kBACZ,OAACM,EAAA,CACC,OAAO,uBACP,MAAM,0BACN,cAAY,uBACd,GAEJ,CAEJ,CC/BO,IAAMC,GAAsBC,EAAG,CACpC,KAAM;AAAA;AAAA;AAAA;AAAA,IAKN,SAAU,CACR,SAAU,CACR,MAAO,GACP,YAAa;AAAA;AAAA;AAAA;AAAA;AAAA,OAMf,CACF,CACF,CAAC,ElBWK,IAAAC,EAAA,6BAfOC,EAAe,UAI5B,SAASC,GAAYC,EAAyB,CAC5C,GAAM,CAAE,SAAAC,EAAU,SAAAC,EAAU,KAAAC,EAAM,eAAAC,CAAe,EAC/CJ,EAOF,SACE,OAACK,GAAAC,EAAAC,EAAA,GAP0B,CAC3B,MAAOH,EACP,SAAAF,EACA,KAAAC,CACF,GAGG,CACC,mBAAC,UACC,SAAUD,IAAa,QACvB,KAAK,SACL,UAAWM,GAAoB,CAAE,SAAAN,CAAS,CAAC,EAC3C,cAAY,eAEX,SAAAD,EACH,GACF,CAEJ,CAEA,GAAM,CAACQ,EAAoB,KAAI,uBAAmBX,CAAY,EAEjD,CAACO,GAAiBK,CAAiB,EAG5CD,GAAqCX,CAAY,EAQxCa,GAAU,CACrB,KAAMZ,GACN,KAAMa,EACN,YAAaC,EACb,MAAOC,GACP,SAAUC,GACV,QAASC,EACT,KAAMC,EACR","names":["content_exports","__export","Content","__toCommonJS","import_react_context","import_tailwind_variants","tv","ContentActionsVariants","tv","import_jsx_runtime","ContentActions","props","children","__scopeContent","variants","useContentContext","DISPLAY_NAME","ContentActionsVariants","ContentActionsTextVariants","tv","import_jsx_runtime","ContentActionsText","props","children","ContentActionsTextVariants","React","React","import_pulso_design_tokens","React","import_jsx_runtime","ThemeContext","useTheme","mappedTheme","context","ThemeContext","currentTheme","__spreadValues","import_jsx_runtime","Icon","_a","_b","symbol","size","color","props","__objRest","theme","useTheme","resolvedFontSizes","__spreadProps","__spreadValues","import_jsx_runtime","ContentIcon","_a","_b","symbol","props","__objRest","__scopeContent","size","useContentContext","DISPLAY_NAME","renderIconSize","Icon","__spreadValues","import_react_context","import_react","import_jsx_runtime","LinkIcon","_a","_b","__scopeLink","color","className","props","__objRest","size","disabled","useLinkContext","iconSizeMapper","Icon","__spreadProps","__spreadValues","linkVariants","tv","labelLinkVariants","iconLinkVariants","import_jsx_runtime","DISPLAY_NAME","LinkRoot","props","ref","_a","children","icon","size","disabled","full","__scopeLink","href","onClick","rest","__objRest","linkClassName","linkVariants","handleClick","event","LinkProvider","__spreadProps","__spreadValues","labelLinkVariants","LinkIcon","iconLinkVariants","createLinkContext","useLinkContext","Link","import_jsx_runtime","ContentLink","props","children","__scopeContent","size","useContentContext","DISPLAY_NAME","renderLabelSize","Link","ContentSubtitleVariants","tv","import_jsx_runtime","ContentSubtitle","props","children","__scopeContent","size","useContentContext","DISPLAY_NAME","ContentSubtitleVariants","ContentContainerTitleVariants","tv","ContentTitleVariants","import_jsx_runtime","ContentTitle","props","children","__scopeContent","variants","size","useContentContext","DISPLAY_NAME","ContentContainerTitleVariants","ContentTitleVariants","ContentIcon","ContentRootVariants","tv","import_jsx_runtime","DISPLAY_NAME","ContentRoot","props","children","variants","size","__scopeContent","ContentProvider","__spreadProps","__spreadValues","ContentRootVariants","createContentContext","useContentContext","Content","ContentIcon","ContentActionsText","ContentTitle","ContentSubtitle","ContentActions","ContentLink"]}