{
  "name": "alert",
  "title": "Alert",
  "description": "Kura Alert component source.",
  "type": "ui",
  "add": "when-added",
  "files": [
    {
      "type": "ui",
      "role": "file",
      "content": "<script lang=\"ts\">\n  import type { HTMLAttributes } from 'svelte/elements';\n  import { cn, type WithElementRef } from '$lib/utils.js';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"alert-action\"\n  class={cn('absolute top-2 right-2.5', className)}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
      "path": "alert/alert-action.svelte",
      "_imports_": [
        {
          "import": "$lib/utils.js",
          "item": "utils",
          "file": {
            "type": "lib",
            "path": "utils.ts"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    },
    {
      "type": "ui",
      "role": "file",
      "content": "<script lang=\"ts\">\n  import type { HTMLAttributes } from 'svelte/elements';\n  import { cn, type WithElementRef } from '$lib/utils.js';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"alert-description\"\n  class={cn(\n    'text-muted-foreground text-xs/relaxed text-balance md:text-pretty [&_p:not(:last-child)]:mb-2 [&_a]:text-link [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground',\n    className\n  )}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
      "path": "alert/alert-description.svelte",
      "_imports_": [
        {
          "import": "$lib/utils.js",
          "item": "utils",
          "file": {
            "type": "lib",
            "path": "utils.ts"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    },
    {
      "type": "ui",
      "role": "file",
      "content": "<script lang=\"ts\">\n  import type { HTMLAttributes } from 'svelte/elements';\n  import { cn, type WithElementRef } from '$lib/utils.js';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"alert-title\"\n  class={cn(\n    'text-sm font-medium group-has-[>svg]/alert:col-start-2 [&_a]:text-link [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground',\n    className\n  )}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
      "path": "alert/alert-title.svelte",
      "_imports_": [
        {
          "import": "$lib/utils.js",
          "item": "utils",
          "file": {
            "type": "lib",
            "path": "utils.ts"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    },
    {
      "type": "ui",
      "role": "file",
      "content": "<script lang=\"ts\" module>\n  import { type VariantProps, tv } from 'tailwind-variants';\n\n  export const alertVariants = tv({\n    base: \"relative grid w-full gap-0.5 bg-card px-2.5 py-2 text-left text-xs/relaxed text-card-foreground after:absolute after:-inset-y-px after:-left-px after:w-0.5 has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4 hairline-frame group/alert\",\n    variants: {\n      variant: {\n        default: 'after:bg-link',\n        destructive:\n          'text-destructive *:data-[slot=alert-description]:text-destructive/90 after:bg-destructive *:[svg]:text-current'\n      }\n    },\n    defaultVariants: {\n      variant: 'default'\n    }\n  });\n\n  export type AlertVariant = VariantProps<typeof alertVariants>['variant'];\n</script>\n\n<script lang=\"ts\">\n  import type { HTMLAttributes } from 'svelte/elements';\n  import { cn, type WithElementRef } from '$lib/utils.js';\n\n  let {\n    ref = $bindable(null),\n    class: className,\n    variant = 'default',\n    children,\n    ...restProps\n  }: WithElementRef<HTMLAttributes<HTMLDivElement>> & {\n    variant?: AlertVariant;\n  } = $props();\n</script>\n\n<div\n  bind:this={ref}\n  data-slot=\"alert\"\n  role=\"alert\"\n  class={cn(alertVariants({ variant }), className)}\n  {...restProps}\n>\n  {@render children?.()}\n</div>\n",
      "path": "alert/alert.svelte",
      "_imports_": [
        {
          "import": "$lib/utils.js",
          "item": "utils",
          "file": {
            "type": "lib",
            "path": "utils.ts"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    },
    {
      "type": "ui",
      "role": "file",
      "content": "import Root from './alert.svelte';\nimport Description from './alert-description.svelte';\nimport Title from './alert-title.svelte';\nimport Action from './alert-action.svelte';\nexport { alertVariants, type AlertVariant } from './alert.svelte';\n\nexport {\n  Root,\n  Description,\n  Title,\n  Action,\n  //\n  Root as Alert,\n  Description as AlertDescription,\n  Title as AlertTitle,\n  Action as AlertAction\n};\n",
      "path": "alert/index.ts",
      "_imports_": [
        {
          "import": "./alert.svelte",
          "item": "alert",
          "file": {
            "type": "ui",
            "path": "alert/alert.svelte"
          },
          "meta": {}
        },
        {
          "import": "./alert-description.svelte",
          "item": "alert",
          "file": {
            "type": "ui",
            "path": "alert/alert-description.svelte"
          },
          "meta": {}
        },
        {
          "import": "./alert-title.svelte",
          "item": "alert",
          "file": {
            "type": "ui",
            "path": "alert/alert-title.svelte"
          },
          "meta": {}
        },
        {
          "import": "./alert-action.svelte",
          "item": "alert",
          "file": {
            "type": "ui",
            "path": "alert/alert-action.svelte"
          },
          "meta": {}
        }
      ],
      "registryDependencies": [],
      "dependencies": [],
      "devDependencies": []
    }
  ],
  "registryDependencies": [
    "styles",
    "utils"
  ],
  "dependencies": [
    {
      "ecosystem": "js",
      "name": "tailwind-variants",
      "version": "^3.2.2"
    }
  ],
  "devDependencies": []
}