ui-thing 0.1.55 → 0.1.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ui-thing",
3
- "version": "0.1.55",
3
+ "version": "0.1.56",
4
4
  "description": "CLI used to add Nuxt 3 components to a project",
5
5
  "keywords": [
6
6
  "cli",
@@ -38,10 +38,10 @@
38
38
  "test": "vitest"
39
39
  },
40
40
  "dependencies": {
41
- "axios": "^1.7.9",
41
+ "axios": "^1.8.1",
42
42
  "boxen": "^8.0.1",
43
43
  "build": "^0.1.4",
44
- "c12": "^2.0.1",
44
+ "c12": "^2.0.4",
45
45
  "commander": "^13.1.0",
46
46
  "defu": "^6.1.4",
47
47
  "execa": "^9.5.2",
@@ -49,7 +49,7 @@
49
49
  "fs-extra": "^11.3.0",
50
50
  "kleur": "^4.1.5",
51
51
  "lodash": "^4.17.21",
52
- "nypm": "^0.5.2",
52
+ "nypm": "^0.5.4",
53
53
  "ora": "^8.2.0",
54
54
  "prompts": "^2.4.2"
55
55
  },
@@ -59,13 +59,13 @@
59
59
  "@types/figlet": "^1.7.0",
60
60
  "@types/fs-extra": "^11.0.4",
61
61
  "@types/lodash": "^4.17.15",
62
- "@types/node": "^22.13.1",
62
+ "@types/node": "^22.13.5",
63
63
  "@types/prompts": "^2.4.9",
64
- "@vitest/coverage-v8": "^3.0.5",
64
+ "@vitest/coverage-v8": "^3.0.7",
65
65
  "magicast": "^0.3.5",
66
- "tsup": "^8.3.6",
66
+ "tsup": "^8.4.0",
67
67
  "typescript": "^5.7.3",
68
- "vitest": "^3.0.5"
68
+ "vitest": "^3.0.7"
69
69
  },
