sprawlify 0.0.109 → 0.0.110

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 (2) hide show
  1. package/dist/index.mjs +149 -7
  2. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -8,7 +8,7 @@ import { existsSync } from "fs";
8
8
  import prompts from "prompts";
9
9
  import { faker } from "@faker-js/faker";
10
10
  //#region package.json
11
- var version = "0.0.109";
11
+ var version = "0.0.110";
12
12
  //#endregion
13
13
  //#region src/utils/file-helper.ts
14
14
  const FILE_BACKUP_SUFFIX = ".bak";
@@ -280,6 +280,20 @@ const PRESETS = { monochrome: {
280
280
  path: "badge.tsx"
281
281
  }]
282
282
  },
283
+ {
284
+ name: "breadcrumb",
285
+ dependencies: [
286
+ "react",
287
+ "lucide-react",
288
+ "@/lib/utils",
289
+ "@sprawlify/react"
290
+ ],
291
+ files: [{
292
+ content: "import * as React from \"react\";\nimport { ChevronRightIcon, MoreHorizontalIcon } from \"lucide-react\";\nimport { cn } from \"@/lib/utils\";\nimport { sprawlify } from \"@sprawlify/react\";\n\nfunction Breadcrumb({ ...props }: React.ComponentProps<typeof sprawlify.nav>) {\n return (\n <sprawlify.nav\n data-scope=\"breadcrumb\"\n data-part=\"root\"\n aria-label=\"breadcrumb\"\n data-slot=\"breadcrumb\"\n {...props}\n />\n );\n}\n\nfunction BreadcrumbList({ className, ...props }: React.ComponentProps<typeof sprawlify.ol>) {\n return (\n <sprawlify.ol\n data-scope=\"breadcrumb\"\n data-part=\"list\"\n data-slot=\"breadcrumb-list\"\n className={cn(\n \"flex flex-wrap items-center gap-1.5 text-sm break-words text-muted-foreground sm:gap-2.5\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbItem({ className, ...props }: React.ComponentProps<typeof sprawlify.li>) {\n return (\n <sprawlify.li\n data-scope=\"breadcrumb\"\n data-part=\"item\"\n data-slot=\"breadcrumb-item\"\n className={cn(\"inline-flex items-center gap-1.5\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbLink({\n asChild,\n className,\n ...props\n}: React.ComponentProps<typeof sprawlify.a>) {\n return (\n <sprawlify.a\n data-scope=\"breadcrumb\"\n data-part=\"link\"\n data-slot=\"breadcrumb-link\"\n className={cn(\"transition-colors hover:text-foreground\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbPage({ className, ...props }: React.ComponentProps<typeof sprawlify.span>) {\n return (\n <sprawlify.span\n data-scope=\"breadcrumb\"\n data-part=\"page\"\n data-slot=\"breadcrumb-page\"\n role=\"link\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n className={cn(\"font-normal text-foreground\", className)}\n {...props}\n />\n );\n}\n\nfunction BreadcrumbSeparator({\n children,\n className,\n ...props\n}: React.ComponentProps<typeof sprawlify.li>) {\n return (\n <sprawlify.li\n data-scope=\"breadcrumb\"\n data-part=\"separator\"\n data-slot=\"breadcrumb-separator\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn(\"[&>svg]:size-3.5\", className)}\n {...props}\n >\n {children ?? <ChevronRightIcon />}\n </sprawlify.li>\n );\n}\n\nfunction BreadcrumbEllipsis({ className, ...props }: React.ComponentProps<typeof sprawlify.span>) {\n return (\n <sprawlify.span\n data-scope=\"breadcrumb\"\n data-part=\"ellipsis\"\n data-slot=\"breadcrumb-ellipsis\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn(\"flex size-9 items-center justify-center\", className)}\n {...props}\n >\n <MoreHorizontalIcon className=\"size-4\" />\n <span className=\"sr-only\">More</span>\n </sprawlify.span>\n );\n}\n\nexport {\n Breadcrumb,\n BreadcrumbList,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbPage,\n BreadcrumbSeparator,\n BreadcrumbEllipsis,\n};\n",
293
+ type: "registry:ui",
294
+ path: "breadcrumb.tsx"
295
+ }]
296
+ },
283
297
  {
284
298
  name: "button",
285
299
  dependencies: [
@@ -625,6 +639,20 @@ const PRESETS = { monochrome: {
625
639
  path: "badge.tsx"
626
640
  }]
627
641
  },
642
+ {
643
+ name: "breadcrumb",
644
+ dependencies: [
645
+ "lucide-solid",
646
+ "@/lib/utils",
647
+ "@sprawlify/solid",
648
+ "solid-js"
649
+ ],
650
+ files: [{
651
+ content: "import { ChevronRightIcon, MoreHorizontalIcon } from \"lucide-solid\";\nimport { cn } from \"@/lib/utils\";\nimport { sprawlify } from \"@sprawlify/solid\";\nimport { splitProps, type ComponentProps } from \"solid-js\";\n\nfunction Breadcrumb(props: ComponentProps<typeof sprawlify.nav>) {\n return (\n <sprawlify.nav\n data-scope=\"breadcrumb\"\n data-part=\"root\"\n aria-label=\"breadcrumb\"\n data-slot=\"breadcrumb\"\n {...props}\n />\n );\n}\n\nfunction BreadcrumbList(props: ComponentProps<typeof sprawlify.ol>) {\n const [local, others] = splitProps(props, [\"class\"]);\n\n return (\n <sprawlify.ol\n data-scope=\"breadcrumb\"\n data-part=\"list\"\n data-slot=\"breadcrumb-list\"\n class={cn(\n \"flex flex-wrap items-center gap-1.5 text-sm break-words text-muted-foreground sm:gap-2.5\",\n local.class,\n )}\n {...others}\n />\n );\n}\n\nfunction BreadcrumbItem(props: ComponentProps<typeof sprawlify.li>) {\n const [local, others] = splitProps(props, [\"class\"]);\n\n return (\n <sprawlify.li\n data-scope=\"breadcrumb\"\n data-part=\"item\"\n data-slot=\"breadcrumb-item\"\n class={cn(\"inline-flex items-center gap-1.5\", local.class)}\n {...others}\n />\n );\n}\n\nfunction BreadcrumbLink(props: ComponentProps<typeof sprawlify.a>) {\n const [local, others] = splitProps(props, [\"class\"]);\n\n return (\n <sprawlify.a\n data-scope=\"breadcrumb\"\n data-part=\"link\"\n data-slot=\"breadcrumb-link\"\n class={cn(\"transition-colors hover:text-foreground\", local.class)}\n {...others}\n />\n );\n}\n\nfunction BreadcrumbPage(props: ComponentProps<typeof sprawlify.span>) {\n const [local, others] = splitProps(props, [\"class\"]);\n\n return (\n <sprawlify.span\n data-scope=\"breadcrumb\"\n data-part=\"page\"\n data-slot=\"breadcrumb-page\"\n role=\"link\"\n aria-disabled=\"true\"\n aria-current=\"page\"\n class={cn(\"font-normal text-foreground\", local.class)}\n {...others}\n />\n );\n}\n\nfunction BreadcrumbSeparator(props: ComponentProps<typeof sprawlify.li>) {\n const [local, others] = splitProps(props, [\"class\", \"children\"]);\n\n return (\n <sprawlify.li\n data-scope=\"breadcrumb\"\n data-part=\"separator\"\n data-slot=\"breadcrumb-separator\"\n role=\"presentation\"\n aria-hidden=\"true\"\n class={cn(\"[&>svg]:size-3.5\", local.class)}\n {...others}\n >\n {local.children ?? <ChevronRightIcon />}\n </sprawlify.li>\n );\n}\n\nfunction BreadcrumbEllipsis(props: ComponentProps<typeof sprawlify.span>) {\n const [local, others] = splitProps(props, [\"class\"]);\n\n return (\n <sprawlify.span\n data-scope=\"breadcrumb\"\n data-part=\"ellipsis\"\n data-slot=\"breadcrumb-ellipsis\"\n role=\"presentation\"\n aria-hidden=\"true\"\n class={cn(\"flex size-9 items-center justify-center\", local.class)}\n {...others}\n >\n <MoreHorizontalIcon class=\"size-4\" />\n <span class=\"sr-only\">More</span>\n </sprawlify.span>\n );\n}\n\nexport {\n Breadcrumb,\n BreadcrumbList,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbPage,\n BreadcrumbSeparator,\n BreadcrumbEllipsis,\n};\n",
652
+ type: "registry:ui",
653
+ path: "breadcrumb.tsx"
654
+ }]
655
+ },
628
656
  {
629
657
  name: "button",
630
658
  dependencies: [
@@ -1126,6 +1154,57 @@ const PRESETS = { monochrome: {
1126
1154
  path: "badge/index.ts"
1127
1155
  }]
1128
1156
  },
1157
+ {
1158
+ name: "breadcrumb",
1159
+ dependencies: [
1160
+ "@/lib/utils",
1161
+ "@sprawlify/svelte",
1162
+ "lucide-svelte",
1163
+ "svelte/elements"
1164
+ ],
1165
+ files: [
1166
+ {
1167
+ content: "<script lang=\"ts\">\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Sprawlify, type PolymorphicProps } from \"@sprawlify/svelte\"\r\nimport { MoreHorizontalIcon } from \"lucide-svelte\"\r\nimport type { HTMLAttributes } from \"svelte/elements\";\r\n\r\ninterface Props extends HTMLAttributes<HTMLSpanElement>, PolymorphicProps<\"span\"> {}\r\n \r\nlet { class: className, children, ...rest }: Props = $props()\r\n<\/script>\r\n\r\n<Sprawlify\r\n as=\"span\"\r\n role=\"presentation\"\r\n aria-hidden=\"true\"\r\n data-scope=\"breadcrumb\"\r\n data-part=\"ellipsis\"\r\n class={cn(\"flex size-9 items-center justify-center\", className)}\r\n {...rest}\r\n>\r\n {#if children}\r\n {@render children?.()}\r\n {:else}\r\n <MoreHorizontalIcon class=\"size-4\" />\r\n {/if}\r\n</Sprawlify>",
1168
+ type: "registry:ui",
1169
+ path: "breadcrumb/breadcrumb-ellipsis.svelte"
1170
+ },
1171
+ {
1172
+ content: "<script lang=\"ts\">\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Sprawlify, type PolymorphicProps } from \"@sprawlify/svelte\"\r\nimport type { HTMLLiAttributes } from \"svelte/elements\";\r\n\r\ninterface Props extends HTMLLiAttributes, PolymorphicProps<\"li\"> {}\r\n \r\nlet { class: className, children, ...rest }: Props = $props()\r\n<\/script>\r\n\r\n<Sprawlify\r\n as=\"li\"\r\n data-scope=\"breadcrumb\"\r\n data-part=\"item\"\r\n class={cn(\"inline-flex items-center gap-1.5\", className)}\r\n {...rest}\r\n>\r\n {@render children?.()}\r\n</Sprawlify>",
1173
+ type: "registry:ui",
1174
+ path: "breadcrumb/breadcrumb-item.svelte"
1175
+ },
1176
+ {
1177
+ content: "<script lang=\"ts\">\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Sprawlify, type PolymorphicProps } from \"@sprawlify/svelte\"\r\nimport type { HTMLAnchorAttributes } from \"svelte/elements\";\r\n\r\ninterface Props extends HTMLAnchorAttributes, PolymorphicProps<\"a\"> {}\r\n \r\nlet { class: className, children, ...rest }: Props = $props()\r\n<\/script>\r\n\r\n<Sprawlify\r\n as=\"a\"\r\n data-scope=\"breadcrumb\"\r\n data-part=\"link\"\r\n class={cn(\"transition-colors hover:text-foreground\", className)}\r\n {...rest}\r\n>\r\n {@render children?.()}\r\n</Sprawlify>",
1178
+ type: "registry:ui",
1179
+ path: "breadcrumb/breadcrumb-link.svelte"
1180
+ },
1181
+ {
1182
+ content: "<script lang=\"ts\">\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Sprawlify, type PolymorphicProps } from \"@sprawlify/svelte\"\r\nimport type { HTMLOlAttributes } from \"svelte/elements\";\r\n\r\ninterface Props extends HTMLOlAttributes, PolymorphicProps<\"ol\"> {}\r\n \r\nlet { class: className, children, ...rest }: Props = $props()\r\n<\/script>\r\n\r\n<Sprawlify\r\n as=\"ol\"\r\n data-scope=\"breadcrumb\"\r\n data-part=\"list\"\r\n class={cn(\"flex flex-wrap items-center gap-1.5 text-sm break-words text-muted-foreground\", className)}\r\n {...rest}\r\n>\r\n {@render children?.()}\r\n</Sprawlify>",
1183
+ type: "registry:ui",
1184
+ path: "breadcrumb/breadcrumb-list.svelte"
1185
+ },
1186
+ {
1187
+ content: "<script lang=\"ts\">\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Sprawlify, type PolymorphicProps } from \"@sprawlify/svelte\"\r\nimport type { HTMLAttributes } from \"svelte/elements\";\r\n\r\ninterface Props extends HTMLAttributes<HTMLSpanElement>, PolymorphicProps<\"span\"> {}\r\n \r\nlet { class: className, children, ...rest }: Props = $props()\r\n<\/script>\r\n\r\n<Sprawlify\r\n as=\"span\"\r\n role=\"link\"\r\n aria-disabled=\"true\"\r\n aria-current=\"page\"\r\n data-scope=\"breadcrumb\"\r\n data-part=\"page\"\r\n class={cn(\"font-normal text-foreground\", className)}\r\n {...rest}\r\n>\r\n {@render children?.()}\r\n</Sprawlify>",
1188
+ type: "registry:ui",
1189
+ path: "breadcrumb/breadcrumb-page.svelte"
1190
+ },
1191
+ {
1192
+ content: "<script lang=\"ts\">\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Sprawlify, type PolymorphicProps } from \"@sprawlify/svelte\"\r\nimport { ChevronRightIcon } from \"lucide-svelte\"\r\nimport type { HTMLLiAttributes } from \"svelte/elements\";\r\n\r\ninterface Props extends HTMLLiAttributes, PolymorphicProps<\"li\"> {}\r\n \r\nlet { class: className, children, ...rest }: Props = $props()\r\n<\/script>\r\n\r\n<Sprawlify\r\n as=\"li\"\r\n role=\"presentation\"\r\n aria-hidden=\"true\"\r\n data-scope=\"breadcrumb\"\r\n data-part=\"separator\"\r\n class={cn(\"\", className)}\r\n {...rest}\r\n>\r\n {#if children}\r\n {@render children?.()}\r\n {:else}\r\n <ChevronRightIcon class=\"size-4\" />\r\n {/if}\r\n</Sprawlify>",
1193
+ type: "registry:ui",
1194
+ path: "breadcrumb/breadcrumb-separator.svelte"
1195
+ },
1196
+ {
1197
+ content: "<script lang=\"ts\">\r\nimport { cn } from \"@/lib/utils\"\r\nimport { Sprawlify, type PolymorphicProps } from \"@sprawlify/svelte\"\r\nimport type { HTMLAttributes } from \"svelte/elements\";\r\n\r\ninterface Props extends HTMLAttributes<HTMLElement>, PolymorphicProps<\"nav\"> {}\r\n \r\nlet { children, ...rest }: Props = $props()\r\n<\/script>\r\n\r\n<Sprawlify\r\n as=\"nav\"\r\n data-scope=\"breadcrumb\"\r\n data-part=\"root\"\r\n aria-label=\"breadcrumb\"\r\n {...rest}\r\n>\r\n {@render children?.()}\r\n</Sprawlify>",
1198
+ type: "registry:ui",
1199
+ path: "breadcrumb/breadcrumb.svelte"
1200
+ },
1201
+ {
1202
+ content: "export { default as Breadcrumb } from \"./breadcrumb.svelte\";\nexport { default as BreadcrumbList } from \"./breadcrumb-list.svelte\";\nexport { default as BreadcrumbItem } from \"./breadcrumb-item.svelte\";\nexport { default as BreadcrumbLink } from \"./breadcrumb-link.svelte\";\nexport { default as BreadcrumbPage } from \"./breadcrumb-page.svelte\";\nexport { default as BreadcrumbSeparator } from \"./breadcrumb-separator.svelte\";\nexport { default as BreadcrumbEllipsis } from \"./breadcrumb-ellipsis.svelte\";\n",
1203
+ type: "registry:ui",
1204
+ path: "breadcrumb/index.ts"
1205
+ }
1206
+ ]
1207
+ },
1129
1208
  {
1130
1209
  name: "button",
1131
1210
  dependencies: [
@@ -2023,6 +2102,57 @@ const PRESETS = { monochrome: {
2023
2102
  path: "badge/index.ts"
2024
2103
  }]
2025
2104
  },
2105
+ {
2106
+ name: "breadcrumb",
2107
+ dependencies: [
2108
+ "@sprawlify/vue",
2109
+ "vue",
2110
+ "lucide-vue-next",
2111
+ "@/lib/utils"
2112
+ ],
2113
+ files: [
2114
+ {
2115
+ content: "<script lang=\"ts\">\r\nimport type { PolymorphicProps } from \"@sprawlify/vue\";\r\nimport { type HTMLAttributes } from \"vue\";\r\n\r\nexport interface BreadcrumbEllipsisProps extends PolymorphicProps, /* @vue-ignore */ HTMLAttributes {}\r\n<\/script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { sprawlify } from \"@sprawlify/vue\"\r\nimport { computed, useAttrs } from \"vue\"\r\nimport { MoreHorizontalIcon } from \"lucide-vue-next\"\r\nimport { cn } from \"@/lib/utils\"\r\n\r\nconst { role = \"presentation\", \"aria-hidden\": ariaHidden = \"true\", ...rest } = defineProps<BreadcrumbEllipsisProps>()\r\nconst attrs = useAttrs()\r\n\r\nconst className = computed(() => cn(\"flex h-9 w-9 items-center justify-center\", attrs.class as string))\r\n<\/script>\r\n\r\n<template>\r\n <sprawlify.span\r\n data-scope=\"breadcrumb\"\r\n data-part=\"ellipsis\"\r\n data-slot=\"breadcrumb-ellipsis\"\r\n :role=\"role\"\r\n :aria-hidden=\"ariaHidden\"\r\n :class=\"className\"\r\n v-bind=\"rest\"\r\n >\r\n <MoreHorizontalIcon class=\"size-4\"/>\r\n <span class=\"sr-only\">More</span>\r\n </sprawlify.span>\r\n</template>",
2116
+ type: "registry:ui",
2117
+ path: "breadcrumb/breadcrumb-ellipsis.vue"
2118
+ },
2119
+ {
2120
+ content: "<script lang=\"ts\">\r\nimport type { PolymorphicProps } from \"@sprawlify/vue\";\r\nimport { type HTMLAttributes } from \"vue\";\r\n\r\nexport interface BreadcrumbItemProps extends PolymorphicProps, /* @vue-ignore */ HTMLAttributes {}\r\n<\/script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { sprawlify } from \"@sprawlify/vue\"\r\nimport { computed, useAttrs } from \"vue\"\r\nimport { cn } from \"@/lib/utils\"\r\n\r\n\r\nconst { asChild, ...rest } = defineProps<BreadcrumbItemProps>()\r\nconst attrs = useAttrs()\r\n\r\nconst className = computed(() => cn(\"inline-flex items-center gap-1.5\", attrs.class as string))\r\n<\/script>\r\n\r\n<template>\r\n <sprawlify.li\r\n data-scope=\"breadcrumb\"\r\n data-part=\"item\"\r\n data-slot=\"breadcrumb-item\"\r\n :class=\"className\"\r\n v-bind=\"rest\"\r\n :as-child=\"asChild\"\r\n >\r\n <slot />\r\n </sprawlify.li>\r\n</template>",
2121
+ type: "registry:ui",
2122
+ path: "breadcrumb/breadcrumb-item.vue"
2123
+ },
2124
+ {
2125
+ content: "<script lang=\"ts\">\r\nimport type { PolymorphicProps } from \"@sprawlify/vue\";\r\nimport { type HTMLAttributes } from \"vue\";\r\n\r\nexport interface BreadcrumbLinkProps extends PolymorphicProps, /* @vue-ignore */ HTMLAttributes {}\r\n<\/script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { sprawlify } from \"@sprawlify/vue\"\r\nimport { computed, useAttrs } from \"vue\"\r\nimport { cn } from \"@/lib/utils\"\r\n\r\nconst { asChild, ...rest } = defineProps<BreadcrumbLinkProps>()\r\nconst attrs = useAttrs()\r\n\r\nconst className = computed(() =>\r\n cn(\"transition-colors hover:text-foreground\", attrs.class as string)\r\n)\r\n<\/script>\r\n\r\n<template>\r\n <sprawlify.a\r\n data-scope=\"breadcrumb\"\r\n data-part=\"link\"\r\n data-slot=\"breadcrumb-link\"\r\n :class=\"className\"\r\n v-bind=\"rest\"\r\n :as-child=\"asChild\"\r\n >\r\n <slot />\r\n </sprawlify.a>\r\n</template>",
2126
+ type: "registry:ui",
2127
+ path: "breadcrumb/breadcrumb-link.vue"
2128
+ },
2129
+ {
2130
+ content: "<script lang=\"ts\">\r\nimport type { PolymorphicProps } from \"@sprawlify/vue\";\r\nimport { type HTMLAttributes } from \"vue\";\r\n\r\nexport interface BreadcrumbListProps extends PolymorphicProps, /* @vue-ignore */ HTMLAttributes {}\r\n<\/script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { sprawlify } from \"@sprawlify/vue\"\r\nimport { computed, useAttrs } from \"vue\"\r\nimport { cn } from \"@/lib/utils\"\r\n\r\nconst { asChild, ...rest } = defineProps<BreadcrumbListProps>()\r\nconst attrs = useAttrs()\r\n\r\nconst className = computed(() =>\r\n cn(\"flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5\", attrs.class as string)\r\n)\r\n<\/script>\r\n\r\n<template>\r\n <sprawlify.ol\r\n data-scope=\"breadcrumb\"\r\n data-part=\"list\"\r\n data-slot=\"breadcrumb-list\"\r\n :class=\"className\"\r\n v-bind=\"rest\"\r\n :as-child=\"asChild\"\r\n >\r\n <slot />\r\n </sprawlify.ol>\r\n</template>",
2131
+ type: "registry:ui",
2132
+ path: "breadcrumb/breadcrumb-list.vue"
2133
+ },
2134
+ {
2135
+ content: "<script lang=\"ts\">\r\nimport type { PolymorphicProps } from \"@sprawlify/vue\";\r\nimport { type HTMLAttributes } from \"vue\";\r\n\r\nexport interface BreadcrumbPageProps extends PolymorphicProps, /* @vue-ignore */ HTMLAttributes {}\r\n<\/script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { sprawlify } from \"@sprawlify/vue\"\r\nimport { computed, useAttrs } from \"vue\"\r\nimport { cn } from \"@/lib/utils\"\r\n\r\nexport interface BreadcrumbPageProps extends PolymorphicProps {}\r\n\r\nconst { role = \"link\", \"aria-disabled\": ariaDisabled = \"true\", \"aria-current\": ariaCurrent = \"page\", asChild, ...rest } = defineProps<BreadcrumbPageProps>()\r\nconst attrs = useAttrs()\r\n\r\nconst className = computed(() => cn(\"font-normal text-foreground\", attrs.class as string))\r\n<\/script>\r\n\r\n<template>\r\n <sprawlify.span\r\n data-scope=\"breadcrumb\"\r\n data-part=\"page\"\r\n data-slot=\"breadcrumb-page\"\r\n :role=\"role\"\r\n :aria-disabled=\"ariaDisabled\"\r\n :aria-current=\"ariaCurrent\"\r\n :class=\"className\"\r\n v-bind=\"rest\"\r\n :as-child=\"asChild\"\r\n >\r\n <slot />\r\n </sprawlify.span>\r\n</template>",
2136
+ type: "registry:ui",
2137
+ path: "breadcrumb/breadcrumb-page.vue"
2138
+ },
2139
+ {
2140
+ content: "<script lang=\"ts\">\r\nimport type { PolymorphicProps } from \"@sprawlify/vue\";\r\nimport { type HTMLAttributes } from \"vue\";\r\n\r\nexport interface BreadcrumbSeparatorProps extends PolymorphicProps, /* @vue-ignore */ HTMLAttributes {}\r\n<\/script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { sprawlify } from \"@sprawlify/vue\"\r\nimport { computed, useAttrs } from \"vue\"\r\nimport { ChevronRightIcon } from \"lucide-vue-next\"\r\nimport { cn } from \"@/lib/utils\"\r\n\r\nconst { role = \"presentation\", \"aria-hidden\": ariaHidden = \"true\", asChild, ...rest } = defineProps<BreadcrumbSeparatorProps>()\r\nconst attrs = useAttrs()\r\n\r\nconst className = computed(() => cn(\"[&>svg]:size-3.5\", attrs.class as string))\r\n<\/script>\r\n\r\n<template>\r\n <sprawlify.li\r\n data-scope=\"breadcrumb\"\r\n data-part=\"separator\"\r\n data-slot=\"breadcrumb-separator\"\r\n :role=\"role\"\r\n :aria-hidden=\"ariaHidden\"\r\n :class=\"className\"\r\n v-bind=\"rest\"\r\n >\r\n <slot>\r\n <ChevronRightIcon />\r\n </slot>\r\n </sprawlify.li>\r\n</template>",
2141
+ type: "registry:ui",
2142
+ path: "breadcrumb/breadcrumb-separator.vue"
2143
+ },
2144
+ {
2145
+ content: "<script lang=\"ts\">\r\nimport type { PolymorphicProps } from \"@sprawlify/vue\";\r\nimport { type HTMLAttributes } from \"vue\";\r\n\r\nexport interface BreadcrumbProps extends PolymorphicProps, /* @vue-ignore */ HTMLAttributes {}\r\n<\/script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { sprawlify } from \"@sprawlify/vue\"\r\nimport { computed, useAttrs } from \"vue\"\r\nimport { cn } from \"@/lib/utils\"\r\n\r\nconst { role = \"navigation\", \"aria-label\": ariaLabel = \"breadcrumb\", asChild, ...rest } = defineProps<BreadcrumbProps>()\r\nconst attrs = useAttrs()\r\n\r\nconst className = computed(() => cn(attrs.class as string))\r\n<\/script>\r\n\r\n<template>\r\n <sprawlify.nav\r\n data-scope=\"breadcrumb\"\r\n data-part=\"root\"\r\n data-slot=\"breadcrumb\"\r\n :role=\"role\"\r\n :aria-label=\"ariaLabel\"\r\n :class=\"className\"\r\n v-bind=\"rest\"\r\n :as-child=\"asChild\"\r\n >\r\n <slot />\r\n </sprawlify.nav>\r\n</template>",
2146
+ type: "registry:ui",
2147
+ path: "breadcrumb/breadcrumb.vue"
2148
+ },
2149
+ {
2150
+ content: "export { default as Breadcrumb } from \"./breadcrumb.vue\"\r\nexport { default as BreadcrumbList } from \"./breadcrumb-list.vue\"\r\nexport { default as BreadcrumbItem } from \"./breadcrumb-item.vue\"\r\nexport { default as BreadcrumbLink } from \"./breadcrumb-link.vue\"\r\nexport { default as BreadcrumbPage } from \"./breadcrumb-page.vue\"\r\nexport { default as BreadcrumbSeparator } from \"./breadcrumb-separator.vue\"\r\nexport { default as BreadcrumbEllipsis } from \"./breadcrumb-ellipsis.vue\"",
2151
+ type: "registry:ui",
2152
+ path: "breadcrumb/index.ts"
2153
+ }
2154
+ ]
2155
+ },
2026
2156
  {
2027
2157
  name: "button",
2028
2158
  dependencies: [
@@ -2815,7 +2945,7 @@ async function ensureOverwriteAllowed(options) {
2815
2945
  const { overwrite } = await prompts({
2816
2946
  type: "confirm",
2817
2947
  name: "overwrite",
2818
- message: `A ${highlighter.info("components.json")} file already exists. Would you like to overwrite it?`,
2948
+ message: `An existing project was found. Do you want to overwrite the existing configuration and components?`,
2819
2949
  initial: false
2820
2950
  });
2821
2951
  if (!overwrite) {
@@ -3145,7 +3275,10 @@ dist-ssr
3145
3275
  "noUnusedParameters": true,
3146
3276
  "erasableSyntaxOnly": true,
3147
3277
  "noFallthroughCasesInSwitch": true,
3148
- "noUncheckedSideEffectImports": true
3278
+ "noUncheckedSideEffectImports": true,
3279
+ "paths": {
3280
+ "@/*": ["./src/*"]
3281
+ }
3149
3282
  },
3150
3283
  "include": ["src"]
3151
3284
  }`
@@ -3323,7 +3456,10 @@ dist-ssr
3323
3456
  "noUnusedParameters": true,
3324
3457
  "erasableSyntaxOnly": true,
3325
3458
  "noFallthroughCasesInSwitch": true,
3326
- "noUncheckedSideEffectImports": true
3459
+ "noUncheckedSideEffectImports": true,
3460
+ "paths": {
3461
+ "@/*": ["./src/*"]
3462
+ }
3327
3463
  },
3328
3464
  "include": ["src"]
3329
3465
  }`
@@ -3492,7 +3628,10 @@ export default {}`
3492
3628
  "noEmit": true,
3493
3629
  "allowJs": true,
3494
3630
  "checkJs": true,
3495
- "moduleDetection": "force"
3631
+ "moduleDetection": "force",
3632
+ "paths": {
3633
+ "@/*": ["./src/*"]
3634
+ }
3496
3635
  },
3497
3636
  "include": ["src/**/*.ts", "src/**/*.js", "src/**/*.svelte"]
3498
3637
  }`
@@ -3654,7 +3793,10 @@ dist-ssr
3654
3793
  "noUnusedParameters": true,
3655
3794
  "erasableSyntaxOnly": true,
3656
3795
  "noFallthroughCasesInSwitch": true,
3657
- "noUncheckedSideEffectImports": true
3796
+ "noUncheckedSideEffectImports": true,
3797
+ "paths": {
3798
+ "@/*": ["./src/*"]
3799
+ }
3658
3800
  },
3659
3801
  "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue"]
3660
3802
  }`
@@ -3893,7 +4035,7 @@ async function doneInit(options) {
3893
4035
  await sleep(200);
3894
4036
  }
3895
4037
  //#endregion
3896
- //#region src/commands/init.ts
4038
+ //#region src/commands/init/index.ts
3897
4039
  const init = new Command().name("init").alias("create").description("initialize your project and install dependencies").argument("[components...]", "names, url or local path to component").option("-p, --preset <preset>", "the preset to use. (monochrome, clay)").option("-f, --framework <framework>", "the framework to use. (react, solid, svelte, vue)").option("--metaframework <metaframework>", "the metaframework to use. (next, react-router, nuxt, sveltekit)").option("-y, --yes", "skip confirmation prompt.", true).option("-d, --defaults", "use default configuration: --preset=monochrome --framework=react --metaframework=none", false).option("-o, --override", "override existing configuration.", false).option("-c, --cwd <cwd>", "the working directory. defaults to the current directory.", process.cwd()).option("-n, --name <name>", "the name for the new project.").option("-s, --silent", "mute output.", false).option("--reinstall", "re-install existing UI components.").option("--no-reinstall", "do not re-install existing UI components.").action(async (components, opts) => {
3898
4040
  try {
3899
4041
  const options = parseInitOptions(opts);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sprawlify",
3
- "version": "0.0.109",
3
+ "version": "0.0.110",
4
4
  "description": "A command-line interface for Sprawlify.",
5
5
  "license": "MIT",
6
6
  "author": "sprawlify <npm@sprawlify.com>",