{"version":3,"sources":["../../registry/new-york/ui/checkbox.tsx","../../../../node_modules/.pnpm/@babel+runtime@7.22.3/node_modules/@babel/runtime/helpers/esm/extends.js","../../../../node_modules/.pnpm/@radix-ui+react-compose-refs@1.0.1_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-compose-refs/dist/packages/react/compose-refs/src/composeRefs.tsx","../../../../node_modules/.pnpm/@radix-ui+react-context@1.0.1_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-context/dist/packages/react/context/src/createContext.tsx","../../../../node_modules/.pnpm/@radix-ui+primitive@1.0.1/node_modules/@radix-ui/primitive/dist/packages/core/primitive/src/primitive.tsx","../../../../node_modules/.pnpm/@radix-ui+react-use-callback-ref@1.0.1_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-use-callback-ref/dist/packages/react/use-callback-ref/src/useCallbackRef.tsx","../../../../node_modules/.pnpm/@radix-ui+react-use-controllable-state@1.0.1_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-use-controllable-state/dist/packages/react/use-controllable-state/src/useControllableState.tsx","../../../../node_modules/.pnpm/@radix-ui+react-use-previous@1.0.1_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-use-previous/dist/packages/react/use-previous/src/usePrevious.tsx","../../../../node_modules/.pnpm/@radix-ui+react-use-layout-effect@1.0.1_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-use-layout-effect/dist/packages/react/use-layout-effect/src/useLayoutEffect.tsx","../../../../node_modules/.pnpm/@radix-ui+react-use-size@1.0.1_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-use-size/dist/packages/react/use-size/src/useSize.tsx","../../../../node_modules/.pnpm/@radix-ui+react-presence@1.0.1_@types+react-dom@18.2.22_@types+react@18.2.65_react-dom@18.2.0_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-presence/dist/packages/react/presence/src/useStateMachine.tsx","../../../../node_modules/.pnpm/@radix-ui+react-presence@1.0.1_@types+react-dom@18.2.22_@types+react@18.2.65_react-dom@18.2.0_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-presence/dist/packages/react/presence/src/Presence.tsx","../../../../node_modules/.pnpm/@babel+runtime@7.22.6/node_modules/@babel/runtime/helpers/esm/extends.js","../../../../node_modules/.pnpm/@radix-ui+react-slot@1.0.2_@types+react@18.2.65_react@18.2.0/node_modules/@radix-ui/react-slot/dist/packages/react/slot/src/Slot.tsx","../../../../node_modules/.pnpm/@radix-ui+react-primitive@1.0.3_@types+react-dom@18.2.22_@types+react@18.2.65_react-dom@18.2._c26rkpxnhr3o57o2cowwo23hui/node_modules/@radix-ui/react-primitive/dist/packages/react/primitive/src/Primitive.tsx","../../../../node_modules/.pnpm/@radix-ui+react-checkbox@1.0.4_@types+react-dom@18.2.22_@types+react@18.2.65_react-dom@18.2.0_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-checkbox/dist/packages/react/checkbox/src/Checkbox.tsx","../../../../node_modules/.pnpm/@radix-ui+react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/src/CheckIcon.tsx","../../lib/utils.ts"],"names":["checkbox_exports","__export","Checkbox","__toCommonJS","React","_extends","target","i","source","key","setRef","ref","value","current","composeRefs","refs","node","forEach","useComposedRefs","createContextScope","scopeName","createContextScopeDeps","defaultContexts","createContext","rootComponentName","defaultContext","BaseContext","index","length","Provider","props","scope","children","context","Context","Object","values","$3bkAK$createElement","useContext","consumerName","undefined","Error","displayName","createScope","scopeContexts","map","contexts","composeContextScopes","scopes","baseScope","scopeHooks","useScope","overrideScopes","nextScopes","reduce","currentScope","composeEventHandlers","originalEventHandler","ourEventHandler","checkForDefaultPrevented","event","defaultPrevented","useCallbackRef","callback","callbackRef","args","_callbackRef$current","useControllableState","prop","defaultProp","onChange","uncontrolledProp","setUncontrolledProp","useUncontrolledState","isControlled","handleChange","setValue","nextValue","uncontrolledState","prevValueRef","usePrevious","previous","useLayoutEffect","globalThis","document","useSize","element","size","setSize","width","offsetWidth","height","offsetHeight","resizeObserver","ResizeObserver","entries","Array","isArray","entry","borderSizeEntry","borderSize","observe","box","unobserve","useStateMachine","initialState","machine","state","nextState","Presence","present","presence","usePresence","child","isPresent","only","setNode","stylesRef","prevPresentRef","prevAnimationNameRef","send","mounted","UNMOUNT","ANIMATION_OUT","unmountSuspended","MOUNT","ANIMATION_END","unmounted","currentAnimationName","getAnimationName","styles","wasPresent","prevAnimationName","display","handleAnimationEnd","isCurrentAnimation","includes","animationName","ReactDOM","handleAnimationStart","addEventListener","removeEventListener","getComputedStyle","Slot","forwardedRef","slotProps","childrenArray","toArray","slottable","find","isSlottable","newElement","newChildren","count","$9IrjX$createElement","$5e63c961fc1ce211$var$SlotClone","SlotClone","mergeProps","Slottable","$9IrjX$Fragment","type","childProps","overrideProps","propName","slotPropValue","childPropValue","test","filter","Boolean","join","NODES","Primitive","primitive","Node","asChild","primitiveProps","Comp","window","Symbol","for","$4q5Fq$createElement","CHECKBOX_NAME","createCheckboxContext","createCheckboxScope","CheckboxProvider","useCheckboxContext","__scopeCheckbox","name","checked","checkedProp","defaultChecked","required","disabled","onCheckedChange","checkboxProps","button","setButton","composedRefs","hasConsumerStoppedPropagationRef","isFormControl","closest","setChecked","initialCheckedStateRef","form","reset","$1bpvS$createElement","$e698a72e93240346$var$CheckboxProvider","$8927f6f2acc4f386$export$250ffa63cdc0d034","isIndeterminate","getState","onKeyDown","preventDefault","onClick","prevChecked","isPropagationStopped","stopPropagation","$e698a72e93240346$var$BubbleInput","transform","INDICATOR_NAME","CheckboxIndicator","forceMount","indicatorProps","$921a889cee6df7e8$export$99c2b779aa4e8b8b","pointerEvents","style","BubbleInput","control","bubbles","inputProps","controlSize","input","inputProto","HTMLInputElement","prototype","getOwnPropertyDescriptor","set","Event","indeterminate","call","dispatchEvent","position","opacity","margin","Root","Indicator","CheckIcon","_ref","color","_ref$color","viewBox","fill","xmlns","d","fillRule","clipRule","import_clsx","import_tailwind_merge","cn","inputs","import_jsx_runtime","className","$e698a72e93240346$export$be92b6f5f03c0fe9","$e698a72e93240346$export$adb584737d712b70"],"mappings":"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","sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\"\nimport { CheckIcon } from \"@radix-ui/react-icons\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Checkbox = React.forwardRef<\n  React.ElementRef<typeof CheckboxPrimitive.Root>,\n  React.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>\n>(({ className, ...props }, ref) => (\n  <CheckboxPrimitive.Root\n    ref={ref}\n    className={cn(\n      \"peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground\",\n      className\n    )}\n    {...props}\n  >\n    <CheckboxPrimitive.Indicator\n      className={cn(\"flex items-center justify-center text-current\")}\n    >\n      <CheckIcon className=\"h-4 w-4\" />\n    </CheckboxPrimitive.Indicator>\n  </CheckboxPrimitive.Root>\n))\nCheckbox.displayName = CheckboxPrimitive.Root.displayName\n\nexport { Checkbox }\n","export default function _extends() {\n  _extends = Object.assign ? Object.assign.bind() : function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n    return target;\n  };\n  return _extends.apply(this, arguments);\n}","import * as React from 'react';\n\ntype PossibleRef<T> = React.Ref<T> | undefined;\n\n/**\n * Set a given ref to a given value\n * This utility takes care of different types of refs: callback refs and RefObject(s)\n */\nfunction setRef<T>(ref: PossibleRef<T>, value: T) {\n  if (typeof ref === 'function') {\n    ref(value);\n  } else if (ref !== null && ref !== undefined) {\n    (ref as React.MutableRefObject<T>).current = value;\n  }\n}\n\n/**\n * A utility to compose multiple refs together\n * Accepts callback refs and RefObject(s)\n */\nfunction composeRefs<T>(...refs: PossibleRef<T>[]) {\n  return (node: T) => refs.forEach((ref) => setRef(ref, node));\n}\n\n/**\n * A custom hook that composes multiple refs\n * Accepts callback refs and RefObject(s)\n */\nfunction useComposedRefs<T>(...refs: PossibleRef<T>[]) {\n  // eslint-disable-next-line react-hooks/exhaustive-deps\n  return React.useCallback(composeRefs(...refs), refs);\n}\n\nexport { composeRefs, useComposedRefs };\n","import * as React from 'react';\n\nfunction createContext<ContextValueType extends object | null>(\n  rootComponentName: string,\n  defaultContext?: ContextValueType\n) {\n  const Context = React.createContext<ContextValueType | undefined>(defaultContext);\n\n  function Provider(props: ContextValueType & { children: React.ReactNode }) {\n    const { children, ...context } = props;\n    // Only re-memoize when prop values change\n    // eslint-disable-next-line react-hooks/exhaustive-deps\n    const value = React.useMemo(() => context, Object.values(context)) as ContextValueType;\n    return <Context.Provider value={value}>{children}</Context.Provider>;\n  }\n\n  function useContext(consumerName: string) {\n    const context = React.useContext(Context);\n    if (context) return context;\n    if (defaultContext !== undefined) return defaultContext;\n    // if a defaultContext wasn't specified, it's a required context.\n    throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n  }\n\n  Provider.displayName = rootComponentName + 'Provider';\n  return [Provider, useContext] as const;\n}\n\n/* -------------------------------------------------------------------------------------------------\n * createContextScope\n * -----------------------------------------------------------------------------------------------*/\n\ntype Scope<C = any> = { [scopeName: string]: React.Context<C>[] } | undefined;\ntype ScopeHook = (scope: Scope) => { [__scopeProp: string]: Scope };\ninterface CreateScope {\n  scopeName: string;\n  (): ScopeHook;\n}\n\nfunction createContextScope(scopeName: string, createContextScopeDeps: CreateScope[] = []) {\n  let defaultContexts: any[] = [];\n\n  /* -----------------------------------------------------------------------------------------------\n   * createContext\n   * ---------------------------------------------------------------------------------------------*/\n\n  function createContext<ContextValueType extends object | null>(\n    rootComponentName: string,\n    defaultContext?: ContextValueType\n  ) {\n    const BaseContext = React.createContext<ContextValueType | undefined>(defaultContext);\n    const index = defaultContexts.length;\n    defaultContexts = [...defaultContexts, defaultContext];\n\n    function Provider(\n      props: ContextValueType & { scope: Scope<ContextValueType>; children: React.ReactNode }\n    ) {\n      const { scope, children, ...context } = props;\n      const Context = scope?.[scopeName][index] || BaseContext;\n      // Only re-memoize when prop values change\n      // eslint-disable-next-line react-hooks/exhaustive-deps\n      const value = React.useMemo(() => context, Object.values(context)) as ContextValueType;\n      return <Context.Provider value={value}>{children}</Context.Provider>;\n    }\n\n    function useContext(consumerName: string, scope: Scope<ContextValueType | undefined>) {\n      const Context = scope?.[scopeName][index] || BaseContext;\n      const context = React.useContext(Context);\n      if (context) return context;\n      if (defaultContext !== undefined) return defaultContext;\n      // if a defaultContext wasn't specified, it's a required context.\n      throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n    }\n\n    Provider.displayName = rootComponentName + 'Provider';\n    return [Provider, useContext] as const;\n  }\n\n  /* -----------------------------------------------------------------------------------------------\n   * createScope\n   * ---------------------------------------------------------------------------------------------*/\n\n  const createScope: CreateScope = () => {\n    const scopeContexts = defaultContexts.map((defaultContext) => {\n      return React.createContext(defaultContext);\n    });\n    return function useScope(scope: Scope) {\n      const contexts = scope?.[scopeName] || scopeContexts;\n      return React.useMemo(\n        () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n        [scope, contexts]\n      );\n    };\n  };\n\n  createScope.scopeName = scopeName;\n  return [createContext, composeContextScopes(createScope, ...createContextScopeDeps)] as const;\n}\n\n/* -------------------------------------------------------------------------------------------------\n * composeContextScopes\n * -----------------------------------------------------------------------------------------------*/\n\nfunction composeContextScopes(...scopes: CreateScope[]) {\n  const baseScope = scopes[0];\n  if (scopes.length === 1) return baseScope;\n\n  const createScope: CreateScope = () => {\n    const scopeHooks = scopes.map((createScope) => ({\n      useScope: createScope(),\n      scopeName: createScope.scopeName,\n    }));\n\n    return function useComposedScopes(overrideScopes) {\n      const nextScopes = scopeHooks.reduce((nextScopes, { useScope, scopeName }) => {\n        // We are calling a hook inside a callback which React warns against to avoid inconsistent\n        // renders, however, scoping doesn't have render side effects so we ignore the rule.\n        // eslint-disable-next-line react-hooks/rules-of-hooks\n        const scopeProps = useScope(overrideScopes);\n        const currentScope = scopeProps[`__scope${scopeName}`];\n        return { ...nextScopes, ...currentScope };\n      }, {});\n\n      return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n    };\n  };\n\n  createScope.scopeName = baseScope.scopeName;\n  return createScope;\n}\n\n/* -----------------------------------------------------------------------------------------------*/\n\nexport { createContext, createContextScope };\nexport type { CreateScope, Scope };\n","function composeEventHandlers<E>(\n  originalEventHandler?: (event: E) => void,\n  ourEventHandler?: (event: E) => void,\n  { checkForDefaultPrevented = true } = {}\n) {\n  return function handleEvent(event: E) {\n    originalEventHandler?.(event);\n\n    if (checkForDefaultPrevented === false || !((event as unknown) as Event).defaultPrevented) {\n      return ourEventHandler?.(event);\n    }\n  };\n}\n\nexport { composeEventHandlers };\n","import * as React from 'react';\n\n/**\n * A custom hook that converts a callback to a ref to avoid triggering re-renders when passed as a\n * prop or avoid re-executing effects when passed as a dependency\n */\nfunction useCallbackRef<T extends (...args: any[]) => any>(callback: T | undefined): T {\n  const callbackRef = React.useRef(callback);\n\n  React.useEffect(() => {\n    callbackRef.current = callback;\n  });\n\n  // https://github.com/facebook/react/issues/19240\n  return React.useMemo(() => ((...args) => callbackRef.current?.(...args)) as T, []);\n}\n\nexport { useCallbackRef };\n","import * as React from 'react';\nimport { useCallbackRef } from '@radix-ui/react-use-callback-ref';\n\ntype UseControllableStateParams<T> = {\n  prop?: T | undefined;\n  defaultProp?: T | undefined;\n  onChange?: (state: T) => void;\n};\n\ntype SetStateFn<T> = (prevState?: T) => T;\n\nfunction useControllableState<T>({\n  prop,\n  defaultProp,\n  onChange = () => {},\n}: UseControllableStateParams<T>) {\n  const [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({ defaultProp, onChange });\n  const isControlled = prop !== undefined;\n  const value = isControlled ? prop : uncontrolledProp;\n  const handleChange = useCallbackRef(onChange);\n\n  const setValue: React.Dispatch<React.SetStateAction<T | undefined>> = React.useCallback(\n    (nextValue) => {\n      if (isControlled) {\n        const setter = nextValue as SetStateFn<T>;\n        const value = typeof nextValue === 'function' ? setter(prop) : nextValue;\n        if (value !== prop) handleChange(value as T);\n      } else {\n        setUncontrolledProp(nextValue);\n      }\n    },\n    [isControlled, prop, setUncontrolledProp, handleChange]\n  );\n\n  return [value, setValue] as const;\n}\n\nfunction useUncontrolledState<T>({\n  defaultProp,\n  onChange,\n}: Omit<UseControllableStateParams<T>, 'prop'>) {\n  const uncontrolledState = React.useState<T | undefined>(defaultProp);\n  const [value] = uncontrolledState;\n  const prevValueRef = React.useRef(value);\n  const handleChange = useCallbackRef(onChange);\n\n  React.useEffect(() => {\n    if (prevValueRef.current !== value) {\n      handleChange(value as T);\n      prevValueRef.current = value;\n    }\n  }, [value, prevValueRef, handleChange]);\n\n  return uncontrolledState;\n}\n\nexport { useControllableState };\n","import * as React from 'react';\n\nfunction usePrevious<T>(value: T) {\n  const ref = React.useRef({ value, previous: value });\n\n  // We compare values before making an update to ensure that\n  // a change has been made. This ensures the previous value is\n  // persisted correctly between renders.\n  return React.useMemo(() => {\n    if (ref.current.value !== value) {\n      ref.current.previous = ref.current.value;\n      ref.current.value = value;\n    }\n    return ref.current.previous;\n  }, [value]);\n}\n\nexport { usePrevious };\n","import * as React from 'react';\n\n/**\n * On the server, React emits a warning when calling `useLayoutEffect`.\n * This is because neither `useLayoutEffect` nor `useEffect` run on the server.\n * We use this safe version which suppresses the warning by replacing it with a noop on the server.\n *\n * See: https://reactjs.org/docs/hooks-reference.html#uselayouteffect\n */\nconst useLayoutEffect = Boolean(globalThis?.document) ? React.useLayoutEffect : () => {};\n\nexport { useLayoutEffect };\n","/// <reference types=\"resize-observer-browser\" />\n\nimport * as React from 'react';\nimport { useLayoutEffect } from '@radix-ui/react-use-layout-effect';\n\nfunction useSize(element: HTMLElement | null) {\n  const [size, setSize] = React.useState<{ width: number; height: number } | undefined>(undefined);\n\n  useLayoutEffect(() => {\n    if (element) {\n      // provide size as early as possible\n      setSize({ width: element.offsetWidth, height: element.offsetHeight });\n\n      const resizeObserver = new ResizeObserver((entries) => {\n        if (!Array.isArray(entries)) {\n          return;\n        }\n\n        // Since we only observe the one element, we don't need to loop over the\n        // array\n        if (!entries.length) {\n          return;\n        }\n\n        const entry = entries[0];\n        let width: number;\n        let height: number;\n\n        if ('borderBoxSize' in entry) {\n          const borderSizeEntry = entry['borderBoxSize'];\n          // iron out differences between browsers\n          const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;\n          width = borderSize['inlineSize'];\n          height = borderSize['blockSize'];\n        } else {\n          // for browsers that don't support `borderBoxSize`\n          // we calculate it ourselves to get the correct border box.\n          width = element.offsetWidth;\n          height = element.offsetHeight;\n        }\n\n        setSize({ width, height });\n      });\n\n      resizeObserver.observe(element, { box: 'border-box' });\n\n      return () => resizeObserver.unobserve(element);\n    } else {\n      // We only want to reset to `undefined` when the element becomes `null`,\n      // not if it changes to another element.\n      setSize(undefined);\n    }\n  }, [element]);\n\n  return size;\n}\n\nexport { useSize };\n","import * as React from 'react';\n\ntype Machine<S> = { [k: string]: { [k: string]: S } };\ntype MachineState<T> = keyof T;\ntype MachineEvent<T> = keyof UnionToIntersection<T[keyof T]>;\n\n// 🤯 https://fettblog.eu/typescript-union-to-intersection/\ntype UnionToIntersection<T> = (T extends any ? (x: T) => any : never) extends (x: infer R) => any\n  ? R\n  : never;\n\nexport function useStateMachine<M>(\n  initialState: MachineState<M>,\n  machine: M & Machine<MachineState<M>>\n) {\n  return React.useReducer((state: MachineState<M>, event: MachineEvent<M>): MachineState<M> => {\n    const nextState = (machine[state] as any)[event];\n    return nextState ?? state;\n  }, initialState);\n}\n","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { useLayoutEffect } from '@radix-ui/react-use-layout-effect';\nimport { useStateMachine } from './useStateMachine';\n\ninterface PresenceProps {\n  children: React.ReactElement | ((props: { present: boolean }) => React.ReactElement);\n  present: boolean;\n}\n\nconst Presence: React.FC<PresenceProps> = (props) => {\n  const { present, children } = props;\n  const presence = usePresence(present);\n\n  const child = (\n    typeof children === 'function'\n      ? children({ present: presence.isPresent })\n      : React.Children.only(children)\n  ) as React.ReactElement;\n\n  const ref = useComposedRefs(presence.ref, (child as any).ref);\n  const forceMount = typeof children === 'function';\n  return forceMount || presence.isPresent ? React.cloneElement(child, { ref }) : null;\n};\n\nPresence.displayName = 'Presence';\n\n/* -------------------------------------------------------------------------------------------------\n * usePresence\n * -----------------------------------------------------------------------------------------------*/\n\nfunction usePresence(present: boolean) {\n  const [node, setNode] = React.useState<HTMLElement>();\n  const stylesRef = React.useRef<CSSStyleDeclaration>({} as any);\n  const prevPresentRef = React.useRef(present);\n  const prevAnimationNameRef = React.useRef<string>('none');\n  const initialState = present ? 'mounted' : 'unmounted';\n  const [state, send] = useStateMachine(initialState, {\n    mounted: {\n      UNMOUNT: 'unmounted',\n      ANIMATION_OUT: 'unmountSuspended',\n    },\n    unmountSuspended: {\n      MOUNT: 'mounted',\n      ANIMATION_END: 'unmounted',\n    },\n    unmounted: {\n      MOUNT: 'mounted',\n    },\n  });\n\n  React.useEffect(() => {\n    const currentAnimationName = getAnimationName(stylesRef.current);\n    prevAnimationNameRef.current = state === 'mounted' ? currentAnimationName : 'none';\n  }, [state]);\n\n  useLayoutEffect(() => {\n    const styles = stylesRef.current;\n    const wasPresent = prevPresentRef.current;\n    const hasPresentChanged = wasPresent !== present;\n\n    if (hasPresentChanged) {\n      const prevAnimationName = prevAnimationNameRef.current;\n      const currentAnimationName = getAnimationName(styles);\n\n      if (present) {\n        send('MOUNT');\n      } else if (currentAnimationName === 'none' || styles?.display === 'none') {\n        // If there is no exit animation or the element is hidden, animations won't run\n        // so we unmount instantly\n        send('UNMOUNT');\n      } else {\n        /**\n         * When `present` changes to `false`, we check changes to animation-name to\n         * determine whether an animation has started. We chose this approach (reading\n         * computed styles) because there is no `animationrun` event and `animationstart`\n         * fires after `animation-delay` has expired which would be too late.\n         */\n        const isAnimating = prevAnimationName !== currentAnimationName;\n\n        if (wasPresent && isAnimating) {\n          send('ANIMATION_OUT');\n        } else {\n          send('UNMOUNT');\n        }\n      }\n\n      prevPresentRef.current = present;\n    }\n  }, [present, send]);\n\n  useLayoutEffect(() => {\n    if (node) {\n      /**\n       * Triggering an ANIMATION_OUT during an ANIMATION_IN will fire an `animationcancel`\n       * event for ANIMATION_IN after we have entered `unmountSuspended` state. So, we\n       * make sure we only trigger ANIMATION_END for the currently active animation.\n       */\n      const handleAnimationEnd = (event: AnimationEvent) => {\n        const currentAnimationName = getAnimationName(stylesRef.current);\n        const isCurrentAnimation = currentAnimationName.includes(event.animationName);\n        if (event.target === node && isCurrentAnimation) {\n          // With React 18 concurrency this update is applied\n          // a frame after the animation ends, creating a flash of visible content.\n          // By manually flushing we ensure they sync within a frame, removing the flash.\n          ReactDOM.flushSync(() => send('ANIMATION_END'));\n        }\n      };\n      const handleAnimationStart = (event: AnimationEvent) => {\n        if (event.target === node) {\n          // if animation occurred, store its name as the previous animation.\n          prevAnimationNameRef.current = getAnimationName(stylesRef.current);\n        }\n      };\n      node.addEventListener('animationstart', handleAnimationStart);\n      node.addEventListener('animationcancel', handleAnimationEnd);\n      node.addEventListener('animationend', handleAnimationEnd);\n      return () => {\n        node.removeEventListener('animationstart', handleAnimationStart);\n        node.removeEventListener('animationcancel', handleAnimationEnd);\n        node.removeEventListener('animationend', handleAnimationEnd);\n      };\n    } else {\n      // Transition to the unmounted state if the node is removed prematurely.\n      // We avoid doing so during cleanup as the node may change but still exist.\n      send('ANIMATION_END');\n    }\n  }, [node, send]);\n\n  return {\n    isPresent: ['mounted', 'unmountSuspended'].includes(state),\n    ref: React.useCallback((node: HTMLElement) => {\n      if (node) stylesRef.current = getComputedStyle(node);\n      setNode(node);\n    }, []),\n  };\n}\n\n/* -----------------------------------------------------------------------------------------------*/\n\nfunction getAnimationName(styles?: CSSStyleDeclaration) {\n  return styles?.animationName || 'none';\n}\n\nexport { Presence };\nexport type { PresenceProps };\n","export default function _extends() {\n  _extends = Object.assign ? Object.assign.bind() : function (target) {\n    for (var i = 1; i < arguments.length; i++) {\n      var source = arguments[i];\n      for (var key in source) {\n        if (Object.prototype.hasOwnProperty.call(source, key)) {\n          target[key] = source[key];\n        }\n      }\n    }\n    return target;\n  };\n  return _extends.apply(this, arguments);\n}","import * as React from 'react';\nimport { composeRefs } from '@radix-ui/react-compose-refs';\n\n/* -------------------------------------------------------------------------------------------------\n * Slot\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SlotProps extends React.HTMLAttributes<HTMLElement> {\n  children?: React.ReactNode;\n}\n\nconst Slot = React.forwardRef<HTMLElement, SlotProps>((props, forwardedRef) => {\n  const { children, ...slotProps } = props;\n  const childrenArray = React.Children.toArray(children);\n  const slottable = childrenArray.find(isSlottable);\n\n  if (slottable) {\n    // the new element to render is the one passed as a child of `Slottable`\n    const newElement = slottable.props.children as React.ReactNode;\n\n    const newChildren = childrenArray.map((child) => {\n      if (child === slottable) {\n        // because the new element will be the one rendered, we are only interested\n        // in grabbing its children (`newElement.props.children`)\n        if (React.Children.count(newElement) > 1) return React.Children.only(null);\n        return React.isValidElement(newElement)\n          ? (newElement.props.children as React.ReactNode)\n          : null;\n      } else {\n        return child;\n      }\n    });\n\n    return (\n      <SlotClone {...slotProps} ref={forwardedRef}>\n        {React.isValidElement(newElement)\n          ? React.cloneElement(newElement, undefined, newChildren)\n          : null}\n      </SlotClone>\n    );\n  }\n\n  return (\n    <SlotClone {...slotProps} ref={forwardedRef}>\n      {children}\n    </SlotClone>\n  );\n});\n\nSlot.displayName = 'Slot';\n\n/* -------------------------------------------------------------------------------------------------\n * SlotClone\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SlotCloneProps {\n  children: React.ReactNode;\n}\n\nconst SlotClone = React.forwardRef<any, SlotCloneProps>((props, forwardedRef) => {\n  const { children, ...slotProps } = props;\n\n  if (React.isValidElement(children)) {\n    return React.cloneElement(children, {\n      ...mergeProps(slotProps, children.props),\n      ref: forwardedRef ? composeRefs(forwardedRef, (children as any).ref) : (children as any).ref,\n    });\n  }\n\n  return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n});\n\nSlotClone.displayName = 'SlotClone';\n\n/* -------------------------------------------------------------------------------------------------\n * Slottable\n * -----------------------------------------------------------------------------------------------*/\n\nconst Slottable = ({ children }: { children: React.ReactNode }) => {\n  return <>{children}</>;\n};\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype AnyProps = Record<string, any>;\n\nfunction isSlottable(child: React.ReactNode): child is React.ReactElement {\n  return React.isValidElement(child) && child.type === Slottable;\n}\n\nfunction mergeProps(slotProps: AnyProps, childProps: AnyProps) {\n  // all child props should override\n  const overrideProps = { ...childProps };\n\n  for (const propName in childProps) {\n    const slotPropValue = slotProps[propName];\n    const childPropValue = childProps[propName];\n\n    const isHandler = /^on[A-Z]/.test(propName);\n    if (isHandler) {\n      // if the handler exists on both, we compose them\n      if (slotPropValue && childPropValue) {\n        overrideProps[propName] = (...args: unknown[]) => {\n          childPropValue(...args);\n          slotPropValue(...args);\n        };\n      }\n      // but if it exists only on the slot, we use only this one\n      else if (slotPropValue) {\n        overrideProps[propName] = slotPropValue;\n      }\n    }\n    // if it's `style`, we merge them\n    else if (propName === 'style') {\n      overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n    } else if (propName === 'className') {\n      overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(' ');\n    }\n  }\n\n  return { ...slotProps, ...overrideProps };\n}\n\nconst Root = Slot;\n\nexport {\n  Slot,\n  Slottable,\n  //\n  Root,\n};\nexport type { SlotProps };\n","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { Slot } from '@radix-ui/react-slot';\n\nconst NODES = [\n  'a',\n  'button',\n  'div',\n  'form',\n  'h2',\n  'h3',\n  'img',\n  'input',\n  'label',\n  'li',\n  'nav',\n  'ol',\n  'p',\n  'span',\n  'svg',\n  'ul',\n] as const;\n\n// Temporary while we await merge of this fix:\n// https://github.com/DefinitelyTyped/DefinitelyTyped/pull/55396\n// prettier-ignore\ntype PropsWithoutRef<P> = P extends any ? ('ref' extends keyof P ? Pick<P, Exclude<keyof P, 'ref'>> : P) : P;\ntype ComponentPropsWithoutRef<T extends React.ElementType> = PropsWithoutRef<\n  React.ComponentProps<T>\n>;\n\ntype Primitives = { [E in typeof NODES[number]]: PrimitiveForwardRefComponent<E> };\ntype PrimitivePropsWithRef<E extends React.ElementType> = React.ComponentPropsWithRef<E> & {\n  asChild?: boolean;\n};\n\ninterface PrimitiveForwardRefComponent<E extends React.ElementType>\n  extends React.ForwardRefExoticComponent<PrimitivePropsWithRef<E>> {}\n\n/* -------------------------------------------------------------------------------------------------\n * Primitive\n * -----------------------------------------------------------------------------------------------*/\n\nconst Primitive = NODES.reduce((primitive, node) => {\n  const Node = React.forwardRef((props: PrimitivePropsWithRef<typeof node>, forwardedRef: any) => {\n    const { asChild, ...primitiveProps } = props;\n    const Comp: any = asChild ? Slot : node;\n\n    React.useEffect(() => {\n      (window as any)[Symbol.for('radix-ui')] = true;\n    }, []);\n\n    return <Comp {...primitiveProps} ref={forwardedRef} />;\n  });\n\n  Node.displayName = `Primitive.${node}`;\n\n  return { ...primitive, [node]: Node };\n}, {} as Primitives);\n\n/* -------------------------------------------------------------------------------------------------\n * Utils\n * -----------------------------------------------------------------------------------------------*/\n\n/**\n * Flush custom event dispatch\n * https://github.com/radix-ui/primitives/pull/1378\n *\n * React batches *all* event handlers since version 18, this introduces certain considerations when using custom event types.\n *\n * Internally, React prioritises events in the following order:\n *  - discrete\n *  - continuous\n *  - default\n *\n * https://github.com/facebook/react/blob/a8a4742f1c54493df00da648a3f9d26e3db9c8b5/packages/react-dom/src/events/ReactDOMEventListener.js#L294-L350\n *\n * `discrete` is an  important distinction as updates within these events are applied immediately.\n * React however, is not able to infer the priority of custom event types due to how they are detected internally.\n * Because of this, it's possible for updates from custom events to be unexpectedly batched when\n * dispatched by another `discrete` event.\n *\n * In order to ensure that updates from custom events are applied predictably, we need to manually flush the batch.\n * This utility should be used when dispatching a custom event from within another `discrete` event, this utility\n * is not nessesary when dispatching known event types, or if dispatching a custom type inside a non-discrete event.\n * For example:\n *\n * dispatching a known click 👎\n * target.dispatchEvent(new Event(‘click’))\n *\n * dispatching a custom type within a non-discrete event 👎\n * onScroll={(event) => event.target.dispatchEvent(new CustomEvent(‘customType’))}\n *\n * dispatching a custom type within a `discrete` event 👍\n * onPointerDown={(event) => dispatchDiscreteCustomEvent(event.target, new CustomEvent(‘customType’))}\n *\n * Note: though React classifies `focus`, `focusin` and `focusout` events as `discrete`, it's  not recommended to use\n * this utility with them. This is because it's possible for those handlers to be called implicitly during render\n * e.g. when focus is within a component as it is unmounted, or when managing focus on mount.\n */\n\nfunction dispatchDiscreteCustomEvent<E extends CustomEvent>(target: E['target'], event: E) {\n  if (target) ReactDOM.flushSync(() => target.dispatchEvent(event));\n}\n\n/* -----------------------------------------------------------------------------------------------*/\n\nconst Root = Primitive;\n\nexport {\n  Primitive,\n  //\n  Root,\n  //\n  dispatchDiscreteCustomEvent,\n};\nexport type { ComponentPropsWithoutRef, PrimitivePropsWithRef };\n","import * as React from 'react';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { usePrevious } from '@radix-ui/react-use-previous';\nimport { useSize } from '@radix-ui/react-use-size';\nimport { Presence } from '@radix-ui/react-presence';\nimport { Primitive } from '@radix-ui/react-primitive';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Checkbox\n * -----------------------------------------------------------------------------------------------*/\n\nconst CHECKBOX_NAME = 'Checkbox';\n\ntype ScopedProps<P> = P & { __scopeCheckbox?: Scope };\nconst [createCheckboxContext, createCheckboxScope] = createContextScope(CHECKBOX_NAME);\n\ntype CheckedState = boolean | 'indeterminate';\n\ntype CheckboxContextValue = {\n  state: CheckedState;\n  disabled?: boolean;\n};\n\nconst [CheckboxProvider, useCheckboxContext] =\n  createCheckboxContext<CheckboxContextValue>(CHECKBOX_NAME);\n\ntype CheckboxElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface CheckboxProps extends Omit<PrimitiveButtonProps, 'checked' | 'defaultChecked'> {\n  checked?: CheckedState;\n  defaultChecked?: CheckedState;\n  required?: boolean;\n  onCheckedChange?(checked: CheckedState): void;\n}\n\nconst Checkbox = React.forwardRef<CheckboxElement, CheckboxProps>(\n  (props: ScopedProps<CheckboxProps>, forwardedRef) => {\n    const {\n      __scopeCheckbox,\n      name,\n      checked: checkedProp,\n      defaultChecked,\n      required,\n      disabled,\n      value = 'on',\n      onCheckedChange,\n      ...checkboxProps\n    } = props;\n    const [button, setButton] = React.useState<HTMLButtonElement | null>(null);\n    const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));\n    const hasConsumerStoppedPropagationRef = React.useRef(false);\n    // We set this to true by default so that events bubble to forms without JS (SSR)\n    const isFormControl = button ? Boolean(button.closest('form')) : true;\n    const [checked = false, setChecked] = useControllableState({\n      prop: checkedProp,\n      defaultProp: defaultChecked,\n      onChange: onCheckedChange,\n    });\n    const initialCheckedStateRef = React.useRef(checked);\n    React.useEffect(() => {\n      const form = button?.form;\n      if (form) {\n        const reset = () => setChecked(initialCheckedStateRef.current);\n        form.addEventListener('reset', reset);\n        return () => form.removeEventListener('reset', reset);\n      }\n    }, [button, setChecked]);\n\n    return (\n      <CheckboxProvider scope={__scopeCheckbox} state={checked} disabled={disabled}>\n        <Primitive.button\n          type=\"button\"\n          role=\"checkbox\"\n          aria-checked={isIndeterminate(checked) ? 'mixed' : checked}\n          aria-required={required}\n          data-state={getState(checked)}\n          data-disabled={disabled ? '' : undefined}\n          disabled={disabled}\n          value={value}\n          {...checkboxProps}\n          ref={composedRefs}\n          onKeyDown={composeEventHandlers(props.onKeyDown, (event) => {\n            // According to WAI ARIA, Checkboxes don't activate on enter keypress\n            if (event.key === 'Enter') event.preventDefault();\n          })}\n          onClick={composeEventHandlers(props.onClick, (event) => {\n            setChecked((prevChecked) => (isIndeterminate(prevChecked) ? true : !prevChecked));\n            if (isFormControl) {\n              hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();\n              // if checkbox is in a form, stop propagation from the button so that we only propagate\n              // one click event (from the input). We propagate changes from an input so that native\n              // form validation works and form events reflect checkbox updates.\n              if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();\n            }\n          })}\n        />\n        {isFormControl && (\n          <BubbleInput\n            control={button}\n            bubbles={!hasConsumerStoppedPropagationRef.current}\n            name={name}\n            value={value}\n            checked={checked}\n            required={required}\n            disabled={disabled}\n            // We transform because the input is absolutely positioned but we have\n            // rendered it **after** the button. This pulls it back to sit on top\n            // of the button.\n            style={{ transform: 'translateX(-100%)' }}\n          />\n        )}\n      </CheckboxProvider>\n    );\n  }\n);\n\nCheckbox.displayName = CHECKBOX_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * CheckboxIndicator\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDICATOR_NAME = 'CheckboxIndicator';\n\ntype CheckboxIndicatorElement = React.ElementRef<typeof Primitive.span>;\ntype PrimitiveSpanProps = Radix.ComponentPropsWithoutRef<typeof Primitive.span>;\ninterface CheckboxIndicatorProps extends PrimitiveSpanProps {\n  /**\n   * Used to force mounting when more control is needed. Useful when\n   * controlling animation with React animation libraries.\n   */\n  forceMount?: true;\n}\n\nconst CheckboxIndicator = React.forwardRef<CheckboxIndicatorElement, CheckboxIndicatorProps>(\n  (props: ScopedProps<CheckboxIndicatorProps>, forwardedRef) => {\n    const { __scopeCheckbox, forceMount, ...indicatorProps } = props;\n    const context = useCheckboxContext(INDICATOR_NAME, __scopeCheckbox);\n    return (\n      <Presence present={forceMount || isIndeterminate(context.state) || context.state === true}>\n        <Primitive.span\n          data-state={getState(context.state)}\n          data-disabled={context.disabled ? '' : undefined}\n          {...indicatorProps}\n          ref={forwardedRef}\n          style={{ pointerEvents: 'none', ...props.style }}\n        />\n      </Presence>\n    );\n  }\n);\n\nCheckboxIndicator.displayName = INDICATOR_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype InputProps = Radix.ComponentPropsWithoutRef<'input'>;\ninterface BubbleInputProps extends Omit<InputProps, 'checked'> {\n  checked: CheckedState;\n  control: HTMLElement | null;\n  bubbles: boolean;\n}\n\nconst BubbleInput = (props: BubbleInputProps) => {\n  const { control, checked, bubbles = true, ...inputProps } = props;\n  const ref = React.useRef<HTMLInputElement>(null);\n  const prevChecked = usePrevious(checked);\n  const controlSize = useSize(control);\n\n  // Bubble checked change to parents (e.g form change event)\n  React.useEffect(() => {\n    const input = ref.current!;\n    const inputProto = window.HTMLInputElement.prototype;\n    const descriptor = Object.getOwnPropertyDescriptor(inputProto, 'checked') as PropertyDescriptor;\n    const setChecked = descriptor.set;\n\n    if (prevChecked !== checked && setChecked) {\n      const event = new Event('click', { bubbles });\n      input.indeterminate = isIndeterminate(checked);\n      setChecked.call(input, isIndeterminate(checked) ? false : checked);\n      input.dispatchEvent(event);\n    }\n  }, [prevChecked, checked, bubbles]);\n\n  return (\n    <input\n      type=\"checkbox\"\n      aria-hidden\n      defaultChecked={isIndeterminate(checked) ? false : checked}\n      {...inputProps}\n      tabIndex={-1}\n      ref={ref}\n      style={{\n        ...props.style,\n        ...controlSize,\n        position: 'absolute',\n        pointerEvents: 'none',\n        opacity: 0,\n        margin: 0,\n      }}\n    />\n  );\n};\n\nfunction isIndeterminate(checked?: CheckedState): checked is 'indeterminate' {\n  return checked === 'indeterminate';\n}\n\nfunction getState(checked: CheckedState) {\n  return isIndeterminate(checked) ? 'indeterminate' : checked ? 'checked' : 'unchecked';\n}\n\nconst Root = Checkbox;\nconst Indicator = CheckboxIndicator;\n\nexport {\n  createCheckboxScope,\n  //\n  Checkbox,\n  CheckboxIndicator,\n  //\n  Root,\n  Indicator,\n};\nexport type { CheckboxProps, CheckboxIndicatorProps };\n","import * as React from 'react';\nimport { IconProps } from './types';\n\nexport const CheckIcon = React.forwardRef<SVGSVGElement, IconProps>(\n  ({ color = 'currentColor', ...props }, forwardedRef) => {\n    return (\n      <svg\n        width=\"15\"\n        height=\"15\"\n        viewBox=\"0 0 15 15\"\n        fill=\"none\"\n        xmlns=\"http://www.w3.org/2000/svg\"\n        {...props}\n        ref={forwardedRef}\n      >\n        <path\n          d=\"M11.4669 3.72684C11.7558 3.91574 11.8369 4.30308 11.648 4.59198L7.39799 11.092C7.29783 11.2452 7.13556 11.3467 6.95402 11.3699C6.77247 11.3931 6.58989 11.3355 6.45446 11.2124L3.70446 8.71241C3.44905 8.48022 3.43023 8.08494 3.66242 7.82953C3.89461 7.57412 4.28989 7.55529 4.5453 7.78749L6.75292 9.79441L10.6018 3.90792C10.7907 3.61902 11.178 3.53795 11.4669 3.72684Z\"\n          fill={color}\n          fillRule=\"evenodd\"\n          clipRule=\"evenodd\"\n        />\n      </svg>\n    );\n  }\n);\n\nexport default CheckIcon;\n","import * as React from \"react\"\nimport { clsx, type ClassValue } from \"clsx\"\nimport { twMerge } from \"tailwind-merge\"\n\nexport function cn(...inputs: ClassValue[]) {\n  return twMerge(clsx(inputs))\n}\n\nexport function formatDate(input: string | number): string {\n  const date = new Date(input)\n  return date.toLocaleDateString(\"en-US\", {\n    month: \"long\",\n    day: \"numeric\",\n    year: \"numeric\",\n  })\n}\n\nexport function absoluteUrl(path: string) {\n  return `${process.env.NEXT_PUBLIC_APP_URL}${path}`\n}\n"]}