ics-ui-kit 0.1.18 → 0.1.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/{Button-Dg89xRSi.js → Button-BZ3ON1Tj.js} +2 -2
  2. package/dist/{Button-Dg89xRSi.js.map → Button-BZ3ON1Tj.js.map} +1 -1
  3. package/dist/ButtonBase-jgu7EolU.js +158 -0
  4. package/dist/ButtonBase-jgu7EolU.js.map +1 -0
  5. package/dist/{FormFooterTemplate-BRrgrxAu.js → FormFooterTemplate-DdNnLu2-.js} +2 -2
  6. package/dist/{FormFooterTemplate-BRrgrxAu.js.map → FormFooterTemplate-DdNnLu2-.js.map} +1 -1
  7. package/dist/{IconButton-DwkpNgn3.js → IconButton-uGJ3cQtk.js} +2 -2
  8. package/dist/{IconButton-DwkpNgn3.js.map → IconButton-uGJ3cQtk.js.map} +1 -1
  9. package/dist/{InputGroup-BcRWP-zL.js → InputGroup-AVAtosX_.js} +2 -2
  10. package/dist/{InputGroup-BcRWP-zL.js.map → InputGroup-AVAtosX_.js.map} +1 -1
  11. package/dist/{Popover-CRVD7AtB.js → Popover-KjZXxxl3.js} +2 -2
  12. package/dist/{Popover-CRVD7AtB.js.map → Popover-KjZXxxl3.js.map} +1 -1
  13. package/dist/{RichButton-DuPTenmS.js → RichButton-B1wjK7Bk.js} +2 -2
  14. package/dist/{RichButton-DuPTenmS.js.map → RichButton-B1wjK7Bk.js.map} +1 -1
  15. package/dist/{TextInput-Db0ylY91.js → TextInput-5BuZtWV6.js} +2 -2
  16. package/dist/{TextInput-Db0ylY91.js.map → TextInput-5BuZtWV6.js.map} +1 -1
  17. package/dist/{TriggerButton-CfDObWP9.js → TriggerButton-Bakr8Boi.js} +2 -2
  18. package/dist/{TriggerButton-CfDObWP9.js.map → TriggerButton-Bakr8Boi.js.map} +1 -1
  19. package/dist/blocks/auth/otp-form.js +2 -2
  20. package/dist/components/alert-dialog.js +1 -1
  21. package/dist/components/alert.js +1 -1
  22. package/dist/components/button.js +5 -5
  23. package/dist/components/calendar.js +1 -1
  24. package/dist/components/card.js +1 -1
  25. package/dist/components/carousel.js +1 -1
  26. package/dist/components/dialog.js +1 -1
  27. package/dist/components/drawer.js +1 -1
  28. package/dist/components/dropdown.js +1 -1
  29. package/dist/components/error-state.js +1 -1
  30. package/dist/components/file-upload.js +2 -2
  31. package/dist/components/form.js +2 -2
  32. package/dist/components/image-preview.js +1 -1
  33. package/dist/components/image-uploader.js +1 -1
  34. package/dist/components/input.js +4 -4
  35. package/dist/components/menu-item.js +3 -3
  36. package/dist/components/page-state.js +1 -1
  37. package/dist/components/popover.js +1 -1
  38. package/dist/components/progress-circle.js +1 -1
  39. package/dist/components/progress.js +1 -1
  40. package/dist/components/search-select.js +1 -1
  41. package/dist/components/sidebar.js +2 -2
  42. package/dist/components/system-state.js +1 -1
  43. package/dist/components/tag-input.js +1 -1
  44. package/dist/components/toast.js +2 -2
  45. package/dist/styles-scoped.css +30 -79
  46. package/dist/styles.css +30 -79
  47. package/package.json +1 -1
  48. package/dist/ButtonBase-e6qyv6mD.js +0 -158
  49. package/dist/ButtonBase-e6qyv6mD.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TextInput-Db0ylY91.js","sources":["../node_modules/.pnpm/lucide-react@0.460.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/copy.js","../src/hooks/useControlledValue.ts","../src/hooks/useCopyAction.ts","../src/hooks/useAutofill.ts","../src/hooks/useInputWithActions.ts","../src/components/input/text-input/TextInput.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.460.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Copy = createLucideIcon(\"Copy\", [\n [\"rect\", { width: \"14\", height: \"14\", x: \"8\", y: \"8\", rx: \"2\", ry: \"2\", key: \"17jyea\" }],\n [\"path\", { d: \"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\", key: \"zix9uf\" }]\n]);\n\nexport { Copy as default };\n//# sourceMappingURL=copy.js.map\n","import { useCallback, useEffect, useRef, useState } from \"react\";\n\n/**\n * Хук для управления контролируемым и неконтролируемым состоянием\n */\nexport function useControlledValue(\n\tvalue: string | number | readonly string[] | undefined,\n\tdefaultValue: string | number | readonly string[] | undefined,\n\tonChange?: (value: string | null) => void\n) {\n\tconst [uncontrolledValue, setUncontrolledValue] = useState(\n\t\ttypeof defaultValue === \"string\" ? defaultValue : String(defaultValue ?? \"\")\n\t);\n\tconst inputRef = useRef<HTMLInputElement>(null);\n\n\t// Добавляем обработчик для отслеживания изменений в uncontrolled режиме\n\tuseEffect(() => {\n\t\tif (value !== undefined) return;\n\n\t\tconst input = inputRef.current;\n\t\tif (!input) return;\n\n\t\tconst handleInput = () => {\n\t\t\tsetUncontrolledValue(input.value);\n\t\t};\n\n\t\tinput.addEventListener(\"input\", handleInput);\n\t\treturn () => input.removeEventListener(\"input\", handleInput);\n\t}, [value, inputRef]);\n\n\tconst getCurrentValue = useCallback(() => {\n\t\tif (value !== undefined) return String(value);\n\t\treturn uncontrolledValue;\n\t}, [value, uncontrolledValue]);\n\n\tconst handleChange = useCallback(\n\t\t(e: React.ChangeEvent<HTMLInputElement>) => {\n\t\t\tonChange?.(e.target.value);\n\t\t},\n\t\t[onChange]\n\t);\n\n\treturn {\n\t\tinputRef,\n\t\tgetCurrentValue,\n\t\thandleChange,\n\t\tcurrentValue: getCurrentValue()\n\t};\n}\n","import { useCallback, useEffect, useState } from \"react\";\n\n/**\n * Хук для копирования содержимого в буфер обмена\n */\nexport function useCopyAction() {\n\tconst [hasCopied, setHasCopied] = useState(false);\n\n\t// Эффект для сброса статуса копирования\n\tuseEffect(() => {\n\t\tif (!hasCopied) return;\n\t\tconst timeout = setTimeout(() => {\n\t\t\tsetHasCopied(false);\n\t\t}, 2000);\n\t\treturn () => clearTimeout(timeout);\n\t}, [hasCopied]);\n\n\tconst handleCopy = useCallback((value: string) => {\n\t\tif (value) {\n\t\t\tnavigator.clipboard.writeText(value);\n\t\t\tsetHasCopied(true);\n\t\t}\n\t}, []);\n\n\treturn {\n\t\thasCopied,\n\t\thandleCopy\n\t};\n}\n","import { useEffect, useRef, useState } from \"react\";\n\n/**\n * Хук для определения состояния автозаполнения input'а\n */\nexport function useAutofill() {\n\tconst [isAutofilled, setIsAutofilled] = useState(false);\n\tconst inputRef = useRef<HTMLInputElement>(null);\n\n\tuseEffect(() => {\n\t\tconst input = inputRef.current;\n\t\tif (!input) return;\n\n\t\tconst checkAutofill = (element: Element): boolean => {\n\t\t\ttry {\n\t\t\t\treturn element.matches(\":-webkit-autofill\");\n\t\t\t} catch {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t};\n\n\t\tconst updateAutofillState = () => {\n\t\t\tconst autofilled = checkAutofill(input);\n\t\t\tsetIsAutofilled(autofilled);\n\t\t};\n\n\t\tinput.addEventListener(\"input\", updateAutofillState);\n\n\t\tlet intervalCounter = 0;\n\t\tconst intervalTime = 25;\n\t\t// Максимальное время ожидания появления autofill, в ms\n\t\tconst intervalTimeLimit = 1000;\n\n\t\tconst interval = setInterval(() => {\n\t\t\tintervalCounter += intervalTime;\n\t\t\tif (intervalCounter > intervalTimeLimit) {\n\t\t\t\tclearInterval(interval);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (checkAutofill(input)) {\n\t\t\t\tsetIsAutofilled(true);\n\t\t\t\tclearInterval(interval);\n\t\t\t}\n\t\t}, intervalTime);\n\n\t\tupdateAutofillState();\n\n\t\treturn () => {\n\t\t\tclearInterval(interval);\n\t\t\tinput.removeEventListener(\"input\", updateAutofillState);\n\t\t};\n\t}, []);\n\n\treturn {\n\t\tisAutofilled,\n\t\tinputRef\n\t};\n}\n","import { useCallback, useMemo } from \"react\";\nimport { useControlledValue } from \"./useControlledValue\";\nimport { useCopyAction } from \"./useCopyAction\";\nimport { useAutofill } from \"./useAutofill\";\n\nexport interface UseInputWithActionsOptions {\n\t/** Значение input (для контролируемого режима) */\n\tvalue?: string | number | readonly string[];\n\t/** Значение по умолчанию (для неконтролируемого режима) */\n\tdefaultValue?: string | number | readonly string[];\n\t/** Колбэк на изменение значения */\n\tonChange?: (value: string | null) => void;\n\t/** Флаг только для чтения */\n\treadOnly?: boolean;\n\t/** Флаг отключения */\n\tdisabled?: boolean;\n\t/** Флаг для отображения кнопки очистки */\n\tshowClearIcon?: boolean;\n\t/** Флаг для отображения кнопки копирования */\n\tshowCopyIcon?: boolean;\n}\n\n/**\n * Общий хук для input с полным функционалом копирования и очистки\n */\nexport function useInputWithActions({\n\tvalue,\n\tdefaultValue,\n\tonChange,\n\treadOnly,\n\tdisabled,\n\tshowClearIcon = false,\n\tshowCopyIcon = false\n}: UseInputWithActionsOptions) {\n\tconst controlledValue = useControlledValue(value, defaultValue, onChange);\n\tconst copyAction = useCopyAction();\n\tconst { isAutofilled } = useAutofill();\n\n\tconst isEditable = useMemo(() => {\n\t\treturn !readOnly && !disabled;\n\t}, [readOnly, disabled]);\n\n\tconst handleClear = useCallback(() => {\n\t\tif (value !== undefined) {\n\t\t\t// Controlled mode\n\t\t\tonChange?.(\"\");\n\t\t} else {\n\t\t\t// Uncontrolled mode\n\t\t\tif (controlledValue.inputRef.current) {\n\t\t\t\tcontrolledValue.inputRef.current.value = \"\";\n\t\t\t\tcontrolledValue.inputRef.current.dispatchEvent(new Event(\"input\", { bubbles: true }));\n\t\t\t}\n\t\t}\n\t}, [onChange, value, controlledValue.inputRef]);\n\n\tconst handleCopyValue = useCallback(() => {\n\t\tcopyAction.handleCopy(String(controlledValue.currentValue));\n\t}, [copyAction.handleCopy, controlledValue.currentValue]);\n\n\tconst shouldShowClearIcon = showClearIcon && isEditable && controlledValue.currentValue;\n\tconst shouldShowCopyIcon = showCopyIcon && controlledValue.currentValue;\n\n\treturn {\n\t\t// Значения и состояние\n\t\tcurrentValue: controlledValue.currentValue,\n\t\tinputRef: controlledValue.inputRef,\n\t\tisEditable,\n\n\t\t// Обработчики\n\t\thandleChange: controlledValue.handleChange,\n\t\thandleClear,\n\t\thandleCopy: handleCopyValue,\n\n\t\t// Состояние копирования\n\t\thasCopied: copyAction.hasCopied,\n\n\t\t// Состояние автозаполнения\n\t\tisAutofilled,\n\n\t\t// Флаги видимости кнопок\n\t\tshouldShowClearIcon,\n\t\tshouldShowCopyIcon\n\t};\n}\n","import React, { HTMLAttributes } from \"react\";\nimport { useMergeRefs } from \"@/hooks/useMergeRefs\";\nimport { useInputWithActions } from \"@/hooks/useInputWithActions\";\nimport { InputGroup, InputGroupInput, InputGroupButton, InputGroupText } from \"../input-group/InputGroup\";\nimport { CircleX, Copy, Check } from \"lucide-react\";\nimport { tv } from \"tailwind-variants\";\nimport { InputProps } from \"../input/Input\";\n\nconst textInputStyles = tv({\n\tbase: \"\",\n\tslots: {\n\t\taction: \"hidden group-focus-within/input-group:block group-hover/input-group:block\",\n\t\tstartIcon: \"!border-r-0 pr-0 text-muted\",\n\t\tendIcon: \"border-l-0 pl-0 text-muted\",\n\t\tinput: \"\"\n\t},\n\tvariants: {\n\t\thasStartIcon: { true: { input: \"pl-2\" } }\n\t}\n});\n\nexport interface TextInputProps\n\textends Omit<InputProps, \"onChange\">,\n\t\tOmit<HTMLAttributes<HTMLInputElement>, \"onChange\"> {\n\t/** Иконка, отображаемая в начале текстового поля */\n\tstartIcon?: React.ReactNode;\n\t/** Иконка, отображаемая в конце текстового поля */\n\tendIcon?: React.ReactNode;\n\t/** Флаг для отображения кнопки очистки значения */\n\tshowClearIcon?: boolean;\n\t/** Флаг для отображения кнопки копирования значения */\n\tshowCopyIcon?: boolean;\n\t/** Колбэк на изменение значения */\n\tonChange?: (value: string | null) => void;\n}\n\n/**\n * Компонент текстового поля ввода с поддержкой иконок и дополнительных действий.\n */\nexport const TextInput = React.forwardRef<HTMLInputElement, TextInputProps>(\n\t(\n\t\t{\n\t\t\tstartIcon,\n\t\t\tendIcon,\n\t\t\tshowClearIcon,\n\t\t\tshowCopyIcon,\n\t\t\tvalue,\n\t\t\tdefaultValue,\n\t\t\tonChange,\n\t\t\treadOnly,\n\t\t\tdisabled,\n\t\t\terror,\n\t\t\tclassName,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst styles = textInputStyles();\n\n\t\tconst inputActions = useInputWithActions({\n\t\t\tvalue,\n\t\t\tdefaultValue,\n\t\t\tonChange,\n\t\t\treadOnly,\n\t\t\tdisabled,\n\t\t\tshowClearIcon,\n\t\t\tshowCopyIcon\n\t\t});\n\n\t\tconst mergedRef = useMergeRefs(ref, inputActions.inputRef);\n\n\t\treturn (\n\t\t\t<InputGroup className={styles.base({ className })}>\n\t\t\t\t{startIcon && <InputGroupText className={styles.startIcon()}>{startIcon}</InputGroupText>}\n\n\t\t\t\t<InputGroupInput\n\t\t\t\t\tref={mergedRef}\n\t\t\t\t\tvalue={value}\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tonChange={inputActions.handleChange}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\terror={error}\n\t\t\t\t\tclassName={styles.input({ hasStartIcon: !!startIcon })}\n\t\t\t\t\t{...props}\n\t\t\t\t/>\n\n\t\t\t\t{inputActions.shouldShowClearIcon && (\n\t\t\t\t\t<InputGroupButton\n\t\t\t\t\t\ticon={CircleX}\n\t\t\t\t\t\tonClick={inputActions.handleClear}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={styles.action()}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\n\t\t\t\t{inputActions.shouldShowCopyIcon && (\n\t\t\t\t\t<InputGroupButton\n\t\t\t\t\t\ticon={inputActions.hasCopied ? Check : Copy}\n\t\t\t\t\t\tonClick={inputActions.handleCopy}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={styles.action()}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\n\t\t\t\t{endIcon && <InputGroupText className={styles.endIcon()}>{endIcon}</InputGroupText>}\n\t\t\t</InputGroup>\n\t\t);\n\t}\n);\n\nTextInput.displayName = \"TextInput\";\n\nexport default TextInput;\n"],"names":["Copy","createLucideIcon","useControlledValue","value","defaultValue","onChange","uncontrolledValue","setUncontrolledValue","useState","inputRef","useRef","useEffect","input","handleInput","getCurrentValue","useCallback","handleChange","e","useCopyAction","hasCopied","setHasCopied","timeout","handleCopy","useAutofill","isAutofilled","setIsAutofilled","checkAutofill","element","updateAutofillState","autofilled","intervalCounter","intervalTime","intervalTimeLimit","interval","useInputWithActions","readOnly","disabled","showClearIcon","showCopyIcon","controlledValue","copyAction","isEditable","useMemo","handleClear","handleCopyValue","shouldShowClearIcon","shouldShowCopyIcon","textInputStyles","tv","TextInput","React","startIcon","endIcon","error","className","props","ref","styles","inputActions","mergedRef","useMergeRefs","jsxs","InputGroup","InputGroupText","jsx","InputGroupInput","InputGroupButton","CircleX","Check"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"TextInput-5BuZtWV6.js","sources":["../node_modules/.pnpm/lucide-react@0.460.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/copy.js","../src/hooks/useControlledValue.ts","../src/hooks/useCopyAction.ts","../src/hooks/useAutofill.ts","../src/hooks/useInputWithActions.ts","../src/components/input/text-input/TextInput.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.460.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Copy = createLucideIcon(\"Copy\", [\n [\"rect\", { width: \"14\", height: \"14\", x: \"8\", y: \"8\", rx: \"2\", ry: \"2\", key: \"17jyea\" }],\n [\"path\", { d: \"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\", key: \"zix9uf\" }]\n]);\n\nexport { Copy as default };\n//# sourceMappingURL=copy.js.map\n","import { useCallback, useEffect, useRef, useState } from \"react\";\n\n/**\n * Хук для управления контролируемым и неконтролируемым состоянием\n */\nexport function useControlledValue(\n\tvalue: string | number | readonly string[] | undefined,\n\tdefaultValue: string | number | readonly string[] | undefined,\n\tonChange?: (value: string | null) => void\n) {\n\tconst [uncontrolledValue, setUncontrolledValue] = useState(\n\t\ttypeof defaultValue === \"string\" ? defaultValue : String(defaultValue ?? \"\")\n\t);\n\tconst inputRef = useRef<HTMLInputElement>(null);\n\n\t// Добавляем обработчик для отслеживания изменений в uncontrolled режиме\n\tuseEffect(() => {\n\t\tif (value !== undefined) return;\n\n\t\tconst input = inputRef.current;\n\t\tif (!input) return;\n\n\t\tconst handleInput = () => {\n\t\t\tsetUncontrolledValue(input.value);\n\t\t};\n\n\t\tinput.addEventListener(\"input\", handleInput);\n\t\treturn () => input.removeEventListener(\"input\", handleInput);\n\t}, [value, inputRef]);\n\n\tconst getCurrentValue = useCallback(() => {\n\t\tif (value !== undefined) return String(value);\n\t\treturn uncontrolledValue;\n\t}, [value, uncontrolledValue]);\n\n\tconst handleChange = useCallback(\n\t\t(e: React.ChangeEvent<HTMLInputElement>) => {\n\t\t\tonChange?.(e.target.value);\n\t\t},\n\t\t[onChange]\n\t);\n\n\treturn {\n\t\tinputRef,\n\t\tgetCurrentValue,\n\t\thandleChange,\n\t\tcurrentValue: getCurrentValue()\n\t};\n}\n","import { useCallback, useEffect, useState } from \"react\";\n\n/**\n * Хук для копирования содержимого в буфер обмена\n */\nexport function useCopyAction() {\n\tconst [hasCopied, setHasCopied] = useState(false);\n\n\t// Эффект для сброса статуса копирования\n\tuseEffect(() => {\n\t\tif (!hasCopied) return;\n\t\tconst timeout = setTimeout(() => {\n\t\t\tsetHasCopied(false);\n\t\t}, 2000);\n\t\treturn () => clearTimeout(timeout);\n\t}, [hasCopied]);\n\n\tconst handleCopy = useCallback((value: string) => {\n\t\tif (value) {\n\t\t\tnavigator.clipboard.writeText(value);\n\t\t\tsetHasCopied(true);\n\t\t}\n\t}, []);\n\n\treturn {\n\t\thasCopied,\n\t\thandleCopy\n\t};\n}\n","import { useEffect, useRef, useState } from \"react\";\n\n/**\n * Хук для определения состояния автозаполнения input'а\n */\nexport function useAutofill() {\n\tconst [isAutofilled, setIsAutofilled] = useState(false);\n\tconst inputRef = useRef<HTMLInputElement>(null);\n\n\tuseEffect(() => {\n\t\tconst input = inputRef.current;\n\t\tif (!input) return;\n\n\t\tconst checkAutofill = (element: Element): boolean => {\n\t\t\ttry {\n\t\t\t\treturn element.matches(\":-webkit-autofill\");\n\t\t\t} catch {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t};\n\n\t\tconst updateAutofillState = () => {\n\t\t\tconst autofilled = checkAutofill(input);\n\t\t\tsetIsAutofilled(autofilled);\n\t\t};\n\n\t\tinput.addEventListener(\"input\", updateAutofillState);\n\n\t\tlet intervalCounter = 0;\n\t\tconst intervalTime = 25;\n\t\t// Максимальное время ожидания появления autofill, в ms\n\t\tconst intervalTimeLimit = 1000;\n\n\t\tconst interval = setInterval(() => {\n\t\t\tintervalCounter += intervalTime;\n\t\t\tif (intervalCounter > intervalTimeLimit) {\n\t\t\t\tclearInterval(interval);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (checkAutofill(input)) {\n\t\t\t\tsetIsAutofilled(true);\n\t\t\t\tclearInterval(interval);\n\t\t\t}\n\t\t}, intervalTime);\n\n\t\tupdateAutofillState();\n\n\t\treturn () => {\n\t\t\tclearInterval(interval);\n\t\t\tinput.removeEventListener(\"input\", updateAutofillState);\n\t\t};\n\t}, []);\n\n\treturn {\n\t\tisAutofilled,\n\t\tinputRef\n\t};\n}\n","import { useCallback, useMemo } from \"react\";\nimport { useControlledValue } from \"./useControlledValue\";\nimport { useCopyAction } from \"./useCopyAction\";\nimport { useAutofill } from \"./useAutofill\";\n\nexport interface UseInputWithActionsOptions {\n\t/** Значение input (для контролируемого режима) */\n\tvalue?: string | number | readonly string[];\n\t/** Значение по умолчанию (для неконтролируемого режима) */\n\tdefaultValue?: string | number | readonly string[];\n\t/** Колбэк на изменение значения */\n\tonChange?: (value: string | null) => void;\n\t/** Флаг только для чтения */\n\treadOnly?: boolean;\n\t/** Флаг отключения */\n\tdisabled?: boolean;\n\t/** Флаг для отображения кнопки очистки */\n\tshowClearIcon?: boolean;\n\t/** Флаг для отображения кнопки копирования */\n\tshowCopyIcon?: boolean;\n}\n\n/**\n * Общий хук для input с полным функционалом копирования и очистки\n */\nexport function useInputWithActions({\n\tvalue,\n\tdefaultValue,\n\tonChange,\n\treadOnly,\n\tdisabled,\n\tshowClearIcon = false,\n\tshowCopyIcon = false\n}: UseInputWithActionsOptions) {\n\tconst controlledValue = useControlledValue(value, defaultValue, onChange);\n\tconst copyAction = useCopyAction();\n\tconst { isAutofilled } = useAutofill();\n\n\tconst isEditable = useMemo(() => {\n\t\treturn !readOnly && !disabled;\n\t}, [readOnly, disabled]);\n\n\tconst handleClear = useCallback(() => {\n\t\tif (value !== undefined) {\n\t\t\t// Controlled mode\n\t\t\tonChange?.(\"\");\n\t\t} else {\n\t\t\t// Uncontrolled mode\n\t\t\tif (controlledValue.inputRef.current) {\n\t\t\t\tcontrolledValue.inputRef.current.value = \"\";\n\t\t\t\tcontrolledValue.inputRef.current.dispatchEvent(new Event(\"input\", { bubbles: true }));\n\t\t\t}\n\t\t}\n\t}, [onChange, value, controlledValue.inputRef]);\n\n\tconst handleCopyValue = useCallback(() => {\n\t\tcopyAction.handleCopy(String(controlledValue.currentValue));\n\t}, [copyAction.handleCopy, controlledValue.currentValue]);\n\n\tconst shouldShowClearIcon = showClearIcon && isEditable && controlledValue.currentValue;\n\tconst shouldShowCopyIcon = showCopyIcon && controlledValue.currentValue;\n\n\treturn {\n\t\t// Значения и состояние\n\t\tcurrentValue: controlledValue.currentValue,\n\t\tinputRef: controlledValue.inputRef,\n\t\tisEditable,\n\n\t\t// Обработчики\n\t\thandleChange: controlledValue.handleChange,\n\t\thandleClear,\n\t\thandleCopy: handleCopyValue,\n\n\t\t// Состояние копирования\n\t\thasCopied: copyAction.hasCopied,\n\n\t\t// Состояние автозаполнения\n\t\tisAutofilled,\n\n\t\t// Флаги видимости кнопок\n\t\tshouldShowClearIcon,\n\t\tshouldShowCopyIcon\n\t};\n}\n","import React, { HTMLAttributes } from \"react\";\nimport { useMergeRefs } from \"@/hooks/useMergeRefs\";\nimport { useInputWithActions } from \"@/hooks/useInputWithActions\";\nimport { InputGroup, InputGroupInput, InputGroupButton, InputGroupText } from \"../input-group/InputGroup\";\nimport { CircleX, Copy, Check } from \"lucide-react\";\nimport { tv } from \"tailwind-variants\";\nimport { InputProps } from \"../input/Input\";\n\nconst textInputStyles = tv({\n\tbase: \"\",\n\tslots: {\n\t\taction: \"hidden group-focus-within/input-group:block group-hover/input-group:block\",\n\t\tstartIcon: \"!border-r-0 pr-0 text-muted\",\n\t\tendIcon: \"border-l-0 pl-0 text-muted\",\n\t\tinput: \"\"\n\t},\n\tvariants: {\n\t\thasStartIcon: { true: { input: \"pl-2\" } }\n\t}\n});\n\nexport interface TextInputProps\n\textends Omit<InputProps, \"onChange\">,\n\t\tOmit<HTMLAttributes<HTMLInputElement>, \"onChange\"> {\n\t/** Иконка, отображаемая в начале текстового поля */\n\tstartIcon?: React.ReactNode;\n\t/** Иконка, отображаемая в конце текстового поля */\n\tendIcon?: React.ReactNode;\n\t/** Флаг для отображения кнопки очистки значения */\n\tshowClearIcon?: boolean;\n\t/** Флаг для отображения кнопки копирования значения */\n\tshowCopyIcon?: boolean;\n\t/** Колбэк на изменение значения */\n\tonChange?: (value: string | null) => void;\n}\n\n/**\n * Компонент текстового поля ввода с поддержкой иконок и дополнительных действий.\n */\nexport const TextInput = React.forwardRef<HTMLInputElement, TextInputProps>(\n\t(\n\t\t{\n\t\t\tstartIcon,\n\t\t\tendIcon,\n\t\t\tshowClearIcon,\n\t\t\tshowCopyIcon,\n\t\t\tvalue,\n\t\t\tdefaultValue,\n\t\t\tonChange,\n\t\t\treadOnly,\n\t\t\tdisabled,\n\t\t\terror,\n\t\t\tclassName,\n\t\t\t...props\n\t\t},\n\t\tref\n\t) => {\n\t\tconst styles = textInputStyles();\n\n\t\tconst inputActions = useInputWithActions({\n\t\t\tvalue,\n\t\t\tdefaultValue,\n\t\t\tonChange,\n\t\t\treadOnly,\n\t\t\tdisabled,\n\t\t\tshowClearIcon,\n\t\t\tshowCopyIcon\n\t\t});\n\n\t\tconst mergedRef = useMergeRefs(ref, inputActions.inputRef);\n\n\t\treturn (\n\t\t\t<InputGroup className={styles.base({ className })}>\n\t\t\t\t{startIcon && <InputGroupText className={styles.startIcon()}>{startIcon}</InputGroupText>}\n\n\t\t\t\t<InputGroupInput\n\t\t\t\t\tref={mergedRef}\n\t\t\t\t\tvalue={value}\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tonChange={inputActions.handleChange}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\terror={error}\n\t\t\t\t\tclassName={styles.input({ hasStartIcon: !!startIcon })}\n\t\t\t\t\t{...props}\n\t\t\t\t/>\n\n\t\t\t\t{inputActions.shouldShowClearIcon && (\n\t\t\t\t\t<InputGroupButton\n\t\t\t\t\t\ticon={CircleX}\n\t\t\t\t\t\tonClick={inputActions.handleClear}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={styles.action()}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\n\t\t\t\t{inputActions.shouldShowCopyIcon && (\n\t\t\t\t\t<InputGroupButton\n\t\t\t\t\t\ticon={inputActions.hasCopied ? Check : Copy}\n\t\t\t\t\t\tonClick={inputActions.handleCopy}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName={styles.action()}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\n\t\t\t\t{endIcon && <InputGroupText className={styles.endIcon()}>{endIcon}</InputGroupText>}\n\t\t\t</InputGroup>\n\t\t);\n\t}\n);\n\nTextInput.displayName = \"TextInput\";\n\nexport default TextInput;\n"],"names":["Copy","createLucideIcon","useControlledValue","value","defaultValue","onChange","uncontrolledValue","setUncontrolledValue","useState","inputRef","useRef","useEffect","input","handleInput","getCurrentValue","useCallback","handleChange","e","useCopyAction","hasCopied","setHasCopied","timeout","handleCopy","useAutofill","isAutofilled","setIsAutofilled","checkAutofill","element","updateAutofillState","autofilled","intervalCounter","intervalTime","intervalTimeLimit","interval","useInputWithActions","readOnly","disabled","showClearIcon","showCopyIcon","controlledValue","copyAction","isEditable","useMemo","handleClear","handleCopyValue","shouldShowClearIcon","shouldShowCopyIcon","textInputStyles","tv","TextInput","React","startIcon","endIcon","error","className","props","ref","styles","inputActions","mergedRef","useMergeRefs","jsxs","InputGroup","InputGroupText","jsx","InputGroupInput","InputGroupButton","CircleX","Check"],"mappings":";;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASK,MAACA,IAAOC,EAAiB,QAAQ;AAAA,EACpC,CAAC,QAAQ,EAAE,OAAO,MAAM,QAAQ,MAAM,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,KAAK,UAAU;AAAA,EACvF,CAAC,QAAQ,EAAE,GAAG,2DAA2D,KAAK,SAAU,CAAA;AAC1F,CAAC;ACPe,SAAAC,EACfC,GACAC,GACAC,GACC;AACK,QAAA,CAACC,GAAmBC,CAAoB,IAAIC;AAAA,IACjD,OAAOJ,KAAiB,WAAWA,IAAe,OAAOA,KAAgB,EAAE;AAAA,EAC5E,GACMK,IAAWC,EAAyB,IAAI;AAG9C,EAAAC,EAAU,MAAM;AACf,QAAIR,MAAU,OAAW;AAEzB,UAAMS,IAAQH,EAAS;AACvB,QAAI,CAACG,EAAO;AAEZ,UAAMC,IAAc,MAAM;AACzB,MAAAN,EAAqBK,EAAM,KAAK;AAAA,IACjC;AAEM,WAAAA,EAAA,iBAAiB,SAASC,CAAW,GACpC,MAAMD,EAAM,oBAAoB,SAASC,CAAW;AAAA,EAAA,GACzD,CAACV,GAAOM,CAAQ,CAAC;AAEd,QAAAK,IAAkBC,EAAY,MAC/BZ,MAAU,SAAkB,OAAOA,CAAK,IACrCG,GACL,CAACH,GAAOG,CAAiB,CAAC,GAEvBU,IAAeD;AAAA,IACpB,CAACE,MAA2C;AAChC,MAAAZ,IAAAY,EAAE,OAAO,KAAK;AAAA,IAC1B;AAAA,IACA,CAACZ,CAAQ;AAAA,EACV;AAEO,SAAA;AAAA,IACN,UAAAI;AAAA,IACA,iBAAAK;AAAA,IACA,cAAAE;AAAA,IACA,cAAcF,EAAgB;AAAA,EAC/B;AACD;AC3CO,SAASI,IAAgB;AAC/B,QAAM,CAACC,GAAWC,CAAY,IAAIZ,EAAS,EAAK;AAGhD,EAAAG,EAAU,MAAM;AACf,QAAI,CAACQ,EAAW;AACV,UAAAE,IAAU,WAAW,MAAM;AAChC,MAAAD,EAAa,EAAK;AAAA,OAChB,GAAI;AACA,WAAA,MAAM,aAAaC,CAAO;AAAA,EAAA,GAC/B,CAACF,CAAS,CAAC;AAER,QAAAG,IAAaP,EAAY,CAACZ,MAAkB;AACjD,IAAIA,MACO,UAAA,UAAU,UAAUA,CAAK,GACnCiB,EAAa,EAAI;AAAA,EAEnB,GAAG,EAAE;AAEE,SAAA;AAAA,IACN,WAAAD;AAAA,IACA,YAAAG;AAAA,EACD;AACD;ACvBO,SAASC,IAAc;AAC7B,QAAM,CAACC,GAAcC,CAAe,IAAIjB,EAAS,EAAK,GAChDC,IAAWC,EAAyB,IAAI;AAE9C,SAAAC,EAAU,MAAM;AACf,UAAMC,IAAQH,EAAS;AACvB,QAAI,CAACG,EAAO;AAEN,UAAAc,IAAgB,CAACC,MAA8B;AAChD,UAAA;AACI,eAAAA,EAAQ,QAAQ,mBAAmB;AAAA,MAAA,QACnC;AACA,eAAA;AAAA,MAAA;AAAA,IAET,GAEMC,IAAsB,MAAM;AAC3B,YAAAC,IAAaH,EAAcd,CAAK;AACtC,MAAAa,EAAgBI,CAAU;AAAA,IAC3B;AAEM,IAAAjB,EAAA,iBAAiB,SAASgB,CAAmB;AAEnD,QAAIE,IAAkB;AACtB,UAAMC,IAAe,IAEfC,IAAoB,KAEpBC,IAAW,YAAY,MAAM;AAElC,UADmBH,KAAAC,GACfD,IAAkBE,GAAmB;AACxC,sBAAcC,CAAQ;AACtB;AAAA,MAAA;AAGG,MAAAP,EAAcd,CAAK,MACtBa,EAAgB,EAAI,GACpB,cAAcQ,CAAQ;AAAA,OAErBF,CAAY;AAEK,WAAAH,EAAA,GAEb,MAAM;AACZ,oBAAcK,CAAQ,GAChBrB,EAAA,oBAAoB,SAASgB,CAAmB;AAAA,IACvD;AAAA,EACD,GAAG,EAAE,GAEE;AAAA,IACN,cAAAJ;AAAA,IACA,UAAAf;AAAA,EACD;AACD;ACjCO,SAASyB,EAAoB;AAAA,EACnC,OAAA/B;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAA8B;AAAA,EACA,UAAAC;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,cAAAC,IAAe;AAChB,GAA+B;AAC9B,QAAMC,IAAkBrC,EAAmBC,GAAOC,GAAcC,CAAQ,GAClEmC,IAAatB,EAAc,GAC3B,EAAE,cAAAM,EAAa,IAAID,EAAY,GAE/BkB,IAAaC,EAAQ,MACnB,CAACP,KAAY,CAACC,GACnB,CAACD,GAAUC,CAAQ,CAAC,GAEjBO,IAAc5B,EAAY,MAAM;AACrC,IAAIZ,MAAU,SAEbE,IAAW,EAAE,IAGTkC,EAAgB,SAAS,YACZA,EAAA,SAAS,QAAQ,QAAQ,IACzBA,EAAA,SAAS,QAAQ,cAAc,IAAI,MAAM,SAAS,EAAE,SAAS,GAAK,CAAC,CAAC;AAAA,KAGpF,CAAClC,GAAUF,GAAOoC,EAAgB,QAAQ,CAAC,GAExCK,IAAkB7B,EAAY,MAAM;AACzC,IAAAyB,EAAW,WAAW,OAAOD,EAAgB,YAAY,CAAC;AAAA,KACxD,CAACC,EAAW,YAAYD,EAAgB,YAAY,CAAC,GAElDM,IAAsBR,KAAiBI,KAAcF,EAAgB,cACrEO,IAAqBR,KAAgBC,EAAgB;AAEpD,SAAA;AAAA;AAAA,IAEN,cAAcA,EAAgB;AAAA,IAC9B,UAAUA,EAAgB;AAAA,IAC1B,YAAAE;AAAA;AAAA,IAGA,cAAcF,EAAgB;AAAA,IAC9B,aAAAI;AAAA,IACA,YAAYC;AAAA;AAAA,IAGZ,WAAWJ,EAAW;AAAA;AAAA,IAGtB,cAAAhB;AAAA;AAAA,IAGA,qBAAAqB;AAAA,IACA,oBAAAC;AAAA,EACD;AACD;AC3EA,MAAMC,IAAkBC,EAAG;AAAA,EAC1B,MAAM;AAAA,EACN,OAAO;AAAA,IACN,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,SAAS;AAAA,IACT,OAAO;AAAA,EACR;AAAA,EACA,UAAU;AAAA,IACT,cAAc,EAAE,MAAM,EAAE,OAAO,OAAS,EAAA;AAAA,EAAA;AAE1C,CAAC,GAoBYC,IAAYC,EAAM;AAAA,EAC9B,CACC;AAAA,IACC,WAAAC;AAAA,IACA,SAAAC;AAAA,IACA,eAAAf;AAAA,IACA,cAAAC;AAAA,IACA,OAAAnC;AAAA,IACA,cAAAC;AAAA,IACA,UAAAC;AAAA,IACA,UAAA8B;AAAA,IACA,UAAAC;AAAA,IACA,OAAAiB;AAAA,IACA,WAAAC;AAAA,IACA,GAAGC;AAAA,KAEJC,MACI;AACJ,UAAMC,IAASV,EAAgB,GAEzBW,IAAexB,EAAoB;AAAA,MACxC,OAAA/B;AAAA,MACA,cAAAC;AAAA,MACA,UAAAC;AAAA,MACA,UAAA8B;AAAA,MACA,UAAAC;AAAA,MACA,eAAAC;AAAA,MACA,cAAAC;AAAA,IAAA,CACA,GAEKqB,IAAYC,EAAaJ,GAAKE,EAAa,QAAQ;AAGxD,WAAA,gBAAAG,EAACC,KAAW,WAAWL,EAAO,KAAK,EAAE,WAAAH,GAAW,GAC9C,UAAA;AAAA,MAAAH,uBAAcY,GAAe,EAAA,WAAWN,EAAO,aAAc,UAAUN,GAAA;AAAA,MAExE,gBAAAa;AAAA,QAACC;AAAA,QAAA;AAAA,UACA,KAAKN;AAAA,UACL,OAAAxD;AAAA,UACA,cAAAC;AAAA,UACA,UAAUsD,EAAa;AAAA,UACvB,UAAAvB;AAAA,UACA,UAAAC;AAAA,UACA,OAAAiB;AAAA,UACA,WAAWI,EAAO,MAAM,EAAE,cAAc,CAAC,CAACN,GAAW;AAAA,UACpD,GAAGI;AAAA,QAAA;AAAA,MACL;AAAA,MAECG,EAAa,uBACb,gBAAAM;AAAA,QAACE;AAAA,QAAA;AAAA,UACA,MAAMC;AAAA,UACN,SAAST,EAAa;AAAA,UACtB,MAAK;AAAA,UACL,WAAWD,EAAO,OAAO;AAAA,QAAA;AAAA,MAC1B;AAAA,MAGAC,EAAa,sBACb,gBAAAM;AAAA,QAACE;AAAA,QAAA;AAAA,UACA,MAAMR,EAAa,YAAYU,IAAQpE;AAAA,UACvC,SAAS0D,EAAa;AAAA,UACtB,MAAK;AAAA,UACL,WAAWD,EAAO,OAAO;AAAA,QAAA;AAAA,MAC1B;AAAA,MAGAL,KAAY,gBAAAY,EAAAD,GAAA,EAAe,WAAWN,EAAO,QAAA,GAAY,UAAQL,EAAA,CAAA;AAAA,IAAA,GACnE;AAAA,EAAA;AAGH;AAEAH,EAAU,cAAc;","x_google_ignoreList":[0]}
