bako-ui 0.2.0
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/README.md +333 -0
- package/dist/index.d.mts +313 -0
- package/dist/index.d.ts +313 -0
- package/dist/index.js +1164 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +1017 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +77 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Stack/stack.tsx","../src/components/Flex/flex.tsx","../src/components/Grid/grid.tsx","../src/components/Text/text.tsx","../src/components/Heading/heading.tsx","../src/components/Box/box.tsx","../src/components/Badge/badge.tsx","../src/components/Button/button.tsx","../src/components/Card/card.tsx","../src/components/Clipboard/clipboard.tsx","../src/components/CloseButton/close-button.tsx","../src/components/Container/container.tsx","../src/components/IconButton/icon-button.tsx","../src/components/QrCode/qr-code.tsx","../src/components/Separator/separator.tsx","../src/components/Image/image.tsx","../src/components/Icon/icon.tsx","../src/components/Link/link.tsx","../src/components/LinkOverlay/link-overlay.tsx","../src/components/Loader/loader.tsx","../src/components/Skeleton/skeleton.tsx","../src/components/Checkbox/checkbox.tsx","../src/components/Combobox/combobox.tsx","../src/components/Input/input.tsx","../src/components/MoneyField/money-field.tsx","../src/components/Radio/radio.tsx","../src/helpers/floating-styles.ts","../src/components/RhfCombobox/rhf-combobox.tsx","../src/components/RhfInput/rhf-input.tsx","../src/components/RhfMoneyField/rhf-money-field.tsx","../src/components/Select/select.tsx","../src/components/Switch/switch.tsx","../src/components/TextArea/text-area.tsx","../src/components/TextMask/text-mask.tsx","../src/components/Avatar/avatar.tsx","../src/components/EmptyState/empty-state.tsx","../src/components/Tooltip/tooltip.tsx","../src/components/Dialog/dialog.tsx","../src/components/Drawer/drawer.tsx","../src/components/Popover/popover.tsx","../src/components/Toast/toast.tsx","../src/components/Accordion/accordion.tsx","../src/components/Breadcrumb/breadcrumb.tsx","../src/components/List/list.tsx","../src/components/Steps/steps.tsx","../src/components/Tabs/tabs.tsx","../src/components/Menu/menu.tsx","../src/icons/Check/index.tsx","../src/icons/Close/index.tsx","../src/icons/Wallet/index.tsx","../src/provider/theme-provider.tsx","../src/theme/recipes/badge.ts","../src/theme/recipes/button.ts","../src/theme/recipes/card.ts","../src/theme/recipes/icon.ts","../src/theme/recipes/input.ts","../src/theme/recipes/link.ts","../src/theme/recipes/index.ts","../src/theme/semantic-tokens/colors.ts","../src/theme/semantic-tokens/index.ts","../src/theme/slot-recipes/menu.ts","../src/theme/slot-recipes/tabs.ts","../src/theme/slot-recipes/index.ts","../src/theme/tokens/colors.ts","../src/theme/tokens/fonts.ts","../src/theme/tokens/index.ts","../src/theme/index.ts"],"names":["ChakraStack","ChakraHStack","ChakraVStack","ChakraFlex","ChakraGrid","ChakraGridItem","ChakraText","ChakraHeading","ChakraBox","ChakraBadge","jsx","ChakraButton","ChakraCard","ChakraClipboard","CloseButton","ChakraCloseButton","ChakraContainer","forwardRef","IconButton","ChakraIconButton","ChakraQrCode","ChakraSeparator","ChakraImage","Icon","ChakraIcon","Link","ChakraLink","LinkOverlay","ChakraLinkOverlay","ChakraSkeleton","ChakraSkeletonCircle","ChakraSkeletonText","Checkbox","ChakraCheckbox","ChakraCombobox","Input","ChakraInput","config","RadioGroup","ChakraRadioGroup","Radio","jsxs","useCallback","useMemo","Field","Combobox","Portal","HStack","Spinner","useController","InputGroup","Box","ChakraSelect","Switch","ChakraSwitch","ChakraTextarea","ChakraAvatar","ChakraEmptyState","ChakraTooltip","ChakraDialog","ChakraDrawer","ChakraPopover","ChakraToast","ChakraAccordion","ChakraBreadcrumb","ChakraList","ChakraSteps","ChakraTabs","ChakraMenu","createIcon","defineRecipe","defineSlotRecipe","defineTokens"],"mappings":"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","file":"index.mjs","sourcesContent":["import {\n HStack as ChakraHStack,\n Stack as ChakraStack,\n VStack as ChakraVStack,\n} from '@chakra-ui/react';\n\nexport const Stack = ChakraStack;\nexport const HStack = ChakraHStack;\nexport const VStack = ChakraVStack;\n\nexport default Stack;\n","import { Flex as ChakraFlex, Spacer, Center } from '@chakra-ui/react';\n\nexport default ChakraFlex;\n\nexport { Spacer, Center };\n","import {\n Grid as ChakraGrid,\n GridItem as ChakraGridItem,\n type GridItemProps,\n} from '@chakra-ui/react';\nimport type { GridProps } from './grid.types';\n\nexport function Grid(props: GridProps) {\n return <ChakraGrid {...props} />;\n}\n\nexport function GridItem(props: GridItemProps) {\n return <ChakraGridItem {...props} />;\n}\n","import { Text as ChakraText } from '@chakra-ui/react';\n\nexport default ChakraText;\n","import { Heading as ChakraHeading } from '@chakra-ui/react';\n\nexport default ChakraHeading;\n","import { Box as ChakraBox } from '@chakra-ui/react';\n\nexport default ChakraBox;\n","import { Badge as ChakraBadge } from '@chakra-ui/react';\n\nexport const Badge = ChakraBadge;\n\nexport default Badge;\n","import { Button as ChakraButton } from '@chakra-ui/react';\nimport type { ButtonProps } from './button.types';\n\nexport default function Button({\n colorPalette = 'primary',\n ...props\n}: ButtonProps) {\n return <ChakraButton colorPalette={colorPalette} {...props} />;\n}\n","import { Card as ChakraCard } from '@chakra-ui/react';\n\nexport const Card = ChakraCard;\nexport default Card;\n","import { Clipboard as ChakraClipboard, useClipboard } from '@chakra-ui/react';\n\nexport const Clipboard = ChakraClipboard;\nexport { useClipboard };\n\nexport default Clipboard;\n","import { CloseButton as ChakraCloseButton } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { CloseButtonProps } from './close-button.types';\n\nexport default forwardRef<HTMLButtonElement, CloseButtonProps>(\n function CloseButton(props, ref) {\n return <ChakraCloseButton ref={ref} {...props} />;\n }\n);\n","import { Container as ChakraContainer } from '@chakra-ui/react';\nimport type { ContainerProps } from './container.types';\n\nexport default function Container(props: ContainerProps) {\n return <ChakraContainer {...props} />;\n}\n","import { IconButton as ChakraIconButton } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { IconButtonProps } from './icon-button.types';\n\nexport default forwardRef<HTMLButtonElement, IconButtonProps>(\n function IconButton(props, ref) {\n return <ChakraIconButton ref={ref} {...props} />;\n }\n);\n","import { QrCode as ChakraQrCode } from '@chakra-ui/react';\n\nexport const QrCode = ChakraQrCode;\n\nexport default QrCode;\n","import { Separator as ChakraSeparator } from '@chakra-ui/react';\n\nexport default ChakraSeparator;\n","import { Image as ChakraImage } from '@chakra-ui/react';\n\nexport default ChakraImage;\n","import { Icon as ChakraIcon } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { IconProps } from './icon.types';\n\nconst Icon = forwardRef<SVGSVGElement, IconProps>(function Icon(props, ref) {\n return <ChakraIcon ref={ref} {...props} />;\n});\n\nexport default Icon;\n\n// Re-export for direct access when needed\nexport { ChakraIcon };\n","import { Link as ChakraLink } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { LinkProps } from './link.types';\n\nexport default forwardRef<HTMLAnchorElement, LinkProps>(\n function Link(props, ref) {\n return <ChakraLink ref={ref} {...props} />;\n }\n);\n","import { LinkOverlay as ChakraLinkOverlay } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { LinkOverlayProps } from './link-overlay.types';\n\nexport default forwardRef<HTMLAnchorElement, LinkOverlayProps>(\n function LinkOverlay(props, ref) {\n return <ChakraLinkOverlay ref={ref} {...props} />;\n }\n);\n","import { Spinner } from '@chakra-ui/react';\n\n// Export as Loader for better naming\nexport default Spinner;\n","import {\n Skeleton as ChakraSkeleton,\n SkeletonCircle as ChakraSkeletonCircle,\n SkeletonText as ChakraSkeletonText,\n} from '@chakra-ui/react';\n\nexport const Skeleton = ChakraSkeleton;\nexport const SkeletonCircle = ChakraSkeletonCircle;\nexport const SkeletonText = ChakraSkeletonText;\n\nexport default Skeleton;\n","import { Checkbox as ChakraCheckbox } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { CheckboxProps } from './checkbox.types';\n\nconst Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(\n function Checkbox(props, ref) {\n const { icon, children, inputProps, rootRef, ...rest } = props;\n\n return (\n <ChakraCheckbox.Root ref={rootRef} {...rest}>\n <ChakraCheckbox.HiddenInput ref={ref} {...inputProps} />\n <ChakraCheckbox.Control>\n {icon || <ChakraCheckbox.Indicator />}\n </ChakraCheckbox.Control>\n {children != null && (\n <ChakraCheckbox.Label>{children}</ChakraCheckbox.Label>\n )}\n </ChakraCheckbox.Root>\n );\n }\n);\n\nexport default Checkbox;\n","import { Combobox as ChakraCombobox, Portal } from '@chakra-ui/react';\n\nexport const Combobox: typeof ChakraCombobox & { Portal: typeof Portal } = {\n ...ChakraCombobox,\n Portal: Portal,\n};\n\nexport default Combobox;\n","import { Input as ChakraInput, Field, InputGroup } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { InputProps } from './input.types';\n\nexport default forwardRef<HTMLInputElement, InputProps>(\n function Input(props, ref) {\n return <ChakraInput ref={ref} {...props} />;\n }\n);\n\nexport { Field, InputGroup };\n","import { Input as ChakraInput } from '@chakra-ui/react';\nimport { type ChangeEvent, useCallback, useMemo, useRef } from 'react';\nimport type { MoneyFieldProps } from './money-field.types';\n\nexport function MoneyField({\n value,\n onChange,\n thousandSeparator = ',',\n decimalSeparator = '.',\n decimalScale = 2,\n ...props\n}: MoneyFieldProps) {\n const inputRef = useRef<HTMLInputElement>(null);\n\n const config = useMemo(\n () => ({\n thousandSeparator,\n decimalSeparator,\n decimalScale,\n }),\n [thousandSeparator, decimalSeparator, decimalScale]\n );\n\n const formatNumber = useCallback(\n (num: string | number): string => {\n const numStr = String(num).replace(/[^\\d.-]/g, '');\n if (!numStr || numStr === '-') return '';\n\n const [integerPart, decimalPart] = numStr.split('.');\n const formattedInteger = integerPart.replace(\n /\\B(?=(\\d{3})+(?!\\d))/g,\n config.thousandSeparator\n );\n\n let result = formattedInteger;\n if (decimalPart !== undefined) {\n const limitedDecimal = decimalPart.slice(0, config.decimalScale);\n result = `${formattedInteger}${config.decimalSeparator}${limitedDecimal}`;\n }\n\n return result;\n },\n [config]\n );\n\n const unformatNumber = useCallback(\n (formatted: string): string => {\n return formatted\n .replace(new RegExp(`\\\\${config.thousandSeparator}`, 'g'), '')\n .replace(new RegExp(`\\\\${config.decimalSeparator}`, 'g'), '.');\n },\n [config]\n );\n\n const displayValue = useMemo(() => {\n if (!value && value !== 0) return '';\n return formatNumber(value);\n }, [value, formatNumber]);\n\n const handleChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n const inputValue = event.target.value;\n const cursorPosition = event.target.selectionStart || 0;\n\n const rawValue = unformatNumber(inputValue);\n\n // Validate numeric input\n if (\n rawValue === '' ||\n rawValue === '-' ||\n !Number.isNaN(Number(rawValue))\n ) {\n onChange(rawValue);\n\n // Restore cursor position after formatting\n setTimeout(() => {\n if (inputRef.current) {\n const newFormattedValue = formatNumber(rawValue);\n const diff = newFormattedValue.length - inputValue.length;\n inputRef.current.setSelectionRange(\n cursorPosition + diff,\n cursorPosition + diff\n );\n }\n }, 0);\n }\n },\n [formatNumber, unformatNumber, onChange]\n );\n\n return (\n <ChakraInput\n ref={inputRef}\n value={displayValue}\n type=\"text\"\n onChange={handleChange}\n color=\"fg.inverted\"\n {...props}\n />\n );\n}\n","import { RadioGroup as ChakraRadioGroup } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { RadioGroupProps, RadioProps } from './radio.types';\n\n// RadioGroup wrapper\nexport const RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n function RadioGroup(props, ref) {\n return <ChakraRadioGroup.Root ref={ref} spaceX={2} {...props} />;\n }\n);\n\n// Radio.Item wrapper\nconst Radio = forwardRef<HTMLInputElement, RadioProps>(\n function Radio(props, ref) {\n const { children, inputProps, ...rest } = props;\n\n return (\n <ChakraRadioGroup.Item {...rest}>\n <ChakraRadioGroup.ItemHiddenInput ref={ref} {...inputProps} />\n <ChakraRadioGroup.ItemControl />\n {children != null && (\n <ChakraRadioGroup.ItemText>{children}</ChakraRadioGroup.ItemText>\n )}\n </ChakraRadioGroup.Item>\n );\n }\n);\n\nexport default Radio;\n","import { defineStyle } from '@chakra-ui/react';\n\nexport const floatingStyles = ({\n hasValue,\n withStartIcon,\n}: {\n hasValue: boolean;\n withStartIcon: boolean;\n}) =>\n defineStyle({\n pos: 'absolute',\n px: '1',\n top: hasValue ? '0' : '50%',\n transform: hasValue ? 'none' : 'translateY(-50%)',\n insetStart: withStartIcon ? '9' : '2.5',\n color: 'bg.emphasized',\n fontWeight: 'normal',\n pointerEvents: 'none',\n transition: 'all 0.2s',\n fontSize: hasValue ? '2xs' : 'sm',\n _peerPlaceholderShown: {\n insetStart: withStartIcon ? '9' : '2.5',\n },\n _peerFocusVisible: {\n top: '0',\n transform: 'none',\n insetStart: withStartIcon ? '9' : '2.5',\n fontSize: '2xs',\n },\n });\n","import {\n Combobox,\n type ComboboxInputValueChangeDetails,\n type ComboboxOpenChangeDetails,\n type ComboboxValueChangeDetails,\n Field,\n Flex,\n HStack,\n Image,\n Portal,\n Span,\n Spinner,\n useFilter,\n useListCollection,\n} from '@chakra-ui/react';\nimport type React from 'react';\nimport { useCallback, useMemo, useState } from 'react';\nimport { flushSync } from 'react-dom';\nimport {\n type FieldPath,\n type FieldValues,\n useController,\n} from 'react-hook-form';\nimport { floatingStyles } from '../../helpers/floating-styles';\nimport type {\n RhfComboboxOptions,\n RhfComboboxProps,\n} from './rhf-combobox.types';\n\nfunction ComboboxHiddenInput(props: React.ComponentProps<'input'>) {\n return <input type=\"hidden\" {...props} />;\n}\n\nexport function RhfCombobox<\n TFieldValues extends FieldValues,\n TName extends FieldPath<TFieldValues>,\n>({\n control,\n name,\n defaultValue,\n label,\n error,\n options,\n disabled = false,\n helperText,\n isLoadingOptions = false,\n noOptionsText = 'No items found',\n openOnFocus = true,\n slotProps,\n variant,\n clearTriggerIcon,\n showTrigger = false,\n allowCustomValue = true,\n}: RhfComboboxProps<TFieldValues, TName>) {\n const {\n field: { value, onChange, ref, ...rest },\n } = useController({ defaultValue, control, name });\n const { contains } = useFilter({ sensitivity: 'base' });\n const { collection, filter } = useListCollection({\n initialItems: options,\n filter: contains,\n });\n\n const [inputValue, setInputValue] = useState(value || '');\n\n const handleValueChange = useCallback(\n (details: ComboboxValueChangeDetails<RhfComboboxOptions>) => {\n const newValue = details.value[0] || '';\n onChange(newValue);\n setInputValue(newValue);\n },\n [onChange]\n );\n\n const handleInputValueChange = useCallback(\n (details: ComboboxInputValueChangeDetails) => {\n // Atualiza o estado local do inputValue\n setInputValue(details.inputValue);\n\n // Filtra as opções baseado no que o usuário digita\n // Usando flushSync para garantir que o filtro aconteça antes do próximo render\n flushSync(() => {\n filter(details.inputValue);\n });\n\n // Se allowCustomValue está habilitado, atualiza o form conforme digita\n if (allowCustomValue) {\n onChange(details.inputValue);\n }\n },\n [filter, allowCustomValue, onChange]\n );\n\n const handleOpenChange = useCallback(\n (details: ComboboxOpenChangeDetails) => {\n // Se allowCustomValue está habilitado e está tentando abrir,\n // verifica se há opções correspondentes para prevenir flicker\n if (allowCustomValue && details.open && inputValue.trim() !== '') {\n const hasMatchingOptions = collection.items.length > 0;\n if (!hasMatchingOptions) {\n // Não permite abrir se não houver matches (previne flicker)\n return;\n }\n }\n slotProps?.root?.onOpenChange?.(details);\n },\n [slotProps?.root, allowCustomValue, inputValue, collection.items.length]\n );\n\n const hasValue = useMemo(() => {\n if (!value) {\n return false;\n }\n if (Array.isArray(value)) {\n return value.length > 0;\n }\n const stringValue = typeof value === 'string' ? value : String(value);\n return !!stringValue || stringValue.length > 0;\n }, [value]);\n\n const inputProps = label\n ? {\n pt: 2,\n px: 3,\n placeholder: '',\n }\n : {};\n\n return (\n <Field.Root invalid={!!error}>\n {label && (\n <Field.Label\n color=\"bg.emphasized\"\n htmlFor={rest.name}\n {...slotProps?.label}\n css={floatingStyles({\n hasValue,\n withStartIcon: false,\n })}\n >\n {label}\n </Field.Label>\n )}\n <Combobox.Root\n collection={collection}\n width=\"full\"\n variant={variant}\n inputValue={inputValue}\n value={value ? [value] : []}\n borderRadius=\"lg\"\n onValueChange={handleValueChange}\n onOpenChange={handleOpenChange}\n onInputValueChange={handleInputValueChange}\n disabled={disabled}\n openOnClick={openOnFocus}\n multiple={false}\n invalid={!!error}\n allowCustomValue={allowCustomValue}\n selectionBehavior=\"preserve\"\n {...slotProps?.root}\n >\n <Combobox.Control>\n <Combobox.Input\n color=\"fg\"\n ref={ref}\n {...inputProps}\n {...slotProps?.input}\n />\n <Combobox.IndicatorGroup>\n {clearTriggerIcon ? (\n <Combobox.ClearTrigger hidden={!hasValue} color=\"unset\" asChild>\n {clearTriggerIcon}\n </Combobox.ClearTrigger>\n ) : (\n <Combobox.ClearTrigger hidden={!hasValue} color=\"unset\" />\n )}\n {showTrigger && <Combobox.Trigger />}\n </Combobox.IndicatorGroup>\n </Combobox.Control>\n\n <ComboboxHiddenInput name={rest.name} value={value || ''} />\n\n {helperText && <Field.HelperText>{helperText}</Field.HelperText>}\n {error && <Field.ErrorText>{error.message}</Field.ErrorText>}\n <Portal>\n <Combobox.Positioner>\n <Combobox.Content>\n {!allowCustomValue && (\n <Combobox.Empty>{noOptionsText}</Combobox.Empty>\n )}\n\n {isLoadingOptions && (\n <HStack p=\"2\">\n <Spinner size=\"xs\" borderWidth=\"1px\" />\n <Span>Loading...</Span>\n </HStack>\n )}\n\n {!isLoadingOptions &&\n collection.items.map((item) => (\n <Combobox.Item item={item} key={item.value}>\n {!item.imageUrl && item.label}\n {item.imageUrl && (\n <Flex gap={2} align=\"center\">\n <Image\n src={item.imageUrl}\n boxSize=\"5\"\n alt={`${item.label} image`}\n />\n <Span>{item.label}</Span>\n </Flex>\n )}\n <Combobox.ItemIndicator />\n </Combobox.Item>\n ))}\n </Combobox.Content>\n </Combobox.Positioner>\n </Portal>\n </Combobox.Root>\n </Field.Root>\n );\n}\n","import { Box, Input as ChakraInput, Field, InputGroup } from '@chakra-ui/react';\nimport { useMemo } from 'react';\nimport {\n type FieldPath,\n type FieldValues,\n useController,\n} from 'react-hook-form';\nimport { floatingStyles } from '../../helpers/floating-styles';\nimport type { RhfInputProps } from './rhf-input.types';\n\nexport function RhfInput<\n TFieldValues extends FieldValues,\n TName extends FieldPath<TFieldValues>,\n>({\n control,\n defaultValue,\n name,\n label,\n error,\n type = 'text',\n helperText,\n slotProps,\n ...props\n}: RhfInputProps<TFieldValues, TName>) {\n const {\n field: { value, onChange, ref, ...rest },\n } = useController({ control, defaultValue, name });\n const { inputGroup } = slotProps || {};\n\n const hasValue = useMemo(\n () => value != null && value !== '' && value.toString().length > 0,\n [value]\n );\n\n return (\n <Field.Root invalid={!!error}>\n <InputGroup borderRadius=\"sm\" {...inputGroup}>\n <Box position=\"relative\" w=\"full\" {...slotProps?.root}>\n <ChakraInput\n value={value}\n ref={ref}\n borderTopLeftRadius={inputGroup?.startAddon ? 'none' : 'sm'}\n borderBottomLeftRadius={inputGroup?.startAddon ? 'none' : 'sm'}\n borderTopRightRadius={inputGroup?.endAddon ? 'none' : 'sm'}\n borderBottomRightRadius={inputGroup?.endAddon ? 'none' : 'sm'}\n type={type}\n onChange={onChange}\n className={`peer ${slotProps?.input?.className || ''}`}\n pt={2}\n pl={inputGroup?.startElement ? '10' : '3'}\n pr={inputGroup?.endElement ? '10' : '3'}\n color=\"fg.inverted\"\n {...rest}\n {...slotProps?.input}\n {...props}\n placeholder=\" \"\n />\n <Field.Label\n css={floatingStyles({\n hasValue,\n withStartIcon: !!inputGroup?.startElement,\n })}\n htmlFor={name}\n {...slotProps?.label}\n >\n {label}\n </Field.Label>\n </Box>\n </InputGroup>\n {error?.message && <Field.ErrorText>{error?.message}</Field.ErrorText>}\n {helperText && (\n <Field.HelperText color=\"bg.emphasized\">{helperText}</Field.HelperText>\n )}\n </Field.Root>\n );\n}\n","import { Box, Field, InputGroup } from '@chakra-ui/react';\nimport { useMemo } from 'react';\nimport {\n type FieldPath,\n type FieldValues,\n useController,\n} from 'react-hook-form';\nimport { floatingStyles } from '../../helpers/floating-styles';\nimport { MoneyField } from '../MoneyField/money-field';\nimport type { RhfMoneyFieldProps } from './rhf-money-field.types';\n\nexport function RhfMoneyField<\n TFieldValues extends FieldValues,\n TName extends FieldPath<TFieldValues>,\n>({\n control,\n defaultValue,\n name,\n label,\n error,\n thousandSeparator,\n decimalSeparator,\n decimalScale,\n helperText,\n slotProps,\n disabled = false,\n ...props\n}: RhfMoneyFieldProps<TFieldValues, TName>) {\n const {\n field: { value, onChange, ...rest },\n } = useController({ control, defaultValue, name });\n\n const hasValue = useMemo(() => {\n return String(value).length > 0;\n }, [value]);\n\n return (\n <Field.Root invalid={!!error}>\n <InputGroup borderRadius=\"sm\" {...slotProps?.inputGroup}>\n <Box position=\"relative\" w=\"full\" {...slotProps?.root}>\n <MoneyField\n value={value}\n onChange={onChange}\n thousandSeparator={thousandSeparator}\n decimalSeparator={decimalSeparator}\n decimalScale={decimalScale}\n disabled={disabled}\n className={`peer ${props?.className || ''}`}\n pt={2}\n pl={slotProps?.inputGroup?.startElement ? '10' : '3'}\n pr={slotProps?.inputGroup?.endElement ? '10' : '3'}\n color=\"fg.inverted\"\n borderTopLeftRadius={\n slotProps?.inputGroup?.startAddon ? 'none' : 'sm'\n }\n borderBottomLeftRadius={\n slotProps?.inputGroup?.startAddon ? 'none' : 'sm'\n }\n borderTopRightRadius={\n slotProps?.inputGroup?.endAddon ? 'none' : 'sm'\n }\n borderBottomRightRadius={\n slotProps?.inputGroup?.endAddon ? 'none' : 'sm'\n }\n placeholder=\" \"\n {...rest}\n {...props}\n />\n <Field.Label\n css={floatingStyles({\n hasValue,\n withStartIcon: !!slotProps?.inputGroup?.startElement,\n })}\n htmlFor={rest.name}\n {...slotProps?.label}\n >\n {label}\n </Field.Label>\n </Box>\n </InputGroup>\n {error?.message && <Field.ErrorText>{error.message}</Field.ErrorText>}\n {helperText && (\n <Field.HelperText color=\"bg.emphasized\">{helperText}</Field.HelperText>\n )}\n </Field.Root>\n );\n}\n","import { Select as ChakraSelect, Portal } from '@chakra-ui/react';\n\nexport const Select: typeof ChakraSelect & { Portal: typeof Portal } = {\n ...ChakraSelect,\n Portal: Portal,\n};\n\nexport default Select;\n","import { Switch as ChakraSwitch } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport type { SwitchProps } from './switch.types';\n\nconst Switch = forwardRef<HTMLInputElement, SwitchProps>(\n function Switch(props, ref) {\n const { children, inputProps, thumbLabel, ...rest } = props;\n\n return (\n <ChakraSwitch.Root {...rest}>\n <ChakraSwitch.HiddenInput ref={ref} {...inputProps} />\n <ChakraSwitch.Control>\n <ChakraSwitch.Thumb />\n {thumbLabel && (\n <ChakraSwitch.Indicator fallback={thumbLabel.off}>\n {thumbLabel.on}\n </ChakraSwitch.Indicator>\n )}\n </ChakraSwitch.Control>\n {children != null && (\n <ChakraSwitch.Label>{children}</ChakraSwitch.Label>\n )}\n </ChakraSwitch.Root>\n );\n }\n);\n\nexport default Switch;\n","import { Textarea as ChakraTextarea } from '@chakra-ui/react';\nimport type { TextAreaProps } from './text-area.types';\n\nexport default function TextArea(props: TextAreaProps) {\n return <ChakraTextarea {...props} />;\n}\n","'use client';\n\nimport { Input, mergeRefs } from '@chakra-ui/react';\nimport { forwardRef } from 'react';\nimport { withMask } from 'use-mask-input';\nimport type { TextMaskProps } from './text-mask.types';\n\nconst defaultMaskOptions = {\n placeholder: '',\n showMaskOnFocus: false,\n showMaskOnHover: false,\n};\n\nconst TextMask = forwardRef<HTMLInputElement, TextMaskProps>(\n ({ mask, maskOptions, ...props }, ref) => {\n const mergedMaskOptions = {\n ...defaultMaskOptions,\n ...maskOptions,\n };\n return (\n <Input\n ref={mergeRefs(ref, withMask(mask, mergedMaskOptions))}\n {...props}\n />\n );\n }\n);\n\nexport default TextMask;\n","import { Avatar as ChakraAvatar, Group } from '@chakra-ui/react';\nimport type { AvatarGroupProps, AvatarProps } from './avatar.types';\n\nexport function Avatar(props: AvatarProps) {\n const { name, src, fallback, slotProps, ...rest } = props;\n\n const { image: imageProps = {}, fallback: fallbackProps = {} } =\n slotProps || {};\n\n return (\n <ChakraAvatar.Root {...rest}>\n {src && <ChakraAvatar.Image src={src} alt={name} {...imageProps} />}\n <ChakraAvatar.Fallback name={name} {...fallbackProps}>\n {fallback || (name ? undefined : <ChakraAvatar.Icon />)}\n </ChakraAvatar.Fallback>\n </ChakraAvatar.Root>\n );\n}\n\nexport function AvatarGroup(props: AvatarGroupProps) {\n return <Group {...props} />;\n}\n\nexport default Avatar;\n","import { EmptyState as ChakraEmptyState } from '@chakra-ui/react';\n\nexport const EmptyState = ChakraEmptyState;\n\nexport default EmptyState;\n","import { Tooltip as ChakraTooltip, Portal } from '@chakra-ui/react';\nimport type { TooltipProps } from './tooltip.types';\n\nexport default function Tooltip(props: TooltipProps) {\n const { children, content, showArrow = true, ...rest } = props;\n\n return (\n <ChakraTooltip.Root {...rest}>\n <ChakraTooltip.Trigger asChild>{children}</ChakraTooltip.Trigger>\n <Portal>\n <ChakraTooltip.Positioner>\n <ChakraTooltip.Content>\n {showArrow && (\n <ChakraTooltip.Arrow>\n <ChakraTooltip.ArrowTip />\n </ChakraTooltip.Arrow>\n )}\n {content}\n </ChakraTooltip.Content>\n </ChakraTooltip.Positioner>\n </Portal>\n </ChakraTooltip.Root>\n );\n}\n","import { Dialog as ChakraDialog, Portal } from '@chakra-ui/react';\n\nexport const Dialog: typeof ChakraDialog & { Portal: typeof Portal } = {\n ...ChakraDialog,\n Portal: Portal,\n};\n\nexport default Dialog;\n","import { Drawer as ChakraDrawer, Portal } from '@chakra-ui/react';\n\nexport const Drawer: typeof ChakraDrawer & { Portal: typeof Portal } = {\n ...ChakraDrawer,\n Portal: Portal,\n};\n\nexport default Drawer;\n","import { Popover as ChakraPopover, Portal } from '@chakra-ui/react';\n\nexport const Popover: typeof ChakraPopover & { Portal: typeof Portal } = {\n ...ChakraPopover,\n Portal: Portal,\n};\n\nexport default Popover;\n","import {\n Toast as ChakraToast,\n type CreateToasterReturn,\n createToaster,\n Toaster,\n} from '@chakra-ui/react';\n\nexport const toaster: CreateToasterReturn = createToaster({\n placement: 'bottom-end',\n overlap: false,\n});\n\nexport const Toast = { ...ChakraToast, Toaster };\n\n// Export createToaster for creating custom toaster instances\nexport { createToaster };\nexport type { CreateToasterReturn };\n\nexport default Toast;\n","import {\n Accordion as ChakraAccordion,\n useAccordion,\n useAccordionContext,\n useAccordionItemContext,\n} from '@chakra-ui/react';\n\nexport const Accordion = {\n ...ChakraAccordion,\n} as typeof ChakraAccordion;\n\nexport { useAccordion, useAccordionContext, useAccordionItemContext };\n","import { Breadcrumb as ChakraBreadcrumb } from '@chakra-ui/react';\n\nexport const Breadcrumb = {\n ...ChakraBreadcrumb,\n} as typeof ChakraBreadcrumb;\n","import { List as ChakraList } from '@chakra-ui/react';\n\nexport const List = ChakraList;\nexport default List;\n","import {\n Steps as ChakraSteps,\n useSteps,\n useStepsContext,\n useStepsItemContext,\n} from '@chakra-ui/react';\n\nexport const Steps = {\n ...ChakraSteps,\n} as typeof ChakraSteps;\n\nexport { useSteps, useStepsContext, useStepsItemContext };\n","import { Tabs as ChakraTabs } from '@chakra-ui/react';\n\nexport const Tabs = ChakraTabs;\nexport default Tabs;\n","import { Menu as ChakraMenu, Portal } from '@chakra-ui/react';\n\nexport const Menu: typeof ChakraMenu & { Portal: typeof Portal } = {\n ...ChakraMenu,\n Portal: Portal,\n};\n\nexport default Menu;\n","import type { IconProps } from '@chakra-ui/react';\nimport { createIcon } from '@chakra-ui/react';\nimport type { FC } from 'react';\n\nexport const CheckIcon: FC<IconProps> = createIcon({\n displayName: 'CheckIcon',\n viewBox: '0 0 24 24',\n path: (\n <svg\n fill=\"currentColor\"\n width=\"24px\"\n height=\"24px\"\n viewBox=\"0 0 0.72 0.72\"\n xmlns=\"http://www.w3.org/2000/svg\"\n enable-background=\"new 0 0 24 24\"\n >\n <title>check</title>\n <path d=\"M0.561 0.216c-0.012 -0.012 -0.03 -0.012 -0.042 0l-0.225 0.225 -0.093 -0.093c-0.012 -0.012 -0.03 -0.012 -0.042 0s-0.012 0.03 0 0.042l0.114 0.114c0.006 0.006 0.012 0.009 0.021 0.009s0.015 -0.003 0.021 -0.009l0.246 -0.246c0.012 -0.012 0.012 -0.03 0 -0.042\" />\n </svg>\n ),\n});\n","import type { IconProps } from '@chakra-ui/react';\nimport { createIcon } from '@chakra-ui/react';\nimport type { FC } from 'react';\n\nexport const CloseIcon: FC<IconProps> = createIcon({\n displayName: 'CloseIcon',\n viewBox: '0 0 24 24',\n path: (\n <svg\n width=\"24px\"\n height=\"24px\"\n viewBox=\"0 0 0.48 0.48\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n >\n <title>close</title>\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"m0.24 0.261 0.109 0.109 0.021 -0.021L0.261 0.24l0.109 -0.109 -0.021 -0.021L0.24 0.219 0.131 0.109l-0.021 0.021L0.219 0.24l-0.109 0.109 0.021 0.021z\"\n />\n </svg>\n ),\n});\n","import type { IconProps } from '@chakra-ui/react';\nimport { createIcon } from '@chakra-ui/react';\nimport type { FC } from 'react';\n\nexport const WalletIcon: FC<IconProps> = createIcon({\n displayName: 'WalletIcon',\n viewBox: '0 0 21 18',\n path: (\n <path\n d=\"M20 4H21V14H20V17C20 17.2652 19.8946 17.5196 19.7071 17.7071C19.5196 17.8946 19.2652 18 19 18H1C0.734784 18 0.48043 17.8946 0.292893 17.7071C0.105357 17.5196 0 17.2652 0 17V1C0 0.734784 0.105357 0.48043 0.292893 0.292893C0.48043 0.105357 0.734784 0 1 0H19C19.2652 0 19.5196 0.105357 19.7071 0.292893C19.8946 0.48043 20 0.734784 20 1V4ZM18 14H12C10.6739 14 9.40215 13.4732 8.46447 12.5355C7.52678 11.5979 7 10.3261 7 9C7 7.67392 7.52678 6.40215 8.46447 5.46447C9.40215 4.52678 10.6739 4 12 4H18V2H2V16H18V14ZM19 12V6H12C11.2044 6 10.4413 6.31607 9.87868 6.87868C9.31607 7.44129 9 8.20435 9 9C9 9.79565 9.31607 10.5587 9.87868 11.1213C10.4413 11.6839 11.2044 12 12 12H19ZM12 8H15V10H12V8Z\"\n fill=\"currentColor\"\n />\n ),\n});\n","import { ChakraProvider, type ChakraProviderProps } from '@chakra-ui/react';\n\nexport type ThemeProviderProps = ChakraProviderProps;\n\nexport const ThemeProvider = (props: ThemeProviderProps) => {\n return <ChakraProvider {...props} />;\n};\n","import { defineRecipe } from '@chakra-ui/react';\n\nexport const badgeRecipe = defineRecipe({\n base: {\n borderRadius: 'xl',\n },\n variants: {\n variant: {\n outline: {\n border: '1px solid',\n borderColor: 'colorPalette.subtle/25',\n bg: 'colorPalette.subtle/10',\n color: 'colorPalette.solid',\n },\n },\n },\n});\n","import { defineRecipe } from '@chakra-ui/react';\n\nexport const buttonRecipe = defineRecipe({\n base: {\n borderRadius: 'lg',\n },\n variants: {\n variant: {},\n },\n defaultVariants: { colorPalette: 'primary' },\n});\n","import { defineRecipe } from '@chakra-ui/react';\n\nexport const cardRecipe = defineRecipe({\n variants: {\n variant: {\n subtle: {},\n },\n },\n defaultVariants: {\n variant: 'subtle',\n },\n});\n","import { defineRecipe } from '@chakra-ui/react';\n\nexport const iconRecipe = defineRecipe({\n variants: {\n size: {\n inherit: {},\n xs: { boxSize: '3' },\n sm: { boxSize: '4' },\n md: { boxSize: '5' },\n lg: { boxSize: '6' },\n xl: { boxSize: '7' },\n '2xl': { boxSize: '8' },\n },\n },\n\n defaultVariants: {\n size: 'md',\n },\n});\n","import { defineRecipe } from '@chakra-ui/react';\n\nexport const inputRecipe = defineRecipe({\n variants: {\n variant: {\n outline: {\n bg: 'transparent',\n borderWidth: '1px',\n borderColor: 'gray.450',\n focusVisibleRing: 'inside',\n outlineWidth: '3px',\n focusRingColor: 'var(--focus-color)',\n _focusVisible: {\n borderColor: 'border',\n },\n },\n },\n },\n});\n","import { defineRecipe } from '@chakra-ui/react';\n\nexport const linkRecipe = defineRecipe({\n variants: {\n variant: {\n underline: {\n color: 'textPrimary',\n },\n plain: {\n color: 'textPrimary',\n },\n },\n },\n});\n","import { badgeRecipe } from './badge';\nimport { buttonRecipe } from './button';\nimport { cardRecipe } from './card';\nimport { iconRecipe } from './icon';\nimport { inputRecipe } from './input';\nimport { linkRecipe } from './link';\n\nexport const recipes = {\n button: buttonRecipe,\n card: cardRecipe,\n input: inputRecipe,\n badge: badgeRecipe,\n icon: iconRecipe,\n link: linkRecipe,\n};\n","import { defineSemanticTokens } from '@chakra-ui/react';\n\nexport const semanticColors = defineSemanticTokens.colors({\n bg: {\n DEFAULT: {\n value: {\n _light: '{colors.background}',\n _dark: '{colors.background}',\n },\n },\n panel: {\n value: { _light: '{colors.gray.600}', _dark: '{colors.gray.600}' },\n },\n muted: {\n value: { _light: '{colors.gray.500}', _dark: '{colors.gray.500}' },\n },\n },\n fg: {\n DEFAULT: {\n value: { _light: '{colors.gray.50}', _dark: '{colors.gray.50}' },\n },\n muted: {\n value: { _light: '{colors.gray.200}', _dark: '{colors.gray.200}' },\n },\n },\n red: {\n solid: {\n value: {\n _light: '{colors.red.100}',\n _dark: '{colors.red.100}',\n },\n },\n contrast: {\n value: { _light: 'white', _dark: 'white' },\n },\n fg: {\n value: { _light: '{colors.red.700}', _dark: '{colors.red.300}' },\n },\n subtle: {\n value: { _light: '{colors.red.100}', _dark: '{colors.red.900}' },\n },\n muted: {\n value: { _light: '{colors.red.200}', _dark: '{colors.red.800}' },\n },\n emphasized: {\n value: { _light: '{colors.red.300}', _dark: '{colors.red.700}' },\n },\n focusRing: {\n value: { _light: '{colors.red.500}', _dark: '{colors.red.500}' },\n },\n },\n primary: {\n DEFAULT: {\n value: { _light: '{colors.primary}', _dark: '{colors.primary}' },\n },\n solid: {\n value: {\n _light: '{colors.primary.default}',\n _dark: '{colors.primary.default}',\n },\n },\n muted: {\n value: {\n _light: '{colors.gray.300/40}',\n _dark: '{colors.gray.300/40}',\n },\n },\n contrast: {\n value: { _light: 'black', _dark: 'black' },\n },\n fg: {\n value: { _light: '{colors.gray.100}', _dark: '{colors.gray.100}' },\n },\n subtle: {\n value: {\n _light: '{colors.gray.300/20}',\n _dark: '{colors.gray.300/20}',\n },\n },\n emphasized: {\n value: { _light: '{colors.gray.400}', _dark: '{colors.gray.400}' },\n },\n border: {\n value: {\n _light: '{colors.gray.600}',\n _dark: '{colors.gray.600}',\n },\n },\n },\n green: {\n contrast: {\n value: { _light: 'white', _dark: 'white' },\n },\n fg: {\n value: { _light: '{colors.green.300}', _dark: '{colors.green.300}' },\n },\n subtle: {\n value: { _light: '{colors.green.100}', _dark: '{colors.green.100}' },\n },\n muted: {\n value: { _light: '{colors.green.100}', _dark: '{colors.green.100}' },\n },\n emphasized: {\n value: { _light: '{colors.green.300}', _dark: '{colors.green.300}' },\n },\n solid: {\n value: { _light: '{colors.green.300}', _dark: '{colors.green.300}' },\n },\n focusRing: {\n value: { _light: '{colors.green.300}', _dark: '{colors.green.300}' },\n },\n },\n\n yellow: {\n contrast: {\n value: { _light: 'black', _dark: 'black' },\n },\n fg: {\n value: { _light: '{colors.yellow.800}', _dark: '{colors.yellow.300}' },\n },\n subtle: {\n value: { _light: '{colors.yellow.150}', _dark: '{colors.yellow.150}' },\n },\n muted: {\n value: { _light: '{colors.yellow.200}', _dark: '{colors.yellow.800}' },\n },\n emphasized: {\n value: { _light: '{colors.yellow.300}', _dark: '{colors.yellow.700}' },\n },\n solid: {\n value: { _light: '{colors.yellow.100}', _dark: '{colors.yellow.100}' },\n },\n focusRing: {\n value: { _light: '{colors.yellow.500}', _dark: '{colors.yellow.500}' },\n },\n },\n});\n","import { semanticColors } from './colors';\n\nexport const semanticTokens = {\n colors: semanticColors,\n};\n","import { defineSlotRecipe } from '@chakra-ui/react';\nimport { menuAnatomy } from '@chakra-ui/react/anatomy';\n\nexport const menuSlotRecipe = defineSlotRecipe({\n slots: menuAnatomy.keys(),\n base: {\n content: {\n color: 'primary.fg',\n },\n item: {\n color: 'primary.fg',\n },\n },\n variants: {\n variant: {\n subtle: {\n item: {\n _highlighted: {\n bg: 'primary.emphasized',\n },\n },\n },\n },\n },\n});\n","import { defineSlotRecipe } from '@chakra-ui/react';\nimport { tabsAnatomy } from '@chakra-ui/react/anatomy';\n\nexport const tabsSlotRecipe = defineSlotRecipe({\n slots: tabsAnatomy.keys(),\n variants: {\n variant: {\n enclosed: {\n trigger: {\n _selected: {\n color: 'fg',\n },\n },\n },\n outline: {\n trigger: {\n _selected: {\n color: 'fg',\n },\n },\n },\n plain: {\n trigger: {\n _selected: {\n color: 'fg',\n },\n },\n },\n },\n },\n});\n","import { menuSlotRecipe } from './menu';\nimport { tabsSlotRecipe } from './tabs';\n\nexport const slotRecipes = {\n menu: menuSlotRecipe,\n tabs: tabsSlotRecipe,\n};\n","import { defineTokens } from '@chakra-ui/react';\n\nexport const colorsTokens = defineTokens.colors({\n primary: {\n contrast: { value: '{colors.gray.500}' },\n default: { value: '{colors.yellow.100}' },\n },\n secondary: {\n default: { value: '{colors.gray.500}' },\n contrast: { value: '{colors.gray.300}' },\n },\n\n textPrimary: { value: '{colors.gray.50}' },\n textSecondary: { value: '{colors.gray.300}' },\n background: { value: '#0D0D0C' },\n\n // ------------------------------------------\n\n gray: {\n '50': { value: '#F5F5F5' },\n '100': { value: '#CFCCC9' },\n '200': { value: '#AAA6A1' },\n '300': { value: '#868079' },\n '400': { value: '#5E5955' },\n '500': { value: '#201F1D' },\n '600': { value: '#151413' },\n },\n\n yellow: {\n '50': { value: '#EED07C' },\n '100': { value: '#FFC010' },\n '150': { value: '#E3AF13' },\n '200': { value: '#B68F40' },\n '300': { value: '#F16517' },\n '400': { value: '#B24F18' },\n '500': { value: '#54372D' },\n },\n red: {\n 50: { value: '#EF9B8F' },\n 100: { value: '#F05D48' },\n 200: { value: '#F2290D' },\n },\n green: {\n 50: { value: '#8CEEB3' },\n 100: { value: '#00F48B' },\n 200: { value: '#00E55C' },\n 300: { value: '#00943B' },\n },\n blue: {\n 50: { value: '#90CDFA' },\n 100: { value: '#008EF4' },\n 200: { value: '#005DA0' },\n },\n});\n","import { defineTokens } from '@chakra-ui/react';\n\nexport const fontsTokens = defineTokens.fonts({\n heading: { value: 'Inter, sans-serif' },\n body: { value: 'Inter, sans-serif' },\n});\n","import { colorsTokens } from './colors';\nimport { fontsTokens } from './fonts';\n\nexport const tokens = {\n colors: colorsTokens,\n fonts: fontsTokens,\n};\n","import { createSystem, defaultConfig, defineConfig } from '@chakra-ui/react';\nimport { recipes } from './recipes';\nimport { semanticTokens } from './semantic-tokens';\nimport { slotRecipes } from './slot-recipes';\nimport { tokens } from './tokens';\n\nconst config = defineConfig({\n theme: {\n tokens,\n semanticTokens,\n breakpoints: {\n xs: '25em', // 400px\n sm: '48em', // 768px\n md: '64em', // 1024px\n lg: '80em', // 1280px\n xl: '90em', // 1440px\n },\n recipes,\n slotRecipes,\n },\n globalCss: {\n body: {\n color: 'textPrimary',\n bg: 'background',\n minH: '100vh',\n },\n },\n});\n\nconst theme = createSystem(defaultConfig, config);\n\nexport default theme;\n"]}
|
package/package.json
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "bako-ui",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "Bako Design System - A modern React component library built with Chakra UI",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"module": "dist/index.mjs",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"repository": {
|
|
9
|
+
"url": "git+https://github.com/infinitybase/bako-ui.git"
|
|
10
|
+
},
|
|
11
|
+
"files": [
|
|
12
|
+
"dist"
|
|
13
|
+
],
|
|
14
|
+
"scripts": {
|
|
15
|
+
"build": "tsup --config tsup.config.ts",
|
|
16
|
+
"test": "vitest run",
|
|
17
|
+
"test:watch": "vitest",
|
|
18
|
+
"test:ui": "vitest --ui",
|
|
19
|
+
"test:coverage": "vitest run --coverage",
|
|
20
|
+
"lint": "biome check",
|
|
21
|
+
"typegen": "pnpm dlx @chakra-ui/cli typegen ./src/theme/index.ts",
|
|
22
|
+
"clean": "rimraf dist",
|
|
23
|
+
"prepublishOnly": "pnpm run build"
|
|
24
|
+
},
|
|
25
|
+
"keywords": [
|
|
26
|
+
"react",
|
|
27
|
+
"ui",
|
|
28
|
+
"components",
|
|
29
|
+
"design-system",
|
|
30
|
+
"chakra-ui",
|
|
31
|
+
"typescript",
|
|
32
|
+
"bako-safe",
|
|
33
|
+
"bako-id"
|
|
34
|
+
],
|
|
35
|
+
"author": "",
|
|
36
|
+
"license": "Apache-2.0",
|
|
37
|
+
"exports": {
|
|
38
|
+
".": {
|
|
39
|
+
"types": "./dist/index.d.ts",
|
|
40
|
+
"import": "./dist/index.mjs",
|
|
41
|
+
"require": "./dist/index.js"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"publishConfig": {
|
|
45
|
+
"access": "public"
|
|
46
|
+
},
|
|
47
|
+
"peerDependencies": {
|
|
48
|
+
"@chakra-ui/react": "^3.21.0",
|
|
49
|
+
"@emotion/react": "^11.14.0",
|
|
50
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
51
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
52
|
+
},
|
|
53
|
+
"dependencies": {
|
|
54
|
+
"react-hook-form": "^7.65.0",
|
|
55
|
+
"use-mask-input": "^3.5.2"
|
|
56
|
+
},
|
|
57
|
+
"devDependencies": {
|
|
58
|
+
"@bako/ts-config": "workspace:*",
|
|
59
|
+
"@chakra-ui/cli": "^3.1.0",
|
|
60
|
+
"@testing-library/dom": "^10.4.1",
|
|
61
|
+
"@testing-library/jest-dom": "^6.9.1",
|
|
62
|
+
"@testing-library/react": "^16.3.0",
|
|
63
|
+
"@testing-library/user-event": "^14.6.1",
|
|
64
|
+
"@types/node": "^22.18.8",
|
|
65
|
+
"@types/react": "^19.2.0",
|
|
66
|
+
"@types/react-dom": "^19.2.0",
|
|
67
|
+
"@vitejs/plugin-react": "^4.5.2",
|
|
68
|
+
"@vitest/ui": "^3.2.4",
|
|
69
|
+
"jsdom": "^26.1.0",
|
|
70
|
+
"react": "^19.1.0",
|
|
71
|
+
"react-dom": "^19.1.0",
|
|
72
|
+
"rimraf": "^6.0.1",
|
|
73
|
+
"tsup": "^8.2.4",
|
|
74
|
+
"typescript": "^5.8.3",
|
|
75
|
+
"vitest": "^3.2.4"
|
|
76
|
+
}
|
|
77
|
+
}
|