70
70
  "publishConfig": {
71
71
  "access": "public"
package/src/comps.ts CHANGED
@@ -2655,7 +2655,6 @@ export default [
2655
2655
  {
2656
2656
  name: "Textarea",
2657
2657
  value: "textarea",
2658
- devDeps: ["@vueuse/core"],
2659
2658
  files: [
2660
2659
  {
2661
2660
  fileName: "Textarea.vue",
@@ -2668,6 +2667,63 @@ export default [
2668
2667
  composables: [],
2669
2668
  plugins: [],
2670
2669
  },
2670
+ {
2671
+ name: "Timeline",
2672
+ value: "timeline",
2673
+ files: [
2674
+ {
2675
+ fileName: "Timeline/Content.vue",
2676
+ dirPath: "app/components/Ui",
2677
+ fileContent:
2678
+ '<template>\n <Primitive\n data-slot="timeline-content"\n v-bind="forwarded"\n :class="styles({ class: props.class })"\n >\n <slot />\n </Primitive>\n</template>\n\n<script lang="ts" setup>\n import { reactiveOmit } from "@vueuse/core";\n import { Primitive, useForwardProps } from "radix-vue";\n import type { PrimitiveProps } from "radix-vue";\n\n const styles = tv({\n base: "text-sm text-muted-foreground",\n });\n const props = defineProps<\n PrimitiveProps & {\n class?: any;\n }\n >();\n\n const forwarded = useForwardProps(reactiveOmit(props, ["class"]));\n</script>\n',
2679
+ },
2680
+ {
2681
+ fileName: "Timeline/Date.vue",
2682
+ dirPath: "app/components/Ui",
2683
+ fileContent:
2684
+ '<template>\n <Primitive data-slot="timeline-date" v-bind="forwarded" :class="styles({ class: props.class })">\n <slot />\n </Primitive>\n</template>\n\n<script lang="ts" setup>\n import { reactiveOmit } from "@vueuse/core";\n import { Primitive, useForwardProps } from "radix-vue";\n import type { PrimitiveProps } from "radix-vue";\n\n const styles = tv({\n base: "mb-1 block text-xs font-medium text-muted-foreground sm:max-sm:group-data-[orientation=vertical]/timeline:h-4",\n });\n const props = withDefaults(\n defineProps<\n PrimitiveProps & {\n class?: any;\n }\n >(),\n {\n as: "time",\n }\n );\n\n const forwarded = useForwardProps(reactiveOmit(props, ["class"]));\n</script>\n',
2685
+ },
2686
+ {
2687
+ fileName: "Timeline/Header.vue",
2688
+ dirPath: "app/components/Ui",
2689
+ fileContent:
2690
+ '<template>\n <Primitive data-slot="timeline-header" :as :as-child>\n <slot />\n </Primitive>\n</template>\n\n<script lang="ts" setup>\n import { Primitive } from "radix-vue";\n import type { PrimitiveProps } from "radix-vue";\n\n defineProps<PrimitiveProps>();\n</script>\n',
2691
+ },
2692
+ {
2693
+ fileName: "Timeline/Indicator.vue",
2694
+ dirPath: "app/components/Ui",
2695
+ fileContent:
2696
+ '<template>\n <Primitive\n data-slot="timeline-indicator"\n aria-hidden="true"\n v-bind="forwarded"\n :class="styles({ class: props.class })"\n >\n <slot />\n </Primitive>\n</template>\n\n<script lang="ts" setup>\n import { reactiveOmit } from "@vueuse/core";\n import { Primitive, useForwardProps } from "radix-vue";\n import type { PrimitiveProps } from "radix-vue";\n\n const styles = tv({\n base: "absolute size-4 rounded-full border-2 border-primary/20 group-data-[orientation=horizontal]/timeline:-top-6 group-data-[orientation=horizontal]/timeline:left-0 group-data-[orientation=vertical]/timeline:-left-6 group-data-[orientation=vertical]/timeline:top-0 group-data-[orientation=horizontal]/timeline:-translate-y-1/2 group-data-[orientation=vertical]/timeline:-translate-x-1/2 group-data-[completed=true]/timeline-item:border-primary",\n });\n const props = defineProps<\n PrimitiveProps & {\n class?: any;\n }\n >();\n\n const forwarded = useForwardProps(reactiveOmit(props, ["class"]));\n</script>\n',
2697
+ },
2698
+ {
2699
+ fileName: "Timeline/Item.vue",
2700
+ dirPath: "app/components/Ui",
2701
+ fileContent:
2702
+ '<template>\n <Primitive\n :data-completed="timelineData?.model?.value && step <= timelineData?.model?.value"\n :data-step="step"\n data-slot="timeline-item"\n aria-hidden="true"\n v-bind="forwarded"\n :class="styles({ class: props.class })"\n >\n <slot />\n </Primitive>\n</template>\n\n<script lang="ts" setup>\n import { reactiveOmit } from "@vueuse/core";\n import { Primitive, useForwardProps } from "radix-vue";\n import type { TimelineData } from "./Timeline.vue";\n import type { PrimitiveProps } from "radix-vue";\n\n import { timelineDataSymbol } from "./Timeline.vue";\n\n const timelineData = inject<TimelineData>(timelineDataSymbol);\n\n const styles = tv({\n base: "group/timeline-item relative flex flex-1 flex-col gap-0.5 group-data-[orientation=horizontal]/timeline:mt-8 group-data-[orientation=vertical]/timeline:ml-8 group-data-[orientation=horizontal]/timeline:[&:not(:last-child)]:pe-8 group-data-[orientation=vertical]/timeline:[&:not(:last-child)]:pb-12 [&_[data-slot=timeline-separator]]:has-[+[data-completed=true]]:bg-primary",\n });\n const props = defineProps<\n PrimitiveProps & {\n class?: any;\n step: number;\n }\n >();\n\n const forwarded = useForwardProps(reactiveOmit(props, ["class", "step"]));\n</script>\n',
2703
+ },
2704
+ {
2705
+ fileName: "Timeline/Separator.vue",
2706
+ dirPath: "app/components/Ui",
2707
+ fileContent:
2708
+ '<template>\n <Primitive\n data-slot="timeline-separator"\n aria-hidden="true"\n v-bind="forwarded"\n :class="styles({ class: props.class })"\n >\n <slot />\n </Primitive>\n</template>\n\n<script lang="ts" setup>\n import { reactiveOmit } from "@vueuse/core";\n import { Primitive, useForwardProps } from "radix-vue";\n import type { PrimitiveProps } from "radix-vue";\n\n const styles = tv({\n base: "absolute self-start bg-primary/10 group-last/timeline-item:hidden group-data-[orientation=horizontal]/timeline:-top-6 group-data-[orientation=vertical]/timeline:-left-6 group-data-[orientation=horizontal]/timeline:h-0.5 group-data-[orientation=vertical]/timeline:h-[calc(100%-1rem-0.25rem)] group-data-[orientation=horizontal]/timeline:w-[calc(100%-1rem-0.25rem)] group-data-[orientation=vertical]/timeline:w-0.5 group-data-[orientation=horizontal]/timeline:-translate-y-1/2 group-data-[orientation=horizontal]/timeline:translate-x-[1.125rem] group-data-[orientation=vertical]/timeline:-translate-x-1/2 group-data-[orientation=vertical]/timeline:translate-y-[1.125rem]",\n });\n const props = defineProps<\n PrimitiveProps & {\n class?: any;\n }\n >();\n\n const forwarded = useForwardProps(reactiveOmit(props, ["class"]));\n</script>\n',
2709
+ },
2710
+ {
2711
+ fileName: "Timeline/Timeline.vue",
2712
+ dirPath: "app/components/Ui",
2713
+ fileContent:
2714
+ '<template>\n <Primitive\n :data-orientation="orientation"\n data-slot="timeline"\n v-bind="forwarded"\n :class="styles({ class: props.class })"\n >\n <slot />\n </Primitive>\n</template>\n\n<script lang="ts">\n import { reactiveOmit } from "@vueuse/core";\n import { Primitive, useForwardProps } from "radix-vue";\n import type { PrimitiveProps } from "radix-vue";\n import type { ModelRef } from "vue";\n\n export type TimelineData = {\n model: ModelRef<number | undefined, string, number | undefined, number | undefined>;\n orientation: "horizontal" | "vertical";\n };\n export type TimelineProps = PrimitiveProps & {\n class?: any;\n orientation?: "horizontal" | "vertical";\n modelValue?: number | undefined;\n };\n export const timelineDataSymbol = Symbol("timeline-data");\n</script>\n\n<script lang="ts" setup>\n const styles = tv({\n base: "group/timeline flex data-[orientation=horizontal]:w-full data-[orientation=horizontal]:flex-row data-[orientation=vertical]:flex-col",\n });\n const model = defineModel<number | undefined>({ default: 1 });\n const props = withDefaults(defineProps<TimelineProps>(), {\n orientation: "vertical",\n });\n const forwarded = useForwardProps(reactiveOmit(props, ["modelValue", "class", "orientation"]));\n provide<TimelineData>(timelineDataSymbol, {\n model,\n orientation: props.orientation,\n });\n</script>\n',
2715
+ },
2716
+ {
2717
+ fileName: "Timeline/Title.vue",
2718
+ dirPath: "app/components/Ui",
2719
+ fileContent:
2720
+ '<template>\n <Primitive\n data-slot="timeline-title"\n aria-hidden="true"\n v-bind="forwarded"\n :class="styles({ class: props.class })"\n >\n <slot />\n </Primitive>\n</template>\n\n<script lang="ts" setup>\n import { reactiveOmit } from "@vueuse/core";\n import { Primitive, useForwardProps } from "radix-vue";\n import type { PrimitiveProps } from "radix-vue";\n\n const styles = tv({\n base: "text-sm font-medium",\n });\n const props = defineProps<\n PrimitiveProps & {\n class?: any;\n }\n >();\n\n const forwarded = useForwardProps(reactiveOmit(props, ["class"]));\n</script>\n',
2721
+ },
2722
+ ],
2723
+ utils: [],
2724
+ composables: [],
2725
+ plugins: [],
2726
+ },
2671
2727
  {
2672
2728
  name: "Toast",
2673
2729
  value: "toast",