@@ -1,7 +1,7 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
2
  import s from "react";
3
3
  import { T as d } from "./index-BVqs-uqP.js";
4
- import { B as g } from "./Button-Dg89xRSi.js";
4
+ import { B as g } from "./Button-BZ3ON1Tj.js";
5
5
  const i = d({
6
6
  base: "",
7
7
  variants: {
@@ -30,4 +30,4 @@ p.displayName = "TriggerButton";
30
30
  export {
31
31
  p as T
32
32
  };
33
- //# sourceMappingURL=TriggerButton-CfDObWP9.js.map
33
+ //# sourceMappingURL=TriggerButton-Bakr8Boi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerButton-CfDObWP9.js","sources":["../src/components/button/trigger-button/TriggerButton.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\nimport { tv } from \"tailwind-variants\";\nimport { VariantsConfig } from \"@/lib/utils/variants\";\nimport { Button, ButtonProps } from \"../button/Button\";\n\nexport interface TriggerButtonVariants {\n\tvariant?: \"outline\" | \"ghost\" | \"text\";\n}\n\nconst triggerButtonVariants = tv({\n\tbase: \"\",\n\tvariants: {\n\t\tvariant: {\n\t\t\toutline:\n\t\t\t\t\"data-[state=open]:bg-secondary-bg-hover data-[state=open]:shadow-none active:data-[state=open]:bg-secondary-bg-hover lg:hover:data-[state=open]:bg-secondary-bg-hover\",\n\t\t\tghost:\n\t\t\t\t\"data-[state=open]:bg-secondary-bg-hover data-[state=open]:shadow-none active:data-[state=open]:bg-secondary-bg-hover lg:hover:data-[state=open]:bg-secondary-bg-hover\",\n\t\t\ttext: \"data-[state=open]:text-secondary-fg\"\n\t\t}\n\t} satisfies VariantsConfig<TriggerButtonVariants>,\n\tdefaultVariants: {\n\t\tvariant: \"outline\"\n\t}\n});\n\nexport type TriggerButtonProps = Omit<ButtonProps, \"variant\" | \"status\"> &\n\tTriggerButtonVariants & {\n\t\t\"data-state\"?: \"open\" | \"closed\";\n\t};\n\nexport const TriggerButton = React.forwardRef<HTMLButtonElement, PropsWithChildren<TriggerButtonProps>>(\n\t({ className, children, variant, ...props }, ref) => {\n\t\treturn (\n\t\t\t<Button\n\t\t\t\tvariant={variant || \"outline\"}\n\t\t\t\tclassName={triggerButtonVariants({ className, variant })}\n\t\t\t\tref={ref}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Button>\n\t\t);\n\t}\n);\n\nTriggerButton.displayName = \"TriggerButton\";\n"],"names":["triggerButtonVariants","tv","TriggerButton","React","className","children","variant","props","ref","jsx","Button"],"mappings":";;;;AASA,MAAMA,IAAwBC,EAAG;AAAA,EAChC,MAAM;AAAA,EACN,UAAU;AAAA,IACT,SAAS;AAAA,MACR,SACC;AAAA,MACD,OACC;AAAA,MACD,MAAM;AAAA,IAAA;AAAA,EAER;AAAA,EACA,iBAAiB;AAAA,IAChB,SAAS;AAAA,EAAA;AAEX,CAAC,GAOYC,IAAgBC,EAAM;AAAA,EAClC,CAAC,EAAE,WAAAC,GAAW,UAAAC,GAAU,SAAAC,GAAS,GAAGC,KAASC,MAE3C,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACA,SAASJ,KAAW;AAAA,MACpB,WAAWN,EAAsB,EAAE,WAAAI,GAAW,SAAAE,GAAS;AAAA,MACvD,KAAAE;AAAA,MACC,GAAGD;AAAA,MAEH,UAAAF;AAAA,IAAA;AAAA,EACF;AAGH;AAEAH,EAAc,cAAc;"}
1
+ {"version":3,"file":"TriggerButton-Bakr8Boi.js","sources":["../src/components/button/trigger-button/TriggerButton.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\nimport { tv } from \"tailwind-variants\";\nimport { VariantsConfig } from \"@/lib/utils/variants\";\nimport { Button, ButtonProps } from \"../button/Button\";\n\nexport interface TriggerButtonVariants {\n\tvariant?: \"outline\" | \"ghost\" | \"text\";\n}\n\nconst triggerButtonVariants = tv({\n\tbase: \"\",\n\tvariants: {\n\t\tvariant: {\n\t\t\toutline:\n\t\t\t\t\"data-[state=open]:bg-secondary-bg-hover data-[state=open]:shadow-none active:data-[state=open]:bg-secondary-bg-hover lg:hover:data-[state=open]:bg-secondary-bg-hover\",\n\t\t\tghost:\n\t\t\t\t\"data-[state=open]:bg-secondary-bg-hover data-[state=open]:shadow-none active:data-[state=open]:bg-secondary-bg-hover lg:hover:data-[state=open]:bg-secondary-bg-hover\",\n\t\t\ttext: \"data-[state=open]:text-secondary-fg\"\n\t\t}\n\t} satisfies VariantsConfig<TriggerButtonVariants>,\n\tdefaultVariants: {\n\t\tvariant: \"outline\"\n\t}\n});\n\nexport type TriggerButtonProps = Omit<ButtonProps, \"variant\" | \"status\"> &\n\tTriggerButtonVariants & {\n\t\t\"data-state\"?: \"open\" | \"closed\";\n\t};\n\nexport const TriggerButton = React.forwardRef<HTMLButtonElement, PropsWithChildren<TriggerButtonProps>>(\n\t({ className, children, variant, ...props }, ref) => {\n\t\treturn (\n\t\t\t<Button\n\t\t\t\tvariant={variant || \"outline\"}\n\t\t\t\tclassName={triggerButtonVariants({ className, variant })}\n\t\t\t\tref={ref}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Button>\n\t\t);\n\t}\n);\n\nTriggerButton.displayName = \"TriggerButton\";\n"],"names":["triggerButtonVariants","tv","TriggerButton","React","className","children","variant","props","ref","jsx","Button"],"mappings":";;;;AASA,MAAMA,IAAwBC,EAAG;AAAA,EAChC,MAAM;AAAA,EACN,UAAU;AAAA,IACT,SAAS;AAAA,MACR,SACC;AAAA,MACD,OACC;AAAA,MACD,MAAM;AAAA,IAAA;AAAA,EAER;AAAA,EACA,iBAAiB;AAAA,IAChB,SAAS;AAAA,EAAA;AAEX,CAAC,GAOYC,IAAgBC,EAAM;AAAA,EAClC,CAAC,EAAE,WAAAC,GAAW,UAAAC,GAAU,SAAAC,GAAS,GAAGC,KAASC,MAE3C,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACA,SAASJ,KAAW;AAAA,MACpB,WAAWN,EAAsB,EAAE,WAAAI,GAAW,SAAAE,GAAS;AAAA,MACvD,KAAAE;AAAA,MACC,GAAGD;AAAA,MAEH,UAAAF;AAAA,IAAA;AAAA,EACF;AAGH;AAEAH,EAAc,cAAc;"}
@@ -7,8 +7,8 @@ import { a as D, F as L, g as R } from "../../FormStack-Cc_ELdWL.js";
7
7
  import { s as G } from "../../zod-BMNoK3aM.js";
8
8
  import { e as V } from "../../index.esm-CXA6i4d7.js";
9
9
  import { z as v } from "../../vendors/zod.js";
10
- import { B as E } from "../../Button-Dg89xRSi.js";
11
- import { T as A } from "../../TextInput-Db0ylY91.js";
10
+ import { B as E } from "../../Button-BZ3ON1Tj.js";
11
+ import { T as A } from "../../TextInput-5BuZtWV6.js";
12
12
  import { c as j } from "../../cn-dsXlqdJg.js";
13
13
  import { T as I } from "../../index-BVqs-uqP.js";
14
14
  import { L as k } from "../../loader-circle-D1YXTEGq.js";
@@ -7,7 +7,7 @@ import { c as X, b as Z } from "../index-CFaU3UXv.js";
7
7
  import { T as d } from "../index-BVqs-uqP.js";
8
8
  import { u as ee } from "../usePortalContainer-BAIp0kSF.js";
9
9
  import { o as te } from "../Overlay-CVt011mY.js";
10
- import { B as N } from "../Button-Dg89xRSi.js";
10
+ import { B as N } from "../Button-BZ3ON1Tj.js";
11
11
  import { A as ae, u as f } from "../AlertContext-CxjW1LVL.js";
12
12
  import { I as oe } from "../Icon-DH3ev9GK.js";
13
13
  import { e as w } from "../useBreakpoints-DHvp74UL.js";
@@ -4,7 +4,7 @@ import l from "react";
4
4
  import { T as n } from "../index-BVqs-uqP.js";
5
5
  import { S as c } from "../index-BtQfgaSF.js";
6
6
  import { u } from "../AlertContext-CxjW1LVL.js";
7
- import { B as p } from "../Button-Dg89xRSi.js";
7
+ import { B as p } from "../Button-BZ3ON1Tj.js";
8
8
  const x = n({
9
9
  base: "col-start-2 line-clamp-1 min-h-4 text-sm font-medium tracking-tight text-primary-fg",
10
10
  variants: {
@@ -1,12 +1,12 @@
1
- import { B as i } from "../Button-Dg89xRSi.js";
2
- import { B as R } from "../ButtonBase-e6qyv6mD.js";
3
- import { I as s } from "../IconButton-DwkpNgn3.js";
1
+ import { B as i } from "../Button-BZ3ON1Tj.js";
2
+ import { B as R } from "../ButtonBase-jgu7EolU.js";
3
+ import { I as s } from "../IconButton-uGJ3cQtk.js";
4
4
  import { jsx as a } from "react/jsx-runtime";
5
5
  import m from "react";
6
6
  import { T as c } from "../index-BVqs-uqP.js";
7
7
  import { L as e } from "../loader-circle-D1YXTEGq.js";
8
- import { R as I } from "../RichButton-DuPTenmS.js";
9
- import { T as b } from "../TriggerButton-CfDObWP9.js";
8
+ import { R as I } from "../RichButton-B1wjK7Bk.js";
9
+ import { T as b } from "../TriggerButton-Bakr8Boi.js";
10
10
  const l = c({
11
11
  slots: {
12
12
  icon: "animate-spin"
@@ -6,7 +6,7 @@ import { C } from "../chevron-right-D3juAhA-.js";
6
6
  import { C as N } from "../chevron-up-UDiVTHo0.js";
7
7
  import { C as k } from "../chevron-down-CAOItu8X.js";
8
8
  import { i as _, R as B, q as D, w as M } from "../DayPicker-4hE1QEvO.js";
9
- import { B as u } from "../Button-Dg89xRSi.js";
9
+ import { B as u } from "../Button-BZ3ON1Tj.js";
10
10
  const s = n({
11
11
  base: "size-4"
12
12
  }), m = ({ className: e, orientation: t, ...o }) => t === "left" ? /* @__PURE__ */ a(w, { className: s({ className: e }), ...o }) : t === "right" ? /* @__PURE__ */ a(C, { className: s({ className: e }), ...o }) : t === "up" ? /* @__PURE__ */ a(N, { className: s({ className: e }), ...o }) : /* @__PURE__ */ a(k, { className: s({ className: e }), ...o });
@@ -2,7 +2,7 @@ import { jsx as o, jsxs as m } from "react/jsx-runtime";
2
2
  import { S as c } from "../index-BtQfgaSF.js";
3
3
  import d, { useCallback as g } from "react";
4
4
  import { T as l } from "../index-BVqs-uqP.js";
5
- import { I as h } from "../IconButton-DwkpNgn3.js";
5
+ import { I as h } from "../IconButton-uGJ3cQtk.js";
6
6
  import { e as C } from "../useBreakpoints-DHvp74UL.js";
7
7
  import { c as v } from "../createLucideIcon-DwBrHnj9.js";
8
8
  /**
@@ -4,7 +4,7 @@ import gt, { useRef as $t, useState as Kt, useCallback as pn, useEffect as Lt }
4
4
  import { c as gn } from "../cn-dsXlqdJg.js";
5
5
  import { T as Nt } from "../index-BVqs-uqP.js";
6
6
  import { u as hn } from "../useMergeRefs-qoKniYqT.js";
7
- import { B as Jt } from "../Button-Dg89xRSi.js";
7
+ import { B as Jt } from "../Button-BZ3ON1Tj.js";
8
8
  import { C as yn } from "../chevron-right-D3juAhA-.js";
9
9
  import { C as xn } from "../chevron-left-D6FtXcdU.js";
10
10
  function Sn(t) {
@@ -2,7 +2,7 @@ import { D as s, a as i } from "../Dialog-CdnsGyJD.js";
2
2
  import { b as y, c as B, d as C, e as h, f as x, g as j, h as u, i as v, j as O, M as P, k as R, l as _, m as b, n as k, o as q, p as w, q as N, r as z, s as A, t as E } from "../Dialog-CdnsGyJD.js";
3
3
  import { jsx as a } from "react/jsx-runtime";
4
4
  import d from "react";
5
- import { F as g, B as m } from "../FormFooterTemplate-BRrgrxAu.js";
5
+ import { F as g, B as m } from "../FormFooterTemplate-DdNnLu2-.js";
6
6
  const o = d.forwardRef(
7
7
  ({ title: e, description: l, ...r }, t) => /* @__PURE__ */ a(
8
8
  m,
@@ -7,7 +7,7 @@ import { S as Be } from "../ScrollShadowContainer-DdrnF8qU.js";
7
7
  import { o as Fe } from "../Overlay-CVt011mY.js";
8
8
  import { T as Q } from "../index-BVqs-uqP.js";
9
9
  import { u as ze } from "../usePortalContainer-BAIp0kSF.js";
10
- import { B as bt } from "../Button-Dg89xRSi.js";
10
+ import { B as bt } from "../Button-BZ3ON1Tj.js";
11
11
  import { a as We } from "../CheckboxField-limFbMk2.js";
12
12
  import { D as Ue } from "../Description-BTPMlTT-.js";
13
13
  import { I as jt } from "../Icon-DH3ev9GK.js";
@@ -17,7 +17,7 @@ import { c as Qe, I as ro, R as ao } from "../index-DHyZ_0Ut.js";
17
17
  import { u as de } from "../index-0ioNhtNM.js";
18
18
  import { h as so } from "../index-BjtNfqNq.js";
19
19
  import { T as M } from "../index-BVqs-uqP.js";
20
- import { T as co } from "../TriggerButton-CfDObWP9.js";
20
+ import { T as co } from "../TriggerButton-Bakr8Boi.js";
21
21
  import { I as io } from "../Icon-DH3ev9GK.js";
22
22
  import { M as Z, m as q } from "../MenuItem-d19Ty84F.js";
23
23
  import { m as uo } from "../MenuItemShortcut-D1faeIXp.js";
@@ -2,7 +2,7 @@ import { E as d } from "../ErrorState-B26k67-z.js";
2
2
  import { jsx as a } from "react/jsx-runtime";
3
3
  import m from "react";
4
4
  import { T as s } from "../index-BVqs-uqP.js";
5
- import { B as p } from "../Button-Dg89xRSi.js";
5
+ import { B as p } from "../Button-BZ3ON1Tj.js";
6
6
  const f = s({
7
7
  base: "h-5 px-3 py-0"
8
8
  }), i = m.forwardRef(
@@ -1,5 +1,5 @@
1
1
  import { jsx as a, jsxs as m, Fragment as Y } from "react/jsx-runtime";
2
- import { I as C } from "../IconButton-DwkpNgn3.js";
2
+ import { I as C } from "../IconButton-uGJ3cQtk.js";
3
3
  import { f as S } from "../formatBytes-C4QXq5lC.js";
4
4
  import U, { useMemo as V, useCallback as R } from "react";
5
5
  import { T as b } from "../index-BVqs-uqP.js";
@@ -11,7 +11,7 @@ import { D as Z } from "../download-BHsj218e.js";
11
11
  import { X as L } from "../x-tDTt7hTQ.js";
12
12
  import { A as ae, b as te, a as re } from "../AlertIcon-BphnEYvV.js";
13
13
  import { C as oe } from "../circle-alert-CVIokIC7.js";
14
- import { B as ie } from "../Button-Dg89xRSi.js";
14
+ import { B as ie } from "../Button-BZ3ON1Tj.js";
15
15
  import { I as se } from "../Icon-DH3ev9GK.js";
16
16
  import { u as E } from "../useFileUpload-Bnl3P8mP.js";
17
17
  /**
@@ -5,8 +5,8 @@ import { T as a } from "../index-BVqs-uqP.js";
5
5
  import { F as M, d as q, a as z, b as A, e as E } from "../FormHeader--F6b2aRk.js";
6
6
  import { D as l } from "../Divider-DPW5ZhZ8.js";
7
7
  import s from "react";
8
- import { B as d } from "../Button-Dg89xRSi.js";
9
- import { F as J, a as K } from "../FormFooterTemplate-BRrgrxAu.js";
8
+ import { B as d } from "../Button-BZ3ON1Tj.js";
9
+ import { F as J, a as K } from "../FormFooterTemplate-DdNnLu2-.js";
10
10
  const F = a({
11
11
  base: "text-md font-semibold"
12
12
  });
@@ -1,7 +1,7 @@
1
1
  import { jsx as r, jsxs as f } from "react/jsx-runtime";
2
2
  import y, { useCallback as i } from "react";
3
3
  import { T as h } from "../index-BVqs-uqP.js";
4
- import { B as D } from "../Button-Dg89xRSi.js";
4
+ import { B as D } from "../Button-BZ3ON1Tj.js";
5
5
  import { I as b } from "../Icon-DH3ev9GK.js";
6
6
  import { c as P } from "../createLucideIcon-DwBrHnj9.js";
7
7
  import { D as j } from "../download-BHsj218e.js";
@@ -1,7 +1,7 @@
1
1
  import { jsx as e, jsxs as C } from "react/jsx-runtime";
2
2
  import l, { useRef as d } from "react";
3
3
  import { T as p } from "../index-BVqs-uqP.js";
4
- import { B as f } from "../Button-Dg89xRSi.js";
4
+ import { B as f } from "../Button-BZ3ON1Tj.js";
5
5
  import { I as h } from "../Icon-DH3ev9GK.js";
6
6
  import { c as g } from "../cn-dsXlqdJg.js";
7
7
  import { I as b } from "../image-BqL5JP90.js";
@@ -3,10 +3,10 @@ import k, { useRef as j, useState as G, useEffect as q, useCallback as b } from
3
3
  import { u as R } from "../useMergeRefs-qoKniYqT.js";
4
4
  import { u as H, a as J } from "../inputBaseStyles-BfZIWuQ6.js";
5
5
  import { T as S } from "../index-BVqs-uqP.js";
6
- import { a as F, c as L, b as M, d as f } from "../InputGroup-BcRWP-zL.js";
7
- import { I as we } from "../InputGroup-BcRWP-zL.js";
8
- import { u as v, C as U } from "../TextInput-Db0ylY91.js";
9
- import { T as be } from "../TextInput-Db0ylY91.js";
6
+ import { a as F, c as L, b as M, d as f } from "../InputGroup-AVAtosX_.js";
7
+ import { I as we } from "../InputGroup-AVAtosX_.js";
8
+ import { u as v, C as U } from "../TextInput-5BuZtWV6.js";
9
+ import { T as be } from "../TextInput-5BuZtWV6.js";
10
10
  import { C as E } from "../circle-x-u75Rx3Tj.js";
11
11
  import { C as A } from "../check-CeyaOoZv.js";
12
12
  import { D as K } from "../download-BHsj218e.js";
@@ -3,16 +3,16 @@ import { M as ae, m as ie } from "../MenuItem-d19Ty84F.js";
3
3
  import { jsx as t, jsxs as m, Fragment as h } from "react/jsx-runtime";
4
4
  import { T as o } from "../index-BVqs-uqP.js";
5
5
  import I from "react";
6
- import { B as N } from "../Button-Dg89xRSi.js";
6
+ import { B as N } from "../Button-BZ3ON1Tj.js";
7
7
  import { u, n as p } from "../ComponentVariantProvider-brk0g-hm.js";
8
8
  import { I as c } from "../Icon-DH3ev9GK.js";
9
- import { I as M } from "../IconButton-DwkpNgn3.js";
9
+ import { I as M } from "../IconButton-uGJ3cQtk.js";
10
10
  import { M as T } from "../MenuItemShortcut-D1faeIXp.js";
11
11
  import { M as v } from "../MenuItemText-CRpaPbvg.js";
12
12
  import { c as S } from "../cn-dsXlqdJg.js";
13
13
  import { C as l } from "../check-CeyaOoZv.js";
14
14
  import { F as w } from "../FeatureIcon-BGE0Orkc.js";
15
- import { r as k } from "../RichButton-DuPTenmS.js";
15
+ import { r as k } from "../RichButton-B1wjK7Bk.js";
16
16
  const B = o({
17
17
  base: "hover:cursor-pointer focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-primary"
18
18
  }), A = I.forwardRef(
@@ -2,7 +2,7 @@ import { jsx as o, jsxs as p } from "react/jsx-runtime";
2
2
  import n, { useContext as f, createContext as z } from "react";
3
3
  import { T as i } from "../index-BVqs-uqP.js";
4
4
  import { S } from "../index-BtQfgaSF.js";
5
- import { B as u } from "../Button-Dg89xRSi.js";
5
+ import { B as u } from "../Button-BZ3ON1Tj.js";
6
6
  import { F as b } from "../FeatureIcon-BGE0Orkc.js";
7
7
  import { B as P, F as h } from "../FolderSvg-cw0DxNVy.js";
8
8
  const d = z(void 0), y = ({ size: e, children: t }) => /* @__PURE__ */ o(d.Provider, { value: { size: e }, children: t }), c = () => {
@@ -1,4 +1,4 @@
1
- import { P as e, c as a, b as p, a as P, d as s } from "../Popover-CRVD7AtB.js";
1
+ import { P as e, c as a, b as p, a as P, d as s } from "../Popover-KjZXxxl3.js";
2
2
  export {
3
3
  e as Popover,
4
4
  a as PopoverAnchor,
@@ -1,7 +1,7 @@
1
1
  import { jsxs as u, jsx as o } from "react/jsx-runtime";
2
2
  import f, { useMemo as b } from "react";
3
3
  import { T as l } from "../index-BVqs-uqP.js";
4
- import { I as D } from "../IconButton-DwkpNgn3.js";
4
+ import { I as D } from "../IconButton-uGJ3cQtk.js";
5
5
  import { R as P } from "../rotate-cw-tYRlcg0g.js";
6
6
  const I = l({
7
7
  slots: {
@@ -5,7 +5,7 @@ import { c as M } from "../index-CmBeyp2d.js";
5
5
  import { P as y } from "../index-Bb23HztA.js";
6
6
  import { T as u } from "../index-BVqs-uqP.js";
7
7
  import { I as T } from "../Icon-DH3ev9GK.js";
8
- import { I as _ } from "../IconButton-DwkpNgn3.js";
8
+ import { I as _ } from "../IconButton-uGJ3cQtk.js";
9
9
  import { R as B } from "../rotate-cw-tYRlcg0g.js";
10
10
  import { X as S } from "../x-tDTt7hTQ.js";
11
11
  var x = "Progress", h = 100, [W, le] = M(x), [E, A] = W(x), I = w.forwardRef(
@@ -4,7 +4,7 @@ import { T as Q } from "../index-BVqs-uqP.js";
4
4
  import { u as K, S as fe } from "../SearchSelectTag-CA7Ie3Nx.js";
5
5
  import { b as Se, g as re, C as te, c as ne, e as ge, i as ve } from "../Command-B7ZRyW8w.js";
6
6
  import { I as j } from "../Icon-DH3ev9GK.js";
7
- import { b as ye, P as _, a as $ } from "../Popover-CRVD7AtB.js";
7
+ import { b as ye, P as _, a as $ } from "../Popover-KjZXxxl3.js";
8
8
  import { m as be, s as Ce } from "../Select-D9juHX8o.js";
9
9
  import { C as Ne } from "../chevron-down-CAOItu8X.js";
10
10
  import { C as ae } from "../check-CeyaOoZv.js";
@@ -4,8 +4,8 @@ import o from "react";
4
4
  import { T as A, b as D, c as G } from "../Tooltip-7Duaau0S.js";
5
5
  import { c as w } from "../cn-dsXlqdJg.js";
6
6
  import { S as L, a as H, b as O, d as P, e as K } from "../Sheet-qTIXsqm0.js";
7
- import { I as R } from "../IconButton-DwkpNgn3.js";
8
- import { T as j } from "../TextInput-Db0ylY91.js";
7
+ import { I as R } from "../IconButton-uGJ3cQtk.js";
8
+ import { T as j } from "../TextInput-5BuZtWV6.js";
9
9
  import { D as F } from "../Divider-DPW5ZhZ8.js";
10
10
  import { S as y } from "../index-BtQfgaSF.js";
11
11
  import { T as n } from "../index-BVqs-uqP.js";
@@ -1,7 +1,7 @@
1
1
  import { jsx as l } from "react/jsx-runtime";
2
2
  import i from "react";
3
3
  import { T as n } from "../index-BVqs-uqP.js";
4
- import { B as f } from "../Button-Dg89xRSi.js";
4
+ import { B as f } from "../Button-BZ3ON1Tj.js";
5
5
  import { e as y } from "../useBreakpoints-DHvp74UL.js";
6
6
  const u = n({
7
7
  base: "flex w-full max-w-[343px] flex-col items-center text-center lg:max-w-[672px]"
@@ -3,7 +3,7 @@ import { u as z, S as H } from "../SearchSelectTag-CA7Ie3Nx.js";
3
3
  import { u as J } from "../useItemsKeyboardNavigation-CmeOR30y.js";
4
4
  import M, { useState as k, useRef as V, useCallback as r } from "react";
5
5
  import { T as S } from "../index-BVqs-uqP.js";
6
- import { I as P, a as Q, b as U } from "../InputGroup-BcRWP-zL.js";
6
+ import { I as P, a as Q, b as U } from "../InputGroup-AVAtosX_.js";
7
7
  import { s as W } from "../Select-D9juHX8o.js";
8
8
  const X = S({
9
9
  extend: W,
@@ -2,7 +2,7 @@ import { jsx as y, Fragment as nt, jsxs as C } from "react/jsx-runtime";
2
2
  import s, { forwardRef as re, isValidElement as Et, createContext as oe, useContext as ne } from "react";
3
3
  import ie from "react-dom";
4
4
  import { T as U } from "../index-BVqs-uqP.js";
5
- import { I as le } from "../IconButton-DwkpNgn3.js";
5
+ import { I as le } from "../IconButton-uGJ3cQtk.js";
6
6
  import { X as de } from "../x-tDTt7hTQ.js";
7
7
  import { T as ce } from "../Text-DeBE8AKl.js";
8
8
  import { c as ue } from "../cn-dsXlqdJg.js";
@@ -10,7 +10,7 @@ import { t as me } from "../bundle-mjs-CQ0w4GOB.js";
10
10
  import { I as pe } from "../Icon-DH3ev9GK.js";
11
11
  import { C as Yt } from "../circle-alert-CVIokIC7.js";
12
12
  import { c as Ct } from "../createLucideIcon-DwBrHnj9.js";
13
- import { B as fe } from "../Button-Dg89xRSi.js";
13
+ import { B as fe } from "../Button-BZ3ON1Tj.js";
14
14
  /**
15
15
  * @license lucide-react v0.460.0 - ISC
16
16
  *
@@ -4566,9 +4566,18 @@
4566
4566
  .ui-kit .hover\:border-status-error-secondary-border:hover {
4567
4567
  border-color: hsl(var(--status-error-secondary-border));
4568
4568
  }
4569
+ .ui-kit .hover\:border-status-info-primary-border:hover {
4570
+ border-color: hsl(var(--status-info-primary-border));
4571
+ }
4572
+ .ui-kit .hover\:border-status-success-primary-border:hover {
4573
+ border-color: hsl(var(--status-success-primary-border));
4574
+ }
4569
4575
  .ui-kit .hover\:border-status-success-secondary-border:hover {
4570
4576
  border-color: hsl(var(--status-success-secondary-border));
4571
4577
  }
4578
+ .ui-kit .hover\:border-status-warning-primary-border:hover {
4579
+ border-color: hsl(var(--status-warning-primary-border));
4580
+ }
4572
4581
  .ui-kit .hover\:\!bg-inverse-hover:hover {
4573
4582
  background-color: hsl(var(--inverse-hover)) !important;
4574
4583
  }
@@ -4596,6 +4605,9 @@
4596
4605
  --tw-bg-opacity: 1;
4597
4606
  background-color: rgb(255 237 213 / var(--tw-bg-opacity, 1));
4598
4607
  }
4608
+ .ui-kit .hover\:bg-primary-accent-hover:hover {
4609
+ background-color: hsl(var(--primary-accent-hover));
4610
+ }
4599
4611
  .ui-kit .hover\:bg-primary-bg-hover:hover {
4600
4612
  background-color: hsl(var(--primary-bg-hover));
4601
4613
  }
@@ -4617,6 +4629,9 @@
4617
4629
  .ui-kit .hover\:bg-status-error-hover:hover {
4618
4630
  background-color: hsl(var(--status-error-hover));
4619
4631
  }
4632
+ .ui-kit .hover\:bg-status-info-bg:hover {
4633
+ background-color: hsl(var(--status-info-bg));
4634
+ }
4620
4635
  .ui-kit .hover\:bg-status-info-bg-hover:hover {
4621
4636
  background-color: hsl(var(--status-info-bg-hover));
4622
4637
  }
@@ -4629,6 +4644,9 @@
4629
4644
  .ui-kit .hover\:bg-status-neutral-hover:hover {
4630
4645
  background-color: hsl(var(--status-default-hover));
4631
4646
  }
4647
+ .ui-kit .hover\:bg-status-success-bg:hover {
4648
+ background-color: hsl(var(--status-success-bg));
4649
+ }
4632
4650
  .ui-kit .hover\:bg-status-success-bg-hover:hover {
4633
4651
  background-color: hsl(var(--status-success-bg-hover));
4634
4652
  }
@@ -4665,6 +4683,18 @@
4665
4683
  .ui-kit .hover\:text-secondary-fg:hover {
4666
4684
  color: hsl(var(--secondary-fg));
4667
4685
  }
4686
+ .ui-kit .hover\:text-status-error-fg:hover {
4687
+ color: hsl(var(--status-error-fg));
4688
+ }
4689
+ .ui-kit .hover\:text-status-info-fg:hover {
4690
+ color: hsl(var(--status-info-fg));
4691
+ }
4692
+ .ui-kit .hover\:text-status-success-fg:hover {
4693
+ color: hsl(var(--status-success-fg));
4694
+ }
4695
+ .ui-kit .hover\:text-status-warning-fg:hover {
4696
+ color: hsl(var(--status-warning-fg));
4697
+ }
4668
4698
  .ui-kit .hover\:text-white:hover {
4669
4699
  --tw-text-opacity: 1;
4670
4700
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
@@ -6283,91 +6313,12 @@
6283
6313
  .ui-kit .lg\:hover\:border-inverse-border:hover {
6284
6314
  border-color: hsl(var(--inverse-border));
6285
6315
  }
6286
- .ui-kit .lg\:hover\:border-primary-border:hover {
6287
- border-color: hsl(var(--primary-border));
6288
- }
6289
- .ui-kit .lg\:hover\:border-status-error-primary-border:hover {
6290
- border-color: hsl(var(--status-error-primary-border));
6291
- }
6292
- .ui-kit .lg\:hover\:border-status-info-primary-border:hover {
6293
- border-color: hsl(var(--status-info-primary-border));
6294
- }
6295
- .ui-kit .lg\:hover\:border-status-success-primary-border:hover {
6296
- border-color: hsl(var(--status-success-primary-border));
6297
- }
6298
- .ui-kit .lg\:hover\:border-status-warning-primary-border:hover {
6299
- border-color: hsl(var(--status-warning-primary-border));
6300
- }
6301
6316
  .ui-kit .lg\:hover\:bg-inverse-hover:hover {
6302
6317
  background-color: hsl(var(--inverse-hover));
6303
6318
  }
6304
- .ui-kit .lg\:hover\:bg-primary-accent-hover:hover {
6305
- background-color: hsl(var(--primary-accent-hover));
6306
- }
6307
- .ui-kit .lg\:hover\:bg-primary-bg-hover:hover {
6308
- background-color: hsl(var(--primary-bg-hover));
6309
- }
6310
- .ui-kit .lg\:hover\:bg-secondary-bg-hover:hover {
6311
- background-color: hsl(var(--secondary-bg-hover));
6312
- }
6313
- .ui-kit .lg\:hover\:bg-status-error-bg:hover {
6314
- background-color: hsl(var(--status-error-bg));
6315
- }
6316
- .ui-kit .lg\:hover\:bg-status-error-bg-hover:hover {
6317
- background-color: hsl(var(--status-error-bg-hover));
6318
- }
6319
- .ui-kit .lg\:hover\:bg-status-error-hover:hover {
6320
- background-color: hsl(var(--status-error-hover));
6321
- }
6322
- .ui-kit .lg\:hover\:bg-status-info-bg:hover {
6323
- background-color: hsl(var(--status-info-bg));
6324
- }
6325
- .ui-kit .lg\:hover\:bg-status-info-bg-hover:hover {
6326
- background-color: hsl(var(--status-info-bg-hover));
6327
- }
6328
- .ui-kit .lg\:hover\:bg-status-info-hover:hover {
6329
- background-color: hsl(var(--status-info-hover));
6330
- }
6331
- .ui-kit .lg\:hover\:bg-status-success-bg:hover {
6332
- background-color: hsl(var(--status-success-bg));
6333
- }
6334
- .ui-kit .lg\:hover\:bg-status-success-bg-hover:hover {
6335
- background-color: hsl(var(--status-success-bg-hover));
6336
- }
6337
- .ui-kit .lg\:hover\:bg-status-success-hover:hover {
6338
- background-color: hsl(var(--status-success-hover));
6339
- }
6340
- .ui-kit .lg\:hover\:bg-status-warning-bg:hover {
6341
- background-color: hsl(var(--status-warning-bg));
6342
- }
6343
- .ui-kit .lg\:hover\:bg-status-warning-bg-hover:hover {
6344
- background-color: hsl(var(--status-warning-bg-hover));
6345
- }
6346
- .ui-kit .lg\:hover\:bg-status-warning-hover:hover {
6347
- background-color: hsl(var(--status-warning-hover));
6348
- }
6349
6319
  .ui-kit .lg\:hover\:text-inverse-primary-fg:hover {
6350
6320
  color: hsl(var(--inverse-primary-fg));
6351
6321
  }
6352
- .ui-kit .lg\:hover\:text-primary-fg:hover {
6353
- color: hsl(var(--primary-fg));
6354
- }
6355
- .ui-kit .lg\:hover\:text-status-error-fg:hover {
6356
- color: hsl(var(--status-error-fg));
6357
- }
6358
- .ui-kit .lg\:hover\:text-status-info-fg:hover {
6359
- color: hsl(var(--status-info-fg));
6360
- }
6361
- .ui-kit .lg\:hover\:text-status-success-fg:hover {
6362
- color: hsl(var(--status-success-fg));
6363
- }
6364
- .ui-kit .lg\:hover\:text-status-warning-fg:hover {
6365
- color: hsl(var(--status-warning-fg));
6366
- }
6367
- .ui-kit .lg\:hover\:text-white:hover {
6368
- --tw-text-opacity: 1;
6369
- color: rgb(255 255 255 / var(--tw-text-opacity, 1));
6370
- }
6371
6322
  }
6372
6323
  .ui-kit .lg\:has-\[\>svg\]\:grid-cols-\[1\.5rem_1fr\]:has(>svg) {
6373
6324
  grid-template-columns: 1.5rem 1fr;