@spark-ui/components 10.7.4 → 10.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/alert-dialog/index.js +36 -5
  3. package/dist/alert-dialog/index.js.map +1 -1
  4. package/dist/alert-dialog/index.mjs +2 -2
  5. package/dist/avatar/index.js +3 -0
  6. package/dist/avatar/index.js.map +1 -1
  7. package/dist/avatar/index.mjs +3 -1
  8. package/dist/avatar/index.mjs.map +1 -1
  9. package/dist/breadcrumb/index.js +1 -0
  10. package/dist/breadcrumb/index.js.map +1 -1
  11. package/dist/breadcrumb/index.mjs +1 -1
  12. package/dist/carousel/index.js +9 -0
  13. package/dist/carousel/index.js.map +1 -1
  14. package/dist/carousel/index.mjs +9 -1
  15. package/dist/carousel/index.mjs.map +1 -1
  16. package/dist/{chunk-O42QOEJ6.mjs → chunk-ESSJY557.mjs} +2 -2
  17. package/dist/{chunk-73YYIDSP.mjs → chunk-OQ4ALBBN.mjs} +6 -1
  18. package/dist/chunk-OQ4ALBBN.mjs.map +1 -0
  19. package/dist/{chunk-SBJNVOF7.mjs → chunk-QNYSDG6F.mjs} +2 -1
  20. package/dist/{chunk-SBJNVOF7.mjs.map → chunk-QNYSDG6F.mjs.map} +1 -1
  21. package/dist/{chunk-TOKVRWXL.mjs → chunk-RKPP7ZOK.mjs} +2 -1
  22. package/dist/{chunk-TOKVRWXL.mjs.map → chunk-RKPP7ZOK.mjs.map} +1 -1
  23. package/dist/{chunk-3PRCMWLU.mjs → chunk-T26TYEWV.mjs} +37 -7
  24. package/dist/chunk-T26TYEWV.mjs.map +1 -0
  25. package/dist/combobox/index.js +1 -0
  26. package/dist/combobox/index.js.map +1 -1
  27. package/dist/combobox/index.mjs +2 -2
  28. package/dist/dialog/index.js +36 -5
  29. package/dist/dialog/index.js.map +1 -1
  30. package/dist/dialog/index.mjs +2 -2
  31. package/dist/divider/index.js +1 -0
  32. package/dist/divider/index.js.map +1 -1
  33. package/dist/divider/index.mjs +1 -0
  34. package/dist/divider/index.mjs.map +1 -1
  35. package/dist/drawer/index.js +36 -6
  36. package/dist/drawer/index.js.map +1 -1
  37. package/dist/drawer/index.mjs +36 -7
  38. package/dist/drawer/index.mjs.map +1 -1
  39. package/dist/dropdown/index.js +1 -0
  40. package/dist/dropdown/index.js.map +1 -1
  41. package/dist/dropdown/index.mjs +2 -2
  42. package/dist/icon-button/index.js +1 -0
  43. package/dist/icon-button/index.js.map +1 -1
  44. package/dist/icon-button/index.mjs +1 -1
  45. package/dist/input/index.js +5 -0
  46. package/dist/input/index.js.map +1 -1
  47. package/dist/input/index.mjs +1 -1
  48. package/dist/kbd/index.js +1 -0
  49. package/dist/kbd/index.js.map +1 -1
  50. package/dist/kbd/index.mjs +1 -0
  51. package/dist/kbd/index.mjs.map +1 -1
  52. package/dist/pagination/index.js +1 -0
  53. package/dist/pagination/index.js.map +1 -1
  54. package/dist/pagination/index.mjs +1 -1
  55. package/dist/popover/index.js +1 -0
  56. package/dist/popover/index.js.map +1 -1
  57. package/dist/popover/index.mjs +2 -2
  58. package/dist/progress/index.js +23 -2
  59. package/dist/progress/index.js.map +1 -1
  60. package/dist/progress/index.mjs +23 -2
  61. package/dist/progress/index.mjs.map +1 -1
  62. package/dist/progress-tracker/index.js +1 -0
  63. package/dist/progress-tracker/index.js.map +1 -1
  64. package/dist/progress-tracker/index.mjs +1 -0
  65. package/dist/progress-tracker/index.mjs.map +1 -1
  66. package/dist/radio-group/index.js +9 -1
  67. package/dist/radio-group/index.js.map +1 -1
  68. package/dist/radio-group/index.mjs +9 -1
  69. package/dist/radio-group/index.mjs.map +1 -1
  70. package/dist/rating/index.js +1 -0
  71. package/dist/rating/index.js.map +1 -1
  72. package/dist/rating/index.mjs +1 -0
  73. package/dist/rating/index.mjs.map +1 -1
  74. package/dist/scrolling-list/index.js +14 -1
  75. package/dist/scrolling-list/index.js.map +1 -1
  76. package/dist/scrolling-list/index.mjs +14 -2
  77. package/dist/scrolling-list/index.mjs.map +1 -1
  78. package/dist/slider/index.js +12 -1
  79. package/dist/slider/index.js.map +1 -1
  80. package/dist/slider/index.mjs +12 -1
  81. package/dist/slider/index.mjs.map +1 -1
  82. package/dist/snackbar/index.js +4 -0
  83. package/dist/snackbar/index.js.map +1 -1
  84. package/dist/snackbar/index.mjs +4 -1
  85. package/dist/snackbar/index.mjs.map +1 -1
  86. package/dist/stepper/index.js +8 -2
  87. package/dist/stepper/index.js.map +1 -1
  88. package/dist/stepper/index.mjs +4 -4
  89. package/dist/stepper/index.mjs.map +1 -1
  90. package/dist/switch/index.js +9 -1
  91. package/dist/switch/index.js.map +1 -1
  92. package/dist/switch/index.mjs +9 -1
  93. package/dist/switch/index.mjs.map +1 -1
  94. package/dist/tabs/index.js +3 -0
  95. package/dist/tabs/index.js.map +1 -1
  96. package/dist/tabs/index.mjs +3 -0
  97. package/dist/tabs/index.mjs.map +1 -1
  98. package/dist/text-link/index.js +1 -0
  99. package/dist/text-link/index.js.map +1 -1
  100. package/dist/text-link/index.mjs +1 -1
  101. package/dist/textarea/index.js +5 -0
  102. package/dist/textarea/index.js.map +1 -1
  103. package/dist/textarea/index.mjs +1 -1
  104. package/package.json +5 -5
  105. package/dist/chunk-3PRCMWLU.mjs.map +0 -1
  106. package/dist/chunk-73YYIDSP.mjs.map +0 -1
  107. /package/dist/{chunk-O42QOEJ6.mjs.map → chunk-ESSJY557.mjs.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/progress-tracker/index.ts","../../src/progress-tracker/ProgressTracker.tsx","../../src/progress-tracker/ProgressTracker.styles.ts","../../src/progress-tracker/ProgressTrackerContext.ts","../../src/progress-tracker/ProgressTrackerStep.tsx","../../src/progress-tracker/ProgressTrackerStep.styles.ts","../../src/progress-tracker/ProgressTrackerStepIndicator.tsx","../../src/icon/Icon.tsx","../../src/slot/Slot.tsx","../../src/visually-hidden/VisuallyHidden.tsx","../../src/icon/Icon.styles.tsx","../../src/progress-tracker/ProgressTrackerStepIndicator.styles.ts","../../src/progress-tracker/stepIndicatorVariants/outline.ts","../../src/progress-tracker/stepIndicatorVariants/tinted.ts","../../src/progress-tracker/ProgressTrackerStepLabel.styles.ts","../../src/progress-tracker/ProgressTrackerStepLabel.tsx"],"sourcesContent":["import { ProgressTracker as Root, type ProgressTrackerProps } from './ProgressTracker'\nimport { ProgressTrackerStep as Step, type ProgressTrackerStepProps } from './ProgressTrackerStep'\nimport {\n ProgressTrackerStepIndicator as StepIndicator,\n type ProgressTrackerStepIndicatorProps,\n} from './ProgressTrackerStepIndicator'\nimport { ProgressTrackerStepLabel as StepLabel } from './ProgressTrackerStepLabel'\n\nexport const ProgressTracker: typeof Root & {\n Step: typeof Step\n StepLabel: typeof StepLabel\n StepIndicator: typeof StepIndicator\n} = Object.assign(Root, {\n Step,\n StepLabel,\n StepIndicator,\n})\n\nProgressTracker.displayName = 'ProgressTracker'\nStep.displayName = 'ProgressTracker.Step'\nStepLabel.displayName = 'ProgressTracker.StepLabel'\nStepIndicator.displayName = 'ProgressTracker.StepIndicator'\n\nexport type { ProgressTrackerProps, ProgressTrackerStepProps, ProgressTrackerStepIndicatorProps }\n","import { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithRef, type PropsWithChildren, useState } from 'react'\n\nimport { progressList } from './ProgressTracker.styles'\nimport {\n ProgressTrackerContext,\n type ProgressTrackerContextInterface,\n} from './ProgressTrackerContext'\nimport type { StepIndicatorVariantProps } from './ProgressTrackerStepIndicator.styles'\n\nexport interface ProgressTrackerProps\n extends ComponentPropsWithRef<'div'>,\n Pick<StepIndicatorVariantProps, 'size' | 'intent' | 'design'> {\n /**\n * The orientation of the progress tracker\n * @default 'horizontal\"\n */\n orientation?: 'horizontal' | 'vertical'\n /**\n * The index of the current step.\n * @default 0\n */\n stepIndex?: number\n /**\n * Event handler called when clicking on a step.\n */\n onStepClick?: (stepIndex: number) => void\n /**\n * Sets the component as interactive or not.\n * @default false\n */\n readOnly?: boolean\n}\n\nexport const ProgressTracker = ({\n stepIndex = 0,\n onStepClick,\n readOnly = false,\n intent = 'basic',\n size = 'lg',\n design = 'outline',\n orientation = 'horizontal',\n children,\n className,\n ref,\n ...rest\n}: PropsWithChildren<ProgressTrackerProps>) => {\n const [steps, setSteps] = useState<ProgressTrackerContextInterface['steps']>(new Map())\n\n const Component = readOnly ? 'div' : 'nav'\n\n return (\n <ProgressTrackerContext.Provider\n value={{ stepIndex, onStepClick, steps, setSteps, size, intent, design, readOnly }}\n >\n <Component\n ref={ref}\n data-spark-component=\"progress-tracker\"\n className={cx('inline-flex', className)}\n {...rest}\n >\n <ol\n data-orientation={orientation}\n className={progressList}\n style={{ counterReset: 'step' }}\n >\n {children}\n </ol>\n </Component>\n </ProgressTrackerContext.Provider>\n )\n}\n\nProgressTracker.displayName = 'ProgressTracker'\n","import { cx } from 'class-variance-authority'\n\nexport const progressList = cx([\n 'flex flex-nowrap items-start group/list',\n 'data-[orientation=horizontal]:flex-row data-[orientation=horizontal]:w-full',\n 'data-[orientation=vertical]:flex-col',\n])\n","import { createContext, type Dispatch, type SetStateAction, useContext } from 'react'\n\nimport type { ProgressTrackerProps } from './ProgressTracker'\n\n// Interfaces\nexport type ProgressTrackerContextInterface = Required<\n Pick<ProgressTrackerProps, 'stepIndex' | 'size' | 'intent' | 'design' | 'readOnly'>\n> &\n Pick<ProgressTrackerProps, 'onStepClick'> & {\n steps: Map<string, string[]>\n setSteps: Dispatch<SetStateAction<Map<string, string[]>>>\n }\n\nexport interface ProgressTrackerStepContextInterface {\n index: number\n state: 'active' | 'complete' | 'incomplete'\n}\n\n// Contexts\nexport const ProgressTrackerContext = createContext<ProgressTrackerContextInterface>(\n {} as ProgressTrackerContextInterface\n)\n\nexport const ProgressTrackerStepContext = createContext<ProgressTrackerStepContextInterface>(\n {} as ProgressTrackerStepContextInterface\n)\n\n// Hooks\nexport const useProgressTrackerContext = () => useContext(ProgressTrackerContext)\n\nexport const useProgressTrackerStepContext = () => useContext(ProgressTrackerStepContext)\n\nexport const ID_PREFIX = ':progress-tracker'\n","import { type ComponentPropsWithRef, type ReactNode, useEffect, useId } from 'react'\n\nimport {\n ID_PREFIX,\n ProgressTrackerStepContext,\n useProgressTrackerContext,\n} from './ProgressTrackerContext'\nimport { stepButtonVariant, stepItemVariant } from './ProgressTrackerStep.styles'\nimport { ProgressTrackerStepIndicator } from './ProgressTrackerStepIndicator'\n\nexport type ProgressTrackerStepProps = ComponentPropsWithRef<'li'> &\n (\n | {\n disabled?: boolean\n children: ReactNode\n }\n | {\n disabled?: boolean\n 'aria-label': string\n }\n )\n\nexport const ProgressTrackerStep = ({\n disabled = false,\n children,\n 'aria-label': ariaLabel,\n className,\n ref,\n ...rest\n}: ProgressTrackerStepProps) => {\n const {\n stepIndex: currentStepIndex,\n steps,\n onStepClick,\n setSteps,\n size,\n intent,\n readOnly,\n } = useProgressTrackerContext()\n\n const stepId = `${ID_PREFIX}-step-${useId()}`\n const stepIndex = [...steps.keys()].indexOf(stepId)\n\n const disabledAfter = (() => {\n const nextStepId = [...steps.keys()][stepIndex + 1]\n\n return !!(nextStepId && steps.get(nextStepId)?.includes('disabled'))\n })()\n\n const progressState = (() => {\n if (stepIndex === currentStepIndex) return 'active'\n else if (stepIndex < currentStepIndex) return 'complete'\n else return 'incomplete'\n })()\n\n useEffect(() => {\n setSteps(steps => {\n const newSteps = new Map(steps)\n\n return newSteps.set(\n stepId,\n [progressState, disabled ? 'disabled' : ''].filter(v => !!v)\n )\n })\n\n return () => {\n setSteps(steps => {\n steps.delete(stepId)\n\n return steps\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return (\n <li\n id={stepId}\n ref={ref}\n data-state={progressState}\n {...(progressState === 'active' && {\n 'aria-current': 'step',\n })}\n className={stepItemVariant({\n size,\n intent,\n disabled,\n disabledAfter,\n })}\n {...rest}\n >\n <button\n type=\"button\"\n aria-label={ariaLabel}\n data-interactive={!disabled && !readOnly}\n {...(!disabled &&\n !readOnly && {\n onClick: () => onStepClick?.(stepIndex),\n })}\n disabled={disabled}\n className={stepButtonVariant({\n size,\n readOnly,\n className,\n })}\n >\n <ProgressTrackerStepContext.Provider\n value={{\n index: stepIndex,\n state: progressState,\n }}\n >\n {children || <ProgressTrackerStepIndicator />}\n </ProgressTrackerStepContext.Provider>\n </button>\n </li>\n )\n}\n\nProgressTrackerStep.displayName = 'ProgressTracker.Step'\n","import { cva } from 'class-variance-authority'\n\nexport const stepItemVariant = cva(\n [\n 'relative inline-flex items-start flex-auto first:grow-0 justify-center group/item',\n // Progress Track\n 'after:absolute after:z-base',\n 'last:after:content-none',\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:px-[1px]',\n 'group-data-[orientation=horizontal]/list:before:absolute group-data-[orientation=horizontal]/list:before:z-base',\n 'group-data-[orientation=horizontal]/list:before:left-0 group-data-[orientation=horizontal]/list:after:right-0',\n 'group-data-[orientation=horizontal]/list:before:h-[1px] group-data-[orientation=horizontal]/list:after:h-[1px]',\n 'first:group-data-[orientation=horizontal]/list:before:content-none',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:py-[1px]',\n 'group-data-[orientation=vertical]/list:items-start',\n 'group-data-[orientation=vertical]/list:after:w-[1px] group-data-[orientation=vertical]/list:after:bottom-[-1px]',\n ],\n {\n variants: {\n size: {\n sm: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[8px] group-data-[orientation=horizontal]/list:after:top-[8px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+12px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+12px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+10px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+10px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[8px]',\n 'group-data-[orientation=vertical]/list:after:top-[25px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[21px]',\n ],\n md: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[12px] group-data-[orientation=horizontal]/list:after:top-[12px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+16px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+16px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+14px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+14px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[12px]',\n 'group-data-[orientation=vertical]/list:after:top-[33px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[29px]',\n ],\n lg: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[16px] group-data-[orientation=horizontal]/list:after:top-[16px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+20px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+20px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+18px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+18px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[16px]',\n 'group-data-[orientation=vertical]/list:after:top-[41px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[37px]',\n ],\n },\n intent: {\n basic: ['after:bg-basic', 'group-data-[orientation=horizontal]/list:before:bg-basic'],\n support: ['after:bg-support', 'group-data-[orientation=horizontal]/list:before:bg-support'],\n main: ['after:bg-main', 'group-data-[orientation=horizontal]/list:before:bg-main'],\n neutral: ['after:bg-neutral', 'group-data-[orientation=horizontal]/list:before:bg-neutral'],\n info: ['after:bg-info', 'group-data-[orientation=horizontal]/list:before:bg-info'],\n accent: ['after:bg-accent', 'group-data-[orientation=horizontal]/list:before:bg-accent'],\n danger: ['after:bg-error', 'group-data-[orientation=horizontal]/list:before:bg-error'],\n alert: ['after:bg-alert', 'group-data-[orientation=horizontal]/list:before:bg-alert'],\n success: ['after:bg-success', 'group-data-[orientation=horizontal]/list:before:bg-success'],\n },\n disabled: {\n true: 'before:opacity-dim-3',\n false: '',\n },\n disabledAfter: {\n true: 'after:opacity-dim-3',\n false: '',\n },\n },\n defaultVariants: {\n disabled: false,\n disabledAfter: false,\n size: 'lg',\n intent: 'basic',\n },\n }\n)\n\nexport const stepButtonVariant = cva(\n [\n 'relative flex group/btn disabled:cursor-default',\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:flex-col group-data-[orientation=horizontal]/list:items-center',\n 'group-data-[orientation=horizontal]/list:text-center group-data-[orientation=horizontal]/list:mx-sm',\n 'group-first/item:group-data-[orientation=horizontal]/list:ml-0 group-last/item:group-data-[orientation=horizontal]/list:mr-0',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:flex-row group-data-[orientation=vertical]/list:items-start',\n 'group-data-[orientation=vertical]/list:text-left group-data-[orientation=vertical]/list:my-sm',\n 'group-first/item:group-data-[orientation=vertical]/list:mt-0 group-last/item:group-data-[orientation=vertical]/list:mb-0',\n ],\n {\n variants: {\n size: {\n sm: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-16 group-data-[orientation=horizontal]/list:mt-[16px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-16 group-data-[orientation=vertical]/list:ml-[16px]',\n ],\n md: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-24 group-data-[orientation=horizontal]/list:mt-[24px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-24 group-data-[orientation=vertical]/list:ml-[24px]',\n ],\n lg: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-32 group-data-[orientation=horizontal]/list:mt-[32px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-32 group-data-[orientation=vertical]/list:ml-[32px]',\n ],\n },\n readOnly: {\n true: 'cursor-default',\n false: 'cursor-pointer',\n },\n },\n defaultVariants: {\n size: 'lg',\n readOnly: false,\n },\n }\n)\n","import { Check } from '@spark-ui/icons/Check'\nimport type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { Icon } from '../icon'\nimport { useProgressTrackerContext, useProgressTrackerStepContext } from './ProgressTrackerContext'\nimport { stepIndicatorVariant } from './ProgressTrackerStepIndicator.styles'\n\nexport type ProgressTrackerStepIndicatorProps = ComponentPropsWithoutRef<'span'> & {\n /**\n * The content to be rendered when step status is complete (checkmark icon by default)\n */\n complete?: ReactNode\n /**\n * The content to be rendered when step status is incomplete (step index by default)\n */\n incomplete?: ReactNode\n}\n\nconst CompleteIndicator = () => (\n <Icon size=\"sm\">\n <Check />\n </Icon>\n)\n\nexport const ProgressTrackerStepIndicator = ({\n complete,\n incomplete,\n className,\n}: ProgressTrackerStepIndicatorProps) => {\n const { size, intent, design } = useProgressTrackerContext()\n const { index, state } = useProgressTrackerStepContext()\n\n return (\n <span\n className={stepIndicatorVariant({ size, intent, design, state, className })}\n aria-hidden=\"true\"\n >\n {size !== 'sm' && (\n <>\n {state === 'complete' && (complete === undefined ? <CompleteIndicator /> : complete)}\n {state !== 'complete' && (incomplete === undefined ? `${index + 1}` : incomplete)}\n </>\n )}\n </span>\n )\n}\n\nProgressTrackerStepIndicator.displayName = 'ProgressTracker.StepIndicator'\n","import { Children, cloneElement, ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react'\n\nimport { VisuallyHidden } from '../visually-hidden'\nimport { iconStyles, IconVariantsProps } from './Icon.styles'\n\nexport interface IconProps extends IconVariantsProps, ComponentPropsWithoutRef<'svg'> {\n /**\n * The svg icon that will be wrapped\n */\n children: ReactNode\n /**\n * The accessible label for the icon. This label will be visually hidden but announced to screen\n * reader users, similar to `alt` text for `img` tags.\n */\n label?: string\n}\n\nexport const Icon = ({\n label,\n className,\n size = 'current',\n intent = 'current',\n children,\n ...others\n}: IconProps) => {\n const child = Children.only(children)\n\n return (\n <>\n {cloneElement(child as ReactElement<Record<string, any>>, {\n className: iconStyles({ className, size, intent }),\n 'data-spark-component': 'icon',\n 'aria-hidden': 'true',\n focusable: 'false',\n ...others,\n })}\n\n {label && <VisuallyHidden>{label}</VisuallyHidden>}\n </>\n )\n}\n\nIcon.displayName = 'Icon'\n","import { Slot as RadixSlot } from 'radix-ui'\nimport {\n cloneElement,\n HTMLAttributes,\n isValidElement,\n PropsWithChildren,\n ReactNode,\n Ref,\n} from 'react'\n\nexport const Slottable: typeof RadixSlot.Slottable = RadixSlot.Slottable\n\nexport type SlotProps = PropsWithChildren<HTMLAttributes<HTMLElement>> & {\n ref?: Ref<HTMLElement>\n}\n\nexport const Slot = ({ ref, ...props }: SlotProps) => {\n return <RadixSlot.Root ref={ref} {...props} />\n}\n\n/**\n * When using Radix `Slot` component, it will consider its first child to merge its props with.\n * In some cases, you might need to wrap the top child with additional markup without breaking this behaviour.\n */\nexport const wrapPolymorphicSlot = (\n asChild: boolean | undefined,\n children: ReactNode,\n callback: (children: ReactNode) => ReactNode\n) => {\n if (!asChild) return callback(children) // If polymorphic behaviour is not used, we keep the original children\n\n return isValidElement(children)\n ? cloneElement(\n children,\n undefined,\n callback((children.props as { children: ReactNode }).children)\n )\n : null\n}\n","import { HTMLAttributes, PropsWithChildren, Ref } from 'react'\n\nimport { Slot } from '../slot'\n\nexport type VisuallyHiddenProps = PropsWithChildren<HTMLAttributes<HTMLElement>> & {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n */\n asChild?: boolean\n ref?: Ref<HTMLElement>\n}\n\nexport const VisuallyHidden = ({ asChild = false, ref, ...props }: VisuallyHiddenProps) => {\n const Component = asChild ? Slot : 'span'\n\n return (\n <Component\n {...props}\n ref={ref}\n style={{\n // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss\n position: 'absolute',\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n wordWrap: 'normal',\n ...props.style,\n }}\n />\n )\n}\n\nVisuallyHidden.displayName = 'VisuallyHidden'\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const iconStyles = cva(['fill-current shrink-0'], {\n variants: {\n /**\n * Color scheme of the icon.\n */\n intent: makeVariants<\n 'intent',\n [\n 'current',\n 'main',\n 'support',\n 'accent',\n 'basic',\n 'success',\n 'alert',\n 'error',\n 'info',\n 'neutral',\n ]\n >({\n current: ['text-current'],\n main: ['text-main'],\n support: ['text-support'],\n accent: ['text-accent'],\n basic: ['text-basic'],\n success: ['text-success'],\n alert: ['text-alert'],\n error: ['text-error'],\n info: ['text-info'],\n neutral: ['text-neutral'],\n }),\n /**\n * Sets the size of the icon.\n */\n size: makeVariants<'size', ['current', 'sm', 'md', 'lg', 'xl']>({\n current: ['u-current-font-size'],\n sm: ['w-sz-16', 'h-sz-16'],\n md: ['w-sz-24', 'h-sz-24'],\n lg: ['w-sz-32', 'h-sz-32'],\n xl: ['w-sz-40', 'h-sz-40'],\n }),\n },\n})\n\nexport type IconVariantsProps = VariantProps<typeof iconStyles>\n","import { cva, VariantProps } from 'class-variance-authority'\n\nimport { outlineVariants, tintedVariants } from './stepIndicatorVariants'\n\nexport const stepIndicatorVariant = cva(\n [\n 'relative flex shrink-0 justify-center items-center',\n 'rounded-full',\n 'text-body-2 font-bold',\n 'group-disabled/btn:opacity-dim-3',\n ],\n {\n variants: {\n size: {\n sm: [\n 'w-sz-16 h-sz-16',\n 'group-data-[orientation=horizontal]/list:mt-[-16px]',\n 'group-data-[orientation=vertical]/list:ml-[-16px]',\n ],\n md: [\n 'w-sz-24 h-sz-24',\n 'group-data-[orientation=horizontal]/list:mt-[-24px]',\n 'group-data-[orientation=vertical]/list:ml-[-24px]',\n ],\n lg: [\n 'w-sz-32 h-sz-32',\n 'group-data-[orientation=horizontal]/list:mt-[-32px]',\n 'group-data-[orientation=vertical]/list:ml-[-32px]',\n ],\n },\n intent: {\n basic: '',\n support: '',\n main: '',\n neutral: '',\n info: '',\n accent: '',\n danger: '',\n alert: '',\n success: '',\n },\n design: {\n outline: 'border-sm',\n tinted: '',\n },\n state: {\n complete: '',\n incomplete: '',\n active: '',\n },\n },\n /**\n * Known type issue with CVA compoundVariants and VS Code/Intellisense:\n * https://github.com/joe-bell/cva/discussions/195#discussioncomment-6750163\n * */\n /* eslint-disable-next-line @typescript-eslint/ban-ts-comment */\n /* @ts-ignore */\n compoundVariants: [...outlineVariants, ...tintedVariants],\n defaultVariants: {\n size: 'lg',\n state: 'incomplete',\n intent: 'basic',\n design: 'outline',\n },\n }\n)\n\nexport type StepIndicatorVariantProps = VariantProps<typeof stepIndicatorVariant>\n","export const outlineVariants = [\n {\n design: 'outline',\n intent: 'basic',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-basic-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-basic-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'basic',\n state: 'active',\n class: 'text-on-basic-container bg-basic-container',\n },\n {\n design: 'outline',\n intent: 'support',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-support-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-support-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'support',\n state: 'active',\n class: 'text-on-support-container bg-support-container',\n },\n {\n design: 'outline',\n intent: 'main',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-main-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-main-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'main',\n state: 'active',\n class: 'text-on-main-container bg-main-container',\n },\n {\n design: 'outline',\n intent: 'neutral',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-neutral-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-neutral-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'neutral',\n state: 'active',\n class: 'text-on-neutral-container bg-neutral-container',\n },\n {\n design: 'outline',\n intent: 'info',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-info-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-info-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'info',\n state: 'active',\n class: 'text-on-info-container bg-info-container',\n },\n {\n design: 'outline',\n intent: 'accent',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-accent-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-accent-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'accent',\n state: 'active',\n class: 'text-on-accent-container bg-accent-container',\n },\n {\n design: 'outline',\n intent: 'danger',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-error-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-error-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'danger',\n state: 'active',\n class: 'text-on-error-container bg-error-container',\n },\n {\n design: 'outline',\n intent: 'alert',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-alert-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-alert-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'alert',\n state: 'active',\n class: 'text-on-alert-container bg-alert-container',\n },\n {\n design: 'outline',\n intent: 'success',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-success-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-success-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'success',\n state: 'active',\n class: 'text-on-success-container bg-success-container',\n },\n] as const\n","export const tintedVariants = [\n {\n design: 'tinted',\n intent: 'basic',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-basic-container bg-basic-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-basic-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-basic-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'basic',\n state: 'active',\n class: 'text-on-basic bg-basic',\n },\n {\n design: 'tinted',\n intent: 'support',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-support-container bg-support-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-support-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-support-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'support',\n state: 'active',\n class: 'text-on-support bg-support',\n },\n {\n design: 'tinted',\n intent: 'main',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-main-container bg-main-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-main-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-main-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'main',\n state: 'active',\n class: 'text-on-main bg-main',\n },\n {\n design: 'tinted',\n intent: 'neutral',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-neutral-container bg-neutral-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-neutral-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-neutral-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'neutral',\n state: 'active',\n class: 'text-on-neutral bg-neutral',\n },\n {\n design: 'tinted',\n intent: 'info',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-info-container bg-info-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-info-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-info-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'info',\n state: 'active',\n class: 'text-on-info bg-info',\n },\n {\n design: 'tinted',\n intent: 'accent',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-accent-container bg-accent-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-accent-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-accent-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'accent',\n state: 'active',\n class: 'text-on-accent bg-accent',\n },\n {\n design: 'tinted',\n intent: 'danger',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-error-container bg-error-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-error-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-error-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'danger',\n state: 'active',\n class: 'text-on-error bg-error',\n },\n {\n design: 'tinted',\n intent: 'alert',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-alert-container bg-alert-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-alert-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-alert-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'alert',\n state: 'active',\n class: 'text-on-alert bg-alert',\n },\n {\n design: 'tinted',\n intent: 'success',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-success-container bg-success-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-success-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-success-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'success',\n state: 'active',\n class: 'text-on-success bg-success',\n },\n] as const\n","import { cva } from 'class-variance-authority'\n\nexport const stepLabel = cva([\n 'flex text-body-2 font-bold',\n 'text-on-surface group-disabled/btn:text-on-surface/dim-1',\n 'group-data-[orientation=horizontal]/list:mt-md',\n 'group-data-[orientation=vertical]/list:ml-md',\n 'group-data-[orientation=vertical]/list:my-auto',\n])\n","import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { stepLabel } from './ProgressTrackerStepLabel.styles'\n\ntype ProgressTrackerStepLabelProps = ComponentPropsWithoutRef<'span'> & {\n children: ReactNode\n}\n\nexport const ProgressTrackerStepLabel = ({\n className,\n children,\n}: ProgressTrackerStepLabelProps) => <span className={stepLabel({ className })}>{children}</span>\n\nProgressTrackerStepLabel.displayName = 'ProgressTracker.StepLabel'\n"],"mappings":"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","names":["ProgressTracker","import_class_variance_authority","import_react","import_react","import_class_variance_authority","import_react","import_react","import_jsx_runtime","RadixSlot","import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","import_jsx_runtime","steps","import_class_variance_authority","import_jsx_runtime","ProgressTracker"]}
1
+ {"version":3,"sources":["../../src/progress-tracker/index.ts","../../src/progress-tracker/ProgressTracker.tsx","../../src/progress-tracker/ProgressTracker.styles.ts","../../src/progress-tracker/ProgressTrackerContext.ts","../../src/progress-tracker/ProgressTrackerStep.tsx","../../src/progress-tracker/ProgressTrackerStep.styles.ts","../../src/progress-tracker/ProgressTrackerStepIndicator.tsx","../../src/icon/Icon.tsx","../../src/slot/Slot.tsx","../../src/visually-hidden/VisuallyHidden.tsx","../../src/icon/Icon.styles.tsx","../../src/progress-tracker/ProgressTrackerStepIndicator.styles.ts","../../src/progress-tracker/stepIndicatorVariants/outline.ts","../../src/progress-tracker/stepIndicatorVariants/tinted.ts","../../src/progress-tracker/ProgressTrackerStepLabel.styles.ts","../../src/progress-tracker/ProgressTrackerStepLabel.tsx"],"sourcesContent":["import { ProgressTracker as Root, type ProgressTrackerProps } from './ProgressTracker'\nimport { ProgressTrackerStep as Step, type ProgressTrackerStepProps } from './ProgressTrackerStep'\nimport {\n ProgressTrackerStepIndicator as StepIndicator,\n type ProgressTrackerStepIndicatorProps,\n} from './ProgressTrackerStepIndicator'\nimport { ProgressTrackerStepLabel as StepLabel } from './ProgressTrackerStepLabel'\n\nexport const ProgressTracker: typeof Root & {\n Step: typeof Step\n StepLabel: typeof StepLabel\n StepIndicator: typeof StepIndicator\n} = Object.assign(Root, {\n Step,\n StepLabel,\n StepIndicator,\n})\n\nProgressTracker.displayName = 'ProgressTracker'\nStep.displayName = 'ProgressTracker.Step'\nStepLabel.displayName = 'ProgressTracker.StepLabel'\nStepIndicator.displayName = 'ProgressTracker.StepIndicator'\n\nexport type { ProgressTrackerProps, ProgressTrackerStepProps, ProgressTrackerStepIndicatorProps }\n","import { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithRef, type PropsWithChildren, useState } from 'react'\n\nimport { progressList } from './ProgressTracker.styles'\nimport {\n ProgressTrackerContext,\n type ProgressTrackerContextInterface,\n} from './ProgressTrackerContext'\nimport type { StepIndicatorVariantProps } from './ProgressTrackerStepIndicator.styles'\n\nexport interface ProgressTrackerProps\n extends ComponentPropsWithRef<'div'>,\n Pick<StepIndicatorVariantProps, 'size' | 'intent' | 'design'> {\n /**\n * The orientation of the progress tracker\n * @default 'horizontal\"\n */\n orientation?: 'horizontal' | 'vertical'\n /**\n * The index of the current step.\n * @default 0\n */\n stepIndex?: number\n /**\n * Event handler called when clicking on a step.\n */\n onStepClick?: (stepIndex: number) => void\n /**\n * Sets the component as interactive or not.\n * @default false\n */\n readOnly?: boolean\n}\n\nexport const ProgressTracker = ({\n stepIndex = 0,\n onStepClick,\n readOnly = false,\n intent = 'basic',\n size = 'lg',\n design = 'outline',\n orientation = 'horizontal',\n children,\n className,\n ref,\n ...rest\n}: PropsWithChildren<ProgressTrackerProps>) => {\n const [steps, setSteps] = useState<ProgressTrackerContextInterface['steps']>(new Map())\n\n const Component = readOnly ? 'div' : 'nav'\n\n return (\n <ProgressTrackerContext.Provider\n value={{ stepIndex, onStepClick, steps, setSteps, size, intent, design, readOnly }}\n >\n <Component\n ref={ref}\n data-spark-component=\"progress-tracker\"\n className={cx('inline-flex', className)}\n {...rest}\n >\n <ol\n data-orientation={orientation}\n className={progressList}\n style={{ counterReset: 'step' }}\n >\n {children}\n </ol>\n </Component>\n </ProgressTrackerContext.Provider>\n )\n}\n\nProgressTracker.displayName = 'ProgressTracker'\n","import { cx } from 'class-variance-authority'\n\nexport const progressList = cx([\n 'flex flex-nowrap items-start group/list',\n 'data-[orientation=horizontal]:flex-row data-[orientation=horizontal]:w-full',\n 'data-[orientation=vertical]:flex-col',\n])\n","import { createContext, type Dispatch, type SetStateAction, useContext } from 'react'\n\nimport type { ProgressTrackerProps } from './ProgressTracker'\n\n// Interfaces\nexport type ProgressTrackerContextInterface = Required<\n Pick<ProgressTrackerProps, 'stepIndex' | 'size' | 'intent' | 'design' | 'readOnly'>\n> &\n Pick<ProgressTrackerProps, 'onStepClick'> & {\n steps: Map<string, string[]>\n setSteps: Dispatch<SetStateAction<Map<string, string[]>>>\n }\n\nexport interface ProgressTrackerStepContextInterface {\n index: number\n state: 'active' | 'complete' | 'incomplete'\n}\n\n// Contexts\nexport const ProgressTrackerContext = createContext<ProgressTrackerContextInterface>(\n {} as ProgressTrackerContextInterface\n)\n\nexport const ProgressTrackerStepContext = createContext<ProgressTrackerStepContextInterface>(\n {} as ProgressTrackerStepContextInterface\n)\n\n// Hooks\nexport const useProgressTrackerContext = () => useContext(ProgressTrackerContext)\n\nexport const useProgressTrackerStepContext = () => useContext(ProgressTrackerStepContext)\n\nexport const ID_PREFIX = ':progress-tracker'\n","import { type ComponentPropsWithRef, type ReactNode, useEffect, useId } from 'react'\n\nimport {\n ID_PREFIX,\n ProgressTrackerStepContext,\n useProgressTrackerContext,\n} from './ProgressTrackerContext'\nimport { stepButtonVariant, stepItemVariant } from './ProgressTrackerStep.styles'\nimport { ProgressTrackerStepIndicator } from './ProgressTrackerStepIndicator'\n\nexport type ProgressTrackerStepProps = ComponentPropsWithRef<'li'> &\n (\n | {\n disabled?: boolean\n children: ReactNode\n }\n | {\n disabled?: boolean\n 'aria-label': string\n }\n )\n\nexport const ProgressTrackerStep = ({\n disabled = false,\n children,\n 'aria-label': ariaLabel,\n className,\n ref,\n ...rest\n}: ProgressTrackerStepProps) => {\n const {\n stepIndex: currentStepIndex,\n steps,\n onStepClick,\n setSteps,\n size,\n intent,\n readOnly,\n } = useProgressTrackerContext()\n\n const stepId = `${ID_PREFIX}-step-${useId()}`\n const stepIndex = [...steps.keys()].indexOf(stepId)\n\n const disabledAfter = (() => {\n const nextStepId = [...steps.keys()][stepIndex + 1]\n\n return !!(nextStepId && steps.get(nextStepId)?.includes('disabled'))\n })()\n\n const progressState = (() => {\n if (stepIndex === currentStepIndex) return 'active'\n else if (stepIndex < currentStepIndex) return 'complete'\n else return 'incomplete'\n })()\n\n useEffect(() => {\n setSteps(steps => {\n const newSteps = new Map(steps)\n\n return newSteps.set(\n stepId,\n [progressState, disabled ? 'disabled' : ''].filter(v => !!v)\n )\n })\n\n return () => {\n setSteps(steps => {\n steps.delete(stepId)\n\n return steps\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return (\n <li\n data-spark-component=\"progress-tracker-step\"\n id={stepId}\n ref={ref}\n data-state={progressState}\n {...(progressState === 'active' && {\n 'aria-current': 'step',\n })}\n className={stepItemVariant({\n size,\n intent,\n disabled,\n disabledAfter,\n })}\n {...rest}\n >\n <button\n type=\"button\"\n aria-label={ariaLabel}\n data-interactive={!disabled && !readOnly}\n {...(!disabled &&\n !readOnly && {\n onClick: () => onStepClick?.(stepIndex),\n })}\n disabled={disabled}\n className={stepButtonVariant({\n size,\n readOnly,\n className,\n })}\n >\n <ProgressTrackerStepContext.Provider\n value={{\n index: stepIndex,\n state: progressState,\n }}\n >\n {children || <ProgressTrackerStepIndicator />}\n </ProgressTrackerStepContext.Provider>\n </button>\n </li>\n )\n}\n\nProgressTrackerStep.displayName = 'ProgressTracker.Step'\n","import { cva } from 'class-variance-authority'\n\nexport const stepItemVariant = cva(\n [\n 'relative inline-flex items-start flex-auto first:grow-0 justify-center group/item',\n // Progress Track\n 'after:absolute after:z-base',\n 'last:after:content-none',\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:px-[1px]',\n 'group-data-[orientation=horizontal]/list:before:absolute group-data-[orientation=horizontal]/list:before:z-base',\n 'group-data-[orientation=horizontal]/list:before:left-0 group-data-[orientation=horizontal]/list:after:right-0',\n 'group-data-[orientation=horizontal]/list:before:h-[1px] group-data-[orientation=horizontal]/list:after:h-[1px]',\n 'first:group-data-[orientation=horizontal]/list:before:content-none',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:py-[1px]',\n 'group-data-[orientation=vertical]/list:items-start',\n 'group-data-[orientation=vertical]/list:after:w-[1px] group-data-[orientation=vertical]/list:after:bottom-[-1px]',\n ],\n {\n variants: {\n size: {\n sm: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[8px] group-data-[orientation=horizontal]/list:after:top-[8px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+12px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+12px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+10px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+10px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[8px]',\n 'group-data-[orientation=vertical]/list:after:top-[25px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[21px]',\n ],\n md: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[12px] group-data-[orientation=horizontal]/list:after:top-[12px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+16px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+16px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+14px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+14px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[12px]',\n 'group-data-[orientation=vertical]/list:after:top-[33px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[29px]',\n ],\n lg: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[16px] group-data-[orientation=horizontal]/list:after:top-[16px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+20px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+20px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+18px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+18px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[16px]',\n 'group-data-[orientation=vertical]/list:after:top-[41px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[37px]',\n ],\n },\n intent: {\n basic: ['after:bg-basic', 'group-data-[orientation=horizontal]/list:before:bg-basic'],\n support: ['after:bg-support', 'group-data-[orientation=horizontal]/list:before:bg-support'],\n main: ['after:bg-main', 'group-data-[orientation=horizontal]/list:before:bg-main'],\n neutral: ['after:bg-neutral', 'group-data-[orientation=horizontal]/list:before:bg-neutral'],\n info: ['after:bg-info', 'group-data-[orientation=horizontal]/list:before:bg-info'],\n accent: ['after:bg-accent', 'group-data-[orientation=horizontal]/list:before:bg-accent'],\n danger: ['after:bg-error', 'group-data-[orientation=horizontal]/list:before:bg-error'],\n alert: ['after:bg-alert', 'group-data-[orientation=horizontal]/list:before:bg-alert'],\n success: ['after:bg-success', 'group-data-[orientation=horizontal]/list:before:bg-success'],\n },\n disabled: {\n true: 'before:opacity-dim-3',\n false: '',\n },\n disabledAfter: {\n true: 'after:opacity-dim-3',\n false: '',\n },\n },\n defaultVariants: {\n disabled: false,\n disabledAfter: false,\n size: 'lg',\n intent: 'basic',\n },\n }\n)\n\nexport const stepButtonVariant = cva(\n [\n 'relative flex group/btn disabled:cursor-default',\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:flex-col group-data-[orientation=horizontal]/list:items-center',\n 'group-data-[orientation=horizontal]/list:text-center group-data-[orientation=horizontal]/list:mx-sm',\n 'group-first/item:group-data-[orientation=horizontal]/list:ml-0 group-last/item:group-data-[orientation=horizontal]/list:mr-0',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:flex-row group-data-[orientation=vertical]/list:items-start',\n 'group-data-[orientation=vertical]/list:text-left group-data-[orientation=vertical]/list:my-sm',\n 'group-first/item:group-data-[orientation=vertical]/list:mt-0 group-last/item:group-data-[orientation=vertical]/list:mb-0',\n ],\n {\n variants: {\n size: {\n sm: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-16 group-data-[orientation=horizontal]/list:mt-[16px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-16 group-data-[orientation=vertical]/list:ml-[16px]',\n ],\n md: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-24 group-data-[orientation=horizontal]/list:mt-[24px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-24 group-data-[orientation=vertical]/list:ml-[24px]',\n ],\n lg: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-32 group-data-[orientation=horizontal]/list:mt-[32px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-32 group-data-[orientation=vertical]/list:ml-[32px]',\n ],\n },\n readOnly: {\n true: 'cursor-default',\n false: 'cursor-pointer',\n },\n },\n defaultVariants: {\n size: 'lg',\n readOnly: false,\n },\n }\n)\n","import { Check } from '@spark-ui/icons/Check'\nimport type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { Icon } from '../icon'\nimport { useProgressTrackerContext, useProgressTrackerStepContext } from './ProgressTrackerContext'\nimport { stepIndicatorVariant } from './ProgressTrackerStepIndicator.styles'\n\nexport type ProgressTrackerStepIndicatorProps = ComponentPropsWithoutRef<'span'> & {\n /**\n * The content to be rendered when step status is complete (checkmark icon by default)\n */\n complete?: ReactNode\n /**\n * The content to be rendered when step status is incomplete (step index by default)\n */\n incomplete?: ReactNode\n}\n\nconst CompleteIndicator = () => (\n <Icon size=\"sm\">\n <Check />\n </Icon>\n)\n\nexport const ProgressTrackerStepIndicator = ({\n complete,\n incomplete,\n className,\n}: ProgressTrackerStepIndicatorProps) => {\n const { size, intent, design } = useProgressTrackerContext()\n const { index, state } = useProgressTrackerStepContext()\n\n return (\n <span\n className={stepIndicatorVariant({ size, intent, design, state, className })}\n aria-hidden=\"true\"\n >\n {size !== 'sm' && (\n <>\n {state === 'complete' && (complete === undefined ? <CompleteIndicator /> : complete)}\n {state !== 'complete' && (incomplete === undefined ? `${index + 1}` : incomplete)}\n </>\n )}\n </span>\n )\n}\n\nProgressTrackerStepIndicator.displayName = 'ProgressTracker.StepIndicator'\n","import { Children, cloneElement, ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react'\n\nimport { VisuallyHidden } from '../visually-hidden'\nimport { iconStyles, IconVariantsProps } from './Icon.styles'\n\nexport interface IconProps extends IconVariantsProps, ComponentPropsWithoutRef<'svg'> {\n /**\n * The svg icon that will be wrapped\n */\n children: ReactNode\n /**\n * The accessible label for the icon. This label will be visually hidden but announced to screen\n * reader users, similar to `alt` text for `img` tags.\n */\n label?: string\n}\n\nexport const Icon = ({\n label,\n className,\n size = 'current',\n intent = 'current',\n children,\n ...others\n}: IconProps) => {\n const child = Children.only(children)\n\n return (\n <>\n {cloneElement(child as ReactElement<Record<string, any>>, {\n className: iconStyles({ className, size, intent }),\n 'data-spark-component': 'icon',\n 'aria-hidden': 'true',\n focusable: 'false',\n ...others,\n })}\n\n {label && <VisuallyHidden>{label}</VisuallyHidden>}\n </>\n )\n}\n\nIcon.displayName = 'Icon'\n","import { Slot as RadixSlot } from 'radix-ui'\nimport {\n cloneElement,\n HTMLAttributes,\n isValidElement,\n PropsWithChildren,\n ReactNode,\n Ref,\n} from 'react'\n\nexport const Slottable: typeof RadixSlot.Slottable = RadixSlot.Slottable\n\nexport type SlotProps = PropsWithChildren<HTMLAttributes<HTMLElement>> & {\n ref?: Ref<HTMLElement>\n}\n\nexport const Slot = ({ ref, ...props }: SlotProps) => {\n return <RadixSlot.Root ref={ref} {...props} />\n}\n\n/**\n * When using Radix `Slot` component, it will consider its first child to merge its props with.\n * In some cases, you might need to wrap the top child with additional markup without breaking this behaviour.\n */\nexport const wrapPolymorphicSlot = (\n asChild: boolean | undefined,\n children: ReactNode,\n callback: (children: ReactNode) => ReactNode\n) => {\n if (!asChild) return callback(children) // If polymorphic behaviour is not used, we keep the original children\n\n return isValidElement(children)\n ? cloneElement(\n children,\n undefined,\n callback((children.props as { children: ReactNode }).children)\n )\n : null\n}\n","import { HTMLAttributes, PropsWithChildren, Ref } from 'react'\n\nimport { Slot } from '../slot'\n\nexport type VisuallyHiddenProps = PropsWithChildren<HTMLAttributes<HTMLElement>> & {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n */\n asChild?: boolean\n ref?: Ref<HTMLElement>\n}\n\nexport const VisuallyHidden = ({ asChild = false, ref, ...props }: VisuallyHiddenProps) => {\n const Component = asChild ? Slot : 'span'\n\n return (\n <Component\n {...props}\n ref={ref}\n style={{\n // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss\n position: 'absolute',\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: 'hidden',\n clip: 'rect(0, 0, 0, 0)',\n whiteSpace: 'nowrap',\n wordWrap: 'normal',\n ...props.style,\n }}\n />\n )\n}\n\nVisuallyHidden.displayName = 'VisuallyHidden'\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const iconStyles = cva(['fill-current shrink-0'], {\n variants: {\n /**\n * Color scheme of the icon.\n */\n intent: makeVariants<\n 'intent',\n [\n 'current',\n 'main',\n 'support',\n 'accent',\n 'basic',\n 'success',\n 'alert',\n 'error',\n 'info',\n 'neutral',\n ]\n >({\n current: ['text-current'],\n main: ['text-main'],\n support: ['text-support'],\n accent: ['text-accent'],\n basic: ['text-basic'],\n success: ['text-success'],\n alert: ['text-alert'],\n error: ['text-error'],\n info: ['text-info'],\n neutral: ['text-neutral'],\n }),\n /**\n * Sets the size of the icon.\n */\n size: makeVariants<'size', ['current', 'sm', 'md', 'lg', 'xl']>({\n current: ['u-current-font-size'],\n sm: ['w-sz-16', 'h-sz-16'],\n md: ['w-sz-24', 'h-sz-24'],\n lg: ['w-sz-32', 'h-sz-32'],\n xl: ['w-sz-40', 'h-sz-40'],\n }),\n },\n})\n\nexport type IconVariantsProps = VariantProps<typeof iconStyles>\n","import { cva, VariantProps } from 'class-variance-authority'\n\nimport { outlineVariants, tintedVariants } from './stepIndicatorVariants'\n\nexport const stepIndicatorVariant = cva(\n [\n 'relative flex shrink-0 justify-center items-center',\n 'rounded-full',\n 'text-body-2 font-bold',\n 'group-disabled/btn:opacity-dim-3',\n ],\n {\n variants: {\n size: {\n sm: [\n 'w-sz-16 h-sz-16',\n 'group-data-[orientation=horizontal]/list:mt-[-16px]',\n 'group-data-[orientation=vertical]/list:ml-[-16px]',\n ],\n md: [\n 'w-sz-24 h-sz-24',\n 'group-data-[orientation=horizontal]/list:mt-[-24px]',\n 'group-data-[orientation=vertical]/list:ml-[-24px]',\n ],\n lg: [\n 'w-sz-32 h-sz-32',\n 'group-data-[orientation=horizontal]/list:mt-[-32px]',\n 'group-data-[orientation=vertical]/list:ml-[-32px]',\n ],\n },\n intent: {\n basic: '',\n support: '',\n main: '',\n neutral: '',\n info: '',\n accent: '',\n danger: '',\n alert: '',\n success: '',\n },\n design: {\n outline: 'border-sm',\n tinted: '',\n },\n state: {\n complete: '',\n incomplete: '',\n active: '',\n },\n },\n /**\n * Known type issue with CVA compoundVariants and VS Code/Intellisense:\n * https://github.com/joe-bell/cva/discussions/195#discussioncomment-6750163\n * */\n /* eslint-disable-next-line @typescript-eslint/ban-ts-comment */\n /* @ts-ignore */\n compoundVariants: [...outlineVariants, ...tintedVariants],\n defaultVariants: {\n size: 'lg',\n state: 'incomplete',\n intent: 'basic',\n design: 'outline',\n },\n }\n)\n\nexport type StepIndicatorVariantProps = VariantProps<typeof stepIndicatorVariant>\n","export const outlineVariants = [\n {\n design: 'outline',\n intent: 'basic',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-basic-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-basic-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'basic',\n state: 'active',\n class: 'text-on-basic-container bg-basic-container',\n },\n {\n design: 'outline',\n intent: 'support',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-support-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-support-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'support',\n state: 'active',\n class: 'text-on-support-container bg-support-container',\n },\n {\n design: 'outline',\n intent: 'main',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-main-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-main-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'main',\n state: 'active',\n class: 'text-on-main-container bg-main-container',\n },\n {\n design: 'outline',\n intent: 'neutral',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-neutral-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-neutral-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'neutral',\n state: 'active',\n class: 'text-on-neutral-container bg-neutral-container',\n },\n {\n design: 'outline',\n intent: 'info',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-info-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-info-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'info',\n state: 'active',\n class: 'text-on-info-container bg-info-container',\n },\n {\n design: 'outline',\n intent: 'accent',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-accent-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-accent-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'accent',\n state: 'active',\n class: 'text-on-accent-container bg-accent-container',\n },\n {\n design: 'outline',\n intent: 'danger',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-error-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-error-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'danger',\n state: 'active',\n class: 'text-on-error-container bg-error-container',\n },\n {\n design: 'outline',\n intent: 'alert',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-alert-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-alert-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'alert',\n state: 'active',\n class: 'text-on-alert-container bg-alert-container',\n },\n {\n design: 'outline',\n intent: 'success',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-success-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-success-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'success',\n state: 'active',\n class: 'text-on-success-container bg-success-container',\n },\n] as const\n","export const tintedVariants = [\n {\n design: 'tinted',\n intent: 'basic',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-basic-container bg-basic-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-basic-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-basic-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'basic',\n state: 'active',\n class: 'text-on-basic bg-basic',\n },\n {\n design: 'tinted',\n intent: 'support',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-support-container bg-support-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-support-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-support-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'support',\n state: 'active',\n class: 'text-on-support bg-support',\n },\n {\n design: 'tinted',\n intent: 'main',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-main-container bg-main-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-main-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-main-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'main',\n state: 'active',\n class: 'text-on-main bg-main',\n },\n {\n design: 'tinted',\n intent: 'neutral',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-neutral-container bg-neutral-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-neutral-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-neutral-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'neutral',\n state: 'active',\n class: 'text-on-neutral bg-neutral',\n },\n {\n design: 'tinted',\n intent: 'info',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-info-container bg-info-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-info-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-info-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'info',\n state: 'active',\n class: 'text-on-info bg-info',\n },\n {\n design: 'tinted',\n intent: 'accent',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-accent-container bg-accent-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-accent-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-accent-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'accent',\n state: 'active',\n class: 'text-on-accent bg-accent',\n },\n {\n design: 'tinted',\n intent: 'danger',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-error-container bg-error-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-error-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-error-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'danger',\n state: 'active',\n class: 'text-on-error bg-error',\n },\n {\n design: 'tinted',\n intent: 'alert',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-alert-container bg-alert-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-alert-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-alert-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'alert',\n state: 'active',\n class: 'text-on-alert bg-alert',\n },\n {\n design: 'tinted',\n intent: 'success',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-success-container bg-success-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-success-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-success-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'success',\n state: 'active',\n class: 'text-on-success bg-success',\n },\n] as const\n","import { cva } from 'class-variance-authority'\n\nexport const stepLabel = cva([\n 'flex text-body-2 font-bold',\n 'text-on-surface group-disabled/btn:text-on-surface/dim-1',\n 'group-data-[orientation=horizontal]/list:mt-md',\n 'group-data-[orientation=vertical]/list:ml-md',\n 'group-data-[orientation=vertical]/list:my-auto',\n])\n","import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { stepLabel } from './ProgressTrackerStepLabel.styles'\n\ntype ProgressTrackerStepLabelProps = ComponentPropsWithoutRef<'span'> & {\n children: ReactNode\n}\n\nexport const ProgressTrackerStepLabel = ({\n className,\n children,\n}: ProgressTrackerStepLabelProps) => <span className={stepLabel({ className })}>{children}</span>\n\nProgressTrackerStepLabel.displayName = 'ProgressTracker.StepLabel'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,yBAAAA;AAAA;AAAA;;;ACAA,IAAAC,mCAAmB;AACnB,IAAAC,gBAA6E;;;ACD7E,sCAAmB;AAEZ,IAAM,mBAAe,oCAAG;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AACF,CAAC;;;ACND,mBAA8E;AAmBvE,IAAM,6BAAyB;AAAA,EACpC,CAAC;AACH;AAEO,IAAM,iCAA6B;AAAA,EACxC,CAAC;AACH;AAGO,IAAM,4BAA4B,UAAM,yBAAW,sBAAsB;AAEzE,IAAM,gCAAgC,UAAM,yBAAW,0BAA0B;AAEjF,IAAM,YAAY;;;AF6BjB;AA3BD,IAAM,kBAAkB,CAAC;AAAA,EAC9B,YAAY;AAAA,EACZ;AAAA,EACA,WAAW;AAAA,EACX,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AAAA,EACT,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAA+C;AAC7C,QAAM,CAAC,OAAO,QAAQ,QAAI,wBAAmD,oBAAI,IAAI,CAAC;AAEtF,QAAM,YAAY,WAAW,QAAQ;AAErC,SACE;AAAA,IAAC,uBAAuB;AAAA,IAAvB;AAAA,MACC,OAAO,EAAE,WAAW,aAAa,OAAO,UAAU,MAAM,QAAQ,QAAQ,SAAS;AAAA,MAEjF;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,wBAAqB;AAAA,UACrB,eAAW,qCAAG,eAAe,SAAS;AAAA,UACrC,GAAG;AAAA,UAEJ;AAAA,YAAC;AAAA;AAAA,cACC,oBAAkB;AAAA,cAClB,WAAW;AAAA,cACX,OAAO,EAAE,cAAc,OAAO;AAAA,cAE7B;AAAA;AAAA,UACH;AAAA;AAAA,MACF;AAAA;AAAA,EACF;AAEJ;AAEA,gBAAgB,cAAc;;;AGzE9B,IAAAC,gBAA6E;;;ACA7E,IAAAC,mCAAoB;AAEb,IAAM,sBAAkB;AAAA,EAC7B;AAAA,IACE;AAAA;AAAA,IAEA;AAAA,IACA;AAAA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,IAAI;AAAA;AAAA,UAEF;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA;AAAA,UAEA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,QACA,IAAI;AAAA;AAAA,UAEF;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA;AAAA,UAEA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,QACA,IAAI;AAAA;AAAA,UAEF;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA;AAAA,UAEA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,MACA,QAAQ;AAAA,QACN,OAAO,CAAC,kBAAkB,0DAA0D;AAAA,QACpF,SAAS,CAAC,oBAAoB,4DAA4D;AAAA,QAC1F,MAAM,CAAC,iBAAiB,yDAAyD;AAAA,QACjF,SAAS,CAAC,oBAAoB,4DAA4D;AAAA,QAC1F,MAAM,CAAC,iBAAiB,yDAAyD;AAAA,QACjF,QAAQ,CAAC,mBAAmB,2DAA2D;AAAA,QACvF,QAAQ,CAAC,kBAAkB,0DAA0D;AAAA,QACrF,OAAO,CAAC,kBAAkB,0DAA0D;AAAA,QACpF,SAAS,CAAC,oBAAoB,4DAA4D;AAAA,MAC5F;AAAA,MACA,UAAU;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,MACT;AAAA,MACA,eAAe;AAAA,QACb,MAAM;AAAA,QACN,OAAO;AAAA,MACT;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,UAAU;AAAA,MACV,eAAe;AAAA,MACf,MAAM;AAAA,MACN,QAAQ;AAAA,IACV;AAAA,EACF;AACF;AAEO,IAAM,wBAAoB;AAAA,EAC/B;AAAA,IACE;AAAA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,IAAI;AAAA,UACF;AAAA,UACA;AAAA,QACF;AAAA,QACA,IAAI;AAAA,UACF;AAAA,UACA;AAAA,QACF;AAAA,QACA,IAAI;AAAA,UACF;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,MACA,UAAU;AAAA,QACR,MAAM;AAAA,QACN,OAAO;AAAA,MACT;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,UAAU;AAAA,IACZ;AAAA,EACF;AACF;;;AC3HA,mBAAsB;;;ACAtB,IAAAC,gBAA0F;;;ACA1F,sBAAkC;AAClC,IAAAC,gBAOO;AASE,IAAAC,sBAAA;AAPF,IAAM,YAAwC,gBAAAC,KAAU;AAMxD,IAAM,OAAO,CAAC,EAAE,KAAK,GAAG,MAAM,MAAiB;AACpD,SAAO,6CAAC,gBAAAA,KAAU,MAAV,EAAe,KAAW,GAAG,OAAO;AAC9C;;;ACFI,IAAAC,sBAAA;AAJG,IAAM,iBAAiB,CAAC,EAAE,UAAU,OAAO,KAAK,GAAG,MAAM,MAA2B;AACzF,QAAM,YAAY,UAAU,OAAO;AAEnC,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA,OAAO;AAAA;AAAA,QAEL,UAAU;AAAA,QACV,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,UAAU;AAAA,QACV,MAAM;AAAA,QACN,YAAY;AAAA,QACZ,UAAU;AAAA,QACV,GAAG,MAAM;AAAA,MACX;AAAA;AAAA,EACF;AAEJ;AAEA,eAAe,cAAc;;;ACrC7B,4BAA6B;AAC7B,IAAAC,mCAAkC;AAE3B,IAAM,iBAAa,sCAAI,CAAC,uBAAuB,GAAG;AAAA,EACvD,UAAU;AAAA;AAAA;AAAA;AAAA,IAIR,YAAQ,oCAcN;AAAA,MACA,SAAS,CAAC,cAAc;AAAA,MACxB,MAAM,CAAC,WAAW;AAAA,MAClB,SAAS,CAAC,cAAc;AAAA,MACxB,QAAQ,CAAC,aAAa;AAAA,MACtB,OAAO,CAAC,YAAY;AAAA,MACpB,SAAS,CAAC,cAAc;AAAA,MACxB,OAAO,CAAC,YAAY;AAAA,MACpB,OAAO,CAAC,YAAY;AAAA,MACpB,MAAM,CAAC,WAAW;AAAA,MAClB,SAAS,CAAC,cAAc;AAAA,IAC1B,CAAC;AAAA;AAAA;AAAA;AAAA,IAID,UAAM,oCAA0D;AAAA,MAC9D,SAAS,CAAC,qBAAqB;AAAA,MAC/B,IAAI,CAAC,WAAW,SAAS;AAAA,MACzB,IAAI,CAAC,WAAW,SAAS;AAAA,MACzB,IAAI,CAAC,WAAW,SAAS;AAAA,MACzB,IAAI,CAAC,WAAW,SAAS;AAAA,IAC3B,CAAC;AAAA,EACH;AACF,CAAC;;;AHjBG,IAAAC,sBAAA;AAXG,IAAM,OAAO,CAAC;AAAA,EACnB;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA,GAAG;AACL,MAAiB;AACf,QAAM,QAAQ,uBAAS,KAAK,QAAQ;AAEpC,SACE,8EACG;AAAA,oCAAa,OAA4C;AAAA,MACxD,WAAW,WAAW,EAAE,WAAW,MAAM,OAAO,CAAC;AAAA,MACjD,wBAAwB;AAAA,MACxB,eAAe;AAAA,MACf,WAAW;AAAA,MACX,GAAG;AAAA,IACL,CAAC;AAAA,IAEA,SAAS,6CAAC,kBAAgB,iBAAM;AAAA,KACnC;AAEJ;AAEA,KAAK,cAAc;;;AI1CnB,IAAAC,mCAAkC;;;ACA3B,IAAM,kBAAkB;AAAA,EAC7B;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AACF;;;ACjJO,IAAM,iBAAiB;AAAA,EAC5B;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO,CAAC,YAAY,YAAY;AAAA,IAChC,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,OAAO;AAAA,EACT;AACF;;;AF7IO,IAAM,2BAAuB;AAAA,EAClC;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,IAAI;AAAA,UACF;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,QACA,IAAI;AAAA,UACF;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,QACA,IAAI;AAAA,UACF;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,MACA,QAAQ;AAAA,QACN,OAAO;AAAA,QACP,SAAS;AAAA,QACT,MAAM;AAAA,QACN,SAAS;AAAA,QACT,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,SAAS;AAAA,MACX;AAAA,MACA,QAAQ;AAAA,QACN,SAAS;AAAA,QACT,QAAQ;AAAA,MACV;AAAA,MACA,OAAO;AAAA,QACL,UAAU;AAAA,QACV,YAAY;AAAA,QACZ,QAAQ;AAAA,MACV;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAOA,kBAAkB,CAAC,GAAG,iBAAiB,GAAG,cAAc;AAAA,IACxD,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AACF;;;AL7CI,IAAAC,sBAAA;AAFJ,IAAM,oBAAoB,MACxB,6CAAC,QAAK,MAAK,MACT,uDAAC,sBAAM,GACT;AAGK,IAAM,+BAA+B,CAAC;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AACF,MAAyC;AACvC,QAAM,EAAE,MAAM,QAAQ,OAAO,IAAI,0BAA0B;AAC3D,QAAM,EAAE,OAAO,MAAM,IAAI,8BAA8B;AAEvD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,qBAAqB,EAAE,MAAM,QAAQ,QAAQ,OAAO,UAAU,CAAC;AAAA,MAC1E,eAAY;AAAA,MAEX,mBAAS,QACR,8EACG;AAAA,kBAAU,eAAe,aAAa,SAAY,6CAAC,qBAAkB,IAAK;AAAA,QAC1E,UAAU,eAAe,eAAe,SAAY,GAAG,QAAQ,CAAC,KAAK;AAAA,SACxE;AAAA;AAAA,EAEJ;AAEJ;AAEA,6BAA6B,cAAc;;;AFkEpB,IAAAC,sBAAA;AA3FhB,IAAM,sBAAsB,CAAC;AAAA,EAClC,WAAW;AAAA,EACX;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAgC;AAC9B,QAAM;AAAA,IACJ,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,0BAA0B;AAE9B,QAAM,SAAS,GAAG,SAAS,aAAS,qBAAM,CAAC;AAC3C,QAAM,YAAY,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,QAAQ,MAAM;AAElD,QAAM,iBAAiB,MAAM;AAC3B,UAAM,aAAa,CAAC,GAAG,MAAM,KAAK,CAAC,EAAE,YAAY,CAAC;AAElD,WAAO,CAAC,EAAE,cAAc,MAAM,IAAI,UAAU,GAAG,SAAS,UAAU;AAAA,EACpE,GAAG;AAEH,QAAM,iBAAiB,MAAM;AAC3B,QAAI,cAAc,iBAAkB,QAAO;AAAA,aAClC,YAAY,iBAAkB,QAAO;AAAA,QACzC,QAAO;AAAA,EACd,GAAG;AAEH,+BAAU,MAAM;AACd,aAAS,CAAAC,WAAS;AAChB,YAAM,WAAW,IAAI,IAAIA,MAAK;AAE9B,aAAO,SAAS;AAAA,QACd;AAAA,QACA,CAAC,eAAe,WAAW,aAAa,EAAE,EAAE,OAAO,OAAK,CAAC,CAAC,CAAC;AAAA,MAC7D;AAAA,IACF,CAAC;AAED,WAAO,MAAM;AACX,eAAS,CAAAA,WAAS;AAChB,QAAAA,OAAM,OAAO,MAAM;AAEnB,eAAOA;AAAA,MACT,CAAC;AAAA,IACH;AAAA,EAEF,GAAG,CAAC,CAAC;AAEL,SACE;AAAA,IAAC;AAAA;AAAA,MACC,wBAAqB;AAAA,MACrB,IAAI;AAAA,MACJ;AAAA,MACA,cAAY;AAAA,MACX,GAAI,kBAAkB,YAAY;AAAA,QACjC,gBAAgB;AAAA,MAClB;AAAA,MACA,WAAW,gBAAgB;AAAA,QACzB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,MACA,GAAG;AAAA,MAEJ;AAAA,QAAC;AAAA;AAAA,UACC,MAAK;AAAA,UACL,cAAY;AAAA,UACZ,oBAAkB,CAAC,YAAY,CAAC;AAAA,UAC/B,GAAI,CAAC,YACJ,CAAC,YAAY;AAAA,YACX,SAAS,MAAM,cAAc,SAAS;AAAA,UACxC;AAAA,UACF;AAAA,UACA,WAAW,kBAAkB;AAAA,YAC3B;AAAA,YACA;AAAA,YACA;AAAA,UACF,CAAC;AAAA,UAED;AAAA,YAAC,2BAA2B;AAAA,YAA3B;AAAA,cACC,OAAO;AAAA,gBACL,OAAO;AAAA,gBACP,OAAO;AAAA,cACT;AAAA,cAEC,sBAAY,6CAAC,gCAA6B;AAAA;AAAA,UAC7C;AAAA;AAAA,MACF;AAAA;AAAA,EACF;AAEJ;AAEA,oBAAoB,cAAc;;;AUxHlC,IAAAC,mCAAoB;AAEb,IAAM,gBAAY,sCAAI;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;;;ACGoC,IAAAC,sBAAA;AAH9B,IAAM,2BAA2B,CAAC;AAAA,EACvC;AAAA,EACA;AACF,MAAqC,6CAAC,UAAK,WAAW,UAAU,EAAE,UAAU,CAAC,GAAI,UAAS;AAE1F,yBAAyB,cAAc;;;AfLhC,IAAMC,mBAIT,OAAO,OAAO,iBAAM;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEDA,iBAAgB,cAAc;AAC9B,oBAAK,cAAc;AACnB,yBAAU,cAAc;AACxB,6BAAc,cAAc;","names":["ProgressTracker","import_class_variance_authority","import_react","import_react","import_class_variance_authority","import_react","import_react","import_jsx_runtime","RadixSlot","import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","import_class_variance_authority","import_jsx_runtime","import_jsx_runtime","steps","import_class_variance_authority","import_jsx_runtime","ProgressTracker"]}
@@ -637,6 +637,7 @@ var ProgressTrackerStep = ({
637
637
  return /* @__PURE__ */ jsx3(
638
638
  "li",
639
639
  {
640
+ "data-spark-component": "progress-tracker-step",
640
641
  id: stepId,
641
642
  ref,
642
643
  "data-state": progressState,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/progress-tracker/ProgressTracker.tsx","../../src/progress-tracker/ProgressTracker.styles.ts","../../src/progress-tracker/ProgressTrackerContext.ts","../../src/progress-tracker/ProgressTrackerStep.tsx","../../src/progress-tracker/ProgressTrackerStep.styles.ts","../../src/progress-tracker/ProgressTrackerStepIndicator.tsx","../../src/progress-tracker/ProgressTrackerStepIndicator.styles.ts","../../src/progress-tracker/stepIndicatorVariants/outline.ts","../../src/progress-tracker/stepIndicatorVariants/tinted.ts","../../src/progress-tracker/ProgressTrackerStepLabel.styles.ts","../../src/progress-tracker/ProgressTrackerStepLabel.tsx","../../src/progress-tracker/index.ts"],"sourcesContent":["import { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithRef, type PropsWithChildren, useState } from 'react'\n\nimport { progressList } from './ProgressTracker.styles'\nimport {\n ProgressTrackerContext,\n type ProgressTrackerContextInterface,\n} from './ProgressTrackerContext'\nimport type { StepIndicatorVariantProps } from './ProgressTrackerStepIndicator.styles'\n\nexport interface ProgressTrackerProps\n extends ComponentPropsWithRef<'div'>,\n Pick<StepIndicatorVariantProps, 'size' | 'intent' | 'design'> {\n /**\n * The orientation of the progress tracker\n * @default 'horizontal\"\n */\n orientation?: 'horizontal' | 'vertical'\n /**\n * The index of the current step.\n * @default 0\n */\n stepIndex?: number\n /**\n * Event handler called when clicking on a step.\n */\n onStepClick?: (stepIndex: number) => void\n /**\n * Sets the component as interactive or not.\n * @default false\n */\n readOnly?: boolean\n}\n\nexport const ProgressTracker = ({\n stepIndex = 0,\n onStepClick,\n readOnly = false,\n intent = 'basic',\n size = 'lg',\n design = 'outline',\n orientation = 'horizontal',\n children,\n className,\n ref,\n ...rest\n}: PropsWithChildren<ProgressTrackerProps>) => {\n const [steps, setSteps] = useState<ProgressTrackerContextInterface['steps']>(new Map())\n\n const Component = readOnly ? 'div' : 'nav'\n\n return (\n <ProgressTrackerContext.Provider\n value={{ stepIndex, onStepClick, steps, setSteps, size, intent, design, readOnly }}\n >\n <Component\n ref={ref}\n data-spark-component=\"progress-tracker\"\n className={cx('inline-flex', className)}\n {...rest}\n >\n <ol\n data-orientation={orientation}\n className={progressList}\n style={{ counterReset: 'step' }}\n >\n {children}\n </ol>\n </Component>\n </ProgressTrackerContext.Provider>\n )\n}\n\nProgressTracker.displayName = 'ProgressTracker'\n","import { cx } from 'class-variance-authority'\n\nexport const progressList = cx([\n 'flex flex-nowrap items-start group/list',\n 'data-[orientation=horizontal]:flex-row data-[orientation=horizontal]:w-full',\n 'data-[orientation=vertical]:flex-col',\n])\n","import { createContext, type Dispatch, type SetStateAction, useContext } from 'react'\n\nimport type { ProgressTrackerProps } from './ProgressTracker'\n\n// Interfaces\nexport type ProgressTrackerContextInterface = Required<\n Pick<ProgressTrackerProps, 'stepIndex' | 'size' | 'intent' | 'design' | 'readOnly'>\n> &\n Pick<ProgressTrackerProps, 'onStepClick'> & {\n steps: Map<string, string[]>\n setSteps: Dispatch<SetStateAction<Map<string, string[]>>>\n }\n\nexport interface ProgressTrackerStepContextInterface {\n index: number\n state: 'active' | 'complete' | 'incomplete'\n}\n\n// Contexts\nexport const ProgressTrackerContext = createContext<ProgressTrackerContextInterface>(\n {} as ProgressTrackerContextInterface\n)\n\nexport const ProgressTrackerStepContext = createContext<ProgressTrackerStepContextInterface>(\n {} as ProgressTrackerStepContextInterface\n)\n\n// Hooks\nexport const useProgressTrackerContext = () => useContext(ProgressTrackerContext)\n\nexport const useProgressTrackerStepContext = () => useContext(ProgressTrackerStepContext)\n\nexport const ID_PREFIX = ':progress-tracker'\n","import { type ComponentPropsWithRef, type ReactNode, useEffect, useId } from 'react'\n\nimport {\n ID_PREFIX,\n ProgressTrackerStepContext,\n useProgressTrackerContext,\n} from './ProgressTrackerContext'\nimport { stepButtonVariant, stepItemVariant } from './ProgressTrackerStep.styles'\nimport { ProgressTrackerStepIndicator } from './ProgressTrackerStepIndicator'\n\nexport type ProgressTrackerStepProps = ComponentPropsWithRef<'li'> &\n (\n | {\n disabled?: boolean\n children: ReactNode\n }\n | {\n disabled?: boolean\n 'aria-label': string\n }\n )\n\nexport const ProgressTrackerStep = ({\n disabled = false,\n children,\n 'aria-label': ariaLabel,\n className,\n ref,\n ...rest\n}: ProgressTrackerStepProps) => {\n const {\n stepIndex: currentStepIndex,\n steps,\n onStepClick,\n setSteps,\n size,\n intent,\n readOnly,\n } = useProgressTrackerContext()\n\n const stepId = `${ID_PREFIX}-step-${useId()}`\n const stepIndex = [...steps.keys()].indexOf(stepId)\n\n const disabledAfter = (() => {\n const nextStepId = [...steps.keys()][stepIndex + 1]\n\n return !!(nextStepId && steps.get(nextStepId)?.includes('disabled'))\n })()\n\n const progressState = (() => {\n if (stepIndex === currentStepIndex) return 'active'\n else if (stepIndex < currentStepIndex) return 'complete'\n else return 'incomplete'\n })()\n\n useEffect(() => {\n setSteps(steps => {\n const newSteps = new Map(steps)\n\n return newSteps.set(\n stepId,\n [progressState, disabled ? 'disabled' : ''].filter(v => !!v)\n )\n })\n\n return () => {\n setSteps(steps => {\n steps.delete(stepId)\n\n return steps\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return (\n <li\n id={stepId}\n ref={ref}\n data-state={progressState}\n {...(progressState === 'active' && {\n 'aria-current': 'step',\n })}\n className={stepItemVariant({\n size,\n intent,\n disabled,\n disabledAfter,\n })}\n {...rest}\n >\n <button\n type=\"button\"\n aria-label={ariaLabel}\n data-interactive={!disabled && !readOnly}\n {...(!disabled &&\n !readOnly && {\n onClick: () => onStepClick?.(stepIndex),\n })}\n disabled={disabled}\n className={stepButtonVariant({\n size,\n readOnly,\n className,\n })}\n >\n <ProgressTrackerStepContext.Provider\n value={{\n index: stepIndex,\n state: progressState,\n }}\n >\n {children || <ProgressTrackerStepIndicator />}\n </ProgressTrackerStepContext.Provider>\n </button>\n </li>\n )\n}\n\nProgressTrackerStep.displayName = 'ProgressTracker.Step'\n","import { cva } from 'class-variance-authority'\n\nexport const stepItemVariant = cva(\n [\n 'relative inline-flex items-start flex-auto first:grow-0 justify-center group/item',\n // Progress Track\n 'after:absolute after:z-base',\n 'last:after:content-none',\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:px-[1px]',\n 'group-data-[orientation=horizontal]/list:before:absolute group-data-[orientation=horizontal]/list:before:z-base',\n 'group-data-[orientation=horizontal]/list:before:left-0 group-data-[orientation=horizontal]/list:after:right-0',\n 'group-data-[orientation=horizontal]/list:before:h-[1px] group-data-[orientation=horizontal]/list:after:h-[1px]',\n 'first:group-data-[orientation=horizontal]/list:before:content-none',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:py-[1px]',\n 'group-data-[orientation=vertical]/list:items-start',\n 'group-data-[orientation=vertical]/list:after:w-[1px] group-data-[orientation=vertical]/list:after:bottom-[-1px]',\n ],\n {\n variants: {\n size: {\n sm: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[8px] group-data-[orientation=horizontal]/list:after:top-[8px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+12px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+12px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+10px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+10px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[8px]',\n 'group-data-[orientation=vertical]/list:after:top-[25px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[21px]',\n ],\n md: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[12px] group-data-[orientation=horizontal]/list:after:top-[12px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+16px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+16px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+14px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+14px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[12px]',\n 'group-data-[orientation=vertical]/list:after:top-[33px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[29px]',\n ],\n lg: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[16px] group-data-[orientation=horizontal]/list:after:top-[16px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+20px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+20px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+18px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+18px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[16px]',\n 'group-data-[orientation=vertical]/list:after:top-[41px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[37px]',\n ],\n },\n intent: {\n basic: ['after:bg-basic', 'group-data-[orientation=horizontal]/list:before:bg-basic'],\n support: ['after:bg-support', 'group-data-[orientation=horizontal]/list:before:bg-support'],\n main: ['after:bg-main', 'group-data-[orientation=horizontal]/list:before:bg-main'],\n neutral: ['after:bg-neutral', 'group-data-[orientation=horizontal]/list:before:bg-neutral'],\n info: ['after:bg-info', 'group-data-[orientation=horizontal]/list:before:bg-info'],\n accent: ['after:bg-accent', 'group-data-[orientation=horizontal]/list:before:bg-accent'],\n danger: ['after:bg-error', 'group-data-[orientation=horizontal]/list:before:bg-error'],\n alert: ['after:bg-alert', 'group-data-[orientation=horizontal]/list:before:bg-alert'],\n success: ['after:bg-success', 'group-data-[orientation=horizontal]/list:before:bg-success'],\n },\n disabled: {\n true: 'before:opacity-dim-3',\n false: '',\n },\n disabledAfter: {\n true: 'after:opacity-dim-3',\n false: '',\n },\n },\n defaultVariants: {\n disabled: false,\n disabledAfter: false,\n size: 'lg',\n intent: 'basic',\n },\n }\n)\n\nexport const stepButtonVariant = cva(\n [\n 'relative flex group/btn disabled:cursor-default',\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:flex-col group-data-[orientation=horizontal]/list:items-center',\n 'group-data-[orientation=horizontal]/list:text-center group-data-[orientation=horizontal]/list:mx-sm',\n 'group-first/item:group-data-[orientation=horizontal]/list:ml-0 group-last/item:group-data-[orientation=horizontal]/list:mr-0',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:flex-row group-data-[orientation=vertical]/list:items-start',\n 'group-data-[orientation=vertical]/list:text-left group-data-[orientation=vertical]/list:my-sm',\n 'group-first/item:group-data-[orientation=vertical]/list:mt-0 group-last/item:group-data-[orientation=vertical]/list:mb-0',\n ],\n {\n variants: {\n size: {\n sm: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-16 group-data-[orientation=horizontal]/list:mt-[16px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-16 group-data-[orientation=vertical]/list:ml-[16px]',\n ],\n md: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-24 group-data-[orientation=horizontal]/list:mt-[24px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-24 group-data-[orientation=vertical]/list:ml-[24px]',\n ],\n lg: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-32 group-data-[orientation=horizontal]/list:mt-[32px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-32 group-data-[orientation=vertical]/list:ml-[32px]',\n ],\n },\n readOnly: {\n true: 'cursor-default',\n false: 'cursor-pointer',\n },\n },\n defaultVariants: {\n size: 'lg',\n readOnly: false,\n },\n }\n)\n","import { Check } from '@spark-ui/icons/Check'\nimport type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { Icon } from '../icon'\nimport { useProgressTrackerContext, useProgressTrackerStepContext } from './ProgressTrackerContext'\nimport { stepIndicatorVariant } from './ProgressTrackerStepIndicator.styles'\n\nexport type ProgressTrackerStepIndicatorProps = ComponentPropsWithoutRef<'span'> & {\n /**\n * The content to be rendered when step status is complete (checkmark icon by default)\n */\n complete?: ReactNode\n /**\n * The content to be rendered when step status is incomplete (step index by default)\n */\n incomplete?: ReactNode\n}\n\nconst CompleteIndicator = () => (\n <Icon size=\"sm\">\n <Check />\n </Icon>\n)\n\nexport const ProgressTrackerStepIndicator = ({\n complete,\n incomplete,\n className,\n}: ProgressTrackerStepIndicatorProps) => {\n const { size, intent, design } = useProgressTrackerContext()\n const { index, state } = useProgressTrackerStepContext()\n\n return (\n <span\n className={stepIndicatorVariant({ size, intent, design, state, className })}\n aria-hidden=\"true\"\n >\n {size !== 'sm' && (\n <>\n {state === 'complete' && (complete === undefined ? <CompleteIndicator /> : complete)}\n {state !== 'complete' && (incomplete === undefined ? `${index + 1}` : incomplete)}\n </>\n )}\n </span>\n )\n}\n\nProgressTrackerStepIndicator.displayName = 'ProgressTracker.StepIndicator'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nimport { outlineVariants, tintedVariants } from './stepIndicatorVariants'\n\nexport const stepIndicatorVariant = cva(\n [\n 'relative flex shrink-0 justify-center items-center',\n 'rounded-full',\n 'text-body-2 font-bold',\n 'group-disabled/btn:opacity-dim-3',\n ],\n {\n variants: {\n size: {\n sm: [\n 'w-sz-16 h-sz-16',\n 'group-data-[orientation=horizontal]/list:mt-[-16px]',\n 'group-data-[orientation=vertical]/list:ml-[-16px]',\n ],\n md: [\n 'w-sz-24 h-sz-24',\n 'group-data-[orientation=horizontal]/list:mt-[-24px]',\n 'group-data-[orientation=vertical]/list:ml-[-24px]',\n ],\n lg: [\n 'w-sz-32 h-sz-32',\n 'group-data-[orientation=horizontal]/list:mt-[-32px]',\n 'group-data-[orientation=vertical]/list:ml-[-32px]',\n ],\n },\n intent: {\n basic: '',\n support: '',\n main: '',\n neutral: '',\n info: '',\n accent: '',\n danger: '',\n alert: '',\n success: '',\n },\n design: {\n outline: 'border-sm',\n tinted: '',\n },\n state: {\n complete: '',\n incomplete: '',\n active: '',\n },\n },\n /**\n * Known type issue with CVA compoundVariants and VS Code/Intellisense:\n * https://github.com/joe-bell/cva/discussions/195#discussioncomment-6750163\n * */\n /* eslint-disable-next-line @typescript-eslint/ban-ts-comment */\n /* @ts-ignore */\n compoundVariants: [...outlineVariants, ...tintedVariants],\n defaultVariants: {\n size: 'lg',\n state: 'incomplete',\n intent: 'basic',\n design: 'outline',\n },\n }\n)\n\nexport type StepIndicatorVariantProps = VariantProps<typeof stepIndicatorVariant>\n","export const outlineVariants = [\n {\n design: 'outline',\n intent: 'basic',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-basic-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-basic-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'basic',\n state: 'active',\n class: 'text-on-basic-container bg-basic-container',\n },\n {\n design: 'outline',\n intent: 'support',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-support-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-support-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'support',\n state: 'active',\n class: 'text-on-support-container bg-support-container',\n },\n {\n design: 'outline',\n intent: 'main',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-main-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-main-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'main',\n state: 'active',\n class: 'text-on-main-container bg-main-container',\n },\n {\n design: 'outline',\n intent: 'neutral',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-neutral-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-neutral-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'neutral',\n state: 'active',\n class: 'text-on-neutral-container bg-neutral-container',\n },\n {\n design: 'outline',\n intent: 'info',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-info-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-info-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'info',\n state: 'active',\n class: 'text-on-info-container bg-info-container',\n },\n {\n design: 'outline',\n intent: 'accent',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-accent-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-accent-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'accent',\n state: 'active',\n class: 'text-on-accent-container bg-accent-container',\n },\n {\n design: 'outline',\n intent: 'danger',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-error-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-error-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'danger',\n state: 'active',\n class: 'text-on-error-container bg-error-container',\n },\n {\n design: 'outline',\n intent: 'alert',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-alert-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-alert-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'alert',\n state: 'active',\n class: 'text-on-alert-container bg-alert-container',\n },\n {\n design: 'outline',\n intent: 'success',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-success-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-success-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'success',\n state: 'active',\n class: 'text-on-success-container bg-success-container',\n },\n] as const\n","export const tintedVariants = [\n {\n design: 'tinted',\n intent: 'basic',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-basic-container bg-basic-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-basic-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-basic-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'basic',\n state: 'active',\n class: 'text-on-basic bg-basic',\n },\n {\n design: 'tinted',\n intent: 'support',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-support-container bg-support-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-support-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-support-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'support',\n state: 'active',\n class: 'text-on-support bg-support',\n },\n {\n design: 'tinted',\n intent: 'main',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-main-container bg-main-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-main-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-main-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'main',\n state: 'active',\n class: 'text-on-main bg-main',\n },\n {\n design: 'tinted',\n intent: 'neutral',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-neutral-container bg-neutral-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-neutral-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-neutral-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'neutral',\n state: 'active',\n class: 'text-on-neutral bg-neutral',\n },\n {\n design: 'tinted',\n intent: 'info',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-info-container bg-info-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-info-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-info-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'info',\n state: 'active',\n class: 'text-on-info bg-info',\n },\n {\n design: 'tinted',\n intent: 'accent',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-accent-container bg-accent-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-accent-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-accent-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'accent',\n state: 'active',\n class: 'text-on-accent bg-accent',\n },\n {\n design: 'tinted',\n intent: 'danger',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-error-container bg-error-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-error-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-error-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'danger',\n state: 'active',\n class: 'text-on-error bg-error',\n },\n {\n design: 'tinted',\n intent: 'alert',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-alert-container bg-alert-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-alert-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-alert-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'alert',\n state: 'active',\n class: 'text-on-alert bg-alert',\n },\n {\n design: 'tinted',\n intent: 'success',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-success-container bg-success-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-success-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-success-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'success',\n state: 'active',\n class: 'text-on-success bg-success',\n },\n] as const\n","import { cva } from 'class-variance-authority'\n\nexport const stepLabel = cva([\n 'flex text-body-2 font-bold',\n 'text-on-surface group-disabled/btn:text-on-surface/dim-1',\n 'group-data-[orientation=horizontal]/list:mt-md',\n 'group-data-[orientation=vertical]/list:ml-md',\n 'group-data-[orientation=vertical]/list:my-auto',\n])\n","import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { stepLabel } from './ProgressTrackerStepLabel.styles'\n\ntype ProgressTrackerStepLabelProps = ComponentPropsWithoutRef<'span'> & {\n children: ReactNode\n}\n\nexport const ProgressTrackerStepLabel = ({\n className,\n children,\n}: ProgressTrackerStepLabelProps) => <span className={stepLabel({ className })}>{children}</span>\n\nProgressTrackerStepLabel.displayName = 'ProgressTracker.StepLabel'\n","import { ProgressTracker as Root, type ProgressTrackerProps } from './ProgressTracker'\nimport { ProgressTrackerStep as Step, type ProgressTrackerStepProps } from './ProgressTrackerStep'\nimport {\n ProgressTrackerStepIndicator as StepIndicator,\n type ProgressTrackerStepIndicatorProps,\n} from './ProgressTrackerStepIndicator'\nimport { ProgressTrackerStepLabel as StepLabel } from './ProgressTrackerStepLabel'\n\nexport const ProgressTracker: typeof Root & {\n Step: typeof Step\n StepLabel: typeof StepLabel\n StepIndicator: typeof StepIndicator\n} = Object.assign(Root, {\n Step,\n StepLabel,\n StepIndicator,\n})\n\nProgressTracker.displayName = 'ProgressTracker'\nStep.displayName = 'ProgressTracker.Step'\nStepLabel.displayName = 'ProgressTracker.StepLabel'\nStepIndicator.displayName = 'ProgressTracker.StepIndicator'\n\nexport type { ProgressTrackerProps, ProgressTrackerStepProps, ProgressTrackerStepIndicatorProps }\n"],"mappings":"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","names":["cx","cx","cva","cva","jsx","jsx","steps","cva","jsx","ProgressTracker"]}
1
+ {"version":3,"sources":["../../src/progress-tracker/ProgressTracker.tsx","../../src/progress-tracker/ProgressTracker.styles.ts","../../src/progress-tracker/ProgressTrackerContext.ts","../../src/progress-tracker/ProgressTrackerStep.tsx","../../src/progress-tracker/ProgressTrackerStep.styles.ts","../../src/progress-tracker/ProgressTrackerStepIndicator.tsx","../../src/progress-tracker/ProgressTrackerStepIndicator.styles.ts","../../src/progress-tracker/stepIndicatorVariants/outline.ts","../../src/progress-tracker/stepIndicatorVariants/tinted.ts","../../src/progress-tracker/ProgressTrackerStepLabel.styles.ts","../../src/progress-tracker/ProgressTrackerStepLabel.tsx","../../src/progress-tracker/index.ts"],"sourcesContent":["import { cx } from 'class-variance-authority'\nimport { type ComponentPropsWithRef, type PropsWithChildren, useState } from 'react'\n\nimport { progressList } from './ProgressTracker.styles'\nimport {\n ProgressTrackerContext,\n type ProgressTrackerContextInterface,\n} from './ProgressTrackerContext'\nimport type { StepIndicatorVariantProps } from './ProgressTrackerStepIndicator.styles'\n\nexport interface ProgressTrackerProps\n extends ComponentPropsWithRef<'div'>,\n Pick<StepIndicatorVariantProps, 'size' | 'intent' | 'design'> {\n /**\n * The orientation of the progress tracker\n * @default 'horizontal\"\n */\n orientation?: 'horizontal' | 'vertical'\n /**\n * The index of the current step.\n * @default 0\n */\n stepIndex?: number\n /**\n * Event handler called when clicking on a step.\n */\n onStepClick?: (stepIndex: number) => void\n /**\n * Sets the component as interactive or not.\n * @default false\n */\n readOnly?: boolean\n}\n\nexport const ProgressTracker = ({\n stepIndex = 0,\n onStepClick,\n readOnly = false,\n intent = 'basic',\n size = 'lg',\n design = 'outline',\n orientation = 'horizontal',\n children,\n className,\n ref,\n ...rest\n}: PropsWithChildren<ProgressTrackerProps>) => {\n const [steps, setSteps] = useState<ProgressTrackerContextInterface['steps']>(new Map())\n\n const Component = readOnly ? 'div' : 'nav'\n\n return (\n <ProgressTrackerContext.Provider\n value={{ stepIndex, onStepClick, steps, setSteps, size, intent, design, readOnly }}\n >\n <Component\n ref={ref}\n data-spark-component=\"progress-tracker\"\n className={cx('inline-flex', className)}\n {...rest}\n >\n <ol\n data-orientation={orientation}\n className={progressList}\n style={{ counterReset: 'step' }}\n >\n {children}\n </ol>\n </Component>\n </ProgressTrackerContext.Provider>\n )\n}\n\nProgressTracker.displayName = 'ProgressTracker'\n","import { cx } from 'class-variance-authority'\n\nexport const progressList = cx([\n 'flex flex-nowrap items-start group/list',\n 'data-[orientation=horizontal]:flex-row data-[orientation=horizontal]:w-full',\n 'data-[orientation=vertical]:flex-col',\n])\n","import { createContext, type Dispatch, type SetStateAction, useContext } from 'react'\n\nimport type { ProgressTrackerProps } from './ProgressTracker'\n\n// Interfaces\nexport type ProgressTrackerContextInterface = Required<\n Pick<ProgressTrackerProps, 'stepIndex' | 'size' | 'intent' | 'design' | 'readOnly'>\n> &\n Pick<ProgressTrackerProps, 'onStepClick'> & {\n steps: Map<string, string[]>\n setSteps: Dispatch<SetStateAction<Map<string, string[]>>>\n }\n\nexport interface ProgressTrackerStepContextInterface {\n index: number\n state: 'active' | 'complete' | 'incomplete'\n}\n\n// Contexts\nexport const ProgressTrackerContext = createContext<ProgressTrackerContextInterface>(\n {} as ProgressTrackerContextInterface\n)\n\nexport const ProgressTrackerStepContext = createContext<ProgressTrackerStepContextInterface>(\n {} as ProgressTrackerStepContextInterface\n)\n\n// Hooks\nexport const useProgressTrackerContext = () => useContext(ProgressTrackerContext)\n\nexport const useProgressTrackerStepContext = () => useContext(ProgressTrackerStepContext)\n\nexport const ID_PREFIX = ':progress-tracker'\n","import { type ComponentPropsWithRef, type ReactNode, useEffect, useId } from 'react'\n\nimport {\n ID_PREFIX,\n ProgressTrackerStepContext,\n useProgressTrackerContext,\n} from './ProgressTrackerContext'\nimport { stepButtonVariant, stepItemVariant } from './ProgressTrackerStep.styles'\nimport { ProgressTrackerStepIndicator } from './ProgressTrackerStepIndicator'\n\nexport type ProgressTrackerStepProps = ComponentPropsWithRef<'li'> &\n (\n | {\n disabled?: boolean\n children: ReactNode\n }\n | {\n disabled?: boolean\n 'aria-label': string\n }\n )\n\nexport const ProgressTrackerStep = ({\n disabled = false,\n children,\n 'aria-label': ariaLabel,\n className,\n ref,\n ...rest\n}: ProgressTrackerStepProps) => {\n const {\n stepIndex: currentStepIndex,\n steps,\n onStepClick,\n setSteps,\n size,\n intent,\n readOnly,\n } = useProgressTrackerContext()\n\n const stepId = `${ID_PREFIX}-step-${useId()}`\n const stepIndex = [...steps.keys()].indexOf(stepId)\n\n const disabledAfter = (() => {\n const nextStepId = [...steps.keys()][stepIndex + 1]\n\n return !!(nextStepId && steps.get(nextStepId)?.includes('disabled'))\n })()\n\n const progressState = (() => {\n if (stepIndex === currentStepIndex) return 'active'\n else if (stepIndex < currentStepIndex) return 'complete'\n else return 'incomplete'\n })()\n\n useEffect(() => {\n setSteps(steps => {\n const newSteps = new Map(steps)\n\n return newSteps.set(\n stepId,\n [progressState, disabled ? 'disabled' : ''].filter(v => !!v)\n )\n })\n\n return () => {\n setSteps(steps => {\n steps.delete(stepId)\n\n return steps\n })\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n return (\n <li\n data-spark-component=\"progress-tracker-step\"\n id={stepId}\n ref={ref}\n data-state={progressState}\n {...(progressState === 'active' && {\n 'aria-current': 'step',\n })}\n className={stepItemVariant({\n size,\n intent,\n disabled,\n disabledAfter,\n })}\n {...rest}\n >\n <button\n type=\"button\"\n aria-label={ariaLabel}\n data-interactive={!disabled && !readOnly}\n {...(!disabled &&\n !readOnly && {\n onClick: () => onStepClick?.(stepIndex),\n })}\n disabled={disabled}\n className={stepButtonVariant({\n size,\n readOnly,\n className,\n })}\n >\n <ProgressTrackerStepContext.Provider\n value={{\n index: stepIndex,\n state: progressState,\n }}\n >\n {children || <ProgressTrackerStepIndicator />}\n </ProgressTrackerStepContext.Provider>\n </button>\n </li>\n )\n}\n\nProgressTrackerStep.displayName = 'ProgressTracker.Step'\n","import { cva } from 'class-variance-authority'\n\nexport const stepItemVariant = cva(\n [\n 'relative inline-flex items-start flex-auto first:grow-0 justify-center group/item',\n // Progress Track\n 'after:absolute after:z-base',\n 'last:after:content-none',\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:px-[1px]',\n 'group-data-[orientation=horizontal]/list:before:absolute group-data-[orientation=horizontal]/list:before:z-base',\n 'group-data-[orientation=horizontal]/list:before:left-0 group-data-[orientation=horizontal]/list:after:right-0',\n 'group-data-[orientation=horizontal]/list:before:h-[1px] group-data-[orientation=horizontal]/list:after:h-[1px]',\n 'first:group-data-[orientation=horizontal]/list:before:content-none',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:py-[1px]',\n 'group-data-[orientation=vertical]/list:items-start',\n 'group-data-[orientation=vertical]/list:after:w-[1px] group-data-[orientation=vertical]/list:after:bottom-[-1px]',\n ],\n {\n variants: {\n size: {\n sm: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[8px] group-data-[orientation=horizontal]/list:after:top-[8px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+12px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+12px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+10px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+10px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[8px]',\n 'group-data-[orientation=vertical]/list:after:top-[25px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[21px]',\n ],\n md: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[12px] group-data-[orientation=horizontal]/list:after:top-[12px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+16px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+16px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+14px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+14px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[12px]',\n 'group-data-[orientation=vertical]/list:after:top-[33px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[29px]',\n ],\n lg: [\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:before:top-[16px] group-data-[orientation=horizontal]/list:after:top-[16px]',\n 'group-data-[orientation=horizontal]/list:before:right-[calc(50%+20px)] group-data-[orientation=horizontal]/list:after:left-[calc(50%+20px)]',\n 'first:group-data-[orientation=horizontal]/list:after:left-[calc(50%+18px)]',\n 'last:group-data-[orientation=horizontal]/list:before:right-[calc(50%+18px)]',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:after:left-[16px]',\n 'group-data-[orientation=vertical]/list:after:top-[41px]',\n 'first:group-data-[orientation=vertical]/list:after:top-[37px]',\n ],\n },\n intent: {\n basic: ['after:bg-basic', 'group-data-[orientation=horizontal]/list:before:bg-basic'],\n support: ['after:bg-support', 'group-data-[orientation=horizontal]/list:before:bg-support'],\n main: ['after:bg-main', 'group-data-[orientation=horizontal]/list:before:bg-main'],\n neutral: ['after:bg-neutral', 'group-data-[orientation=horizontal]/list:before:bg-neutral'],\n info: ['after:bg-info', 'group-data-[orientation=horizontal]/list:before:bg-info'],\n accent: ['after:bg-accent', 'group-data-[orientation=horizontal]/list:before:bg-accent'],\n danger: ['after:bg-error', 'group-data-[orientation=horizontal]/list:before:bg-error'],\n alert: ['after:bg-alert', 'group-data-[orientation=horizontal]/list:before:bg-alert'],\n success: ['after:bg-success', 'group-data-[orientation=horizontal]/list:before:bg-success'],\n },\n disabled: {\n true: 'before:opacity-dim-3',\n false: '',\n },\n disabledAfter: {\n true: 'after:opacity-dim-3',\n false: '',\n },\n },\n defaultVariants: {\n disabled: false,\n disabledAfter: false,\n size: 'lg',\n intent: 'basic',\n },\n }\n)\n\nexport const stepButtonVariant = cva(\n [\n 'relative flex group/btn disabled:cursor-default',\n // Horizontal orientation\n 'group-data-[orientation=horizontal]/list:flex-col group-data-[orientation=horizontal]/list:items-center',\n 'group-data-[orientation=horizontal]/list:text-center group-data-[orientation=horizontal]/list:mx-sm',\n 'group-first/item:group-data-[orientation=horizontal]/list:ml-0 group-last/item:group-data-[orientation=horizontal]/list:mr-0',\n // Vertical orientation\n 'group-data-[orientation=vertical]/list:flex-row group-data-[orientation=vertical]/list:items-start',\n 'group-data-[orientation=vertical]/list:text-left group-data-[orientation=vertical]/list:my-sm',\n 'group-first/item:group-data-[orientation=vertical]/list:mt-0 group-last/item:group-data-[orientation=vertical]/list:mb-0',\n ],\n {\n variants: {\n size: {\n sm: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-16 group-data-[orientation=horizontal]/list:mt-[16px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-16 group-data-[orientation=vertical]/list:ml-[16px]',\n ],\n md: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-24 group-data-[orientation=horizontal]/list:mt-[24px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-24 group-data-[orientation=vertical]/list:ml-[24px]',\n ],\n lg: [\n 'group-data-[orientation=horizontal]/list:min-w-sz-32 group-data-[orientation=horizontal]/list:mt-[32px]',\n 'group-data-[orientation=vertical]/list:min-h-sz-32 group-data-[orientation=vertical]/list:ml-[32px]',\n ],\n },\n readOnly: {\n true: 'cursor-default',\n false: 'cursor-pointer',\n },\n },\n defaultVariants: {\n size: 'lg',\n readOnly: false,\n },\n }\n)\n","import { Check } from '@spark-ui/icons/Check'\nimport type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { Icon } from '../icon'\nimport { useProgressTrackerContext, useProgressTrackerStepContext } from './ProgressTrackerContext'\nimport { stepIndicatorVariant } from './ProgressTrackerStepIndicator.styles'\n\nexport type ProgressTrackerStepIndicatorProps = ComponentPropsWithoutRef<'span'> & {\n /**\n * The content to be rendered when step status is complete (checkmark icon by default)\n */\n complete?: ReactNode\n /**\n * The content to be rendered when step status is incomplete (step index by default)\n */\n incomplete?: ReactNode\n}\n\nconst CompleteIndicator = () => (\n <Icon size=\"sm\">\n <Check />\n </Icon>\n)\n\nexport const ProgressTrackerStepIndicator = ({\n complete,\n incomplete,\n className,\n}: ProgressTrackerStepIndicatorProps) => {\n const { size, intent, design } = useProgressTrackerContext()\n const { index, state } = useProgressTrackerStepContext()\n\n return (\n <span\n className={stepIndicatorVariant({ size, intent, design, state, className })}\n aria-hidden=\"true\"\n >\n {size !== 'sm' && (\n <>\n {state === 'complete' && (complete === undefined ? <CompleteIndicator /> : complete)}\n {state !== 'complete' && (incomplete === undefined ? `${index + 1}` : incomplete)}\n </>\n )}\n </span>\n )\n}\n\nProgressTrackerStepIndicator.displayName = 'ProgressTracker.StepIndicator'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nimport { outlineVariants, tintedVariants } from './stepIndicatorVariants'\n\nexport const stepIndicatorVariant = cva(\n [\n 'relative flex shrink-0 justify-center items-center',\n 'rounded-full',\n 'text-body-2 font-bold',\n 'group-disabled/btn:opacity-dim-3',\n ],\n {\n variants: {\n size: {\n sm: [\n 'w-sz-16 h-sz-16',\n 'group-data-[orientation=horizontal]/list:mt-[-16px]',\n 'group-data-[orientation=vertical]/list:ml-[-16px]',\n ],\n md: [\n 'w-sz-24 h-sz-24',\n 'group-data-[orientation=horizontal]/list:mt-[-24px]',\n 'group-data-[orientation=vertical]/list:ml-[-24px]',\n ],\n lg: [\n 'w-sz-32 h-sz-32',\n 'group-data-[orientation=horizontal]/list:mt-[-32px]',\n 'group-data-[orientation=vertical]/list:ml-[-32px]',\n ],\n },\n intent: {\n basic: '',\n support: '',\n main: '',\n neutral: '',\n info: '',\n accent: '',\n danger: '',\n alert: '',\n success: '',\n },\n design: {\n outline: 'border-sm',\n tinted: '',\n },\n state: {\n complete: '',\n incomplete: '',\n active: '',\n },\n },\n /**\n * Known type issue with CVA compoundVariants and VS Code/Intellisense:\n * https://github.com/joe-bell/cva/discussions/195#discussioncomment-6750163\n * */\n /* eslint-disable-next-line @typescript-eslint/ban-ts-comment */\n /* @ts-ignore */\n compoundVariants: [...outlineVariants, ...tintedVariants],\n defaultVariants: {\n size: 'lg',\n state: 'incomplete',\n intent: 'basic',\n design: 'outline',\n },\n }\n)\n\nexport type StepIndicatorVariantProps = VariantProps<typeof stepIndicatorVariant>\n","export const outlineVariants = [\n {\n design: 'outline',\n intent: 'basic',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-basic-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-basic-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'basic',\n state: 'active',\n class: 'text-on-basic-container bg-basic-container',\n },\n {\n design: 'outline',\n intent: 'support',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-support-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-support-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'support',\n state: 'active',\n class: 'text-on-support-container bg-support-container',\n },\n {\n design: 'outline',\n intent: 'main',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-main-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-main-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'main',\n state: 'active',\n class: 'text-on-main-container bg-main-container',\n },\n {\n design: 'outline',\n intent: 'neutral',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-neutral-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-neutral-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'neutral',\n state: 'active',\n class: 'text-on-neutral-container bg-neutral-container',\n },\n {\n design: 'outline',\n intent: 'info',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-info-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-info-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'info',\n state: 'active',\n class: 'text-on-info-container bg-info-container',\n },\n {\n design: 'outline',\n intent: 'accent',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-accent-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-accent-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'accent',\n state: 'active',\n class: 'text-on-accent-container bg-accent-container',\n },\n {\n design: 'outline',\n intent: 'danger',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-error-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-error-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'danger',\n state: 'active',\n class: 'text-on-error-container bg-error-container',\n },\n {\n design: 'outline',\n intent: 'alert',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-alert-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-alert-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'alert',\n state: 'active',\n class: 'text-on-alert-container bg-alert-container',\n },\n {\n design: 'outline',\n intent: 'success',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-success-container bg-transparent',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-success-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-transparent',\n ],\n },\n {\n design: 'outline',\n intent: 'success',\n state: 'active',\n class: 'text-on-success-container bg-success-container',\n },\n] as const\n","export const tintedVariants = [\n {\n design: 'tinted',\n intent: 'basic',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-basic-container bg-basic-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-basic-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-basic-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'basic',\n state: 'active',\n class: 'text-on-basic bg-basic',\n },\n {\n design: 'tinted',\n intent: 'support',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-support-container bg-support-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-support-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-support-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'support',\n state: 'active',\n class: 'text-on-support bg-support',\n },\n {\n design: 'tinted',\n intent: 'main',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-main-container bg-main-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-main-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-main-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'main',\n state: 'active',\n class: 'text-on-main bg-main',\n },\n {\n design: 'tinted',\n intent: 'neutral',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-neutral-container bg-neutral-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-neutral-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-neutral-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'neutral',\n state: 'active',\n class: 'text-on-neutral bg-neutral',\n },\n {\n design: 'tinted',\n intent: 'info',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-info-container bg-info-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-info-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-info-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'info',\n state: 'active',\n class: 'text-on-info bg-info',\n },\n {\n design: 'tinted',\n intent: 'accent',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-accent-container bg-accent-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-accent-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-accent-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'accent',\n state: 'active',\n class: 'text-on-accent bg-accent',\n },\n {\n design: 'tinted',\n intent: 'danger',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-error-container bg-error-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-error-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-error-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'danger',\n state: 'active',\n class: 'text-on-error bg-error',\n },\n {\n design: 'tinted',\n intent: 'alert',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-alert-container bg-alert-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-alert-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-alert-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'alert',\n state: 'active',\n class: 'text-on-alert bg-alert',\n },\n {\n design: 'tinted',\n intent: 'success',\n state: ['complete', 'incomplete'],\n class: [\n 'text-on-success-container bg-success-container',\n 'group-hover/btn:group-data-[interactive=true]/btn:bg-success-container-hovered',\n 'group-hover/btn:group-data-[interactive=false]/btn:bg-success-container',\n ],\n },\n {\n design: 'tinted',\n intent: 'success',\n state: 'active',\n class: 'text-on-success bg-success',\n },\n] as const\n","import { cva } from 'class-variance-authority'\n\nexport const stepLabel = cva([\n 'flex text-body-2 font-bold',\n 'text-on-surface group-disabled/btn:text-on-surface/dim-1',\n 'group-data-[orientation=horizontal]/list:mt-md',\n 'group-data-[orientation=vertical]/list:ml-md',\n 'group-data-[orientation=vertical]/list:my-auto',\n])\n","import type { ComponentPropsWithoutRef, ReactNode } from 'react'\n\nimport { stepLabel } from './ProgressTrackerStepLabel.styles'\n\ntype ProgressTrackerStepLabelProps = ComponentPropsWithoutRef<'span'> & {\n children: ReactNode\n}\n\nexport const ProgressTrackerStepLabel = ({\n className,\n children,\n}: ProgressTrackerStepLabelProps) => <span className={stepLabel({ className })}>{children}</span>\n\nProgressTrackerStepLabel.displayName = 'ProgressTracker.StepLabel'\n","import { ProgressTracker as Root, type ProgressTrackerProps } from './ProgressTracker'\nimport { ProgressTrackerStep as Step, type ProgressTrackerStepProps } from './ProgressTrackerStep'\nimport {\n ProgressTrackerStepIndicator as StepIndicator,\n type ProgressTrackerStepIndicatorProps,\n} from './ProgressTrackerStepIndicator'\nimport { ProgressTrackerStepLabel as StepLabel } from './ProgressTrackerStepLabel'\n\nexport const ProgressTracker: typeof Root & {\n Step: typeof Step\n StepLabel: typeof StepLabel\n StepIndicator: typeof StepIndicator\n} = Object.assign(Root, {\n Step,\n StepLabel,\n StepIndicator,\n})\n\nProgressTracker.displayName = 'ProgressTracker'\nStep.displayName = 'ProgressTracker.Step'\nStepLabel.displayName = 'ProgressTracker.StepLabel'\nStepIndicator.displayName = 'ProgressTracker.StepIndicator'\n\nexport type { ProgressTrackerProps, ProgressTrackerStepProps, ProgressTrackerStepIndicatorProps }\n"],"mappings":"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","names":["cx","cx","cva","cva","jsx","jsx","steps","cva","jsx","ProgressTracker"]}
@@ -163,6 +163,7 @@ var RadioInput = ({ intent: intentProp, className, ref, ...others }) => {
163
163
  return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
164
164
  import_radix_ui2.RadioGroup.RadioGroupItem,
165
165
  {
166
+ "data-spark-component": "radio-input",
166
167
  ref,
167
168
  className: radioInputVariants({ intent, className }),
168
169
  ...others,
@@ -192,7 +193,14 @@ var radioLabelStyles = (0, import_class_variance_authority3.cva)("grow", {
192
193
  // src/radio-group/RadioLabel.tsx
193
194
  var import_jsx_runtime3 = require("react/jsx-runtime");
194
195
  var RadioLabel = ({ disabled, ...others }) => {
195
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_radix_ui3.Label.Root, { className: radioLabelStyles({ disabled }), ...others });
196
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
197
+ import_radix_ui3.Label.Root,
198
+ {
199
+ "data-spark-component": "radio-label",
200
+ className: radioLabelStyles({ disabled }),
201
+ ...others
202
+ }
203
+ );
196
204
  };
197
205
  RadioLabel.displayName = "RadioGroup.RadioLabel";
198
206
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/radio-group/index.ts","../../src/radio-group/Radio.tsx","../../src/radio-group/RadioGroupContext.tsx","../../src/radio-group/RadioInput.tsx","../../src/radio-group/RadioIndicator.tsx","../../src/radio-group/RadioIndicator.styles.ts","../../src/radio-group/RadioInput.styles.ts","../../src/radio-group/RadioLabel.tsx","../../src/radio-group/RadioLabel.styles.tsx","../../src/radio-group/RadioGroup.tsx","../../src/radio-group/RadioGroup.styles.ts","../../src/radio-group/RadioGroupProvider.tsx"],"sourcesContent":["import { Radio } from './Radio'\nimport { RadioGroup as Root } from './RadioGroup'\n\nexport const RadioGroup: typeof Root & {\n Radio: typeof Radio\n} = Object.assign(Root, {\n Radio,\n})\n\nRadioGroup.displayName = 'RadioGroup'\nRadio.displayName = 'RadioGroup.Radio'\n\nexport { type RadioGroupProps } from './RadioGroup'\nexport { type RadioProps } from './Radio'\n","import { cx } from 'class-variance-authority'\nimport { Ref, useId } from 'react'\n\nimport { useRadioGroup } from './RadioGroupContext'\nimport { RadioInput, RadioInputProps } from './RadioInput'\nimport { RadioLabel } from './RadioLabel'\n\nexport type RadioProps = RadioInputProps & {\n ref?: Ref<HTMLButtonElement>\n}\n\nconst ID_PREFIX = ':radio'\n\nexport const Radio = ({\n className,\n children,\n id,\n disabled: disabledProp,\n ref,\n ...others\n}: RadioProps) => {\n const innerId = `${ID_PREFIX}-input-${useId()}`\n const innerLabelId = `${ID_PREFIX}-label-${useId()}`\n\n const { intent, disabled, reverse } = useRadioGroup()\n\n const radioLabel = children && (\n <RadioLabel disabled={disabledProp || disabled} htmlFor={id || innerId} id={innerLabelId}>\n {children}\n </RadioLabel>\n )\n\n const radioInput = (\n <RadioInput\n ref={ref}\n id={id || innerId}\n intent={intent}\n aria-labelledby={children ? innerLabelId : undefined}\n {...others}\n disabled={disabledProp}\n />\n )\n\n const content = reverse ? (\n <>\n {radioLabel}\n {radioInput}\n </>\n ) : (\n <>\n {radioInput}\n {radioLabel}\n </>\n )\n\n return <div className={cx('gap-md text-body-1 flex items-start', className)}>{content}</div>\n}\n\nRadio.displayName = 'RadioGroup.Radio'\n","import { createContext, useContext } from 'react'\n\nimport type { RadioGroupProps } from './RadioGroup'\nimport type { RadioInputProps } from './RadioInput'\n\nexport type RadioGroupContextState = Pick<RadioInputProps, 'intent' | 'disabled'> &\n Pick<RadioGroupProps, 'reverse'>\n\nexport const RadioGroupContext = createContext<RadioGroupContextState | null>(null)\n\nexport const useRadioGroup = () => {\n const context = useContext(RadioGroupContext)\n\n if (!context) {\n throw Error('useRadioGroup must be used within a RadioGroup provider')\n }\n\n return context\n}\n","import { useFormFieldControl } from '@spark-ui/components/form-field'\nimport { RadioGroup as RadixRadioGroup } from 'radix-ui'\nimport { ButtonHTMLAttributes, Ref } from 'react'\n\nimport { RadioIndicator } from './RadioIndicator'\nimport { radioInputVariants, RadioInputVariantsProps } from './RadioInput.styles'\n\nexport interface RadioInputProps\n extends RadioInputVariantsProps,\n Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'value' | 'onChange'> {\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * The value given as data when submitted with a name.\n */\n value: string\n /**\n * When true, prevents the user from interacting with the radio item.\n */\n disabled?: boolean\n /**\n * When true, indicates that the user must check the radio item before the owning form can be submitted.\n */\n required?: boolean\n ref?: Ref<HTMLButtonElement>\n}\n\nexport const RadioInput = ({ intent: intentProp, className, ref, ...others }: RadioInputProps) => {\n const { state } = useFormFieldControl()\n\n const intent = state ?? intentProp\n\n return (\n <RadixRadioGroup.RadioGroupItem\n ref={ref}\n className={radioInputVariants({ intent, className })}\n {...others}\n >\n <RadioIndicator intent={intent} forceMount />\n </RadixRadioGroup.RadioGroupItem>\n )\n}\n\nRadioInput.displayName = 'RadioGroup.RadioInput'\n","import { RadioGroup as RadixRadioGroup } from 'radix-ui'\nimport { Ref } from 'react'\n\nimport { radioIndicatorStyles, RadioIndicatorStylesProps } from './RadioIndicator.styles'\n\nexport interface RadioIndicatorProps extends RadioIndicatorStylesProps {\n className?: string\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * Used to force mounting when more control is needed. Useful when controlling animation with React animation libraries.\n */\n forceMount?: true | undefined\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const RadioIndicator = ({ intent, className, ref, ...others }: RadioIndicatorProps) => {\n return (\n <RadixRadioGroup.Indicator\n ref={ref}\n className={radioIndicatorStyles({ intent, className })}\n {...others}\n />\n )\n}\n\nRadioIndicator.displayName = 'RadioGroup.RadioIndicator'\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const radioIndicatorStyles = cva(\n [\n 'relative block',\n 'size-3/5',\n 'after:absolute',\n 'after:left-1/2 after:top-1/2 after:-translate-x-1/2 after:-translate-y-1/2',\n 'after:h-0',\n 'after:w-0',\n 'after:block',\n 'after:rounded-[50%]',\n \"after:content-['']\",\n 'after:transition-all',\n 'data-[state=checked]:after:size-full',\n ],\n {\n variants: {\n intent: makeVariants<\n 'intent',\n ['main', 'support', 'accent', 'basic', 'success', 'alert', 'error', 'info', 'neutral']\n >({\n main: ['after:bg-main'],\n support: ['after:bg-support'],\n accent: ['after:bg-accent'],\n basic: ['after:bg-basic'],\n neutral: ['after:bg-neutral'],\n success: ['after:bg-success'],\n alert: ['after:bg-alert'],\n error: ['after:bg-error'],\n info: ['after:bg-info'],\n }),\n },\n defaultVariants: {\n intent: 'basic',\n },\n }\n)\n\nexport type RadioIndicatorStylesProps = VariantProps<typeof radioIndicatorStyles>\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const radioInputVariants = cva(\n [\n 'flex shrink-0 items-center justify-center',\n 'rounded-full',\n 'border-md',\n 'outline-hidden',\n 'hover:ring-4',\n 'focus-visible:u-outline',\n 'disabled:cursor-not-allowed disabled:border-outline/dim-2 disabled:hover:ring-transparent',\n 'u-shadow-border-transition',\n 'size-sz-24',\n ],\n {\n variants: {\n /**\n * Color scheme of the radio input.\n */\n intent: makeVariants<\n 'intent',\n ['main', 'support', 'accent', 'basic', 'success', 'alert', 'error', 'info', 'neutral']\n >({\n main: ['border-outline', 'data-[state=checked]:border-main', 'hover:ring-main-container'],\n support: [\n 'border-outline',\n 'data-[state=checked]:border-support',\n 'hover:ring-support-container',\n ],\n accent: [\n 'border-outline',\n 'data-[state=checked]:border-accent',\n 'hover:ring-accent-container',\n ],\n basic: [\n 'border-outline',\n 'data-[state=checked]:border-basic',\n 'hover:ring-basic-container',\n ],\n neutral: [\n 'border-outline',\n 'data-[state=checked]:border-neutral',\n 'hover:ring-neutral-container',\n ],\n info: ['border-info', 'data-[state=checked]:border-info', 'hover:ring-info-container'],\n success: [\n 'border-success',\n 'data-[state=checked]:border-success',\n 'hover:ring-success-container',\n ],\n alert: ['border-alert', 'data-[state=checked]:border-alert', 'hover:ring-alert-container'],\n error: ['border-error', 'data-[state=checked]:border-error', 'hover:ring-error-container'],\n }),\n },\n defaultVariants: {\n intent: 'basic',\n },\n }\n)\n\nexport type RadioInputVariantsProps = VariantProps<typeof radioInputVariants>\n","import { Label } from 'radix-ui'\nimport type { HTMLAttributes, PropsWithChildren } from 'react'\n\nimport { radioLabelStyles, RadioLabelStylesProps } from './RadioLabel.styles'\n\nexport interface RadioLabelProps\n extends RadioLabelStylesProps,\n PropsWithChildren<HTMLAttributes<HTMLLabelElement>> {\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * The id of the element the label is associated with.\n */\n htmlFor?: string\n /**\n * When true, prevents the user from interacting with the radio item.\n */\n disabled?: boolean\n}\n\nexport const RadioLabel = ({ disabled, ...others }: RadioLabelProps) => {\n return <Label.Root className={radioLabelStyles({ disabled })} {...others} />\n}\n\nRadioLabel.displayName = 'RadioGroup.RadioLabel'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nexport const radioLabelStyles = cva('grow', {\n variants: {\n disabled: {\n true: ['text-neutral/dim-2', 'cursor-not-allowed'],\n false: ['cursor-pointer'],\n },\n },\n defaultVariants: {\n disabled: false,\n },\n})\n\nexport type RadioLabelStylesProps = VariantProps<typeof radioLabelStyles>\n","import { useFormFieldControl } from '@spark-ui/components/form-field'\nimport { RadioGroup as RadixRadioGroup } from 'radix-ui'\nimport { HTMLAttributes, Ref } from 'react'\n\nimport { radioGroupStyles, RadioGroupVariantsProps } from './RadioGroup.styles'\nimport { RadioGroupProvider } from './RadioGroupProvider'\nimport { RadioInputVariantsProps } from './RadioInput.styles'\n\nexport interface RadioGroupProps\n extends RadioGroupVariantsProps,\n Pick<RadioInputVariantsProps, 'intent'>,\n Omit<HTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue' | 'dir' | 'onChange'> {\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * The value of the radio item that should be checked when initially rendered. Use when you do not need to control the state of the radio items.\n */\n defaultValue?: string\n /**\n * The controlled value of the radio item to check. Should be used in conjunction with onValueChange.\n */\n value?: string\n /**\n * Event handler called when the value changes.\n */\n onValueChange?: (value: string) => void\n /**\n * When true, prevents the user from interacting with radio items.\n */\n disabled?: boolean\n /**\n * The name of the group. Submitted with its owning form as part of a name/value pair.\n */\n name?: string\n /**\n * When true, indicates that the user must check a radio item before the owning form can be submitted.\n */\n required?: boolean\n /**\n * The orientation of the component.\n */\n orientation?: 'horizontal' | 'vertical'\n /**\n * The reading direction of the radio group.\n */\n dir?: 'ltr' | 'rtl'\n /**\n * When true, keyboard navigation will loop from last item to first, and vice versa.\n */\n loop?: boolean\n /**\n * When true, the label will be placed on the left side of the Radio\n */\n reverse?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nexport const RadioGroup = ({\n orientation = 'vertical',\n loop = true,\n intent = 'basic',\n disabled,\n className,\n required: requiredProp,\n reverse = false,\n ref,\n ...others\n}: RadioGroupProps) => {\n const { labelId, isInvalid, isRequired, description, name } = useFormFieldControl()\n const required = requiredProp !== undefined ? requiredProp : isRequired\n\n return (\n <RadioGroupProvider reverse={reverse} intent={intent} disabled={disabled}>\n <RadixRadioGroup.RadioGroup\n data-spark-component=\"radio-group\"\n className={radioGroupStyles({ orientation, className })}\n name={name}\n ref={ref}\n disabled={disabled}\n orientation={orientation}\n loop={loop}\n required={required}\n aria-labelledby={labelId}\n aria-invalid={isInvalid}\n aria-required={required}\n aria-describedby={description}\n {...others}\n />\n </RadioGroupProvider>\n )\n}\n\nRadioGroup.displayName = 'RadioGroup'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nexport const radioGroupStyles = cva(['flex'], {\n variants: {\n orientation: {\n vertical: ['flex-col', 'gap-lg'],\n horizontal: ['flex-row', 'gap-xl'],\n },\n },\n})\n\nexport type RadioGroupVariantsProps = VariantProps<typeof radioGroupStyles>\n","import { ReactNode, useMemo } from 'react'\n\nimport type { RadioGroupProps } from './RadioGroup'\nimport { RadioGroupContext } from './RadioGroupContext'\nimport type { RadioInputProps } from './RadioInput'\n\nexport interface RadioGroupProviderProps\n extends Pick<RadioInputProps, 'intent' | 'disabled'>,\n Pick<RadioGroupProps, 'reverse'> {\n children: ReactNode\n}\n\nexport const RadioGroupProvider = ({\n intent,\n disabled,\n reverse,\n children,\n}: RadioGroupProviderProps) => {\n const value = useMemo(() => ({ intent, disabled, reverse }), [intent, disabled, reverse])\n\n return <RadioGroupContext.Provider value={value}>{children}</RadioGroupContext.Provider>\n}\n"],"mappings":"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","names":["RadioGroup","import_class_variance_authority","import_react","import_radix_ui","RadixRadioGroup","import_internal_utils","import_class_variance_authority","import_jsx_runtime","RadixRadioGroup","import_radix_ui","import_class_variance_authority","import_jsx_runtime","import_jsx_runtime","import_form_field","import_radix_ui","import_class_variance_authority","import_react","import_jsx_runtime","import_jsx_runtime","RadixRadioGroup","RadioGroup"]}
1
+ {"version":3,"sources":["../../src/radio-group/index.ts","../../src/radio-group/Radio.tsx","../../src/radio-group/RadioGroupContext.tsx","../../src/radio-group/RadioInput.tsx","../../src/radio-group/RadioIndicator.tsx","../../src/radio-group/RadioIndicator.styles.ts","../../src/radio-group/RadioInput.styles.ts","../../src/radio-group/RadioLabel.tsx","../../src/radio-group/RadioLabel.styles.tsx","../../src/radio-group/RadioGroup.tsx","../../src/radio-group/RadioGroup.styles.ts","../../src/radio-group/RadioGroupProvider.tsx"],"sourcesContent":["import { Radio } from './Radio'\nimport { RadioGroup as Root } from './RadioGroup'\n\nexport const RadioGroup: typeof Root & {\n Radio: typeof Radio\n} = Object.assign(Root, {\n Radio,\n})\n\nRadioGroup.displayName = 'RadioGroup'\nRadio.displayName = 'RadioGroup.Radio'\n\nexport { type RadioGroupProps } from './RadioGroup'\nexport { type RadioProps } from './Radio'\n","import { cx } from 'class-variance-authority'\nimport { Ref, useId } from 'react'\n\nimport { useRadioGroup } from './RadioGroupContext'\nimport { RadioInput, RadioInputProps } from './RadioInput'\nimport { RadioLabel } from './RadioLabel'\n\nexport type RadioProps = RadioInputProps & {\n ref?: Ref<HTMLButtonElement>\n}\n\nconst ID_PREFIX = ':radio'\n\nexport const Radio = ({\n className,\n children,\n id,\n disabled: disabledProp,\n ref,\n ...others\n}: RadioProps) => {\n const innerId = `${ID_PREFIX}-input-${useId()}`\n const innerLabelId = `${ID_PREFIX}-label-${useId()}`\n\n const { intent, disabled, reverse } = useRadioGroup()\n\n const radioLabel = children && (\n <RadioLabel disabled={disabledProp || disabled} htmlFor={id || innerId} id={innerLabelId}>\n {children}\n </RadioLabel>\n )\n\n const radioInput = (\n <RadioInput\n ref={ref}\n id={id || innerId}\n intent={intent}\n aria-labelledby={children ? innerLabelId : undefined}\n {...others}\n disabled={disabledProp}\n />\n )\n\n const content = reverse ? (\n <>\n {radioLabel}\n {radioInput}\n </>\n ) : (\n <>\n {radioInput}\n {radioLabel}\n </>\n )\n\n return <div className={cx('gap-md text-body-1 flex items-start', className)}>{content}</div>\n}\n\nRadio.displayName = 'RadioGroup.Radio'\n","import { createContext, useContext } from 'react'\n\nimport type { RadioGroupProps } from './RadioGroup'\nimport type { RadioInputProps } from './RadioInput'\n\nexport type RadioGroupContextState = Pick<RadioInputProps, 'intent' | 'disabled'> &\n Pick<RadioGroupProps, 'reverse'>\n\nexport const RadioGroupContext = createContext<RadioGroupContextState | null>(null)\n\nexport const useRadioGroup = () => {\n const context = useContext(RadioGroupContext)\n\n if (!context) {\n throw Error('useRadioGroup must be used within a RadioGroup provider')\n }\n\n return context\n}\n","import { useFormFieldControl } from '@spark-ui/components/form-field'\nimport { RadioGroup as RadixRadioGroup } from 'radix-ui'\nimport { ButtonHTMLAttributes, Ref } from 'react'\n\nimport { RadioIndicator } from './RadioIndicator'\nimport { radioInputVariants, RadioInputVariantsProps } from './RadioInput.styles'\n\nexport interface RadioInputProps\n extends RadioInputVariantsProps,\n Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'value' | 'onChange'> {\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * The value given as data when submitted with a name.\n */\n value: string\n /**\n * When true, prevents the user from interacting with the radio item.\n */\n disabled?: boolean\n /**\n * When true, indicates that the user must check the radio item before the owning form can be submitted.\n */\n required?: boolean\n ref?: Ref<HTMLButtonElement>\n}\n\nexport const RadioInput = ({ intent: intentProp, className, ref, ...others }: RadioInputProps) => {\n const { state } = useFormFieldControl()\n\n const intent = state ?? intentProp\n\n return (\n <RadixRadioGroup.RadioGroupItem\n data-spark-component=\"radio-input\"\n ref={ref}\n className={radioInputVariants({ intent, className })}\n {...others}\n >\n <RadioIndicator intent={intent} forceMount />\n </RadixRadioGroup.RadioGroupItem>\n )\n}\n\nRadioInput.displayName = 'RadioGroup.RadioInput'\n","import { RadioGroup as RadixRadioGroup } from 'radix-ui'\nimport { Ref } from 'react'\n\nimport { radioIndicatorStyles, RadioIndicatorStylesProps } from './RadioIndicator.styles'\n\nexport interface RadioIndicatorProps extends RadioIndicatorStylesProps {\n className?: string\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * Used to force mounting when more control is needed. Useful when controlling animation with React animation libraries.\n */\n forceMount?: true | undefined\n ref?: Ref<HTMLSpanElement>\n}\n\nexport const RadioIndicator = ({ intent, className, ref, ...others }: RadioIndicatorProps) => {\n return (\n <RadixRadioGroup.Indicator\n ref={ref}\n className={radioIndicatorStyles({ intent, className })}\n {...others}\n />\n )\n}\n\nRadioIndicator.displayName = 'RadioGroup.RadioIndicator'\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const radioIndicatorStyles = cva(\n [\n 'relative block',\n 'size-3/5',\n 'after:absolute',\n 'after:left-1/2 after:top-1/2 after:-translate-x-1/2 after:-translate-y-1/2',\n 'after:h-0',\n 'after:w-0',\n 'after:block',\n 'after:rounded-[50%]',\n \"after:content-['']\",\n 'after:transition-all',\n 'data-[state=checked]:after:size-full',\n ],\n {\n variants: {\n intent: makeVariants<\n 'intent',\n ['main', 'support', 'accent', 'basic', 'success', 'alert', 'error', 'info', 'neutral']\n >({\n main: ['after:bg-main'],\n support: ['after:bg-support'],\n accent: ['after:bg-accent'],\n basic: ['after:bg-basic'],\n neutral: ['after:bg-neutral'],\n success: ['after:bg-success'],\n alert: ['after:bg-alert'],\n error: ['after:bg-error'],\n info: ['after:bg-info'],\n }),\n },\n defaultVariants: {\n intent: 'basic',\n },\n }\n)\n\nexport type RadioIndicatorStylesProps = VariantProps<typeof radioIndicatorStyles>\n","import { makeVariants } from '@spark-ui/internal-utils'\nimport { cva, VariantProps } from 'class-variance-authority'\n\nexport const radioInputVariants = cva(\n [\n 'flex shrink-0 items-center justify-center',\n 'rounded-full',\n 'border-md',\n 'outline-hidden',\n 'hover:ring-4',\n 'focus-visible:u-outline',\n 'disabled:cursor-not-allowed disabled:border-outline/dim-2 disabled:hover:ring-transparent',\n 'u-shadow-border-transition',\n 'size-sz-24',\n ],\n {\n variants: {\n /**\n * Color scheme of the radio input.\n */\n intent: makeVariants<\n 'intent',\n ['main', 'support', 'accent', 'basic', 'success', 'alert', 'error', 'info', 'neutral']\n >({\n main: ['border-outline', 'data-[state=checked]:border-main', 'hover:ring-main-container'],\n support: [\n 'border-outline',\n 'data-[state=checked]:border-support',\n 'hover:ring-support-container',\n ],\n accent: [\n 'border-outline',\n 'data-[state=checked]:border-accent',\n 'hover:ring-accent-container',\n ],\n basic: [\n 'border-outline',\n 'data-[state=checked]:border-basic',\n 'hover:ring-basic-container',\n ],\n neutral: [\n 'border-outline',\n 'data-[state=checked]:border-neutral',\n 'hover:ring-neutral-container',\n ],\n info: ['border-info', 'data-[state=checked]:border-info', 'hover:ring-info-container'],\n success: [\n 'border-success',\n 'data-[state=checked]:border-success',\n 'hover:ring-success-container',\n ],\n alert: ['border-alert', 'data-[state=checked]:border-alert', 'hover:ring-alert-container'],\n error: ['border-error', 'data-[state=checked]:border-error', 'hover:ring-error-container'],\n }),\n },\n defaultVariants: {\n intent: 'basic',\n },\n }\n)\n\nexport type RadioInputVariantsProps = VariantProps<typeof radioInputVariants>\n","import { Label } from 'radix-ui'\nimport type { HTMLAttributes, PropsWithChildren } from 'react'\n\nimport { radioLabelStyles, RadioLabelStylesProps } from './RadioLabel.styles'\n\nexport interface RadioLabelProps\n extends RadioLabelStylesProps,\n PropsWithChildren<HTMLAttributes<HTMLLabelElement>> {\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * The id of the element the label is associated with.\n */\n htmlFor?: string\n /**\n * When true, prevents the user from interacting with the radio item.\n */\n disabled?: boolean\n}\n\nexport const RadioLabel = ({ disabled, ...others }: RadioLabelProps) => {\n return (\n <Label.Root\n data-spark-component=\"radio-label\"\n className={radioLabelStyles({ disabled })}\n {...others}\n />\n )\n}\n\nRadioLabel.displayName = 'RadioGroup.RadioLabel'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nexport const radioLabelStyles = cva('grow', {\n variants: {\n disabled: {\n true: ['text-neutral/dim-2', 'cursor-not-allowed'],\n false: ['cursor-pointer'],\n },\n },\n defaultVariants: {\n disabled: false,\n },\n})\n\nexport type RadioLabelStylesProps = VariantProps<typeof radioLabelStyles>\n","import { useFormFieldControl } from '@spark-ui/components/form-field'\nimport { RadioGroup as RadixRadioGroup } from 'radix-ui'\nimport { HTMLAttributes, Ref } from 'react'\n\nimport { radioGroupStyles, RadioGroupVariantsProps } from './RadioGroup.styles'\nimport { RadioGroupProvider } from './RadioGroupProvider'\nimport { RadioInputVariantsProps } from './RadioInput.styles'\n\nexport interface RadioGroupProps\n extends RadioGroupVariantsProps,\n Pick<RadioInputVariantsProps, 'intent'>,\n Omit<HTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue' | 'dir' | 'onChange'> {\n /**\n * Change the component to the HTML tag or custom component of the only child.\n */\n asChild?: boolean\n /**\n * The value of the radio item that should be checked when initially rendered. Use when you do not need to control the state of the radio items.\n */\n defaultValue?: string\n /**\n * The controlled value of the radio item to check. Should be used in conjunction with onValueChange.\n */\n value?: string\n /**\n * Event handler called when the value changes.\n */\n onValueChange?: (value: string) => void\n /**\n * When true, prevents the user from interacting with radio items.\n */\n disabled?: boolean\n /**\n * The name of the group. Submitted with its owning form as part of a name/value pair.\n */\n name?: string\n /**\n * When true, indicates that the user must check a radio item before the owning form can be submitted.\n */\n required?: boolean\n /**\n * The orientation of the component.\n */\n orientation?: 'horizontal' | 'vertical'\n /**\n * The reading direction of the radio group.\n */\n dir?: 'ltr' | 'rtl'\n /**\n * When true, keyboard navigation will loop from last item to first, and vice versa.\n */\n loop?: boolean\n /**\n * When true, the label will be placed on the left side of the Radio\n */\n reverse?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nexport const RadioGroup = ({\n orientation = 'vertical',\n loop = true,\n intent = 'basic',\n disabled,\n className,\n required: requiredProp,\n reverse = false,\n ref,\n ...others\n}: RadioGroupProps) => {\n const { labelId, isInvalid, isRequired, description, name } = useFormFieldControl()\n const required = requiredProp !== undefined ? requiredProp : isRequired\n\n return (\n <RadioGroupProvider reverse={reverse} intent={intent} disabled={disabled}>\n <RadixRadioGroup.RadioGroup\n data-spark-component=\"radio-group\"\n className={radioGroupStyles({ orientation, className })}\n name={name}\n ref={ref}\n disabled={disabled}\n orientation={orientation}\n loop={loop}\n required={required}\n aria-labelledby={labelId}\n aria-invalid={isInvalid}\n aria-required={required}\n aria-describedby={description}\n {...others}\n />\n </RadioGroupProvider>\n )\n}\n\nRadioGroup.displayName = 'RadioGroup'\n","import { cva, VariantProps } from 'class-variance-authority'\n\nexport const radioGroupStyles = cva(['flex'], {\n variants: {\n orientation: {\n vertical: ['flex-col', 'gap-lg'],\n horizontal: ['flex-row', 'gap-xl'],\n },\n },\n})\n\nexport type RadioGroupVariantsProps = VariantProps<typeof radioGroupStyles>\n","import { ReactNode, useMemo } from 'react'\n\nimport type { RadioGroupProps } from './RadioGroup'\nimport { RadioGroupContext } from './RadioGroupContext'\nimport type { RadioInputProps } from './RadioInput'\n\nexport interface RadioGroupProviderProps\n extends Pick<RadioInputProps, 'intent' | 'disabled'>,\n Pick<RadioGroupProps, 'reverse'> {\n children: ReactNode\n}\n\nexport const RadioGroupProvider = ({\n intent,\n disabled,\n reverse,\n children,\n}: RadioGroupProviderProps) => {\n const value = useMemo(() => ({ intent, disabled, reverse }), [intent, disabled, reverse])\n\n return <RadioGroupContext.Provider value={value}>{children}</RadioGroupContext.Provider>\n}\n"],"mappings":"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","names":["RadioGroup","import_class_variance_authority","import_react","import_radix_ui","RadixRadioGroup","import_internal_utils","import_class_variance_authority","import_jsx_runtime","RadixRadioGroup","import_radix_ui","import_class_variance_authority","import_jsx_runtime","import_jsx_runtime","import_form_field","import_radix_ui","import_class_variance_authority","import_react","import_jsx_runtime","import_jsx_runtime","RadixRadioGroup","RadioGroup"]}
@@ -137,6 +137,7 @@ var RadioInput = ({ intent: intentProp, className, ref, ...others }) => {
137
137
  return /* @__PURE__ */ jsx2(
138
138
  RadixRadioGroup2.RadioGroupItem,
139
139
  {
140
+ "data-spark-component": "radio-input",
140
141
  ref,
141
142
  className: radioInputVariants({ intent, className }),
142
143
  ...others,
@@ -166,7 +167,14 @@ var radioLabelStyles = cva3("grow", {
166
167
  // src/radio-group/RadioLabel.tsx
167
168
  import { jsx as jsx3 } from "react/jsx-runtime";
168
169
  var RadioLabel = ({ disabled, ...others }) => {
169
- return /* @__PURE__ */ jsx3(Label.Root, { className: radioLabelStyles({ disabled }), ...others });
170
+ return /* @__PURE__ */ jsx3(
171
+ Label.Root,
172
+ {
173
+ "data-spark-component": "radio-label",
174
+ className: radioLabelStyles({ disabled }),
175
+ ...others
176
+ }
177
+ );
170
178
  };
171
179
  RadioLabel.displayName = "RadioGroup.RadioLabel";
172
180