abckit 0.0.9 → 0.0.11

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 (69) hide show
  1. package/dist/module.mjs +0 -1
  2. package/dist/runtime/components/app/AppBreadcrumbs.vue +1 -2
  3. package/dist/runtime/components/app/AppHeader.vue +2 -2
  4. package/dist/runtime/components/app/AppNavMain.d.vue.ts +1 -2
  5. package/dist/runtime/components/app/AppNavMain.vue +4 -4
  6. package/dist/runtime/components/app/AppNavMain.vue.d.ts +1 -2
  7. package/dist/runtime/components/ui/accordion/AccordionTrigger.vue +3 -2
  8. package/dist/runtime/components/ui/auto-form/AutoFormFieldArray.vue +3 -3
  9. package/dist/runtime/components/ui/auto-form/AutoFormFieldDate.vue +2 -2
  10. package/dist/runtime/components/ui/auto-form/AutoFormFieldFile.vue +2 -2
  11. package/dist/runtime/components/ui/breadcrumb/BreadcrumbEllipsis.vue +2 -2
  12. package/dist/runtime/components/ui/breadcrumb/BreadcrumbSeparator.vue +2 -2
  13. package/dist/runtime/components/ui/calendar/CalendarNextButton.vue +2 -2
  14. package/dist/runtime/components/ui/calendar/CalendarPrevButton.vue +2 -2
  15. package/dist/runtime/components/ui/carousel/CarouselNext.vue +2 -2
  16. package/dist/runtime/components/ui/carousel/CarouselPrevious.vue +2 -2
  17. package/dist/runtime/components/ui/checkbox/Checkbox.vue +2 -2
  18. package/dist/runtime/components/ui/combobox/ComboboxInput.vue +2 -2
  19. package/dist/runtime/components/ui/command/CommandInput.vue +2 -2
  20. package/dist/runtime/components/ui/context-menu/ContextMenuCheckboxItem.vue +2 -2
  21. package/dist/runtime/components/ui/context-menu/ContextMenuRadioItem.vue +2 -2
  22. package/dist/runtime/components/ui/context-menu/ContextMenuSubTrigger.vue +2 -2
  23. package/dist/runtime/components/ui/dialog/DialogContent.vue +2 -2
  24. package/dist/runtime/components/ui/dialog/DialogScrollContent.vue +2 -2
  25. package/dist/runtime/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +2 -2
  26. package/dist/runtime/components/ui/dropdown-menu/DropdownMenuRadioItem.vue +2 -2
  27. package/dist/runtime/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue +2 -2
  28. package/dist/runtime/components/ui/file/FileEmptyState.vue +3 -3
  29. package/dist/runtime/components/ui/file/FileGrid.vue +10 -10
  30. package/dist/runtime/components/ui/file/FileTable.vue +16 -17
  31. package/dist/runtime/components/ui/input-otp/InputOTPSeparator.vue +2 -2
  32. package/dist/runtime/components/ui/menubar/MenubarCheckboxItem.vue +2 -2
  33. package/dist/runtime/components/ui/menubar/MenubarRadioItem.vue +2 -2
  34. package/dist/runtime/components/ui/menubar/MenubarSubTrigger.vue +2 -2
  35. package/dist/runtime/components/ui/native-select/NativeSelect.vue +3 -2
  36. package/dist/runtime/components/ui/navigation-menu/NavigationMenuTrigger.vue +3 -2
  37. package/dist/runtime/components/ui/number-field/NumberFieldDecrement.vue +2 -2
  38. package/dist/runtime/components/ui/number-field/NumberFieldIncrement.vue +2 -2
  39. package/dist/runtime/components/ui/pagination/PaginationEllipsis.vue +2 -2
  40. package/dist/runtime/components/ui/pagination/PaginationFirst.vue +2 -2
  41. package/dist/runtime/components/ui/pagination/PaginationLast.vue +2 -2
  42. package/dist/runtime/components/ui/pagination/PaginationNext.vue +2 -2
  43. package/dist/runtime/components/ui/pagination/PaginationPrevious.vue +2 -2
  44. package/dist/runtime/components/ui/pin-input/PinInputSeparator.vue +2 -2
  45. package/dist/runtime/components/ui/radio-group/RadioGroupItem.vue +2 -2
  46. package/dist/runtime/components/ui/range-calendar/RangeCalendarNextButton.vue +2 -2
  47. package/dist/runtime/components/ui/range-calendar/RangeCalendarPrevButton.vue +2 -2
  48. package/dist/runtime/components/ui/resizable/ResizableHandle.vue +2 -2
  49. package/dist/runtime/components/ui/select/SelectItem.vue +2 -2
  50. package/dist/runtime/components/ui/select/SelectScrollDownButton.vue +2 -2
  51. package/dist/runtime/components/ui/select/SelectScrollUpButton.vue +2 -2
  52. package/dist/runtime/components/ui/select/SelectTrigger.vue +2 -2
  53. package/dist/runtime/components/ui/sheet/InnerSheetContent.vue +2 -2
  54. package/dist/runtime/components/ui/sheet/SheetContent.vue +2 -2
  55. package/dist/runtime/components/ui/sidebar/SidebarTrigger.vue +2 -2
  56. package/dist/runtime/components/ui/sonner/Sonner.vue +7 -7
  57. package/dist/runtime/components/ui/spinner/Spinner.vue +3 -2
  58. package/dist/runtime/components/ui/storage/StorageActionBar.vue +3 -4
  59. package/dist/runtime/components/ui/storage/StorageEmptyState.vue +3 -4
  60. package/dist/runtime/components/ui/storage/StorageGrid.vue +10 -11
  61. package/dist/runtime/components/ui/storage/StorageSelectionBar.vue +3 -3
  62. package/dist/runtime/components/ui/storage/StorageTable.vue +10 -11
  63. package/dist/runtime/components/ui/storage/StorageUploadZone.vue +5 -4
  64. package/dist/runtime/components/ui/tags-input/TagsInputItemDelete.vue +2 -2
  65. package/dist/runtime/composables/useAuth.d.ts +4 -18
  66. package/dist/runtime/middleware/auth.global.d.ts +1 -1
  67. package/dist/runtime/shared/constants/r2.js +12 -6
  68. package/dist/runtime/types/nitro-graphql-client.d.ts +0 -1
  69. package/package.json +13 -14
