@opexa/portal-components 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/ui.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/lib/ui/index.ts","../src/lib/ui/AlertDialog/AlertDialog.tsx","../src/lib/utils/createRecipeContext.tsx","../src/lib/utils/createSplitProps.ts","../src/lib/ui/AlertDialog/alertDialog.recipe.ts","../src/lib/utils/anatomyToRecipeSlots.ts","../src/lib/ui/Avatar/Avatar.tsx","../src/lib/ui/Avatar/avatar.recipe.ts","../src/lib/ui/Badge/Badge.tsx","../src/lib/ui/Badge/badge.anatomy.ts","../src/lib/ui/Badge/badge.recipe.ts","../src/lib/ui/Button/Button.tsx","../src/lib/utils/dataAttr.ts","../src/lib/ui/Button/button.recipe.ts","../src/lib/ui/Checkbox/Checkbox.tsx","../src/lib/ui/Checkbox/checkbox.recipe.ts","../src/lib/ui/Combobox/Combobox.tsx","../src/lib/ui/DatePicker/DatePicker.tsx","../src/lib/ui/DatePicker/datePicker.recipe.ts","../src/lib/ui/Dialog/Dialog.tsx","../src/lib/ui/Dialog/dialog.recipe.ts","../src/lib/ui/Drawer/Drawer.tsx","../src/lib/ui/Drawer/drawer.recipe.ts","../src/lib/ui/Field/Field.tsx","../src/lib/ui/Field/field.recipe.ts","../src/lib/ui/IconButton/IconButton.tsx","../src/lib/ui/IconButton/iconButton.recipe.ts","../src/lib/ui/Menu/Menu.tsx","../src/lib/ui/NumberInput/NumberInput.tsx","../src/lib/ui/NumberInput/numberInput.recipe.ts","../src/lib/ui/PinInput/PinInput.tsx","../src/lib/ui/PinInput/pinInput.recipe.ts","../src/lib/ui/Popover/Popover.tsx","../src/lib/ui/Popover/popover.recipe.ts","../src/lib/ui/Progress/Progress.tsx","../src/lib/ui/SegmentGroup/SegmentGroup.tsx","../src/lib/ui/SegmentGroup/segmentGroup.recipe.ts","../src/lib/ui/Select/Select.tsx","../src/lib/ui/Select/select.recipe.ts","../src/lib/ui/Table/Table.tsx","../src/lib/ui/Table/table.recipe.ts","../src/lib/ui/Table/table.anatomy.ts","../src/lib/ui/Tabs/Tabs.tsx","../src/lib/ui/Tabs/tabs.recipe.ts","../src/lib/ui/Tooltip/Tooltip.tsx"],"sourcesContent":["export * from './AlertDialog';\r\nexport * from './Avatar';\r\nexport * from './Badge';\r\nexport * from './Button';\r\nexport * from './Checkbox';\r\nexport * from './Combobox';\r\nexport * from './DatePicker';\r\nexport * from './Dialog';\r\nexport * from './Drawer';\r\nexport * from './Field';\r\nexport * from './IconButton';\r\nexport * from './Menu';\r\nexport * from './NumberInput';\r\nexport * from './PinInput';\r\nexport * from './Popover';\r\nexport * from './Progress';\r\nexport * from './SegmentGroup';\r\nexport * from './Select';\r\nexport * from './Table';\r\nexport * from './Tabs';\r\nexport * from './Tooltip';\r\n","'use client';\r\n\r\nimport { ark, Dialog } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { alertDialogRecipe } from './alertDialog.recipe';\r\n\r\nconst { withContext, withRootProvider } =\r\n createRecipeContext(alertDialogRecipe);\r\n\r\nexport const Root = withRootProvider(Dialog.Root);\r\nexport const Backdrop = withContext(Dialog.Backdrop, 'backdrop');\r\nexport const CloseTrigger = withContext(Dialog.CloseTrigger, 'closeTrigger');\r\nexport const Content = withContext(Dialog.Content, 'content');\r\nexport const Description = withContext(Dialog.Description, 'description');\r\nexport const Positioner = withContext(Dialog.Positioner, 'positioner');\r\nexport const Title = withContext(Dialog.Title, 'title');\r\nexport const Trigger = withContext(Dialog.Trigger, 'trigger');\r\nexport const Header = withContext(ark.section, 'header');\r\nexport const Body = withContext(ark.section, 'body');\r\nexport const Footer = withContext(ark.section, 'footer');\r\nexport const Context = Dialog.Context;\r\n","import type { Assign } from '@ark-ui/react';\r\nimport * as React from 'react';\r\nimport type { VariantProps } from 'tailwind-variants';\r\nimport { createSplitProps } from './createSplitProps';\r\n\r\n/* eslint-disable-next-line @typescript-eslint/no-explicit-any */\r\ntype GenericProps = Record<string, any>;\r\ntype GenericRecipeEntries = Record<string, (props: GenericProps) => string>;\r\ntype GenericRecipe = {\r\n (props: GenericProps): GenericRecipeEntries;\r\n variantKeys: (string | number | never)[];\r\n};\r\n\r\nexport function createRecipeContext<\r\n Recipe extends GenericRecipe = GenericRecipe,\r\n RecipeProps extends GenericProps = VariantProps<Recipe>,\r\n RecipeEntries extends GenericRecipeEntries = ReturnType<Recipe>,\r\n RecipeEntry = keyof RecipeEntries,\r\n>(recipe: Recipe) {\r\n const RecipeContext = React.createContext<GenericRecipeEntries | null>(null);\r\n\r\n function useContext() {\r\n const context = React.useContext(RecipeContext);\r\n return context;\r\n }\r\n\r\n function withRootProvider<Props extends GenericProps>(Component: React.ComponentType<Props>) {\r\n const StyledComponent = (props: Props) => {\r\n const [recipeProps, localProps] = createSplitProps(recipe.variantKeys)(props);\r\n const context = recipe(recipeProps);\r\n\r\n return (\r\n <RecipeContext.Provider value={context}>\r\n <Component {...(localProps as Props)} />\r\n </RecipeContext.Provider>\r\n );\r\n };\r\n\r\n return StyledComponent as React.ComponentType<Assign<Props, RecipeProps>>;\r\n }\r\n\r\n function withProvider<Props extends GenericProps>(\r\n Component: React.ComponentType<Props>,\r\n slot: RecipeEntry,\r\n ) {\r\n const StyledComponent = (props: GenericProps) => {\r\n const [recipeProps, localProps] = createSplitProps(recipe.variantKeys)(props);\r\n const context = recipe(recipeProps);\r\n const slotName = slot as string;\r\n const getStyle = context[slotName];\r\n const userDefinedClassName =\r\n 'className' in localProps && typeof localProps.className === 'string'\r\n ? localProps.className\r\n : undefined;\r\n const className = !getStyle\r\n ? userDefinedClassName\r\n : getStyle({\r\n ...recipeProps,\r\n className: userDefinedClassName,\r\n });\r\n\r\n return (\r\n <RecipeContext.Provider value={context}>\r\n <Component {...(localProps as Props)} className={className} />\r\n </RecipeContext.Provider>\r\n );\r\n };\r\n\r\n StyledComponent.displayName = Component.displayName || Component.name;\r\n\r\n return StyledComponent as React.ComponentType<Assign<Props, RecipeProps>>;\r\n }\r\n\r\n function withContext<Props extends GenericProps>(\r\n Component: React.ComponentType<Props>,\r\n slot: RecipeEntry,\r\n ) {\r\n const StyledComponent = (props: GenericProps) => {\r\n const context = useContext();\r\n const [recipeProps, localProps] = createSplitProps(recipe.variantKeys)(props);\r\n const slotName = slot as string;\r\n const getStyle = !context ? recipe(recipeProps)[slotName] : context[slotName];\r\n const userDefinedClassName =\r\n 'className' in localProps && typeof localProps.className === 'string'\r\n ? localProps.className\r\n : undefined;\r\n const className = !getStyle\r\n ? userDefinedClassName\r\n : getStyle({\r\n ...recipeProps,\r\n className: userDefinedClassName,\r\n });\r\n\r\n return <Component {...(localProps as Props)} className={className} />;\r\n };\r\n\r\n StyledComponent.displayName = Component.displayName || Component.name;\r\n\r\n return StyledComponent as React.ComponentType<Assign<Props, RecipeProps>>;\r\n }\r\n\r\n return {\r\n withRootProvider,\r\n withProvider,\r\n withContext,\r\n };\r\n}\r\n","/* eslint-disable-next-line @typescript-eslint/no-explicit-any */\r\ntype GenericProps = Record<string, any>;\r\n\r\nfunction splitProps<T extends GenericProps>(props: T, keys: (keyof T)[]) {\r\n const rest: GenericProps = {};\r\n const result: GenericProps = {};\r\n\r\n const keySet = new Set(keys);\r\n\r\n for (const key in props) {\r\n if (keySet.has(key)) {\r\n result[key] = props[key];\r\n } else {\r\n rest[key] = props[key];\r\n }\r\n }\r\n\r\n return [result, rest];\r\n}\r\n\r\nexport function createSplitProps<T extends GenericProps>(keys: (keyof T)[]) {\r\n return function split<Props extends T>(props: Props) {\r\n return splitProps(props, keys) as [T, Omit<Props, keyof T>];\r\n };\r\n}\r\n","import { dialogAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nconst anatomy = dialogAnatomy.extendWith('header', 'body', 'footer');\r\n\r\nexport const alertDialogRecipe = tv({\r\n slots: anatomyToRecipeSlots(anatomy, {\r\n backdrop:\r\n 'z-backdrop ui-open:animate-backdrop-in ui-closed:animate-backdrop-out fixed inset-0 bg-black/50',\r\n positioner: 'z-dialog fixed inset-0 flex items-center justify-center',\r\n content:\r\n 'ui-open:animate-alertdialog-in ui-closed:animate-alertdialog-out relative w-[400px] max-w-[90vw] rounded-xl bg-white p-3xl shadow-xl',\r\n header: 'flex items-start justify-between',\r\n body: 'mt-xl',\r\n title: 'text-lg font-semibold',\r\n description: 'text-gray-600 mt-xs text-sm',\r\n closeTrigger: 'text-gray-400 icon:size-6',\r\n footer: 'mt-4xl flex items-center justify-center gap-lg',\r\n }),\r\n});\r\n","import type { AnatomyInstance } from '@ark-ui/anatomy';\r\n\r\n/**\r\n * Converts a component anatomy into a valid tailwind variant slot recipe\r\n * and optionally, accepts initial base styles.\r\n */\r\nexport function anatomyToRecipeSlots<T extends string>(\r\n anatomy: AnatomyInstance<T>,\r\n baseStyles: Partial<Record<T, string | string[]>> = {},\r\n) {\r\n const styles = anatomy.keys().reduce<Partial<Record<T, string | string[]>>>((acc, key) => {\r\n acc[key] = baseStyles[key] ?? '';\r\n return acc;\r\n }, {});\r\n\r\n return styles as Record<T, string | string[]>;\r\n}\r\n","'use client';\r\n\r\nimport { Avatar } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { avatarRecipe } from './avatar.recipe';\r\n\r\nconst { withContext, withProvider } = createRecipeContext(avatarRecipe);\r\n\r\nexport const Root = withProvider(Avatar.Root, 'root');\r\nexport const Image = withContext(Avatar.Image, 'image');\r\nexport const Fallback = withContext(Avatar.Fallback, 'fallback');\r\nexport const Context = Avatar.Context;\r\n","import { avatarAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const avatarRecipe = tv({\r\n slots: anatomyToRecipeSlots(avatarAnatomy, {\r\n root: 'border-gray-200 bg-gray-50 flex items-center justify-center overflow-hidden rounded-full border',\r\n fallback:\r\n 'text-gray-600 icon:text-gray-500 flex size-full items-center justify-center',\r\n image: 'size-full object-cover',\r\n }),\r\n variants: {\r\n size: {\r\n md: {\r\n root: 'size-10',\r\n fallback: 'icon:size-6 text-sm font-semibold',\r\n },\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'md',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { ark } from '@ark-ui/react';\r\nimport type { ComponentPropsWithRef } from 'react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { badgeAnatomy } from './badge.anatomy';\r\nimport { badgeRecipe } from './badge.recipe';\r\n\r\nconst { withProvider, withContext } = createRecipeContext(badgeRecipe);\r\nconst parts = badgeAnatomy.build();\r\n\r\ninterface BadgeProps extends ComponentPropsWithRef<'div'> {\r\n asChild?: boolean;\r\n}\r\n\r\nexport const Root = withProvider(\r\n (props: BadgeProps) => <ark.div {...parts.root.attrs} {...props} />,\r\n 'root',\r\n);\r\n\r\ninterface BadgeLabelProps extends ComponentPropsWithRef<'span'> {\r\n asChild?: boolean;\r\n}\r\n\r\nexport const Label = withContext(\r\n (props: BadgeLabelProps) => <ark.span {...parts.label.attrs} {...props} />,\r\n 'label',\r\n);\r\n\r\ninterface BadgeIndicatorProps extends ComponentPropsWithRef<'svg'> {\r\n asChild?: boolean;\r\n}\r\n\r\nexport const Indicator = withContext(\r\n (props: BadgeIndicatorProps) => (\r\n <ark.svg {...parts.indicator.attrs} asChild {...props} />\r\n ),\r\n 'indicator',\r\n);\r\n","import { createAnatomy } from '@ark-ui/anatomy';\r\n\r\nexport const badgeAnatomy = createAnatomy('badge').parts(\r\n 'root',\r\n 'label',\r\n 'indicator',\r\n);\r\n","import { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\nimport { badgeAnatomy } from './badge.anatomy';\r\n\r\nexport const badgeRecipe = tv({\r\n slots: anatomyToRecipeSlots(badgeAnatomy, {\r\n root: 'inline-flex items-center',\r\n label: '',\r\n indicator: '',\r\n }),\r\n variants: {\r\n size: {\r\n md: {\r\n root: 'gap-1 rounded-full px-2 py-0.5',\r\n label: 'text-xs font-medium leading-tight',\r\n },\r\n },\r\n variant: {\r\n subtle: {},\r\n },\r\n colorScheme: {\r\n gray: {},\r\n danger: {},\r\n success: {},\r\n warning: {},\r\n info: {},\r\n },\r\n },\r\n compoundVariants: [\r\n {\r\n variant: 'subtle',\r\n colorScheme: 'gray',\r\n className: {\r\n root: 'bg-gray-50 border-gray-200 border',\r\n label: 'text-gray-700',\r\n },\r\n },\r\n {\r\n variant: 'subtle',\r\n colorScheme: 'success',\r\n className: {\r\n root: 'bg-green-50 border-green-200 border',\r\n label: 'text-green-700',\r\n },\r\n },\r\n {\r\n variant: 'subtle',\r\n colorScheme: 'warning',\r\n className: {\r\n root: 'bg-amber-50 border-amber-200 border',\r\n label: 'text-amber-700',\r\n },\r\n },\r\n {\r\n variant: 'subtle',\r\n colorScheme: 'danger',\r\n className: {\r\n root: 'bg-red-50 border-red-200 border',\r\n label: 'text-red-700',\r\n },\r\n },\r\n ],\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'subtle',\r\n colorScheme: 'success',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { ark } from '@ark-ui/react';\r\nimport type { ComponentPropsWithRef } from 'react';\r\nimport type { Merge } from 'type-fest';\r\nimport { createSplitProps } from '../../utils/createSplitProps';\r\nimport { dataAttr } from '../../utils/dataAttr';\r\nimport { buttonRecipe, type ButtonRecipeProps } from './button.recipe';\r\n\r\nexport interface ButtonProps\r\n extends Merge<ComponentPropsWithRef<'button'>, ButtonRecipeProps> {\r\n asChild?: boolean;\r\n}\r\n\r\nexport function Button(props: ButtonProps) {\r\n const [recipeProps, localProps] = createSplitProps<ButtonRecipeProps>(\r\n buttonRecipe.variantKeys,\r\n )(props);\r\n\r\n return (\r\n <ark.button\r\n type=\"button\"\r\n {...localProps}\r\n className={buttonRecipe({\r\n ...recipeProps,\r\n className: localProps.className,\r\n })}\r\n data-disabled={dataAttr(localProps.disabled)}\r\n />\r\n );\r\n}\r\n","export function dataAttr(guard: boolean | undefined | null) {\n return guard ? '' : undefined;\n}\n","import { tv, type VariantProps } from 'tailwind-variants';\r\n\r\nexport const buttonRecipe = tv({\r\n base: 'shadow-xs inline-flex items-center justify-center rounded-md font-semibold disabled:shadow-none',\r\n variants: {\r\n size: {\r\n xs: 'h-9 gap-sm px-2.5 text-sm',\r\n sm: 'h-10 gap-md px-3',\r\n md: 'h-11 gap-lg px-3.5',\r\n },\r\n variant: {\r\n solid: '',\r\n outline: '',\r\n },\r\n colorScheme: {\r\n primary: '',\r\n danger: '',\r\n gray: '',\r\n },\r\n fullWidth: {\r\n true: 'flex w-full',\r\n },\r\n },\r\n compoundVariants: [\r\n {\r\n variant: 'solid',\r\n colorScheme: 'primary',\r\n class: 'bg-gray-900 text-white disabled:opacity-50',\r\n },\r\n {\r\n variant: 'solid',\r\n colorScheme: 'danger',\r\n class: 'bg-red-500 text-white disabled:opacity-50',\r\n },\r\n {\r\n variant: 'outline',\r\n colorScheme: 'gray',\r\n class: 'border-gray-200 border bg-transparent disabled:opacity-50',\r\n },\r\n ],\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'solid',\r\n colorScheme: 'primary',\r\n fullWidth: true,\r\n },\r\n});\r\n\r\nexport type ButtonRecipeProps = VariantProps<typeof buttonRecipe>;\r\n","'use client';\r\n\r\nimport { Checkbox } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { checkboxRecipe } from './checkbox.recipe';\r\n\r\nexport const { withContext, withProvider } =\r\n createRecipeContext(checkboxRecipe);\r\n\r\nexport const Root = withProvider(Checkbox.Root, 'root');\r\nexport const Control = withContext(Checkbox.Control, 'control');\r\nexport const Group = withContext(Checkbox.Group, 'group');\r\nexport const Indicator = withContext(Checkbox.Indicator, 'indicator');\r\nexport const Label = withContext(Checkbox.Label, 'label');\r\nexport const HiddenInput = Checkbox.HiddenInput;\r\nexport const Context = Checkbox.Context;\r\n","import { checkboxAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const checkboxRecipe = tv({\r\n slots: anatomyToRecipeSlots(checkboxAnatomy, {\r\n root: 'flex items-start gap-2',\r\n control: 'flex shrink-0 items-center justify-center rounded-md',\r\n label: 'text-checkbox-label-fg',\r\n }),\r\n variants: {\r\n size: {\r\n md: {\r\n control: 'size-4 rounded-[0.25rem]',\r\n indicator: 'size-3',\r\n },\r\n },\r\n variant: {\r\n outline: {},\r\n },\r\n colorScheme: {\r\n gray: {},\r\n },\r\n },\r\n compoundVariants: [\r\n {\r\n variant: 'outline',\r\n colorScheme: 'gray',\r\n className: {\r\n control: [\r\n 'border',\r\n 'shadow-xs',\r\n 'bg-transparent',\r\n 'border-gray-200',\r\n 'ui-invalid:border-red-400',\r\n 'ui-checked:bg-gray-900',\r\n 'ui-checked:border-gray-900',\r\n 'ui-readonly:opacity-50',\r\n 'ui-readonly:shadow-none',\r\n 'ui-disabled:opacity-50',\r\n 'ui-disabled:shadow-none',\r\n ],\r\n indicator: 'text-white',\r\n label: 'text-gray-600 text-xs leading-tight',\r\n },\r\n },\r\n ],\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'outline',\r\n colorScheme: 'gray',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { Combobox } from '@ark-ui/react';\r\n\r\nexport const Root = Combobox.Root;\r\n","'use client';\r\n\r\nimport { DatePicker } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { datePickerRecipe } from './datePicker.recipe';\r\n\r\nconst { withProvider, withContext } = createRecipeContext(datePickerRecipe);\r\n\r\nexport const Root = withProvider(DatePicker.Root, 'root');\r\nexport const ClearTrigger = withContext(\r\n DatePicker.ClearTrigger,\r\n 'clearTrigger',\r\n);\r\nexport const Content = withContext(DatePicker.Content, 'content');\r\nexport const Control = withContext(DatePicker.Control, 'control');\r\nexport const Input = withContext(DatePicker.Input, 'input');\r\nexport const Label = withContext(DatePicker.Label, 'label');\r\nexport const MonthSelect = withContext(DatePicker.MonthSelect, 'monthSelect');\r\nexport const NextTrigger = withContext(DatePicker.NextTrigger, 'nextTrigger');\r\nexport const Positioner = withContext(DatePicker.Positioner, 'positioner');\r\nexport const PresetTrigger = withContext(\r\n DatePicker.PresetTrigger,\r\n 'presetTrigger',\r\n);\r\nexport const PrevTrigger = withContext(DatePicker.PrevTrigger, 'prevTrigger');\r\nexport const RangeText = withContext(DatePicker.RangeText, 'rangeText');\r\nexport const Table = withContext(DatePicker.Table, 'table');\r\nexport const TableBody = withContext(DatePicker.TableBody, 'tableBody');\r\nexport const TableCell = withContext(DatePicker.TableCell, 'tableCell');\r\nexport const TableCellTrigger = withContext(\r\n DatePicker.TableCellTrigger,\r\n 'tableCellTrigger',\r\n);\r\nexport const TableHead = withContext(DatePicker.TableHead, 'tableHead');\r\nexport const TableHeader = withContext(DatePicker.TableHeader, 'tableHeader');\r\nexport const TableRow = withContext(DatePicker.TableRow, 'tableRow');\r\nexport const Trigger = withContext(DatePicker.Trigger, 'trigger');\r\nexport const View = withContext(DatePicker.View, 'view');\r\nexport const ViewControl = withContext(DatePicker.ViewControl, 'viewControl');\r\nexport const ViewTrigger = withContext(DatePicker.ViewTrigger, 'viewTrigger');\r\nexport const YearSelect = withContext(DatePicker.YearSelect, 'yearSelect');\r\nexport const Context = DatePicker.Context;\r\n","import { datePickerAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const datePickerRecipe = tv({\r\n slots: anatomyToRecipeSlots(datePickerAnatomy, {\r\n content:\r\n 'border-gray-200 text-gray-600 ui-placement-top:ui-open:animate-popover-in-top ui-placement-top-end:ui-open:animate-popover-in-top ui-placement-top-start:ui-open:animate-popover-in-top ui-placement-top:ui-closed:animate-popover-out-top ui-placement-top-end:ui-closed:animate-popover-out-top ui-placement-top-start:ui-closed:animate-popover-out-top ui-placement-bottom:ui-open:animate-popover-in-bottom ui-placement-bottom-start:ui-open:animate-popover-in-bottom ui-placement-bottom-end:ui-open:animate-popover-in-bottom ui-placement-bottom:ui-closed:animate-popover-out-bottom ui-placement-bottom-start:ui-closed:animate-popover-out-bottom ui-placement-bottom-end:ui-closed:animate-popover-out-bottom ui-placement-left:ui-open:animate-popover-in-left ui-placement-left-start:ui-open:animate-popover-in-left ui-placement-left-end:ui-open:animate-popover-in-left ui-placement-left:ui-closed:animate-popover-out-left ui-placement-left-start:ui-closed:animate-popover-out-left ui-placement-left-end:ui-closed:animate-popover-out-left ui-placement-right:ui-open:animate-popover-in-right ui-placement-right-start:ui-open:animate-popover-in-right ui-placement-right-end:ui-open:animate-popover-in-right ui-placement-right:ui-closed:animate-popover-out-right ui-placement-right-start:ui-closed:animate-popover-out-right ui-placement-right-end:ui-closed:animate-popover-out-right z-dropdown rounded-xl border bg-white p-4',\r\n table: 'mt-3 border-separate border-spacing-0.5',\r\n tableCellTrigger:\r\n 'text-gray-600 ui-disabled:text-gray-400 ui-selected:ui-not-disabled:bg-gray-900 ui-today:after:bg-gray-600 ui-in-range:ui-not-disabled:bg-gray-100 ui-in-range:ui-not-disabled:text-gray-900 ui-range-start:ui-not-disabled:bg-gray-900 ui-range-end:ui-not-disabled:bg-gray-900 relative flex size-10 cursor-pointer items-center justify-center text-sm ui-disabled:cursor-not-allowed ui-selected:ui-not-disabled:rounded-full ui-selected:ui-not-disabled:font-medium ui-selected:ui-not-disabled:text-white ui-today:after:absolute ui-today:after:bottom-0 ui-today:after:left-1/2 ui-today:after:mb-1 ui-today:after:size-1 ui-today:after:-translate-x-1/2 ui-today:after:rounded-full ui-in-range:ui-not-disabled:rounded-full ui-in-range:ui-not-disabled:font-medium ui-range-start:ui-not-disabled:rounded-full ui-range-start:ui-not-disabled:font-medium ui-range-start:ui-not-disabled:text-white ui-range-end:ui-not-disabled:rounded-full ui-range-end:ui-not-disabled:font-medium ui-range-end:ui-not-disabled:text-white',\r\n tableHeader: 'py-3 text-sm font-medium',\r\n viewControl: 'flex items-center justify-between',\r\n prevTrigger:\r\n 'bg-gray-50 icon:size-5 flex size-9 items-center justify-center rounded-full',\r\n nextTrigger:\r\n 'bg-gray-50 icon:size-5 flex size-9 items-center justify-center rounded-full',\r\n rangeText: 'text-gray-600 text-base font-semibold',\r\n }),\r\n});\r\n","'use client';\r\n\r\nimport { ark, Dialog } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { dialogRecipe } from './dialog.recipe';\r\n\r\nconst { withContext, withRootProvider } = createRecipeContext(dialogRecipe);\r\n\r\nexport const Root = withRootProvider(Dialog.Root);\r\nexport const Backdrop = withContext(Dialog.Backdrop, 'backdrop');\r\nexport const CloseTrigger = withContext(Dialog.CloseTrigger, 'closeTrigger');\r\nexport const Content = withContext(Dialog.Content, 'content');\r\nexport const Description = withContext(Dialog.Description, 'description');\r\nexport const Positioner = withContext(Dialog.Positioner, 'positioner');\r\nexport const Title = withContext(Dialog.Title, 'title');\r\nexport const Trigger = withContext(Dialog.Trigger, 'trigger');\r\nexport const Header = withContext(ark.section, 'header');\r\nexport const Body = withContext(ark.section, 'body');\r\nexport const Footer = withContext(ark.section, 'footer');\r\nexport const Context = Dialog.Context;\r\n","import { dialogAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nconst anatomy = dialogAnatomy.extendWith('header', 'body', 'footer');\r\n\r\nexport const dialogRecipe = tv({\r\n slots: anatomyToRecipeSlots(anatomy, {\r\n backdrop:\r\n 'z-backdrop ui-open:animate-backdrop-in ui-closed:animate-backdrop-out fixed inset-0 bg-black/60',\r\n positioner: 'z-dialog fixed inset-0 overflow-y-auto lg:py-16',\r\n content: 'ui-open:animate-dialog-in ui-closed:animate-dialog-out relative',\r\n closeTrigger:\r\n 'icon:size-6 text-gray-400 absolute right-2.5 top-2.5 flex size-11 items-center justify-center',\r\n }),\r\n});\r\n","'use client';\r\n\r\nimport { ark, Dialog } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { drawerRecipe } from './drawer.recipe';\r\n\r\nconst { withContext, withRootProvider } = createRecipeContext(drawerRecipe);\r\n\r\nexport const Root = withRootProvider(Dialog.Root);\r\nexport const Backdrop = withContext(Dialog.Backdrop, 'backdrop');\r\nexport const CloseTrigger = withContext(Dialog.CloseTrigger, 'closeTrigger');\r\nexport const Content = withContext(Dialog.Content, 'content');\r\nexport const Description = withContext(Dialog.Description, 'description');\r\nexport const Positioner = withContext(Dialog.Positioner, 'positioner');\r\nexport const Title = withContext(Dialog.Title, 'title');\r\nexport const Trigger = withContext(Dialog.Trigger, 'trigger');\r\nexport const Header = withContext(ark.section, 'header');\r\nexport const Body = withContext(ark.section, 'body');\r\nexport const Footer = withContext(ark.section, 'footer');\r\nexport const Context = Dialog.Context;\r\n","import { dialogAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nconst anatomy = dialogAnatomy.extendWith('header', 'body', 'footer');\r\n\r\nexport const drawerRecipe = tv({\r\n slots: anatomyToRecipeSlots(anatomy, {\r\n backdrop:\r\n 'z-backdrop ui-open:animate-backdrop-in ui-closed:animate-backdrop-out fixed inset-0 bg-black/60',\r\n positioner:\r\n 'z-drawer fixed inset-0 overflow-hidden overflow-y-auto lg:py-16',\r\n content: 'absolute top-0 h-full w-full bg-white lg:w-[400px]',\r\n }),\r\n variants: {\r\n placement: {\r\n left: {\r\n content:\r\n 'ui-open:animate-drawer-in-left ui-closed:animate-drawer-out-left left-0',\r\n },\r\n right: {\r\n content:\r\n 'ui-open:animate-drawer-in-right ui-closed:animate-drawer-out-right right-0',\r\n },\r\n },\r\n },\r\n defaultVariants: {\r\n placement: 'right',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { Field } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { fieldRecipe } from './field.recipe';\r\n\r\nconst { withContext, withProvider } = createRecipeContext(fieldRecipe);\r\n\r\nexport const Root = withProvider(Field.Root, 'root');\r\nexport const Label = withContext(Field.Label, 'label');\r\nexport const Input = withContext(Field.Input, 'input');\r\nexport const HelperText = withContext(Field.HelperText, 'helperText');\r\nexport const ErrorText = withContext(Field.ErrorText, 'errorText');\r\nexport const Select = withContext(Field.Select, 'select');\r\nexport const Textarea = withContext(Field.Textarea, 'textarea');\r\nexport const Context = Field.Context;\r\n","import { fieldAnatomy } from '@ark-ui/react';\r\nimport { twMerge } from 'tailwind-merge';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nconst outlineGrayInputStyle = twMerge(\r\n 'border',\r\n 'shadow-xs',\r\n 'bg-input-outline-gray-bg',\r\n 'text-input-outline-gray-fg',\r\n 'border-gray-200',\r\n 'placeholder:text-gray-400',\r\n 'ui-invalid:border-red-400',\r\n 'disabled:opacity-50',\r\n 'disabled:shadow-none',\r\n 'read-only:opacity-50',\r\n 'read-only:shadow-none',\r\n);\r\n\r\nexport const fieldRecipe = tv({\r\n slots: anatomyToRecipeSlots(fieldAnatomy, {\r\n input:\r\n 'outer-spin:appearance-none inner-spin:appearance-none block w-full rounded-md outline-none',\r\n select: 'block w-full rounded-md outline-none',\r\n textarea: 'block w-full rounded-md outline-none',\r\n label: 'text-gray-600 mb-sm inline-block text-sm font-medium',\r\n errorText: 'text-red-600 mt-sm inline-block text-sm',\r\n helperText: 'text-gray-500',\r\n requiredIndicator: 'text-red-500 text-sm',\r\n }),\r\n variants: {\r\n size: {\r\n md: {\r\n input: 'h-11 px-3.5',\r\n select: 'h-11 px-3.5',\r\n textarea: 'px-3.5 py-2.5',\r\n },\r\n },\r\n variant: {\r\n outline: {},\r\n },\r\n colorScheme: {\r\n gray: {},\r\n },\r\n },\r\n compoundVariants: [\r\n {\r\n variant: 'outline',\r\n colorScheme: 'gray',\r\n className: {\r\n input: outlineGrayInputStyle,\r\n select: outlineGrayInputStyle,\r\n textarea: outlineGrayInputStyle,\r\n },\r\n },\r\n ],\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'outline',\r\n colorScheme: 'gray',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { ark } from '@ark-ui/react';\r\nimport type { ComponentPropsWithRef } from 'react';\r\nimport type { Merge } from 'type-fest';\r\nimport { createSplitProps } from '../../utils/createSplitProps';\r\nimport { dataAttr } from '../../utils/dataAttr';\r\nimport {\r\n iconButtonRecipe,\r\n type IconButtonRecipeProps,\r\n} from './iconButton.recipe';\r\n\r\nexport interface IconButtonProps\r\n extends Merge<ComponentPropsWithRef<'button'>, IconButtonRecipeProps> {\r\n asChild?: boolean;\r\n}\r\n\r\nexport function IconButton(props: IconButtonProps) {\r\n const [recipeProps, localProps] = createSplitProps<IconButtonRecipeProps>(\r\n iconButtonRecipe.variantKeys,\r\n )(props);\r\n\r\n return (\r\n <ark.button\r\n type=\"button\"\r\n {...localProps}\r\n className={iconButtonRecipe({\r\n ...recipeProps,\r\n className: localProps.className,\r\n })}\r\n data-disabled={dataAttr(localProps.disabled)}\r\n />\r\n );\r\n}\r\n","import { tv, type VariantProps } from 'tailwind-variants';\r\nimport { buttonRecipe } from '../Button/button.recipe';\r\n\r\nexport const iconButtonRecipe = tv({\r\n extend: buttonRecipe,\r\n variants: {\r\n size: {\r\n sm: 'h-10 min-w-10 px-0',\r\n md: 'h-11 min-w-11 px-0',\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'solid',\r\n colorScheme: 'primary',\r\n fullWidth: false,\r\n },\r\n});\r\n\r\nexport type IconButtonRecipeProps = VariantProps<typeof iconButtonRecipe>;\r\n","'use client';\r\n\r\nimport { Menu } from '@ark-ui/react';\r\n\r\nexport const Root = Menu.Root;\r\n","'use client';\r\n\r\nimport { NumberInput } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { numberInputRecipe } from './numberInput.recipe';\r\n\r\nconst { withContext, withProvider } = createRecipeContext(numberInputRecipe);\r\n\r\nexport const Root = withProvider(NumberInput.Root, 'root');\r\nexport const Control = withContext(NumberInput.Control, 'control');\r\nexport const DecrementTrigger = withContext(\r\n NumberInput.DecrementTrigger,\r\n 'decrementTrigger',\r\n);\r\nexport const IncrementTrigger = withContext(\r\n NumberInput.IncrementTrigger,\r\n 'incrementTrigger',\r\n);\r\nexport const Input = withContext(NumberInput.Input, 'input');\r\nexport const Label = withContext(NumberInput.Label, 'label');\r\nexport const Scrubber = withContext(NumberInput.Scrubber, 'scrubber');\r\nexport const ValueText = withContext(NumberInput.ValueText, 'valueText');\r\nexport const Context = NumberInput.Context;\r\n","import { numberInputAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const numberInputRecipe = tv({\r\n slots: anatomyToRecipeSlots(numberInputAnatomy, {\r\n control:\r\n 'border-gray-200 ui-invalid:border-red-400 grid grid-cols-[1fr_32px] grid-rows-[1fr_1fr] overflow-hidden rounded-lg border bg-transparent ui-disabled:opacity-50 ui-readonly:cursor-default ui-readonly:opacity-50',\r\n input:\r\n 'placeholder:text-gray-400 row-[span_2/span_2] w-full border-0 bg-transparent outline-none disabled:cursor-not-allowed',\r\n label: 'text-gray-600 mb-sm inline-block text-sm font-medium',\r\n decrementTrigger:\r\n 'border-gray-200 icon:text-gray-600 inline-flex cursor-pointer items-center justify-center border-l border-t ui-disabled:cursor-not-allowed',\r\n incrementTrigger:\r\n 'border-gray-200 icon:text-gray-600 inline-flex cursor-pointer items-center justify-center border-l ui-disabled:cursor-not-allowed',\r\n }),\r\n variants: {\r\n size: {\r\n md: {\r\n control: 'h-11 pl-3.5 text-base',\r\n incrementTrigger: 'icon:size-5',\r\n decrementTrigger: 'icon:size-5',\r\n },\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'md',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { PinInput } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { pinInputRecipe } from './pinInput.recipe';\r\n\r\nconst { withContext, withProvider } = createRecipeContext(pinInputRecipe);\r\n\r\nexport const Root = withProvider(PinInput.Root, 'root');\r\nexport const Label = withContext(PinInput.Label, 'label');\r\nexport const Control = withContext(PinInput.Control, 'control');\r\nexport const Input = withContext(PinInput.Input, 'input');\r\nexport const HiddenInput = PinInput.HiddenInput;\r\nexport const Context = PinInput.Context;\r\n","import { pinInputAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const pinInputRecipe = tv({\r\n slots: anatomyToRecipeSlots(pinInputAnatomy, {\r\n control: 'grid grid-cols-6',\r\n input: 'aspect-[10/11] w-full rounded-md outline-none',\r\n label: 'text-input-label-fg mb-sm inline-block text-sm font-medium',\r\n }),\r\n variants: {\r\n size: {\r\n md: {\r\n input: 'text-center text-2xl font-medium',\r\n control: 'gap-2',\r\n },\r\n },\r\n variant: {\r\n outline: {},\r\n },\r\n colorScheme: {\r\n gray: {},\r\n },\r\n },\r\n compoundVariants: [\r\n {\r\n variant: 'outline',\r\n colorScheme: 'gray',\r\n className: {\r\n input:\r\n 'shadow-xs border-gray-200 placeholder:text-gray-400 ui-invalid:border-red-400 border read-only:opacity-50 read-only:shadow-none disabled:opacity-50 disabled:shadow-none',\r\n },\r\n },\r\n ],\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'outline',\r\n colorScheme: 'gray',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { Popover } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { popoverRecipe } from './popover.recipe';\r\n\r\nconst { withRootProvider, withContext } = createRecipeContext(popoverRecipe);\r\n\r\nexport const Root = withRootProvider(Popover.Root);\r\nexport const Anchor = withContext(Popover.Anchor, 'anchor');\r\nexport const Arrow = withContext(Popover.Arrow, 'arrow');\r\nexport const ArrowTip = withContext(Popover.ArrowTip, 'arrowTip');\r\nexport const CloseTrigger = withContext(Popover.CloseTrigger, 'closeTrigger');\r\nexport const Content = withContext(Popover.Content, 'content');\r\nexport const Description = withContext(Popover.Description, 'description');\r\nexport const Indicator = withContext(Popover.Indicator, 'indicator');\r\nexport const Positioner = withContext(Popover.Positioner, 'positioner');\r\nexport const Title = withContext(Popover.Title, 'title');\r\nexport const Trigger = withContext(Popover.Trigger, 'trigger');\r\nexport const Context = Popover.Context;\r\n","import { popoverAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const popoverRecipe = tv({\r\n slots: anatomyToRecipeSlots(popoverAnatomy, {\r\n content:\r\n 'ui-placement-top:ui-open:animate-popover-in-top ui-placement-top-end:ui-open:animate-popover-in-top ui-placement-top-start:ui-open:animate-popover-in-top ui-placement-top:ui-closed:animate-popover-out-top ui-placement-top-end:ui-closed:animate-popover-out-top ui-placement-top-start:ui-closed:animate-popover-out-top ui-placement-bottom:ui-open:animate-popover-in-bottom ui-placement-bottom-start:ui-open:animate-popover-in-bottom ui-placement-bottom-end:ui-open:animate-popover-in-bottom ui-placement-bottom:ui-closed:animate-popover-out-bottom ui-placement-bottom-start:ui-closed:animate-popover-out-bottom ui-placement-bottom-end:ui-closed:animate-popover-out-bottom ui-placement-left:ui-open:animate-popover-in-left ui-placement-left-start:ui-open:animate-popover-in-left ui-placement-left-end:ui-open:animate-popover-in-left ui-placement-left:ui-closed:animate-popover-out-left ui-placement-left-start:ui-closed:animate-popover-out-left ui-placement-left-end:ui-closed:animate-popover-out-left ui-placement-right:ui-open:animate-popover-in-right ui-placement-right-start:ui-open:animate-popover-in-right ui-placement-right-end:ui-open:animate-popover-in-right ui-placement-right:ui-closed:animate-popover-out-right ui-placement-right-start:ui-closed:animate-popover-out-right ui-placement-right-end:ui-closed:animate-popover-out-right',\r\n positioner: 'z-popover',\r\n }),\r\n});\r\n","'use client';\r\n\r\nimport { Progress } from '@ark-ui/react';\r\n\r\nexport const Root = Progress.Root;\r\n","'use client';\r\n\r\nimport { SegmentGroup } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { segmentGroupRecipe } from './segmentGroup.recipe';\r\n\r\nconst { withProvider, withContext } = createRecipeContext(segmentGroupRecipe);\r\n\r\nexport const Root = withProvider(SegmentGroup.Root, 'root');\r\nexport const Indicator = withContext(SegmentGroup.Indicator, 'indicator');\r\nexport const Item = withContext(SegmentGroup.Item, 'item');\r\nexport const ItemControl = withContext(SegmentGroup.ItemControl, 'itemControl');\r\nexport const ItemText = withContext(SegmentGroup.ItemText, 'itemText');\r\nexport const Label = withContext(SegmentGroup.Label, 'label');\r\nexport const Context = SegmentGroup.Context;\r\nexport const ItemContext = SegmentGroup.ItemContext;\r\nexport const ItemHiddenInput = SegmentGroup.ItemHiddenInput;\r\n","import { segmentGroupAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const segmentGroupRecipe = tv({\r\n slots: anatomyToRecipeSlots(segmentGroupAnatomy),\r\n variants: {\r\n size: {\r\n md: {},\r\n },\r\n variant: {\r\n unstyled: {},\r\n default: {\r\n root: 'bg-gray-50 border-gray-200 relative flex w-fit gap-md rounded-md border p-1',\r\n item: 'z-1 text-gray-600 ui-checked:text-gray-800 relative cursor-pointer transition-all duration-200',\r\n indicator:\r\n 'left-[var(--left)] top-[var(--top)] h-[var(--height)] w-[var(--width)] bg-white',\r\n },\r\n },\r\n },\r\n compoundVariants: [\r\n {\r\n size: 'md',\r\n variant: 'default',\r\n className: {\r\n item: 'px-lg py-md text-sm font-semibold',\r\n indicator: 'rounded-sm shadow-sm',\r\n },\r\n },\r\n ],\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'default',\r\n },\r\n});\r\n","/* eslint-disable @typescript-eslint/no-explicit-any */\r\n'use client';\r\n\r\nimport { Select } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { selectRecipe } from './select.recipe';\r\n\r\nconst { withProvider, withContext } = createRecipeContext(selectRecipe);\r\n\r\nexport const Root = withProvider(Select.Root<any>, 'root');\r\nexport const ClearTrigger = withContext(Select.ClearTrigger, 'clearTrigger');\r\nexport const Content = withContext(Select.Content, 'content');\r\nexport const Control = withContext(Select.Control, 'control');\r\nexport const Indicator = withContext(Select.Indicator, 'indicator');\r\nexport const Item = withContext(Select.Item, 'item');\r\nexport const ItemGroup = withContext(Select.ItemGroup, 'itemGroup');\r\nexport const ItemGroupLabel = withContext(\r\n Select.ItemGroupLabel,\r\n 'itemGroupLabel',\r\n);\r\nexport const ItemIndicator = withContext(Select.ItemIndicator, 'itemIndicator');\r\nexport const ItemText = withContext(Select.ItemText, 'itemText');\r\nexport const Label = withContext(Select.Label, 'label');\r\nexport const List = withContext(Select.List, 'list');\r\nexport const Positioner = withContext(Select.Positioner, 'positioner');\r\nexport const Trigger = withContext(Select.Trigger, 'trigger');\r\nexport const ValueText = withContext(Select.ValueText, 'valueText');\r\nexport const Context = Select.Context;\r\nexport const HiddenSelect = Select.HiddenSelect;\r\nexport const ItemContext = Select.ItemContext;\r\n","import { selectAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const selectRecipe = tv({\r\n slots: anatomyToRecipeSlots(selectAnatomy, {\r\n indicator:\r\n 'text-gray-500 transition-transform duration-200 ui-open:rotate-180 ui-closed:rotate-0',\r\n positioner: 'z-dropdown',\r\n content:\r\n 'border-gray-200 ui-placement-top:ui-open:animate-popover-in-top ui-placement-top-end:ui-open:animate-popover-in-top ui-placement-top-start:ui-open:animate-popover-in-top ui-placement-top:ui-closed:animate-popover-out-top ui-placement-top-end:ui-closed:animate-popover-out-top ui-placement-top-start:ui-closed:animate-popover-out-top ui-placement-bottom:ui-open:animate-popover-in-bottom ui-placement-bottom-start:ui-open:animate-popover-in-bottom ui-placement-bottom-end:ui-open:animate-popover-in-bottom ui-placement-bottom:ui-closed:animate-popover-out-bottom ui-placement-bottom-start:ui-closed:animate-popover-out-bottom ui-placement-bottom-end:ui-closed:animate-popover-out-bottom ui-placement-left:ui-open:animate-popover-in-left ui-placement-left-start:ui-open:animate-popover-in-left ui-placement-left-end:ui-open:animate-popover-in-left ui-placement-left:ui-closed:animate-popover-out-left ui-placement-left-start:ui-closed:animate-popover-out-left ui-placement-left-end:ui-closed:animate-popover-out-left ui-placement-right:ui-open:animate-popover-in-right ui-placement-right-start:ui-open:animate-popover-in-right ui-placement-right-end:ui-open:animate-popover-in-right ui-placement-right:ui-closed:animate-popover-out-right ui-placement-right-start:ui-closed:animate-popover-out-right ui-placement-right-end:ui-closed:animate-popover-out-right z-dropdown rounded-md border bg-white p-1',\r\n item: 'ui-highlighted:bg-gray-50 flex cursor-pointer items-center gap-2 rounded-sm px-2.5 py-1',\r\n itemText: 'grow',\r\n itemIndicator: 'text-green-500 size-4',\r\n }),\r\n variants: {\r\n size: {\r\n sm: {\r\n trigger: 'h-10 gap-md px-3',\r\n indicator: 'size-5',\r\n },\r\n md: {\r\n trigger: 'h-11 gap-lg px-3.5',\r\n indicator: 'size-5',\r\n },\r\n },\r\n variant: {\r\n outline: {\r\n trigger:\r\n 'shadow-xs border-gray-200 ui-placeholder-shown:text-gray-500 flex items-center rounded-md border text-left',\r\n },\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'outline',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { ark } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { tableRecipe } from './table.recipe';\r\n\r\nconst { withProvider, withContext } = createRecipeContext(tableRecipe);\r\n\r\nexport const Root = withProvider(ark.table, 'root');\r\nexport const Header = withContext(ark.thead, 'header');\r\nexport const Body = withContext(ark.tbody, 'body');\r\nexport const Footer = withContext(ark.tfoot, 'footer');\r\nexport const Row = withContext(ark.tr, 'row');\r\nexport const Heading = withContext(ark.th, 'heading');\r\nexport const Cell = withContext(ark.td, 'cell');\r\n","import { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\nimport { tableAnatomy } from './table.anatomy';\r\n\r\nexport const tableRecipe = tv({\r\n slots: anatomyToRecipeSlots(tableAnatomy, {\r\n root: 'w-full whitespace-nowrap',\r\n }),\r\n variants: {\r\n size: {\r\n md: {\r\n root: 'border-gray-200 border',\r\n heading: 'px-3xl py-lg text-left text-xs font-medium',\r\n cell: 'px-3xl py-xl text-sm',\r\n },\r\n },\r\n variant: {\r\n outline: {\r\n header: 'tr:bg-white tr:border-b tr:border-gray-200',\r\n body: 'tr:odd:bg-gray-50 tr:border-gray-200 tr:border-b tr:last:border-b-0 tr:even:bg-white',\r\n },\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'outline',\r\n },\r\n});\r\n","import { createAnatomy } from '@ark-ui/anatomy';\r\n\r\nexport const tableAnatomy = createAnatomy('table').parts(\r\n 'root',\r\n 'header',\r\n 'body',\r\n 'footer',\r\n 'row',\r\n 'cell',\r\n 'heading',\r\n);\r\n","'use client';\r\n\r\nimport { Tabs } from '@ark-ui/react';\r\nimport { createRecipeContext } from '../../utils/createRecipeContext';\r\nimport { tabsRecipe } from './tabs.recipe';\r\n\r\nconst { withContext, withProvider } = createRecipeContext(tabsRecipe);\r\n\r\nexport const Root = withProvider(Tabs.Root, 'root');\r\nexport const Content = withContext(Tabs.Content, 'content');\r\nexport const Indicator = withContext(Tabs.Indicator, 'indicator');\r\nexport const List = withContext(Tabs.List, 'list');\r\nexport const Trigger = withContext(Tabs.Trigger, 'trigger');\r\nexport const Context = Tabs.Context;\r\n","import { tabsAnatomy } from '@ark-ui/react';\r\nimport { tv } from 'tailwind-variants';\r\nimport { anatomyToRecipeSlots } from '../../utils/anatomyToRecipeSlots';\r\n\r\nexport const tabsRecipe = tv({\r\n slots: anatomyToRecipeSlots(tabsAnatomy),\r\n variants: {\r\n size: {\r\n md: {},\r\n },\r\n variant: {\r\n unstyled: {},\r\n default: {\r\n list: 'border-gray-200 bg-gray-50 relative flex w-fit gap-md rounded-md border p-1',\r\n indicator: 'h-[var(--height)] w-[var(--width)] bg-white',\r\n trigger:\r\n 'z-1 text-gray-600 ui-selected:text-gray-800 relative transition-all duration-200',\r\n },\r\n },\r\n },\r\n compoundVariants: [\r\n {\r\n size: 'md',\r\n variant: 'default',\r\n className: {\r\n indicator: 'rounded-sm shadow-sm',\r\n trigger: 'px-lg py-md text-sm font-semibold',\r\n },\r\n },\r\n ],\r\n defaultVariants: {\r\n size: 'md',\r\n variant: 'default',\r\n },\r\n});\r\n","'use client';\r\n\r\nimport { Tooltip } from '@ark-ui/react';\r\n\r\nexport const Root = Tooltip.Root;\r\n"],"mappings":"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","names":["import_react","React","useContext","withRootProvider","withProvider","withContext","anatomy","Context","Root","import_react","import_react","import_tailwind_variants","withContext","Root","Context","Root","import_react","import_tailwind_variants","withProvider","withContext","Root","import_react","import_tailwind_variants","Context","Indicator","Label","Root","withContext","withProvider","import_react","import_react","import_tailwind_variants","withContext","withProvider","Root","Indicator","Label","Context","Root","import_react","Content","Context","Control","Label","Positioner","Root","Trigger","import_react","import_react","import_tailwind_variants","withProvider","withContext","Root","Content","Control","Label","Positioner","Trigger","Context","Backdrop","Body","CloseTrigger","Content","Context","Description","Footer","Header","Positioner","Root","Title","Trigger","import_react","import_react","import_tailwind_variants","anatomy","withContext","withRootProvider","Root","Backdrop","CloseTrigger","Content","Description","Positioner","Title","Trigger","Header","Body","Footer","Context","Backdrop","Body","CloseTrigger","Content","Context","Description","Footer","Header","Positioner","Root","Title","Trigger","import_react","import_react","import_tailwind_variants","anatomy","withContext","withRootProvider","Root","Backdrop","CloseTrigger","Content","Description","Positioner","Title","Trigger","Header","Body","Footer","Context","Context","Input","Label","Root","import_react","import_react","import_tailwind_variants","withContext","withProvider","Root","Label","Input","Context","import_react","import_tailwind_variants","Root","import_react","Context","Control","Input","Label","Root","import_react","import_react","import_tailwind_variants","withContext","withProvider","Root","Control","Input","Label","Context","Context","Control","HiddenInput","Input","Label","Root","import_react","import_react","import_tailwind_variants","withContext","withProvider","Root","Label","Control","Input","HiddenInput","Context","CloseTrigger","Content","Context","Description","Indicator","Positioner","Root","Title","Trigger","import_react","import_react","import_tailwind_variants","withRootProvider","withContext","Root","CloseTrigger","Content","Description","Indicator","Positioner","Title","Trigger","Context","Root","import_react","Context","Indicator","Label","Root","import_react","import_react","import_tailwind_variants","withProvider","withContext","Root","Indicator","Label","Context","ClearTrigger","Content","Context","Control","Indicator","Item","ItemContext","ItemText","Label","Positioner","Root","Trigger","ValueText","import_react","import_react","import_tailwind_variants","withProvider","withContext","Root","ClearTrigger","Content","Control","Indicator","Item","ItemText","Label","Positioner","Trigger","ValueText","Context","ItemContext","Body","Footer","Header","Root","import_react","import_tailwind_variants","import_anatomy","withProvider","withContext","Root","Header","Body","Footer","Content","Context","Indicator","List","Root","Trigger","import_react","import_react","import_tailwind_variants","withContext","withProvider","Root","Content","Indicator","List","Trigger","Context","Root","import_react"]}
package/dist/ui.mjs ADDED
@@ -0,0 +1,48 @@
1
+ import {
2
+ AlertDialog_exports,
3
+ Avatar_exports,
4
+ Badge_exports,
5
+ Button,
6
+ Checkbox_exports,
7
+ Combobox_exports,
8
+ DatePicker_exports,
9
+ Dialog_exports,
10
+ Drawer_exports,
11
+ Field_exports,
12
+ IconButton,
13
+ Menu_exports,
14
+ NumberInput_exports,
15
+ PinInput_exports,
16
+ Popover_exports,
17
+ Progress_exports,
18
+ SegmentGroup_exports,
19
+ Select_exports,
20
+ Table_exports,
21
+ Tabs_exports,
22
+ Tooltip_exports
23
+ } from "./chunk-WGWFJYET.mjs";
24
+ import "./chunk-J5LGTIGS.mjs";
25
+ export {
26
+ AlertDialog_exports as AlertDialog,
27
+ Avatar_exports as Avatar,
28
+ Badge_exports as Badge,
29
+ Button,
30
+ Checkbox_exports as Checkbox,
31
+ Combobox_exports as Combobox,
32
+ DatePicker_exports as DatePicker,
33
+ Dialog_exports as Dialog,
34
+ Drawer_exports as Drawer,
35
+ Field_exports as Field,
36
+ IconButton,
37
+ Menu_exports as Menu,
38
+ NumberInput_exports as NumberInput,
39
+ PinInput_exports as PinInput,
40
+ Popover_exports as Popover,
41
+ Progress_exports as Progress,
42
+ SegmentGroup_exports as SegmentGroup,
43
+ Select_exports as Select,
44
+ Table_exports as Table,
45
+ Tabs_exports as Tabs,
46
+ Tooltip_exports as Tooltip
47
+ };
48
+ //# sourceMappingURL=ui.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/package.json CHANGED
@@ -1,95 +1,109 @@
1
- {
2
- "name": "@opexa/portal-components",
3
- "version": "0.0.1",
4
- "exports": {
5
- ".": {
6
- "types": "./dist/index.d.ts",
7
- "import": {
8
- "types": "./dist/index.d.ts",
9
- "default": "./dist/index.js"
10
- },
11
- "require": "./dist/index.cjs"
12
- },
13
- "./handlers": {
14
- "types": "./dist/handlers.d.ts",
15
- "import": {
16
- "types": "./dist/handlers.d.ts",
17
- "default": "./dist/handlers.js"
18
- },
19
- "require": "./dist/handlers.cjs"
20
- },
21
- "./middleware": {
22
- "types": "./dist/middleware.d.ts",
23
- "import": {
24
- "types": "./dist/middleware.d.ts",
25
- "default": "./dist/middleware.js"
26
- },
27
- "require": "./dist/middleware.cjs"
28
- },
29
- "./theme.css": "./dist/theme.css",
30
- "./package.json": "./package.json"
31
- },
32
- "files": [
33
- "dist"
34
- ],
35
- "publishConfig": {
36
- "access": "public"
37
- },
38
- "scripts": {
39
- "dev": "next dev --turbopack",
40
- "build": "tsup",
41
- "build:app": "next build",
42
- "start": "next start",
43
- "lint": "next lint",
44
- "release": "release-it"
45
- },
46
- "dependencies": {
47
- "date-fns": "^4.1.0",
48
- "embla-carousel-autoplay": "^8.6.0",
49
- "embla-carousel-react": "^8.6.0",
50
- "lodash-es": "^4.17.21",
51
- "tailwind-merge": "^3.3.0",
52
- "tailwindcss-plugin-zag": "^0.1.0",
53
- "tiny-invariant": "^1.3.3",
54
- "usehooks-ts": "^3.1.1",
55
- "zustand": "^5.0.4"
56
- },
57
- "devDependencies": {
58
- "@ark-ui/react": "^5.9.1",
59
- "@eslint/eslintrc": "^3",
60
- "@hookform/resolvers": "^4.1.3",
61
- "@opexa/portal-sdk-core": "^0.0.3",
62
- "@tailwindcss/postcss": "^4",
63
- "@tanstack/react-query": "^5.76.1",
64
- "@total-typescript/ts-reset": "^0.6.1",
65
- "@tsconfig/next": "^2.0.3",
66
- "@types/lodash-es": "^4.17.12",
67
- "@types/node": "^22",
68
- "@types/react": "^19",
69
- "@types/react-dom": "^19",
70
- "eslint": "^9",
71
- "eslint-config-next": "15.3.2",
72
- "next": "15.3.2",
73
- "react": "^19.1.0",
74
- "react-dom": "^19.1.0",
75
- "react-hook-form": "^7.54.2",
76
- "release-it": "^18.1.2",
77
- "tailwindcss": "^4",
78
- "tsup": "^8.1.0",
79
- "type-fest": "^4.41.0",
80
- "typescript": "^5",
81
- "zod": "^3.25.7"
82
- },
83
- "peerDependencies": {
84
- "@ark-ui/react": "^5.0.0",
85
- "@hookform/resolvers": "^4.0.0",
86
- "@opexa/portal-sdk-core": "^0.0.3",
87
- "@tanstack/react-query": "^5.0.0",
88
- "next": "^15.0.0",
89
- "react": "^19.0.0",
90
- "react-dom": "^19.0.0",
91
- "react-hook-form": "^7.0.0",
92
- "tailwindcss": "^4.0.0",
93
- "zod": "^3.0.0"
94
- }
95
- }
1
+ {
2
+ "name": "@opexa/portal-components",
3
+ "version": "0.0.2",
4
+ "exports": {
5
+ ".": {
6
+ "types": "./dist/index.d.ts",
7
+ "import": {
8
+ "types": "./dist/index.d.ts",
9
+ "default": "./dist/index.js"
10
+ },
11
+ "require": "./dist/index.cjs"
12
+ },
13
+ "./handlers": {
14
+ "types": "./dist/handlers.d.ts",
15
+ "import": {
16
+ "types": "./dist/handlers.d.ts",
17
+ "default": "./dist/handlers.js"
18
+ },
19
+ "require": "./dist/handlers.cjs"
20
+ },
21
+ "./middleware": {
22
+ "types": "./dist/middleware.d.ts",
23
+ "import": {
24
+ "types": "./dist/middleware.d.ts",
25
+ "default": "./dist/middleware.js"
26
+ },
27
+ "require": "./dist/middleware.cjs"
28
+ },
29
+ "./ui": {
30
+ "types": "./dist/ui.d.ts",
31
+ "import": {
32
+ "types": "./dist/ui.d.ts",
33
+ "default": "./dist/ui.js"
34
+ },
35
+ "require": "./dist/ui.cjs"
36
+ },
37
+ "./theme.css": "./dist/theme.css",
38
+ "./package.json": "./package.json"
39
+ },
40
+ "files": [
41
+ "dist"
42
+ ],
43
+ "publishConfig": {
44
+ "access": "public"
45
+ },
46
+ "scripts": {
47
+ "dev": "next dev --turbopack",
48
+ "build": "tsup",
49
+ "build:app": "next build",
50
+ "start": "next start",
51
+ "lint": "next lint",
52
+ "release": "release-it"
53
+ },
54
+ "dependencies": {
55
+ "@ark-ui/anatomy": "3.5.0",
56
+ "@ark-ui/react": "5.9.2",
57
+ "@date-fns/tz": "^1.2.0",
58
+ "@tailwindcss/typography": "0.5.15",
59
+ "date-fns": "4.1.0",
60
+ "embla-carousel-autoplay": "8.6.0",
61
+ "embla-carousel-react": "8.6.0",
62
+ "is-mobile": "^5.0.0",
63
+ "lodash-es": "4.17.21",
64
+ "react-fast-marquee": "^1.6.5",
65
+ "tailwind-merge": "3.3.0",
66
+ "tailwind-variants": "1.0.0",
67
+ "tailwindcss-plugin-zag": "0.1.0",
68
+ "tiny-invariant": "1.3.3",
69
+ "usehooks-ts": "3.1.1",
70
+ "zustand": "5.0.5"
71
+ },
72
+ "devDependencies": {
73
+ "@eslint/eslintrc": "3",
74
+ "@hookform/resolvers": "5.0.1",
75
+ "@opexa/portal-sdk-core": "0.0.19",
76
+ "@tailwindcss/postcss": "4",
77
+ "@tanstack/react-query": "5.77.0",
78
+ "@tanstack/react-query-devtools": "5.77.0",
79
+ "@total-typescript/ts-reset": "0.6.1",
80
+ "@tsconfig/next": "2.0.3",
81
+ "@types/lodash-es": "4.17.12",
82
+ "@types/node": "22",
83
+ "@types/react": "19",
84
+ "@types/react-dom": "19",
85
+ "eslint": "9",
86
+ "eslint-config-next": "15.3.2",
87
+ "next": "15.1.8",
88
+ "react": "19.1.0",
89
+ "react-dom": "19.1.0",
90
+ "react-hook-form": "7.56.4",
91
+ "release-it": "19.0.2",
92
+ "tailwindcss": "4",
93
+ "tsup": "8.5.0",
94
+ "type-fest": "4.41.0",
95
+ "typescript": "5",
96
+ "zod": "3.25.28"
97
+ },
98
+ "peerDependencies": {
99
+ "@hookform/resolvers": "^4.0.0",
100
+ "@opexa/portal-sdk-core": "^0.1.0",
101
+ "@tanstack/react-query": "^5.0.0",
102
+ "next": "^15.0.0",
103
+ "react": "^19.0.0",
104
+ "react-dom": "^19.0.0",
105
+ "react-hook-form": "^7.0.0",
106
+ "tailwindcss": "^4.0.0",
107
+ "zod": "^3.0.0"
108
+ }
109
+ }
@@ -1,84 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __commonJS = (cb, mod) => function __require() {
8
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
19
- // If the importer is in node compatibility mode or this is not an ESM
20
- // file that has been converted to a CommonJS file using a Babel-
21
- // compatible transform (i.e. "__esModule" has not been set), then set
22
- // "default" to the CommonJS "module.exports" for node compatibility.
23
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
24
- mod
25
- ));
26
-
27
- // ../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/constants.js
28
- var daysInYear = 365.2425;
29
- var maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1e3;
30
- var minTime = -maxTime;
31
- var millisecondsInMinute = 6e4;
32
- var secondsInHour = 3600;
33
- var secondsInDay = secondsInHour * 24;
34
- var secondsInWeek = secondsInDay * 7;
35
- var secondsInYear = secondsInDay * daysInYear;
36
- var secondsInMonth = secondsInYear / 12;
37
- var secondsInQuarter = secondsInMonth * 3;
38
- var constructFromSymbol = Symbol.for("constructDateFrom");
39
-
40
- // ../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/constructFrom.js
41
- function constructFrom(date, value) {
42
- if (typeof date === "function") return date(value);
43
- if (date && typeof date === "object" && constructFromSymbol in date)
44
- return date[constructFromSymbol](value);
45
- if (date instanceof Date) return new date.constructor(value);
46
- return new Date(value);
47
- }
48
-
49
- // ../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/toDate.js
50
- function toDate(argument, context) {
51
- return constructFrom(context || argument, argument);
52
- }
53
-
54
- // ../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/addMinutes.js
55
- function addMinutes(date, amount, options) {
56
- const _date = toDate(date, options == null ? void 0 : options.in);
57
- _date.setTime(_date.getTime() + amount * millisecondsInMinute);
58
- return _date;
59
- }
60
-
61
- // src/lib/constants/index.ts
62
- import { z } from "zod";
63
- var SITE_ID = z.string().min(1, 'Environment variable "NEXT_PUBLIC_SITE_ID" must be 1 or more characters').max(32, 'Environment variable "NEXT_PUBLIC_SITE_ID" must not be more than 32 characters').trim().parse(process.env.NEXT_PUBLIC_SITE_ID);
64
- var PLATFORM_ID = z.string().min(1, 'Environment variable "NEXT_PUBLIC_PLATFORM_ID" must be 1 or more characters').max(32, 'Environment variable "NEXT_PUBLIC_PLATFORM_ID" must not be more than 32 characters').trim().parse(process.env.NEXT_PUBLIC_PLATFORM_ID);
65
- var PLATFORM_CODE = z.string().min(4, 'Environment variable "NEXT_PUBLIC_PLATFORM_CODE" must be at least 4 characters').max(8, 'Environment variable "NEXT_PUBLIC_PLATFORM_CODE" must not be more than 8 characters').trim().parse(process.env.NEXT_PUBLIC_PLATFORM_CODE);
66
- var ENVIRONMENT = z.enum(["production", "development"]).catch("development").parse(process.env.NEXT_PUBLIC_ENVIRONMENT);
67
- var BYPASS_RECAPTCHA = z.any().transform(Boolean).catch(false).parse(process.env.NEXT_PUBLIC_BYPASS_RECAPTCHA);
68
- var ACCESS_TOKEN_COOKIE_NAME = "WebPortalAuthAccessToken";
69
- var REFRESH_TOKEN_COOKIE_NAME = "WebPortalAuthRefreshToken";
70
-
71
- export {
72
- __commonJS,
73
- __toESM,
74
- constructFrom,
75
- toDate,
76
- addMinutes,
77
- SITE_ID,
78
- PLATFORM_ID,
79
- PLATFORM_CODE,
80
- ENVIRONMENT,
81
- ACCESS_TOKEN_COOKIE_NAME,
82
- REFRESH_TOKEN_COOKIE_NAME
83
- };
84
- //# sourceMappingURL=chunk-HP26SZP3.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/constants.js","../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/constructFrom.js","../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/toDate.js","../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/addMinutes.js","../src/lib/constants/index.ts"],"sourcesContent":["/**\n * @module constants\n * @summary Useful constants\n * @description\n * Collection of useful date constants.\n *\n * The constants could be imported from `date-fns/constants`:\n *\n * ```ts\n * import { maxTime, minTime } from \"./constants/date-fns/constants\";\n *\n * function isAllowedTime(time) {\n * return time <= maxTime && time >= minTime;\n * }\n * ```\n */\n\n/**\n * @constant\n * @name daysInWeek\n * @summary Days in 1 week.\n */\nexport const daysInWeek = 7;\n\n/**\n * @constant\n * @name daysInYear\n * @summary Days in 1 year.\n *\n * @description\n * How many days in a year.\n *\n * One years equals 365.2425 days according to the formula:\n *\n * > Leap year occurs every 4 years, except for years that are divisible by 100 and not divisible by 400.\n * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days\n */\nexport const daysInYear = 365.2425;\n\n/**\n * @constant\n * @name maxTime\n * @summary Maximum allowed time.\n *\n * @example\n * import { maxTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = 8640000000000001 <= maxTime;\n * //=> false\n *\n * new Date(8640000000000001);\n * //=> Invalid Date\n */\nexport const maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;\n\n/**\n * @constant\n * @name minTime\n * @summary Minimum allowed time.\n *\n * @example\n * import { minTime } from \"./constants/date-fns/constants\";\n *\n * const isValid = -8640000000000001 >= minTime;\n * //=> false\n *\n * new Date(-8640000000000001)\n * //=> Invalid Date\n */\nexport const minTime = -maxTime;\n\n/**\n * @constant\n * @name millisecondsInWeek\n * @summary Milliseconds in 1 week.\n */\nexport const millisecondsInWeek = 604800000;\n\n/**\n * @constant\n * @name millisecondsInDay\n * @summary Milliseconds in 1 day.\n */\nexport const millisecondsInDay = 86400000;\n\n/**\n * @constant\n * @name millisecondsInMinute\n * @summary Milliseconds in 1 minute\n */\nexport const millisecondsInMinute = 60000;\n\n/**\n * @constant\n * @name millisecondsInHour\n * @summary Milliseconds in 1 hour\n */\nexport const millisecondsInHour = 3600000;\n\n/**\n * @constant\n * @name millisecondsInSecond\n * @summary Milliseconds in 1 second\n */\nexport const millisecondsInSecond = 1000;\n\n/**\n * @constant\n * @name minutesInYear\n * @summary Minutes in 1 year.\n */\nexport const minutesInYear = 525600;\n\n/**\n * @constant\n * @name minutesInMonth\n * @summary Minutes in 1 month.\n */\nexport const minutesInMonth = 43200;\n\n/**\n * @constant\n * @name minutesInDay\n * @summary Minutes in 1 day.\n */\nexport const minutesInDay = 1440;\n\n/**\n * @constant\n * @name minutesInHour\n * @summary Minutes in 1 hour.\n */\nexport const minutesInHour = 60;\n\n/**\n * @constant\n * @name monthsInQuarter\n * @summary Months in 1 quarter.\n */\nexport const monthsInQuarter = 3;\n\n/**\n * @constant\n * @name monthsInYear\n * @summary Months in 1 year.\n */\nexport const monthsInYear = 12;\n\n/**\n * @constant\n * @name quartersInYear\n * @summary Quarters in 1 year\n */\nexport const quartersInYear = 4;\n\n/**\n * @constant\n * @name secondsInHour\n * @summary Seconds in 1 hour.\n */\nexport const secondsInHour = 3600;\n\n/**\n * @constant\n * @name secondsInMinute\n * @summary Seconds in 1 minute.\n */\nexport const secondsInMinute = 60;\n\n/**\n * @constant\n * @name secondsInDay\n * @summary Seconds in 1 day.\n */\nexport const secondsInDay = secondsInHour * 24;\n\n/**\n * @constant\n * @name secondsInWeek\n * @summary Seconds in 1 week.\n */\nexport const secondsInWeek = secondsInDay * 7;\n\n/**\n * @constant\n * @name secondsInYear\n * @summary Seconds in 1 year.\n */\nexport const secondsInYear = secondsInDay * daysInYear;\n\n/**\n * @constant\n * @name secondsInMonth\n * @summary Seconds in 1 month\n */\nexport const secondsInMonth = secondsInYear / 12;\n\n/**\n * @constant\n * @name secondsInQuarter\n * @summary Seconds in 1 quarter.\n */\nexport const secondsInQuarter = secondsInMonth * 3;\n\n/**\n * @constant\n * @name constructFromSymbol\n * @summary Symbol enabling Date extensions to inherit properties from the reference date.\n *\n * The symbol is used to enable the `constructFrom` function to construct a date\n * using a reference date and a value. It allows to transfer extra properties\n * from the reference date to the new date. It's useful for extensions like\n * [`TZDate`](https://github.com/date-fns/tz) that accept a time zone as\n * a constructor argument.\n */\nexport const constructFromSymbol = Symbol.for(\"constructDateFrom\");\n","import { constructFromSymbol } from \"./constants.js\";\n\n/**\n * @name constructFrom\n * @category Generic Helpers\n * @summary Constructs a date using the reference date and the value\n *\n * @description\n * The function constructs a new date using the constructor from the reference\n * date and the given value. It helps to build generic functions that accept\n * date extensions.\n *\n * It defaults to `Date` if the passed reference date is a number or a string.\n *\n * Starting from v3.7.0, it allows to construct a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n *\n * @param date - The reference date to take constructor from\n * @param value - The value to create the date\n *\n * @returns Date initialized using the given date and value\n *\n * @example\n * import { constructFrom } from \"./constructFrom/date-fns\";\n *\n * // A function that clones a date preserving the original type\n * function cloneDate<DateType extends Date>(date: DateType): DateType {\n * return constructFrom(\n * date, // Use constructor from the given date\n * date.getTime() // Use the date value to create a new date\n * );\n * }\n */\nexport function constructFrom(date, value) {\n if (typeof date === \"function\") return date(value);\n\n if (date && typeof date === \"object\" && constructFromSymbol in date)\n return date[constructFromSymbol](value);\n\n if (date instanceof Date) return new date.constructor(value);\n\n return new Date(value);\n}\n\n// Fallback for modularized imports:\nexport default constructFrom;\n","import { constructFrom } from \"./constructFrom.js\";\n\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * Starting from v3.7.0, it clones a date using `[Symbol.for(\"constructDateFrom\")]`\n * enabling to transfer extra properties from the reference date to the new date.\n * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)\n * that accept a time zone as a constructor argument.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param argument - The value to convert\n *\n * @returns The parsed date in the local time zone\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nexport function toDate(argument, context) {\n // [TODO] Get rid of `toDate` or `constructFrom`?\n return constructFrom(context || argument, argument);\n}\n\n// Fallback for modularized imports:\nexport default toDate;\n","import { millisecondsInMinute } from \"./constants.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link addMinutes} function options.\n */\n\n/**\n * @name addMinutes\n * @category Minute Helpers\n * @summary Add the specified number of minutes to the given date.\n *\n * @description\n * Add the specified number of minutes to the given date.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param amount - The amount of minutes to be added.\n * @param options - An object with options\n *\n * @returns The new date with the minutes added\n *\n * @example\n * // Add 30 minutes to 10 July 2014 12:00:00:\n * const result = addMinutes(new Date(2014, 6, 10, 12, 0), 30)\n * //=> Thu Jul 10 2014 12:30:00\n */\nexport function addMinutes(date, amount, options) {\n const _date = toDate(date, options?.in);\n _date.setTime(_date.getTime() + amount * millisecondsInMinute);\n return _date;\n}\n\n// Fallback for modularized imports:\nexport default addMinutes;\n","import { z } from 'zod';\r\n\r\nexport const SITE_ID = z\r\n .string()\r\n .min(1, 'Environment variable \"NEXT_PUBLIC_SITE_ID\" must be 1 or more characters')\r\n .max(32, 'Environment variable \"NEXT_PUBLIC_SITE_ID\" must not be more than 32 characters')\r\n .trim()\r\n .parse(process.env.NEXT_PUBLIC_SITE_ID);\r\n\r\nexport const PLATFORM_ID = z\r\n .string()\r\n .min(1, 'Environment variable \"NEXT_PUBLIC_PLATFORM_ID\" must be 1 or more characters')\r\n .max(32, 'Environment variable \"NEXT_PUBLIC_PLATFORM_ID\" must not be more than 32 characters')\r\n .trim()\r\n .parse(process.env.NEXT_PUBLIC_PLATFORM_ID);\r\n\r\nexport const PLATFORM_CODE = z\r\n .string()\r\n .min(4, 'Environment variable \"NEXT_PUBLIC_PLATFORM_CODE\" must be at least 4 characters')\r\n .max(8, 'Environment variable \"NEXT_PUBLIC_PLATFORM_CODE\" must not be more than 8 characters')\r\n .trim()\r\n .parse(process.env.NEXT_PUBLIC_PLATFORM_CODE);\r\n\r\nexport const ENVIRONMENT = z\r\n .enum(['production', 'development'])\r\n .catch('development')\r\n .parse(process.env.NEXT_PUBLIC_ENVIRONMENT);\r\n\r\nexport const BYPASS_RECAPTCHA = z\r\n .any()\r\n .transform(Boolean)\r\n .catch(false)\r\n .parse(process.env.NEXT_PUBLIC_BYPASS_RECAPTCHA);\r\n\r\nexport const ACCESS_TOKEN_COOKIE_NAME: string = 'WebPortalAuthAccessToken';\r\nexport const REFRESH_TOKEN_COOKIE_NAME: string = 'WebPortalAuthRefreshToken';\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCO,IAAM,aAAa;AAgBnB,IAAM,UAAU,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,KAAK;AAgBjD,IAAM,UAAU,CAAC;AAqBjB,IAAM,uBAAuB;AAsE7B,IAAM,gBAAgB;AActB,IAAM,eAAe,gBAAgB;AAOrC,IAAM,gBAAgB,eAAe;AAOrC,IAAM,gBAAgB,eAAe;AAOrC,IAAM,iBAAiB,gBAAgB;AAOvC,IAAM,mBAAmB,iBAAiB;AAa1C,IAAM,sBAAsB,OAAO,IAAI,mBAAmB;;;AClL1D,SAAS,cAAc,MAAM,OAAO;AACzC,MAAI,OAAO,SAAS,WAAY,QAAO,KAAK,KAAK;AAEjD,MAAI,QAAQ,OAAO,SAAS,YAAY,uBAAuB;AAC7D,WAAO,KAAK,mBAAmB,EAAE,KAAK;AAExC,MAAI,gBAAgB,KAAM,QAAO,IAAI,KAAK,YAAY,KAAK;AAE3D,SAAO,IAAI,KAAK,KAAK;AACvB;;;ACNO,SAAS,OAAO,UAAU,SAAS;AAExC,SAAO,cAAc,WAAW,UAAU,QAAQ;AACpD;;;ACdO,SAAS,WAAW,MAAM,QAAQ,SAAS;AAChD,QAAM,QAAQ,OAAO,MAAM,mCAAS,EAAE;AACtC,QAAM,QAAQ,MAAM,QAAQ,IAAI,SAAS,oBAAoB;AAC7D,SAAO;AACT;;;ACjCA,SAAS,SAAS;AAEX,IAAM,UAAU,EACpB,OAAO,EACP,IAAI,GAAG,yEAAyE,EAChF,IAAI,IAAI,gFAAgF,EACxF,KAAK,EACL,MAAM,QAAQ,IAAI,mBAAmB;AAEjC,IAAM,cAAc,EACxB,OAAO,EACP,IAAI,GAAG,6EAA6E,EACpF,IAAI,IAAI,oFAAoF,EAC5F,KAAK,EACL,MAAM,QAAQ,IAAI,uBAAuB;AAErC,IAAM,gBAAgB,EAC1B,OAAO,EACP,IAAI,GAAG,gFAAgF,EACvF,IAAI,GAAG,qFAAqF,EAC5F,KAAK,EACL,MAAM,QAAQ,IAAI,yBAAyB;AAEvC,IAAM,cAAc,EACxB,KAAK,CAAC,cAAc,aAAa,CAAC,EAClC,MAAM,aAAa,EACnB,MAAM,QAAQ,IAAI,uBAAuB;AAErC,IAAM,mBAAmB,EAC7B,IAAI,EACJ,UAAU,OAAO,EACjB,MAAM,KAAK,EACX,MAAM,QAAQ,IAAI,4BAA4B;AAE1C,IAAM,2BAAmC;AACzC,IAAM,4BAAoC;","names":[]}