@@ -1,5 +1,5 @@
1
1
  <script setup>
2
- import { MinusIcon } from "lucide-vue-next";
2
+ import { Icon } from "#components";
3
3
  import { useForwardProps } from "reka-ui";
4
4
  const props = defineProps({
5
5
  class: { type: null, required: false }
@@ -14,7 +14,7 @@ const forwarded = useForwardProps(props);
14
14
  v-bind="forwarded"
15
15
  >
16
16
  <slot>
17
- <MinusIcon />
17
+ <Icon name="lucide:minus" />
18
18
  </slot>
19
19
  </div>
20
20
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { Check } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import {
5
5
  MenubarCheckboxItem,
6
6
  MenubarItemIndicator,
@@ -32,7 +32,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits);
32
32
  <span class="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
33
33
  <MenubarItemIndicator>
34
34
  <slot name="indicator-icon">
35
- <Check class="size-4" />
35
+ <Icon name="lucide:check" class="size-4" />
36
36
  </slot>
37
37
  </MenubarItemIndicator>
38
38
  </span>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { Circle } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import {
5
5
  MenubarItemIndicator,
6
6
  MenubarRadioItem,
@@ -32,7 +32,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits);
32
32
  <span class="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
33
33
  <MenubarItemIndicator>
34
34
  <slot name="indicator-icon">
35
- <Circle class="size-2 fill-current" />
35
+ <Icon name="lucide:circle" class="size-2 fill-current" />
36
36
  </slot>
37
37
  </MenubarItemIndicator>
38
38
  </span>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronRight } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { MenubarSubTrigger, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  const props = defineProps({
@@ -26,6 +26,6 @@ const forwardedProps = useForwardProps(delegatedProps);
26
26
  )"
27
27
  >
28
28
  <slot />
29
- <ChevronRight class="ml-auto size-4" />
29
+ <Icon name="lucide:chevron-right" class="ml-auto size-4" />
30
30
  </MenubarSubTrigger>
31
31
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit, useVModel } from "@vueuse/core";
3
- import { ChevronDownIcon } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { cn } from "abckit/utils";
5
5
  defineOptions({
6
6
  inheritAttrs: false
@@ -35,7 +35,8 @@ const delegatedProps = reactiveOmit(props, "class");
35
35
  >
36
36
  <slot />
37
37
  </select>
38
- <ChevronDownIcon
38
+ <Icon
39
+ name="lucide:chevron-down"
39
40
  class="text-muted-foreground pointer-events-none absolute top-1/2 right-3.5 size-4 -translate-y-1/2 opacity-50 select-none"
40
41
  aria-hidden="true"
41
42
  data-slot="native-select-icon"
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronDown } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import {
5
5
  NavigationMenuTrigger,
6
6
  useForwardProps
@@ -24,7 +24,8 @@ const forwardedProps = useForwardProps(delegatedProps);
24
24
  :class="cn(navigationMenuTriggerStyle(), 'group', props.class)"
25
25
  >
26
26
  <slot />
27
- <ChevronDown
27
+ <Icon
28
+ name="lucide:chevron-down"
28
29
  class="relative top-[1px] ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180"
29
30
  aria-hidden="true"
30
31
  />
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { Minus } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { NumberFieldDecrement, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  const props = defineProps({
@@ -16,7 +16,7 @@ const forwarded = useForwardProps(delegatedProps);
16
16
  <template>
17
17
  <NumberFieldDecrement data-slot="decrement" v-bind="forwarded" :class="cn('absolute top-1/2 -translate-y-1/2 left-0 p-3 disabled:cursor-not-allowed disabled:opacity-20', props.class)">
18
18
  <slot>
19
- <Minus class="h-4 w-4" />
19
+ <Icon name="lucide:minus" class="h-4 w-4" />
20
20
  </slot>
21
21
  </NumberFieldDecrement>
22
22
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { Plus } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { NumberFieldIncrement, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  const props = defineProps({
@@ -16,7 +16,7 @@ const forwarded = useForwardProps(delegatedProps);
16
16
  <template>
17
17
  <NumberFieldIncrement data-slot="increment" v-bind="forwarded" :class="cn('absolute top-1/2 -translate-y-1/2 right-0 disabled:cursor-not-allowed disabled:opacity-20 p-3', props.class)">
18
18
  <slot>
19
- <Plus class="h-4 w-4" />
19
+ <Icon name="lucide:plus" class="h-4 w-4" />
20
20
  </slot>
21
21
  </NumberFieldIncrement>
22
22
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { MoreHorizontal } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { PaginationEllipsis } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  const props = defineProps({
@@ -18,7 +18,7 @@ const delegatedProps = reactiveOmit(props, "class");
18
18
  :class="cn('flex size-9 items-center justify-center', props.class)"
19
19
  >
20
20
  <slot>
21
- <MoreHorizontal class="size-4" />
21
+ <Icon name="lucide:more-horizontal" class="size-4" />
22
22
  <span class="sr-only">More pages</span>
23
23
  </slot>
24
24
  </PaginationEllipsis>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronLeftIcon } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { PaginationFirst, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  import { buttonVariants } from "abckit/shadcn/button";
@@ -21,7 +21,7 @@ const forwarded = useForwardProps(delegatedProps);
21
21
  v-bind="forwarded"
22
22
  >
23
23
  <slot>
24
- <ChevronLeftIcon />
24
+ <Icon name="lucide:chevron-left" />
25
25
  <span class="hidden sm:block">First</span>
26
26
  </slot>
27
27
  </PaginationFirst>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronRightIcon } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { PaginationLast, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  import { buttonVariants } from "abckit/shadcn/button";
@@ -22,7 +22,7 @@ const forwarded = useForwardProps(delegatedProps);
22
22
  >
23
23
  <slot>
24
24
  <span class="hidden sm:block">Last</span>
25
- <ChevronRightIcon />
25
+ <Icon name="lucide:chevron-right" />
26
26
  </slot>
27
27
  </PaginationLast>
28
28
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronRightIcon } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { PaginationNext, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  import { buttonVariants } from "abckit/shadcn/button";
@@ -22,7 +22,7 @@ const forwarded = useForwardProps(delegatedProps);
22
22
  >
23
23
  <slot>
24
24
  <span class="hidden sm:block">Next</span>
25
- <ChevronRightIcon />
25
+ <Icon name="lucide:chevron-right" />
26
26
  </slot>
27
27
  </PaginationNext>
28
28
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronLeftIcon } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { PaginationPrev, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  import { buttonVariants } from "abckit/shadcn/button";
@@ -21,7 +21,7 @@ const forwarded = useForwardProps(delegatedProps);
21
21
  v-bind="forwarded"
22
22
  >
23
23
  <slot>
24
- <ChevronLeftIcon />
24
+ <Icon name="lucide:chevron-left" />
25
25
  <span class="hidden sm:block">Previous</span>
26
26
  </slot>
27
27
  </PaginationPrev>
@@ -1,5 +1,5 @@
1
1
  <script setup>
2
- import { Minus } from "lucide-vue-next";
2
+ import { Icon } from "#components";
3
3
  import { Primitive, useForwardProps } from "reka-ui";
4
4
  const props = defineProps({
5
5
  asChild: { type: Boolean, required: false },
@@ -14,7 +14,7 @@ const forwardedProps = useForwardProps(props);
14
14
  v-bind="forwardedProps"
15
15
  >
16
16
  <slot>
17
- <Minus />
17
+ <Icon name="lucide:minus" />
18
18
  </slot>
19
19
  </Primitive>
20
20
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { CircleIcon } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import {
5
5
  RadioGroupIndicator,
6
6
  RadioGroupItem,
@@ -37,7 +37,7 @@ const forwardedProps = useForwardProps(delegatedProps);
37
37
  class="relative flex items-center justify-center"
38
38
  >
39
39
  <slot>
40
- <CircleIcon class="fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" />
40
+ <Icon name="lucide:circle" class="fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" />
41
41
  </slot>
42
42
  </RadioGroupIndicator>
43
43
  </RadioGroupItem>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronRight } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { RangeCalendarNext, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  import { buttonVariants } from "abckit/shadcn/button";
@@ -26,7 +26,7 @@ const forwardedProps = useForwardProps(delegatedProps);
26
26
  v-bind="forwardedProps"
27
27
  >
28
28
  <slot>
29
- <ChevronRight class="size-4" />
29
+ <Icon name="lucide:chevron-right" class="size-4" />
30
30
  </slot>
31
31
  </RangeCalendarNext>
32
32
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronLeft } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { RangeCalendarPrev, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  import { buttonVariants } from "abckit/shadcn/button";
@@ -26,7 +26,7 @@ const forwardedProps = useForwardProps(delegatedProps);
26
26
  v-bind="forwardedProps"
27
27
  >
28
28
  <slot>
29
- <ChevronLeft class="size-4" />
29
+ <Icon name="lucide:chevron-left" class="size-4" />
30
30
  </slot>
31
31
  </RangeCalendarPrev>
32
32
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { GripVertical } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { SplitterResizeHandle, useForwardPropsEmits } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  const props = defineProps({
@@ -28,7 +28,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits);
28
28
  <template v-if="props.withHandle">
29
29
  <div class="bg-border z-10 flex h-4 w-3 items-center justify-center rounded-xs border">
30
30
  <slot>
31
- <GripVertical class="size-2.5" />
31
+ <Icon name="lucide:grip-vertical" class="size-2.5" />
32
32
  </slot>
33
33
  </div>
34
34
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { Check } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import {
5
5
  SelectItem,
6
6
  SelectItemIndicator,
@@ -34,7 +34,7 @@ const forwardedProps = useForwardProps(delegatedProps);
34
34
  <span class="absolute right-2 flex size-3.5 items-center justify-center">
35
35
  <SelectItemIndicator>
36
36
  <slot name="indicator-icon">
37
- <Check class="size-4" />
37
+ <Icon name="lucide:check" class="size-4" />
38
38
  </slot>
39
39
  </SelectItemIndicator>
40
40
  </span>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronDown } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { SelectScrollDownButton, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  const props = defineProps({
@@ -19,7 +19,7 @@ const forwardedProps = useForwardProps(delegatedProps);
19
19
  :class="cn('flex cursor-default items-center justify-center py-1', props.class)"
20
20
  >
21
21
  <slot>
22
- <ChevronDown class="size-4" />
22
+ <Icon name="lucide:chevron-down" class="size-4" />
23
23
  </slot>
24
24
  </SelectScrollDownButton>
25
25
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronUp } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { SelectScrollUpButton, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  const props = defineProps({
@@ -19,7 +19,7 @@ const forwardedProps = useForwardProps(delegatedProps);
19
19
  :class="cn('flex cursor-default items-center justify-center py-1', props.class)"
20
20
  >
21
21
  <slot>
22
- <ChevronUp class="size-4" />
22
+ <Icon name="lucide:chevron-up" class="size-4" />
23
23
  </slot>
24
24
  </SelectScrollUpButton>
25
25
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { ChevronDown } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import { SelectIcon, SelectTrigger, useForwardProps } from "reka-ui";
5
5
  import { cn } from "abckit/utils";
6
6
  const props = defineProps({
@@ -27,7 +27,7 @@ const forwardedProps = useForwardProps(delegatedProps);
27
27
  >
28
28
  <slot />
29
29
  <SelectIcon as-child>
30
- <ChevronDown class="size-4 opacity-50" />
30
+ <Icon name="lucide:chevron-down" class="size-4 opacity-50" />
31
31
  </SelectIcon>
32
32
  </SelectTrigger>
33
33
  </template>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { X } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import {
5
5
  DialogClose,
6
6
  DialogContent,
@@ -45,7 +45,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits);
45
45
  <DialogClose
46
46
  class="absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none"
47
47
  >
48
- <X class="size-4" />
48
+ <Icon name="lucide:x" class="size-4" />
49
49
  <span class="sr-only">Close</span>
50
50
  </DialogClose>
51
51
  </DialogContent>
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { X } from "lucide-vue-next";
3
+ import { Icon } from "#components";
4
4
  import {
5
5
  DialogClose,
6
6
  DialogContent,
@@ -45,7 +45,7 @@ const forwarded = useForwardPropsEmits(delegatedProps, emits);
45
45
  <DialogClose
46
46
  class="ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none"
47
47
  >
48
- <X class="size-4" />
48
+ <Icon name="lucide:x" class="size-4" />
49
49
  <span class="sr-only">Close</span>
50
50
  </DialogClose>
51
51
  </DialogContent>
@@ -1,5 +1,5 @@
1
1
  <script setup>
2
- import { PanelLeft } from "lucide-vue-next";
2
+ import { Icon } from "#components";
3
3
  import { cn } from "abckit/utils";
4
4
  import { Button } from "abckit/shadcn/button";
5
5
  import { useSidebar } from "./utils";
@@ -18,7 +18,7 @@ const { toggleSidebar } = useSidebar();
18
18
  :class="cn('h-7 w-7', props.class)"
19
19
  @click="toggleSidebar"
20
20
  >
21
- <PanelLeft />
21
+ <Icon name="lucide:panel-left" />
22
22
  <span class="sr-only">Toggle Sidebar</span>
23
23
  </Button>
24
24
  </template>
@@ -1,5 +1,5 @@
1
1
  <script setup>
2
- import { CircleCheckIcon, InfoIcon, Loader2Icon, OctagonXIcon, TriangleAlertIcon, XIcon } from "lucide-vue-next";
2
+ import { Icon } from "#components";
3
3
  import { Toaster as Sonner } from "vue-sonner";
4
4
  import { cn } from "abckit/utils";
5
5
  const props = defineProps({
@@ -39,24 +39,24 @@ const props = defineProps({
39
39
  v-bind="props"
40
40
  >
41
41
  <template #success-icon>
42
- <CircleCheckIcon class="size-4" />
42
+ <Icon name="lucide:circle-check" class="size-4" />
43
43
  </template>
44
44
  <template #info-icon>
45
- <InfoIcon class="size-4" />
45
+ <Icon name="lucide:info" class="size-4" />
46
46
  </template>
47
47
  <template #warning-icon>
48
- <TriangleAlertIcon class="size-4" />
48
+ <Icon name="lucide:triangle-alert" class="size-4" />
49
49
  </template>
50
50
  <template #error-icon>
51
- <OctagonXIcon class="size-4" />
51
+ <Icon name="lucide:octagon-x" class="size-4" />
52
52
  </template>
53
53
  <template #loading-icon>
54
54
  <div>
55
- <Loader2Icon class="size-4 animate-spin" />
55
+ <Icon name="lucide:loader-2" class="size-4 animate-spin" />
56
56
  </div>
57
57
  </template>
58
58
  <template #close-icon>
59
- <XIcon class="size-4" />
59
+ <Icon name="lucide:x" class="size-4" />
60
60
  </template>
61
61
  </Sonner>
62
62
  </template>
@@ -1,5 +1,5 @@
1
1
  <script setup>
2
- import { Loader2Icon } from "lucide-vue-next";
2
+ import { Icon } from "#components";
3
3
  import { cn } from "abckit/utils";
4
4
  const props = defineProps({
5
5
  class: { type: null, required: false }
@@ -7,7 +7,8 @@ const props = defineProps({
7
7
  </script>
8
8
 
9
9
  <template>
10
- <Loader2Icon
10
+ <Icon
11
+ name="lucide:loader-2"
11
12
  role="status"
12
13
  aria-label="Loading"
13
14
  :class="cn('size-4 animate-spin', props.class)"
@@ -1,10 +1,9 @@
1
1
  <script setup>
2
- import { FolderPlus, Search } from "lucide-vue-next";
2
+ import { Icon } from "#components";
3
3
  import { Button } from "abckit/shadcn/button";
4
4
  import { Input } from "abckit/shadcn/input";
5
5
  import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "abckit/shadcn/select";
6
6
  import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "abckit/shadcn/tooltip";
7
- import { Icon } from "#components";
8
7
  import { computed } from "vue";
9
8
  const props = defineProps({
10
9
  searchQuery: { type: String, required: false, default: "" },
@@ -34,7 +33,7 @@ const selectedTypeModel = computed({
34
33
  <div class="flex gap-2">
35
34
  <!-- Search -->
36
35
  <div class="relative flex-1">
37
- <Search class="absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" />
36
+ <Icon name="lucide:search" class="absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" />
38
37
  <Input
39
38
  v-model="searchModel"
40
39
  placeholder="Dosya ara..."
@@ -97,7 +96,7 @@ const selectedTypeModel = computed({
97
96
  <Tooltip>
98
97
  <TooltipTrigger as-child>
99
98
  <Button variant="outline" size="icon" class="h-10 w-10" @click="emit('create-folder')">
100
- <FolderPlus class="h-4 w-4" />
99
+ <Icon name="lucide:folder-plus" class="h-4 w-4" />
101
100
  </Button>
102
101
  </TooltipTrigger>
103
102
  <TooltipContent>
@@ -1,5 +1,4 @@
1
1
  <script setup>
2
- import { Cloud, Trash2, Upload } from "lucide-vue-next";
3
2
  import { Icon } from "#components";
4
3
  import { ref } from "vue";
5
4
  const props = defineProps({
@@ -33,9 +32,9 @@ function handleFileInput(event) {
33
32
  class="hidden"
34
33
  @change="handleFileInput"
35
34
  >
36
- <Upload v-if="type === 'empty' && showUpload" class="h-16 w-16 text-muted-foreground" />
37
- <Cloud v-else-if="type === 'empty'" class="h-16 w-16 text-muted-foreground" />
38
- <Trash2 v-else-if="type === 'trash'" class="h-16 w-16 text-muted-foreground" />
35
+ <Icon v-if="type === 'empty' && showUpload" name="lucide:upload" class="h-16 w-16 text-muted-foreground" />
36
+ <Icon v-else-if="type === 'empty'" name="lucide:cloud" class="h-16 w-16 text-muted-foreground" />
37
+ <Icon v-else-if="type === 'trash'" name="lucide:trash-2" class="h-16 w-16 text-muted-foreground" />
39
38
  <Icon v-else name="lucide:search-x" class="h-16 w-16 text-muted-foreground" />
40
39
  </div>
41
40
 
@@ -1,5 +1,4 @@
1
1
  <script setup>
2
- import { Cloud, FileText, Film, Folder, Image, MoreVertical } from "lucide-vue-next";
3
2
  import { bytesToSize } from "abckit/shared/constants/r2";
4
3
  import { Button } from "abckit/shadcn/button";
5
4
  import { Checkbox } from "abckit/shadcn/checkbox";
@@ -14,13 +13,13 @@ const props = defineProps({
14
13
  });
15
14
  const emit = defineEmits(["fileClick", "folderClick", "toggleSelection", "fileAction"]);
16
15
  const FILE_TYPE_ICONS = {
17
- IMAGE: Image,
18
- VIDEO: Film,
19
- AUDIO: FileText,
20
- DOCUMENT: FileText,
21
- ARCHIVE: Cloud,
22
- OTHER: Cloud,
23
- FOLDER: Folder
16
+ IMAGE: "lucide:image",
17
+ VIDEO: "lucide:film",
18
+ AUDIO: "lucide:file-text",
19
+ DOCUMENT: "lucide:file-text",
20
+ ARCHIVE: "lucide:cloud",
21
+ OTHER: "lucide:cloud",
22
+ FOLDER: "lucide:folder"
24
23
  };
25
24
  function getFileIcon(file) {
26
25
  if (file.isFolder) return FILE_TYPE_ICONS.FOLDER;
@@ -72,8 +71,8 @@ function isSelected(fileId) {
72
71
  fallback=""
73
72
  />
74
73
  <div v-else class="flex h-full items-center justify-center">
75
- <component
76
- :is="getFileIcon(file)"
74
+ <Icon
75
+ :name="getFileIcon(file)"
77
76
  class="h-12 w-12 text-muted-foreground"
78
77
  />
79
78
  </div>
@@ -102,7 +101,7 @@ function isSelected(fileId) {
102
101
  class="h-8 w-8 bg-background/80 backdrop-blur-sm"
103
102
  @click.stop
104
103
  >
105
- <MoreVertical class="h-4 w-4" />
104
+ <Icon name="lucide:more-vertical" class="h-4 w-4" />
106
105
  </Button>
107
106
  </DropdownMenuTrigger>
108
107
  <DropdownMenuContent align="end">
@@ -1,5 +1,5 @@
1
1
  <script setup>
2
- import { RotateCcw, Trash2 } from "lucide-vue-next";
2
+ import { Icon } from "#components";
3
3
  import { Button } from "abckit/shadcn/button";
4
4
  const props = defineProps({
5
5
  selectedCount: { type: Number, required: true },
@@ -33,7 +33,7 @@ const emit = defineEmits(["toggle-selection-mode", "clear-selection", "select-al
33
33
  size="sm"
34
34
  @click="emit('restore-selected')"
35
35
  >
36
- <RotateCcw class="mr-2 h-4 w-4" />
36
+ <Icon name="lucide:rotate-ccw" class="mr-2 h-4 w-4" />
37
37
  Geri Yükle ({{ selectedCount }})
38
38
  </Button>
39
39
 
@@ -43,7 +43,7 @@ const emit = defineEmits(["toggle-selection-mode", "clear-selection", "select-al
43
43
  size="sm"
44
44
  @click="emit('delete-selected')"
45
45
  >
46
- <Trash2 class="mr-2 h-4 w-4" />
46
+ <Icon name="lucide:trash-2" class="mr-2 h-4 w-4" />
47
47
  {{ isTrash ? "Kal\u0131c\u0131 Olarak" : "" }} Sil ({{ selectedCount }})
48
48
  </Button>
49
49
  </div>